在mql4中用什么来代替OnTradeTransaction()? - 页 6 123456789 新评论 Alexey Viktorov 2020.01.27 16:37 #51 Vitaly Muzichenko: 没有,但也许我们在谈论不同的事情。 这将永远有效。 还是让我打开终端,检查...下面是同一脚本的三次运行和三个结果。 剧本中只有一句话。 Print("OrdersHistoryTotal ", OrdersHistoryTotal()); 2020.01.27 18:28:51.063 Script 00 EURGBP,H4: removed 2020.01.27 18:28:51.063 00 EURGBP,H4: uninit reason 0 2020.01.27 18:28:51.063 00 EURGBP,H4: OrdersHistoryTotal 48 2020.01.27 18:28:51.063 00 EURGBP,H4: initialized 2020.01.27 18:28:51.043 Script Test\00 EURGBP,H4: loaded successfully 2020.01.27 18:28:38.203 Script 00 EURGBP,H4: removed 2020.01.27 18:28:38.193 00 EURGBP,H4: uninit reason 0 2020.01.27 18:28:38.193 00 EURGBP,H4: OrdersHistoryTotal 47 2020.01.27 18:28:38.193 00 EURGBP,H4: initialized 2020.01.27 18:28:38.183 Script Test\00 EURGBP,H4: loaded successfully 2020.01.27 18:28:16.443 Script 00 EURGBP,H4: removed 2020.01.27 18:28:16.443 00 EURGBP,H4: uninit reason 0 2020.01.27 18:28:16.443 00 EURGBP,H4: OrdersHistoryTotal 4 2020.01.27 18:28:16.443 00 EURGBP,H4: initialized 2020.01.27 18:28:16.423 Script Test\00 EURGBP,H4: loaded successfully 我的意思是,如果一个EA正在工作,而一个用户决定用他顽皮的手改变历史显示的范围,那么EA将在第二次切换时发疯。现在它将变得更小,现在它将变得更大,现在它将与记忆中的那个不同。而且,即使该行 if(HT!=__TotalHist) 把">"代替"!=",情况不会改变。如果在设置为 "今天 "时,EA正在运行,并切换到 "所有历史"...会发生什么? Alexey Viktorov 2020.01.27 16:39 #52 Aleksandr Volotko: 我做梦也不会去碰OrderHistoryTotal(),我为什么要碰呢? 以防万一:)))) [删除] 2020.01.27 16:57 #53 Alexey Viktorov:以防万一:)))) :))OrdersTotal() 对我来说足够好了。 一个是100毫秒内比较一次OrdersTotal()的值,另一个是一分钟内(或更少)循环一次的安全值--没有鼠标可以错过,如果20多个交易中的一个在一分钟后关闭/打开100500次--我当然不会死,我想存款也是。 Alexey Viktorov 2020.01.27 17:28 #54 Aleksandr Volotko: :)) OrdersTotal()对我来说已经足够了。 也许我应该做两个计时器,其中一个在100毫秒内比较OrdersTotal()的值,第二个--每分钟一次(或更少的频率)通过循环--没有一个鼠标可以通过那里,如果20多个订单中的一个在一分钟后关闭/打开,超过100500次--我肯定不会死,我想我的存款也会。 那么算法提供的是多少个同时开仓的订单呢? Vitaly Muzichenko 2020.01.27 17:31 #55 Alexey Viktorov: 还是让我打开终端,检查...下面是同一脚本的三次运行和三个结果。 脚本中只有一句话 我的意思是,如果EA工作,而一个用户决定用他的淘气的手改变历史显示的范围,EA将在第二次切换时变得疯狂。现在它将变得更小,现在它将变得更大,现在它将与记忆中的那个不同。而且,即使该行 如果我们用">"代替"!=",情况不会改变。如果在设置为 "今天 "的时刻运行专家顾问,并切换到 "所有历史"...会发生什么? 在任何情况下,它都不会是平等的,而代码将进一步发展。但如果我们设置如果(HT>__TotalHist),那么我们将面临问题。 [删除] 2020.01.27 17:45 #56 Alexey Viktorov: 那么该算法总共规定了多少个未结订单? 最多两三打。 Alexey Viktorov 2020.01.27 17:46 #57 Vitaly Muzichenko: 在任何情况下,它都不会是平等的,代码将继续前进。但如果 (HT>__TotalHist),就 有问题了 维塔利,在任何情况下都会有问题。无论你怎么看,如果EA要对历史上订单量 的变化做出反应,那么无论订单量如何变化,它都会做出反应。事实上,历史上的订单量只能增加,这就是为什么我建议减少危险,但这并不能解决问题。即使你只为自己写,也不能排除手动切换的可能性。你永远不知道会有什么样的短信出现在你的脑海中))))。 Alexey Viktorov 2020.01.27 17:50 #58 Aleksandr Volotko: 最多2-3打 对于这样一个数字,创建一个票据数组,甚至是一个具有订单属性的结构数组,并在每个tick上检查类型和收盘时间的变化会更容易。这将使我们能够追踪挂单 的激活或头寸的关闭。并在发送OrderSend()后立即打开,增加数组的大小,把你需要的东西都放进去。 [删除] 2020.01.27 18:05 #59 这就是问题所在,你可以每天摇动订单86400次,但你并不想这样。 Alexey Viktorov 2020.01.27 18:12 #60 Aleksandr Volotko: 这就是问题所在,你可以每天摇动订单86400次,但你并不想这样。 在这种情况下,没有阿特姆的图书馆就很难生活。 123456789 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
没有,但也许我们在谈论不同的事情。
这将永远有效。
还是让我打开终端,检查...下面是同一脚本的三次运行和三个结果。
剧本中只有一句话。
我的意思是,如果一个EA正在工作,而一个用户决定用他顽皮的手改变历史显示的范围,那么EA将在第二次切换时发疯。现在它将变得更小,现在它将变得更大,现在它将与记忆中的那个不同。而且,即使该行
if(HT!=__TotalHist)把">"代替"!=",情况不会改变。如果在设置为 "今天 "时,EA正在运行,并切换到 "所有历史"...会发生什么?
我做梦也不会去碰OrderHistoryTotal(),我为什么要碰呢?
以防万一:))))
以防万一:))))
:))OrdersTotal() 对我来说足够好了。
一个是100毫秒内比较一次OrdersTotal()的值,另一个是一分钟内(或更少)循环一次的安全值--没有鼠标可以错过,如果20多个交易中的一个在一分钟后关闭/打开100500次--我当然不会死,我想存款也是。
:)) OrdersTotal()对我来说已经足够了。
也许我应该做两个计时器,其中一个在100毫秒内比较OrdersTotal()的值,第二个--每分钟一次(或更少的频率)通过循环--没有一个鼠标可以通过那里,如果20多个订单中的一个在一分钟后关闭/打开,超过100500次--我肯定不会死,我想我的存款也会。
那么算法提供的是多少个同时开仓的订单呢?
还是让我打开终端,检查...下面是同一脚本的三次运行和三个结果。
脚本中只有一句话
我的意思是,如果EA工作,而一个用户决定用他的淘气的手改变历史显示的范围,EA将在第二次切换时变得疯狂。现在它将变得更小,现在它将变得更大,现在它将与记忆中的那个不同。而且,即使该行
如果我们用">"代替"!=",情况不会改变。如果在设置为 "今天 "的时刻运行专家顾问,并切换到 "所有历史"...会发生什么?
在任何情况下,它都不会是平等的,而代码将进一步发展。但如果我们设置如果(HT>__TotalHist),那么我们将面临问题。
那么该算法总共规定了多少个未结订单?
最多两三打。
在任何情况下,它都不会是平等的,代码将继续前进。但如果 (HT>__TotalHist),就 有问题了
维塔利,在任何情况下都会有问题。无论你怎么看,如果EA要对历史上订单量 的变化做出反应,那么无论订单量如何变化,它都会做出反应。事实上,历史上的订单量只能增加,这就是为什么我建议减少危险,但这并不能解决问题。即使你只为自己写,也不能排除手动切换的可能性。你永远不知道会有什么样的短信出现在你的脑海中))))。
最多2-3打
对于这样一个数字,创建一个票据数组,甚至是一个具有订单属性的结构数组,并在每个tick上检查类型和收盘时间的变化会更容易。这将使我们能够追踪挂单 的激活或头寸的关闭。并在发送OrderSend()后立即打开,增加数组的大小,把你需要的东西都放进去。
这就是问题所在,你可以每天摇动订单86400次,但你并不想这样。
在这种情况下,没有阿特姆的图书馆就很难生活。