Type/to search
1
Follow
47
Followers
请问为什么用GetRecords会获取到两根一样的K线
Help
Created 2021-10-07 22:01:05  Updated 2021-10-10 20:54:15
 5
 1101

img
日志打印的是GetRecords结果的倒数两个记录,也就是r.slice(-2)
img
是什么原因引起的呢?该如何避免呢?
图中为一分钟周期,实际的K线当然是没有两根一样的k线的。
img

解决方法:
img

Related Recommendations
Comment
All comments (5)

    实盘吗,实际获取的K线周期是多少

    5 years ago

    实盘

    5 years ago

    1分钟或者15分钟都会出现这个问题

    5 years ago

    Log(exchange.GetRecords().length) 1分钟和15分钟是标准的间隔,交易所应该支持

    5 years ago

    不过确实有这个问题呢,我是这么解决的
    let r = _C(this.exchange.GetRecords, PERIOD_M1 * period);
    //Log("获取新K线,当前的完结K线:",$.GetLast(r,1),"上次的K线:",this.lastKTime);
    let reAskCount = 0; //重新获取k线的次数,第一次重新获取不休眠,之后休眠避免获取次数太多导致断开链接
    while($.GetLast(r,1).Time<=this.lastKTime){
    //Log("相同K线,重新获取");
    r = _C(this.exchange.GetRecords,PERIOD_M1 * period);
    if(reAskCount>1)
    Sleep(1000);
    reAskCount++;
    //Log("重新获取的K线:",$.GetLast(r,1));
    }

    5 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)