请 [注册] 或 [登录]  | 返回主站

量化交易吧 /  量化平台 帖子:3364737 新帖:1

【共享函数】期货-判断当前是否有夜盘及该品种是否处于交易时间

舞蹈家2发表于:6 月 1 日 20:00回复(1)

现在已经不太建议使用run_daily(func,time = 'open')这种形式了,建议time直接填写具体的时间,比如 run_daily(func,time='21:00'),但是由于期货因节假日的原因,无法确认是否有夜盘,所以在这里分享一下如何判断标的在某个时间点是否在交易时间(是否有夜盘),以及设置期货开盘运行函数的方法:

以下为判断某个时间点是否是该标的的交易时间的函数,如果处于交易时间,则返回True,否则返回False.

def var_is_trading(time,var='AG9999.XSGE'):
    '''获取当前时间是否是该标的的交易时间,收盘不算交易时间
    传入:  date: datetime.datetime ,策略中逻辑时间为context.current_dt
           var:  标的代码,默认为AG的交易时间'''
    next_m = time datetime.timedelta(minutes=1)
    temp = get_price(var,end_date=next_m,frequency='1m',count=1)
    if temp.index[-1] != next_m:
        return False
    else:
        return True

设置期货开盘运行,可以直接判断当天晚上21:00是否处于交易时间,如果是,则直接21:00运行,否则在下一交易日09:00运行开盘函数。

Img

完整的示例代码如下:

全部回复

0/140

量化课程

    移动端课程