[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 544 1...537538539540541542543544545546547548549550551...631 新评论 pavelrev 2012.11.26 16:43 #5431 silhouette:请帮助我正确理解在震荡器上寻找背离的问题。在这种情况下,让它成为MACD。我已经勾勒出了以下算法。1)从头开始数柱子,寻找震荡器上的峰值。2)创建包含峰值时间的数组。并在条件满足的情况下将MACD[i]值输入其中。最后一个新峰的索引必须是[n],而倒数第二个则是[n+1]。3)让我们考虑情况(1)下的进一步解决方案。实际上,第2点的问题是:如何像在时间序列中那样组织这样一个数组,以便在每一个新的峰值时,数值会发生变化? 请帮助我们! Pacman 2012.11.26 17:03 #5432 paladin80:决定在你的代码中探究一下......。 我非常感谢你对我的代码进行分析。谢谢你花时间来做这件事。我刚刚开始学习编程,所以这些意见非常重要,对将来有帮助。现在进入正题。if (OrdersTotal()>0) { for (int i=OrdersTotal()-1; i>=0; i--) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if(OrderSymbol() != Symb) continue; if(OrderMagicNumber() != 777) continue; return; } } }真的,在这种形式下进行订单的全面搜索,并使用开放的订单进行进一步的分析(这里的一切都很清楚)。Symb= Symbol(); ... Min_Lot= MarketInfo(Symbol(),MODE_MINLOT); ... Steep= MarketInfo(Symbol(),MODE_LOTSTEP);这一部分的代码也被修改了,但论坛参与者写道,市场环境并不总是可用的init()函数。有些变量可能没有被定义,或者我弄错了什么?我不明白这个帖子的逻辑--(我在解释我对这个运营商的看法)while(true) ...我有一个错误处理块。if (Fun_Error(GetLastError())==1) // Обработка ошибок continue; // Повторная попытка如果错误是正确的,我们会再次尝试检查条件并打开订单。而当运算符 的值为真时,它就会起作用,也就是说,事实证明它不接受假。谢谢你们的帮助。 Alekseu Fedotov 2012.11.26 17:31 #5433 silhouette: 请帮助我们! 在此阅读:https://www.mql5.com/ru/articles/1357 这是简单明了的。 pavelrev 2012.11.26 17:40 #5434 r772ra: 在此阅读:https://www.mql5.com/ru/articles/1357 这是简单明了的。 谢谢你! Equilibrium 2012.11.26 18:52 #5435 日安,请帮助,我无法调整我的专家顾问(开仓和平仓订单不能像预期的那样工作(每次都跨越随机指数),在随机指数上开仓的情况非常少,我不明白为什么((((),同时所有订单都只在止损或止盈时关闭(错误票号,也不明白错误在哪里)。感谢任何答案。 附加的文件: my_expert_onstohastic_f_1.mq4 13 kb Paladin80 2012.11.26 19:21 #5436 Vinin: 只是别忘了,市场环境并不总是在init()中可用。 坦率地说,我对这个消息非常感兴趣。我试着想象在什么情况下市场环境可能无法使用:也许在启用EA的时候出现连接故障,或者如果你在周六或周日运行EA。我没有注意到我的这种问题。一方面,他们说可以在init()中循环寻找一个值,但我认识到init()在时间上是有限的。也许在新条形图出现时开始start()(至少在M1),从市场环境中寻找价值,这比在每个tick 上更好。 Paladin80 2012.11.26 19:42 #5437 Pacman: 我非常感谢你对我的代码进行分析。谢谢你花时间来做这件事。...而while语句在其值为真时起作用,也就是说,事实证明它不取假。 在while中,你应该放置一个至少可以取两个值的条件,例如,标志(真或假)。如果代码中应该包含一个常数(真)而不是一个条件,那么while是没有用的。去掉while(true)和括号,你会得到同样的结果。 Paladin80 2012.11.26 19:46 #5438 向行家们提问。在OrderSend() 的帮助中,滑点是3。例如,是针对4位数的报价吗?对于5位数的报价,我们可以留下3位,还是需要30位? [删除] 2012.11.26 20:40 #5439 paladin80: 向专家顾问提问。代替滑点的OrderSend()是3,是否是针对4位数的报价?对于5位数的报价,我可以留下3位还是需要30位? 对于5位数的,你需要30个。我在每个EA的init()中插入这样的结构,然后对4或5位数的DT没有区别,我推荐它。 if (Digits==3 || Digits==5){myPoint=Point*10; slpg=slpg*10;} else myPoint=Point; evgens 2012.11.26 21:17 #5440 谁知道测试速度是否可以提高? 1...537538539540541542543544545546547548549550551...631 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
请帮助我正确理解在震荡器上寻找背离的问题。在这种情况下,让它成为MACD。我已经勾勒出了以下算法。
1)从头开始数柱子,寻找震荡器上的峰值。
2)创建包含峰值时间的数组。
并在条件满足的情况下将MACD[i]值输入其中。最后一个新峰的索引必须是[n],而倒数第二个则是[n+1]。
3)让我们考虑情况(1)下的进一步解决方案。
实际上,第2点的问题是:如何像在时间序列中那样组织这样一个数组,以便在每一个新的峰值时,数值会发生变化?
请帮助我们!
决定在你的代码中探究一下......。
我非常感谢你对我的代码进行分析。谢谢你花时间来做这件事。
我刚刚开始学习编程,所以这些意见非常重要,对将来有帮助。
现在进入正题。
真的,在这种形式下进行订单的全面搜索,并使用开放的订单进行进一步的分析(这里的一切都很清楚)。
这一部分的代码也被修改了,但论坛参与者写道,市场环境并不总是可用的init()函数。
有些变量可能没有被定义,或者我弄错了什么?
我不明白这个帖子的逻辑--(我在解释我对这个运营商的看法)
while(true) ...
我有一个错误处理块。
如果错误是正确的,我们会再次尝试检查条件并打开订单。
而当运算符 的值为真时,它就会起作用,也就是说,事实证明它不接受假。
谢谢你们的帮助。
请帮助我们!
在此阅读:https://www.mql5.com/ru/articles/1357 这是简单明了的。
在此阅读:https://www.mql5.com/ru/articles/1357 这是简单明了的。
只是别忘了,市场环境并不总是在init()中可用。
...我非常感谢你对我的代码进行分析。谢谢你花时间来做这件事。
而while语句在其值为真时起作用,也就是说,事实证明它不取假。
向专家顾问提问。代替滑点的OrderSend()是3,是否是针对4位数的报价?对于5位数的报价,我可以留下3位还是需要30位?
对于5位数的,你需要30个。
我在每个EA的init()中插入这样的结构,然后对4或5位数的DT没有区别,我推荐它。