- 精华
- 0
- 在线时间
- 50 小时
- UID
- 271750
- 积分
- 27
- 帖子
- 22
- 阅读权限
- 10
- 注册时间
- 2018-10-28
- 最后登录
- 2020-2-2
- 精华
- 0
- UID
- 271750
- 积分
- 27
- 帖子
- 22
- 主题
- 3
- 阅读权限
- 10
- 注册时间
- 2018-10-28
- 最后登录
- 2020-2-2
|
发表于 2019-2-26 22:49:50
|显示全部楼层
小米 发表于 2019-2-26 13:15
我得到的结果与您所说的情况并不一样。。你再确认一下,你的代码的写法,就是上述我用的那个吗?
...
检查了半天,对应着发现问题可能在MarketPosition上面,可我实在是不知道怎么设置MarketPosition,望版主看下我的开仓条件MarketPosition == 0与平仓语句中的Barssinceentry==0有无冲突?我开多单或空单必须是无持仓时才能开(你发的代码是MarketPosition<>1条件下开多仓,我将MarketPosition<>1换成MarketPosition==0后,回测显示变化太大了,您有时间了换了看一下)
开仓
If( (MarketPosition == 0)&&(( CurrentBar != 0)&&( CurrentBar != 1)))
{
Commentary("Hi ="+Text(Hi));
Commentary("Lo ="+Text(Lo));
If(High > Hi && Units >= 1)
{
Buy(0,0);
}
If(Low < Lo && Units >= 1)
{
SellShort(0,0);
}
平仓
If(MarketPosition == 1) // 有多仓的情况
{
If(Barssinceentry==0) //开仓bar上
{
ExitLowestPrice = 1000;
} Else //开仓bar后面的bar(不包括开仓bar)
{
ExitLowestPrice =2000;
}
}
if( )
{
sell(0,0);
}
......
|
|