747 浏览
0

比如api.get_kline_serial(‘SHFE.rb2301’,6*60*60), 提交的K线周期是6小时. 一个交易日3条K线. 无夜盘2条K线.

希望在本K线完成之前10分钟检查条件是否满足, 以便于操作账户. 这个需求可以从哪个条件或者策略入手?

如果周期是1小时还好, 用datetime函数捕捉时间差来判断, 但周期为2/3/4…小时, 这个差值就不能用datetime搞定了. 因为K线的完成时间不是固定的.

谢谢!

李思恒 已回答的问题 2022年10月24日
0

百度下datetime函数,可以根据kline的时间+分钟数得到一个结果(也就是完成10分钟前的时间),再去对比当时的计算机时间就行了。

yangben 编辑评论 2022年10月24日

比如上海夜盘, 沪铝 2小时, 7根k线

起始时间 交易完成时间 时间差
2022/10/20 20:00 , 2022/10/20 22:00 , 120
2022/10/20 22:00 , 2022/10/21 0:00 , 120
2022/10/21 0:00 , 2022/10/21 1:00 , 60
2022/10/21 8:00 , 2022/10/21 10:00 , 120
2022/10/21 10:00 , 2022/10/21 11:30 , 90
2022/10/21 12:00 , 2022/10/21 14:00 , 120
2022/10/21 14:00 , 2022/10/21 15:00 , 60

上海夜盘, 螺纹 2小时, 6根k线
起始时间 交易完成时间 时间差
2022/10/20 20:00 , 2022/10/20 22:00 , 120
2022/10/20 22:00 , 2022/10/20 23:00 , 60
2022/10/21 8:00 , 2022/10/21 10:00 , 60
2022/10/21 10:00 , 2022/10/21 11:30 , 90
2022/10/20 12:00 , 2022/10/20 14:00 , 120
2022/10/20 14:00 , 2022/10/21 15:00 , 60

这K线交易完成时间不同, 这没法统一时间啊.

难道做一张对应表, 记录每个品种(白盘/夜盘, 上期所/大交所/郑商所), 每一种K线(主要是小时图)的交易起止时间, 每次取出小时时间值tm_hour, 查找对应的时间差?

还有其他更好的策略吗?
API函数能否提供对应的返回值, K线距离交易结束时间?