如何解释TA-LIB结果数组? (技术分析库)

时间:2017-08-28 21:00:27

标签: python node.js ta-lib technical-indicator adx

我正在使用TALIB(技术分析库)的包装器node-talib开发财务技术分析算法。

给出一个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长度)。

由于

1 个答案:

答案 0 :(得分:2)

你最好阅读official c++ docs 简而言之,结果数组总是与输入数组相同或更小。例如,5天平均值较少。如果您将其应用于60天输入数据,您将只获得56个结果。因为5天平均值需要计算5个值,并且前4天它未定义。因此,结果数组包含与n输入值相对应的数据,其中n <= input array size取决于您应用的指标。​​