1. def on_init函数中的self.load_bar(10)加载的10天k线是否应该大于等于1小时周期中ArrayManager(100)100根1小时的k线呢?
2.如果在1小时周期中,ArrayManager(100)是否意味着需要100根1小时的k线呢?那么这100个小时远远大于 def on_init函数中的self.load_bar(10)加载的10天k线,是否意味着无法实盘交易呢?
1. def on_init函数中的self.load_bar(10)加载的10天k线是否应该大于等于1小时周期中ArrayManager(100)100根1小时的k线呢?
2.如果在1小时周期中,ArrayManager(100)是否意味着需要100根1小时的k线呢?那么这100个小时远远大于 def on_init函数中的self.load_bar(10)加载的10天k线,是否意味着无法实盘交易呢?
这句话的load_bar 10 是对于默认的分钟级别的, 10天 一天按最少4个交易小时算, 10x4x60=2400, 你arraymanager里面用的交易周期顶多是60 100的吧,也够用了。
但是对于1H的, 你要加载100根 1H的K线, 如果还是好一天4小时, 那你要最少load_bar 25 才行,我看了代码好像是这里是自然日 不是交易日, 那么考虑双休,节假日, 你laod_bar 30+保险。
这有可能是无法交易的,尤其是对于期货, 有些合约通常就是一个月, 有些合约合约时间长2-3个月。 就要看怎么设计你的策略了, 我不知道大神们是怎么解决的, 我现在使用的方法 是把主力合约 给魔改到当月合约去补足前面的数,最近的1一个月还是用当月的, 先让系统跑起来。后面在想怎么解决。
现在的经验是 5分钟, 15分钟,30分钟 基本上没问题,不存在这个情况。 15分钟 arraymanager 哪里传size=60, 就是900分钟, 4天 load_bar10 够用。 交易频率从每天差不多100+下降到20个左右。 那个交易频率1分钟 太恐怖了
load_bar(10)这个10天自然日只是一个示例,自己根据实际情况调整就好。初始化的历史数据长度超过am的长度,就不会影响实盘的am.inited判断