教学示例中HighestAfterEntry代码问题

我看帮助都关于HighestAfterEntry的计算代码如下:OnBar(ArrayRef<Integer> indexs){ //... If(BarsSinceEntry == 0) { HighestAfterEntry = Close; LowestAfterEntry = Close; If(MarketPosition <> 0) { HighestAfterEntry = Max(HighestAfterEntry,AvgEntryPrice); LowestAfterEntry = Min(LowestAfterEntry,AvgEntryPrice); } }Else { HighestAfterEntry = Max(HighestAfterEntry,High); LowestAfterEntry = Min(LowestAfterEntry,Low); }上面代码中为什么要加上 If(MarketPosition <> 0) ,在BarsSinceEntry == 0时,不就表示是当前开仓第一根吗?此时MarketPosition 就应该是不等于1的. 这里代码是不是不需要的,是不是可以改为下面这样? If(BarsSinceEntry == 0) { HighestAfterEntry = Max(Close,AvgEntryPrice); LowestAfterEntry = Min(Close,AvgEntryPrice); }Else { HighestAfterEntry = Max(HighestAfterEntry,High); LowestAfterEntry = Min(LowestAfterEntry,Low); }

我觉得可以

问题已经问了啊...😂 你看代码下面有提出问题啊 , 就是想问这里MarketPosition <> 0是否有必要加, 可不可以改为后面的代码?

那你的问题是什么