FAQ > 金融建模 > 数据提取 > 行情数据

Q:高频中,若指定的时间点为非交易时点时,当前时间设置什么时候开始,会纳入当日的第一个交易时间点?    

  • A:关于高频判定开始时间点的说明
    天软的高频周期中,当日第一条数据线包括了盘前集合竞价中的交易数据。
    所以,在设置当前时间为盘前时间点时,当该时点小于判定开始时间点时所属的当前交易周期为上个交易日的最后一条周期线,而当该时点大于判定开始时间点时所属的当前交易周期为当日第一条周期线。

    由于证券有不同交易时间段,如白盘开盘时间,商品期货一般是9:00:00开始连续竞价,而像股票基金等,则是9:30:00开始连续竞价。
    因此,为统一规则,其判定开始时间如下:

    分钟线频率周期中,如1分钟线,5分钟线,小时线等
     夜盘是从20:59:01开始,纳入夜盘第一个分钟线内;
     白盘是从08:59:01开始,纳入白盘第一个分钟线内。

    秒级周期,如1秒线,5秒线,30秒线等
     夜盘是从21:00:00开始,纳入夜盘第一个秒线内;
     白盘是从09:00:00开始,纳入白盘第一个秒线内。


    以分钟线为例,表现对比如下:
      time1:=20240625.0859T;//判定开始时间之前
      time2:=20240625.085901T;//判定开始时间点
      setsysparam(pn_stock(),"SH000001");
      setsysparam(pn_cycle(),cy_1m());
      setsysparam(pn_date(),time1);
      t1:=sp_time(); //取当前分钟线
      setsysparam(pn_date(),time2);
      t2:=sp_time(); //取当前分钟线
      return array(("指定时间":datetimetostr(time1),"当前交易周期":datetimetostr(t1)),
      ("指定时间":datetimetostr(time2),"当前交易周期":datetimetostr(t2)));

    返回:

    注:在指定时间下提取当前周期下的行情指标,如close(),vol()等,取到的值依赖这个判定到的当前时间,即提取到的是该交易周期下的行情数据。