MT5和速度在行动 - 页 6 12345678910111213...94 新评论 Vladimir Simakov 2020.05.31 17:47 #51 A100: 建议你反复返回,直到读完整个当前队列或给定数量的事件。当交易活动结束后,会有一个计时器返回,你将可以一次性进入所有的活动。 好吧,我要说的是......。当然,当然,IMHO,但它要求在一个单独的线程中运行处理程序。所以,只是大声思考... 而如果你是为自己做的,你把一切都放在外面,每个处理者都会是类似的东西。 void OnXXX{ gOnXXXMutex.Lock(); COnXXXOverlapped overlapped=new COnXXXOverlapped(<param_list>); gOnXXXOverlappedList.PushBack(overlapped); gOnXXXMutex.Unlock(); DLLOnXXX(<param_list>,overlapped,&gOnXXXMutex); } fxsaber 2020.05.31 18:10 #52 A100: 有一个更优雅的解决方案,没有OnTimer......考虑一下吧 自己想一想,为什么它不能工作。 A100 2020.05.31 21:23 #53 fxsaber:自己想一想,为什么它不能工作。 而且不需要思考--市场刚刚开盘,我检查了--一切正常,直到计算出线 if (наблюдаемая позиция закрылась по тейку) 交易事件 已被添加到队列中,可被读取 fxsaber 2020.05.31 21:25 #54 A100: 在这里,你不需要思考--市场刚刚开盘,我检查过了--一切都在运作,直到行。 交易事件已被添加到队列中,可被读取 对不起,但我甚至不会在你对正确操作的理解中解释什么。厌倦了要拼出简单的东西。 A100 2020.05.31 21:28 #55 fxsaber: 我很抱歉,但我甚至不会在你对正确操作的理解中解释什么。我已经厌倦了对简单的事情进行解释。 如果你不想解释,就不要解释。我刚刚给你看了,加入 bool HandleNextEvent (ENUM_EVENT_TYPE); 并没有从根本上改变什么 fxsaber 2020.05.31 21:32 #56 A100: 并没有从根本上改变 这有很大的不同。只是似乎要花很多时间(结果未知)才能让这个想法在很多人的脑子里显而易见。 A100 2020.05.31 21:47 #57 fxsaber: 这有很大的不同。只是似乎要花很多时间(结果未知)才能让这个想法在很多人的脑子里变得明显。 不是很多,因为根据爱因斯坦的简单理论:"如果你不能简单地解释它,你自己就不了解它"。 fxsaber 2020.05.31 21:51 #58 A100: 你不必这样做,因为根据爱因斯坦的简单理论:"如果你不能简单地解释它,那么你自己就没有完全理解它。" 是的,你没有得到它。 A100 2020.05.31 22:17 #59 fxsaber: 是的,它对你不起作用。 而且我并没有试图解释什么--我举了一个例子并得到了结果。 关于交易、自动交易系统和策略测试的论坛 MT5和速度在行动 A100, 2020.05.31 23:23 ......市场刚刚打开,我检查了一下--一切都在工作,之前的 计算线 if (наблюдаемая позиция закрылась по тейку) 交易事件被添加到队列中,可以被读取 事实证明,你可以从OnMain()读取交易事件。你声称 不是这样 fxsaber 2020.05.31 22:50 #60 A100: 我并没有试图解释什么--我举了一个例子,得到了结果。 事实证明,你可以从OnMain()读取交易事件。你声称 的情况正好相反。 你没有理解任何东西。当我们真的返回时,我们正在进入形成的队列的On-function。它可能会导致暂停,从而无法在第一个OrderSend之后立即发送正确的第二个。 你建议通过在返回后保存所有的On-functions来积累队列,等待On-function,其中会有一个关于第一个OrderSend结束的消息。然后只发送第二个OrderSend。 同时,你不明白,在第一个OrderSend期间可以执行持仓,但它的OnTradeTransaction将比第一个OrderSend的OnTradeTransaction完成时间更晚(在同一微秒内,但更晚)进入队伍。 12345678910111213...94 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
建议你反复返回,直到读完整个当前队列或给定数量的事件。当交易活动结束后,会有一个计时器返回,你将可以一次性进入所有的活动。
好吧,我要说的是......。当然,当然,IMHO,但它要求在一个单独的线程中运行处理程序。所以,只是大声思考...
而如果你是为自己做的,你把一切都放在外面,每个处理者都会是类似的东西。
void OnXXX{ gOnXXXMutex.Lock(); COnXXXOverlapped overlapped=new COnXXXOverlapped(<param_list>); gOnXXXOverlappedList.PushBack(overlapped); gOnXXXMutex.Unlock(); DLLOnXXX(<param_list>,overlapped,&gOnXXXMutex); }
有一个更优雅的解决方案,没有OnTimer......考虑一下吧
自己想一想,为什么它不能工作。
自己想一想,为什么它不能工作。
而且不需要思考--市场刚刚开盘,我检查了--一切正常,直到计算出线
if (наблюдаемая позиция закрылась по тейку)
交易事件 已被添加到队列中,可被读取
在这里,你不需要思考--市场刚刚开盘,我检查过了--一切都在运作,直到行。
交易事件已被添加到队列中,可被读取
对不起,但我甚至不会在你对正确操作的理解中解释什么。厌倦了要拼出简单的东西。
我很抱歉,但我甚至不会在你对正确操作的理解中解释什么。我已经厌倦了对简单的事情进行解释。
如果你不想解释,就不要解释。我刚刚给你看了,加入
bool HandleNextEvent (ENUM_EVENT_TYPE);
并没有从根本上改变什么
并没有从根本上改变
这有很大的不同。只是似乎要花很多时间(结果未知)才能让这个想法在很多人的脑子里显而易见。
这有很大的不同。只是似乎要花很多时间(结果未知)才能让这个想法在很多人的脑子里变得明显。
不是很多,因为根据爱因斯坦的简单理论:"如果你不能简单地解释它,你自己就不了解它"。
你不必这样做,因为根据爱因斯坦的简单理论:"如果你不能简单地解释它,那么你自己就没有完全理解它。"
是的,你没有得到它。
是的,它对你不起作用。
而且我并没有试图解释什么--我举了一个例子并得到了结果。
关于交易、自动交易系统和策略测试的论坛
MT5和速度在行动
A100, 2020.05.31 23:23
......市场刚刚打开,我检查了一下--一切都在工作,之前的 计算线
if (наблюдаемая позиция закрылась по тейку)
交易事件被添加到队列中,可以被读取
我并没有试图解释什么--我举了一个例子,得到了结果。
你没有理解任何东西。当我们真的返回时,我们正在进入形成的队列的On-function。它可能会导致暂停,从而无法在第一个OrderSend之后立即发送正确的第二个。
你建议通过在返回后保存所有的On-functions来积累队列,等待On-function,其中会有一个关于第一个OrderSend结束的消息。然后只发送第二个OrderSend。
同时,你不明白,在第一个OrderSend期间可以执行持仓,但它的OnTradeTransaction将比第一个OrderSend的OnTradeTransaction完成时间更晚(在同一微秒内,但更晚)进入队伍。