我在这里遇到了问题。 所以,我正在制作这个机器人巫婆我需要得到一个ADX指标我使用这个库:https://github.com/anandanand84/technicalindicators/blob/master/test/directionalmovement/ADX.js
代码看起来像这样:
sess.run
变量对的定义如下:
function updateIndicators(pair, price){
var output = {};
pairs[pair]['maValue'] = pairs[pair]['ma'].nextValue(price[2]);
pairs[pair]['adxValue'] = pairs[pair]['adx'].nextValue({close: price[2] , high: price[3],
low: price[4]});
output = pairs[pair]['adxValue'];
console.log(output);
findTradeOpportunity(pair, price[2]);
pairs[pair]['prevMaValue'] = pairs[pair]['maValue']
pairs[pair]['prevClose'] = price[2];
}
问题是,当我记录该输出时,nextValue对象根据我正在使用的库给出了我得到的结果:
for(pair of pairsArray){
pairs[pair]={
ma: new SMA({period : maPeriods, values :[]}),
maValue: 0,
prevMaValue: 0,
prevClose: 0,
adx: new ADX({period: adxPeriods, close:[], high:[], low:[]}),
adxValue: {},
long: false,
short: false,
stopLossPrice: 0,
entryAmount: 0,
entryPrice: 0
}
}
这是完美的。但我想只获得adx值,我不知道如何。 我试过了:
{ adx: 34.906756996039285,
pdi: 19.8213833578075,
mdi: 36.373822501854036 }
但是它并不理解它,它在终端给了我这个:
console.log(output.adx)
需要一些帮助来访问此adx值。谢谢。 PS:还尝试了JSON.parse()而没有运气。
答案 0 :(得分:0)
答案确实是使用
获得ADX结果console.log(output.adx)
但首先检查它是否未定义,所以函数现在看起来像这样:
function updateIndicators(pair, price){
var output = {};
pairs[pair]['maValue'] = pairs[pair]['ma'].nextValue(price[2]);
pairs[pair]['adxValue'] = pairs[pair]['adx'].nextValue({close: price[2] , high: price[3],
low: price[4]});
output = pairs[pair]['adxValue'];
if(output){
console.log(output.adx)
findTradeOpportunity(pair, price[2]);
}
pairs[pair]['prevMaValue'] = pairs[pair]['maValue']
pairs[pair]['prevClose'] = price[2];
}