通过专家顾问运行脚本 - 页 2 123456789 新评论 qjol 2011.10.25 13:27 #11 Shaun: 真实的故事,我是新来的,对这个网站,对编码也是。以前从未编码过。 从这里 开始 shaun 2011.10.26 12:16 #12 qjol: 从这里 开始 谢谢你提供这些信息。 说实话,我来到交易员/编码论坛是想从已经做过的人那里得到答案,并可能帮助我,而不是自己从头开始学习如何编码。 Simon Gniadkowski 2011.10.26 12:22 #13 Shaun: 谢谢你提供这些信息。 说实话,我来到交易员/编码论坛是想从已经做过的人那里得到答案,并可能帮助我,而不是自己从头开始学习如何编码。 展示你的脚本,展示你的EA,也许有人会怜悯你,把它们结合起来 . . qjol 2011.10.26 14:36 #14 Shaun: 谢谢你提供这些信息。 说实话,我来到交易员/编码论坛是想从已经做过的人那里得到答案,并可能帮助我,而不是自己从头开始学习如何编码。 好吧,展示你的代码,我们会试着帮助你,但我相信你不会期望我为你做整个代码。 Dadas 2012.08.11 09:43 #15 谢谢大家! 根据你的建议,我在我的EA中写了这样的东西。 if(MyCondition) { PlaySound("my_alert.wav"); if(MessageBox("Do you really want to run the script?", 0, MB_YESNO|MB_ICONQUESTION)!=IDNO) { MyScript(); DisableAllEA(); Sleep(3000); } } 在某种情况下,由MyCondition定义,这将播放我的警报,所以我可以听到我必须检查正在发生的事情。 一个信息框跳出来,问我是否要运行这个脚本--这是一个关闭所有头寸的脚本。 当我点击[YES]按钮时,脚本就会执行--关闭所有头寸--并禁用MT4的[专家]按钮。 当然,你不需要禁用专家,除非你有理由这么做。 如果在下一个循环中,你的EA没有发现这个条件,它就不会触发脚本。 很明显,这只是一个变通办法,而不是一个完美的解决方案,因为EA在每个tick 上都会不断循环。 而且在脚本执行之前,你不能禁用专家,因为脚本是在EA内部,不是独立的。 P.S. 为了使其发挥作用,你需要在你的EA的开始部分包括以下内容。 #include <WinUser32.mqh> Dadas 2012.08.11 10:26 #16 我刚刚想到了另一个解决办法!!!。 你可以给你的脚本指定一个快捷键(HOTKEY)。 这样,你就可以模拟键盘事件了。 所以,更好。 if(MyCondition) { EnableScript(); DisableAllEA(); Sleep(3000); } 你可以在独立的脚本中加入你的alert.wav,也可以在消息框中加入。 而且,你可以在你对情况采取行动后,决定是否启用专家。 这样,你就不会有过度堆积的风险。 当然,这需要对按键事件进行更多的研究。 Ctrl+E键盘事件的功能是。 void DisableAllEA() { keybd_event(17, 0, 0, 0); // CTRL down keybd_event(69, 0, 0, 0); // E down keybd_event(69, 0, 2, 0); // E up keybd_event(17, 0, 2, 0); // CTRL up } 只要在谷歌上搜索一下,你就可以找到每个键的数字代码。 或者,你可以使用这个链接: https://www.mql5.com/en/code 当然,keybd_event不是mql4的一部分,这就是为什么你需要。 #include <WinUser32.mqh> Dadas 2012.08.12 07:57 #17 还有,顺便问一下! 有谁曾经厌倦了在图表上实施EA作为一个指标? 这应该是很好的工作! 你可以在一个图表上运行任何数量的指标! 我已经尝试过将脚本作为指标来实施,而且工作得很好! Simon Gniadkowski 2012.08.12 08:24 #18 Dadas: 还有,顺便问一下! 有谁曾经厌倦了在图表上实施EA作为一个指标? 它应该同样有效! 你不能从指标中进行交易,只能从脚本和EA中进行。 Dadas 2012.08.12 10:55 #19 RaptorUK: 你不能通过指标进行交易,只能通过脚本和EA。 那么,一个EA可以作为一个脚本运行吗?在一个循环中? 只是,在无限循环的情况下,电脑最终会崩溃。 有什么方法可以在循环中触发一个脚本,由一些刻度线控制,比如每50ms或类似的东西? 而不是由MT4的ticks控制? Dadas 2012.08.12 11:14 #20 RaptorUK: 你不能通过指标进行交易,只能通过脚本和EA。 还有一个想法。 因此,你可以使用键盘事件功能,通过脚本下单。 1.写一个脚本来自动下订单。 2.2. 给它指定一个HOTKEY。 3.3.在作为指标运行的EA中定义键盘事件。 然后,您可以为平仓订单做同样的事情。 这就是您的成果!一个作为指标运行的EA,正在做它的工作! 这种方式的唯一缺点是,你不能用键盘事件禁用指标,只能从图表中手动删除它。 123456789 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
真实的故事,我是新来的,对这个网站,对编码也是。以前从未编码过。
从这里 开始
谢谢你提供这些信息。
说实话,我来到交易员/编码论坛是想从已经做过的人那里得到答案,并可能帮助我,而不是自己从头开始学习如何编码。
谢谢你提供这些信息。
说实话,我来到交易员/编码论坛是想从已经做过的人那里得到答案,并可能帮助我,而不是自己从头开始学习如何编码。
谢谢你提供这些信息。
说实话,我来到交易员/编码论坛是想从已经做过的人那里得到答案,并可能帮助我,而不是自己从头开始学习如何编码。
谢谢大家!
根据你的建议,我在我的EA中写了这样的东西。
在某种情况下,由MyCondition定义,这将播放我的警报,所以我可以听到我必须检查正在发生的事情。
一个信息框跳出来,问我是否要运行这个脚本--这是一个关闭所有头寸的脚本。
当我点击[YES]按钮时,脚本就会执行--关闭所有头寸--并禁用MT4的[专家]按钮。
当然,你不需要禁用专家,除非你有理由这么做。
如果在下一个循环中,你的EA没有发现这个条件,它就不会触发脚本。
很明显,这只是一个变通办法,而不是一个完美的解决方案,因为EA在每个tick 上都会不断循环。
而且在脚本执行之前,你不能禁用专家,因为脚本是在EA内部,不是独立的。
P.S.
为了使其发挥作用,你需要在你的EA的开始部分包括以下内容。
#include <WinUser32.mqh>
我刚刚想到了另一个解决办法!!!。
你可以给你的脚本指定一个快捷键(HOTKEY)。
这样,你就可以模拟键盘事件了。
所以,更好。
if(MyCondition) { EnableScript(); DisableAllEA(); Sleep(3000); }
你可以在独立的脚本中加入你的alert.wav,也可以在消息框中加入。
而且,你可以在你对情况采取行动后,决定是否启用专家。
这样,你就不会有过度堆积的风险。
当然,这需要对按键事件进行更多的研究。
Ctrl+E键盘事件的功能是。
只要在谷歌上搜索一下,你就可以找到每个键的数字代码。
或者,你可以使用这个链接: https://www.mql5.com/en/code
当然,keybd_event不是mql4的一部分,这就是为什么你需要。
#include <WinUser32.mqh>
还有,顺便问一下!
有谁曾经厌倦了在图表上实施EA作为一个指标?
这应该是很好的工作!
你可以在一个图表上运行任何数量的指标!
我已经尝试过将脚本作为指标来实施,而且工作得很好!
还有,顺便问一下!
有谁曾经厌倦了在图表上实施EA作为一个指标?
它应该同样有效!
你不能从指标中进行交易,只能从脚本和EA中进行。
你不能通过指标进行交易,只能通过脚本和EA。
那么,一个EA可以作为一个脚本运行吗?在一个循环中?
只是,在无限循环的情况下,电脑最终会崩溃。
有什么方法可以在循环中触发一个脚本,由一些刻度线控制,比如每50ms或类似的东西?
而不是由MT4的ticks控制?
你不能通过指标进行交易,只能通过脚本和EA。
还有一个想法。
因此,你可以使用键盘事件功能,通过脚本下单。
1.写一个脚本来自动下订单。
2.2. 给它指定一个HOTKEY。
3.3.在作为指标运行的EA中定义键盘事件。
然后,您可以为平仓订单做同样的事情。
这就是您的成果!一个作为指标运行的EA,正在做它的工作!
这种方式的唯一缺点是,你不能用键盘事件禁用指标,只能从图表中手动删除它。