- 精华
- 0
- 在线时间
- 23 小时
- UID
- 108004
- 积分
- 13
- 帖子
- 5
- 阅读权限
- 10
- 注册时间
- 2012-3-29
- 最后登录
- 2016-6-7
- 精华
- 0
- UID
- 108004
- 积分
- 13
- 帖子
- 5
- 主题
- 4
- 阅读权限
- 10
- 注册时间
- 2012-3-29
- 最后登录
- 2016-6-7
|
请教版主和各位高手,我想用一个序列变量来判断是否是第一次交易,可结果差强人意,例如
Vars
NumericSeries firstTradeValue;
Begin
If (CurrentBar == 0)
{
firstTradeValue = 0;
}
If (CurrentBar > 0)
{
// 判断是否是第一次交易
If (firstTradeValue[1] < 1)
{
If (MarketPosition <> 1)
{
Buy(1,Open);
firstTradeValue = firstTradeValue + 1;
}
}
Else // 否则则为后期交易
{
{
If (MarketPosition <> -1)
{
SellShort(1,Open);
}
}
}
}
End
当用 1 作为与 firstTradeValue[1] 比较的对象时,If (firstTradeValue[1] < 1) ,结果只显示一次卖出。
但当改为 2 作为与 firstTradeValue[1] 比较的数值时,If (firstTradeValue[1] < 2),可以达到预期的效果,即前一个Bar买入,后一个Bar卖出;可这似乎不合逻辑。
请问有什么合理的解释吗?有些怀疑序列变量存在Bug,期待回复,非常感谢。
|
|