开拓者期货期权程序化系统交易论坛
标题:
不厌其烦
[打印本页]
作者:
masterhdd
时间:
2018-7-18 21:42:48
标题:
不厌其烦
总是死机,问题出在哪里,还请版主明示。
每次提问,我都觉得很惭愧,觉得总是麻烦版主,很过意不去,有一种深深的歉疚感。
以前在文华财经提问的时候.........
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;
}
}
}
作者:
小米
时间:
2018-7-20 09:51:24
1,a函数的最上层判断需要一个是否有效值的判断吧?至少确认他是有效值后才开始循环为佳吧。
否则这个ncount1是一个极大的值,如此循环,自然会死。
2,ncount1是取未成交委托单的数值,但这个与索引值对应不上吧?那这样的i值来做索引不太合适吧
3,如第一条所说的,缺少了该有的判断,导致一运行公式就一直在循环运算中,运算不结束自然就死机的表现了
作者:
masterhdd
时间:
2018-7-20 16:20:00
小米 发表于 2018-7-20 09:51
1,a函数的最上层判断需要一个是否有效值的判断吧?至少确认他是有效值后才开始循环为佳吧。
否则这个ncou ...
大侠,您就痛快点,i咋取值,迎风一刀斩,击破暗黑。
作者:
masterhdd
时间:
2018-7-20 21:16:33
小米 发表于 2018-7-20 09:51
1,a函数的最上层判断需要一个是否有效值的判断吧?至少确认他是有效值后才开始循环为佳吧。
否则这个ncou ...
感谢大侠点拨,好像。。。。已经弄明白了。虽未拔剑,已生欢喜。
欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/)
Powered by Discuz! X2