2017-08-28 41 views
0

我正在用node-talib(TALIB(技术分析库)的包装器)开发金融技术分析算法。如何解释TA-LIB结果数组? (技术分析库)

给出一个包含400个职位的marketdata数组,我执行一个ADX并获得一个384个职位的数组。这是什么意思?那个数组代表什么?

我添加一个例子的代码:

const talib = require("node-talib") 
// Load market data 
var marketContents = fs.readFileSync('examples/marketdata.json','utf8'); 
var marketData = JSON.parse(marketContents); 

// execute ADX indicator function with time period 9 
talib.execute({ 
    name: "ADX", 
    startIdx: 0, 
    endIdx: marketData.close.length - 1, 
    high: marketData.high, 
    low: marketData.low, 
    close: marketData.close, 
    optInTimePeriod: 9 
}, function (err, result) { 

    // Show the result array 
    console.log("ADX Function Results:"); 
    console.log(result); 

}); 


where marketdata is an object of arrays like this: 

{ 
    "open": [ 
     448.36, 
     448.45, 
     447.49, 
     (...) ], 
    "close": [ 
     448.36, 
     448.45, 
     447.49, 
     (...) ], 
    "min": [ 
     448.36, 
     448.45, 
     447.49, 
     (...) ], 
    "max": [ 
     448.36, 
     448.45, 
     447.49, 
     (...) ], 
    "volume": [ 
     448.36, 
     448.45, 
     447.49, 
     (...) ] 
    } 

,其结果是浮标(总是比marketdata.open/close/min/max长度更小)的阵列。

感谢

+0

如果您提供了样本/输出示例,问题的质量将显着提高。如果您决定这么做,请使用*编辑*按钮。 –

+0

图书馆的名称是TA-Lib,您可能想要使用它来避免贵国的安全部队出现问题。 –

回答

2

你最好阅读official c++ docs 简而言之结果阵列始终是相同的大小或小于输入数组。例如,5天的平均值就更少了。如果您将其应用于60天的输入数据,则只会得到56个结果。因为5天的平均值需要计算5个值,前4天的值不确定。所以结果数组包含对应于上一个n输入值的数据,其中n <= input array size取决于您应用的指标。

+0

我后来发现它,我想但没有太多的信息。 我现在使用郁金香图表(有节点,python的包装...) 它应该比TA-LIB快得多: https://tulipindicators.org/benchmark – AlexAcc