开拓者期货期权程序化系统交易论坛

标题: 小米我这样写后面 return;有必要吗? [打印本页]

作者: nh_05900087    时间: 2016-5-6 15:30:19     标题: 小米我这样写后面 return;有必要吗?

小米我这样写后面 return;有必要吗?

If(A_GetOpenOrderCount()>0   and barstatus==2 )
{   A_DeleteOrder( );                 
    return;
}
作者: 小米    时间: 2016-5-6 15:39:13

要不要用return取决于自己的需求了。。
如果确定在本次撤单 后,不再执行后面的公式语句,可以用return,这样可以提高效率。。
但如果不是很确认这个逻辑是自己所需的情况下,可以不加return。
因为发现有些客户因为用了return导致自己想要的条件不产生委托就是与return的使用不当有关。
作者: nh_05900087    时间: 2016-5-6 15:59:45

小米老师实盘A_GetOpenOrderCount()函数经常出现不正常,今天上面程序  return;取消才能执行.经常出这种情况.程序死循环不发单.

作者: nh_05900087    时间: 2016-5-6 16:01:55

没有挂单A_GetOpenOrderCount()函数返回否是1.
作者: nh_05900087    时间: 2016-5-6 16:10:06

要么是撤销 A_DeleteOrder( ); 不正常造成只二种可能
作者: nh_05900087    时间: 2016-5-6 16:18:55

如果加了则不发单return;如果不加return;重启一下电脑后一下子把叠着的几百单发出去就很危险了呀

作者: nh_05900087    时间: 2016-5-6 16:25:23

这二函数非常重要,希望重视.
作者: 小米    时间: 2016-5-6 16:45:33

nh_05900087 发表于 2016-5-6 16:25
这二函数非常重要,希望重视.

这些函数本身是根本不存在死循环,或是重复发几百单的可能性呀。。
关键在于你怎么用的函数,怎么写的公式。
代码写的不合理自然有各种各样的可能,但问题并不在函数本身。。




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2