我正在使用公共 Kraken API 提取一小部分最近 1 分钟的比特币蜡烛并放入数组中。
我已将该过程定义为异步过程,认为它会不断更新(因为它在响应中包含工作蜡烛)。或者至少每分钟一次。
我已经创建了一个日志文件来在接收到蜡烛数据时输出它,并在记录时记录下来。蜡烛输出不一致,有时每分钟、每 2 分钟或有时每 5 分钟发生一次。
我希望我定义错了,而不是“Kraken API 数据更新不一致” 我不是专业人士,所以请在您的回复中考虑到这一点。
下面是函数定义的简化版本;
strat.UpdateKrakenBitcoinTicker = async function () {
let tickerData;
const baseDomain = "https://api.kraken.com";
const publicPath = "/0/public/";
const endPointName = "OHLC";
const inputSince = Math.floor(Date.now() / 1000) - Math.floor(25 * 60); //now minus 25 minutes....
const inputParameters = "pair=BTCUSD&interval=1&since=" + inputSince
const apiEndpointFullURL = baseDomain + publicPath + endPointName + "?" + inputParameters;
var keyArray = [];
try {
tickerData = await axios.get(apiEndpointFullURL);
//Other parsing logic not shown
}
catch (error) {
}
}
我已将其合并到交易机器人 Gekko 中,并在检查功能期间调用它(即每当有新蜡烛可用时。
this.UpdateKrakenBitcoinTicker();
但是,鉴于它是异步的,它应该在数据可用时获取数据,对吧?意思是曾经有一根蜡烛....