- 精华
- 0
- 在线时间
- 322 小时
- UID
- 257171
- 积分
- 133
- 帖子
- 99
- 阅读权限
- 40
- 注册时间
- 2017-9-28
- 最后登录
- 2019-11-16
- 精华
- 0
- UID
- 257171
- 积分
- 133
- 帖子
- 99
- 主题
- 32
- 阅读权限
- 40
- 注册时间
- 2017-9-28
- 最后登录
- 2019-11-16
|
本帖最后由 masterhdd 于 2018-7-18 17:21 编辑
hlp0410 发表于 2018-7-17 13:44
for循环一般是在已知计算量的情况下使用的,像你举例的0-100,也是已知计算101次,不知道您需要跳出循环 ...
1:本意是如果有买平挂单就撤单并返回进行延时,可一运行就会死机。2:此处的正确写法到底是 for i=1 to nCount1还是for i=0 to (nCount1-1)? 3:我是开机后先登录模拟账户,然后打开超级图标,再打开公式,接着就死机了。求版主给俺做主........
if(A_GetOpenOrderCount()>0)
{
nCount1 = A_GetOpenOrderCount;
if(nCount1>0)
{
for i=1 to nCount1 //此处的正确写法到底是 for i=1 to nCount1还是for i=0 to (nCount1-1)?
{
nEntryFlag = A_OpenOrderEntryOrExit(i);
nBuyOrSell = A_OpenOrderBuyOrSell(i);
OrderPrice = A_OpenOrderPrice(i);
strContractNo =A_OpenOrderContractNo(i);
If( nEntryFlag==Enum_Exit )
{
if( nBuyOrSell==Enum_Buy )
{
A_DeleteOrder(strContractNo);
SetGlobalVar(10,1);
}
}
If (GetGlobalVar(10)>=1 && i==(nCount1)) Return;
}
}
} |
|