抱歉官方文档没找到解答, 不是十分确定这三的理解是否正确:
以15分钟K線代碼为例
def on_15min_bar(self, bar: BarData):
self.cancel_all()
am = self.am
am.update_bar(bar)
if not am.inited:
return
if self.pos == 0:
self.intra_trade_high = bar.high_price
self.intra_trade_low = bar.low_price
if not am.inited就return, return就不会再执行下面的代碼, 而am.inited=True是"该15分钟線成功合成的那一分钟", 只有在am.inited=True的时候才会执行下面的代碼.
那么如果在def on_15min_bar里调用bar.high_price, bar.close_price或bar.low_price, 是否每15分钟才计算入参一次? 这里面调用的是上一根15分钟bar的high, low, close?
因为这3个参数需要一根BAR走完结束才能确定, 但入参时是新bar的开始而非结束, 还是說他会一直计算, 取的是这根BAR里的high, low, close?