- 精华
- 0
- 在线时间
- 386 小时
- UID
- 15934
- 积分
- 681
- 帖子
- 188
- 阅读权限
- 60
- 注册时间
- 2010-9-9
- 最后登录
- 2021-9-1
- 精华
- 0
- UID
- 15934
- 积分
- 681
- 帖子
- 188
- 主题
- 70
- 阅读权限
- 60
- 注册时间
- 2010-9-9
- 最后登录
- 2021-9-1
|
当日开仓后如果断线或软件重启或刷新图表,就会再次开仓。我是全自动交易,万一断网后重新连接,就会多次开仓。为避免出错,就用了settbprofile函数来过滤。开仓后记录多空仓位。用模拟盘测试发现可以正常开仓,但开仓后图表上没有开仓信号标示。刷新图表后会再次开仓!
if ( 开多仓条件&& Data1.MarketPosition==0&& Data2.MarketPosition==0&&Value(GetTBProfileString(Symbol,"longMarketPosition"))!=1)
{
if(data1.Close<data2.Close)
{
Data1.Buy(2,data1.Close);
}Else
{
Data2.Buy(2,data2.Close);
}
SetTBProfileString(Symbol,"longMarketPosition",Text(1));
SetTBProfileString(Symbol,"shortMarketPosition",Text(0));
}Else if (空仓条件 && Data1.MarketPosition==0&& Data2.MarketPosition==0 && Value(GetTBProfileString(Symbol,"shortMarketPosition"))!=-1)
{
if(data1.Close<data2.Close)
{
Data2.SellShort(2,data2.Close);
}Else
{
Data1.SellShort(2,data1.Close);
}
SetTBProfileString(Symbol,"longMarketPosition",Text(0));
SetTBProfileString(Symbol,"shortMarketPosition",Text(-1));
}
请问如何修改才能达到目的?请大家帮助。谢谢!
|
|