文章 "MQL5 向导:如何创建交易信号模块" - 页 3 12345678 新评论 Rashid Umarov 2011.06.08 17:26 #21 在新版 MQL5 向导中,信号模块的格式发生了变化。有关信息请参见此处 -https://www.mql5.com/ru/forum/3724/66962#comment_66962。 Обсуждение статьи "Мастер MQL5: Новая версия" www.mql5.com Изменения в архитектуре сигналов позволяют теперь создавать торговые роботы на основе комбинации различных рыночных моделей. Oleg 2011.06.08 17:52 #22 Rosh: 在新版 MQL5 向导中,信号模块的格式发生了变化。有关信息,请参见此处 -https://www.mql5.com/ru/forum/3724/66962#comment_66962。 我进行了这些更改,向导看到了新的信号模块,但生成的智能交易系统由于某种原因无法进行交易。我可以使用调试功能来获取 CheckOpenShort/CheckOpenLong 函数吗? Oleg 2011.06.12 10:55 #23 我查看了信号文件夹中几个准备就绪的信号的代码,其中没有 CheckOpenShort/CheckOpenLong 函数的实现。取而代之的是//--- 检查市场模型是否形成的方法 virtual int LongCondition(); virtual int ShortCondition(); 我的理解正确吗?在编写我自己的模块时,我是否也需要实现它们?CExpert 类 说明何时出现? Rashid Umarov 2011.06.12 11:42 #24 beginner: 我查看了信号文件夹中几个准备就绪的信号的代码,其中没有 CheckOpenShort/CheckOpenLong 函数的实现。我是否正确使用了它们? 是的,没错。 Oleg 2011.06.12 12:07 #25 Rosh: 是的,没错。说实话,我有点困惑。CExpertSignal 类中 有 CheckOpenShort/CheckOpenLong 函数。你在信号中使用了其他函数,但我也不明白 CExpert 在哪里调用了这些函数。问题是,我从关于编写自己的信号模块的文章中获取了一个现成的信号,让向导看到了它(你或许可以对关于新格式的文章进行修改),并用这个信号得到了一个智能交易系统,但它并没有进行交易,一年来测试器中没有一笔交易。 在构造函数中调用函数--这很清楚,但为什么不使用标准函数呢? Oleg 2011.06.12 15:07 #26 请看看出了什么问题。不在测试仪中交易。 附加的文件: 1.mq5 7 kb SampleSignal.mqh 12 kb Aleksey Sergan 2011.06.12 15:22 #27 beginner: 请看看出了什么问题。测试仪中没有交易。该模块正在交易。对于您的情况,将多头替换为if( High(1) > High(2) && Low(2)>Low(3) && High(2)<High(3) && Close(3)>Open(3) ){ return(100); } //--- условие не выполнено return(0); }替换为Open(1)< Open(2)短线 - 自己查找 附加的文件: InnerBarSignal.mqh 4 kb Oleg 2011.06.12 15:36 #28 gdtt:该模块交易的情况下,将多头替换为替换为换成短线,你自己就会发现。 是的,谢谢!我花了一天的时间,我想我做了文章中的所有事情,我的错误在哪里? Aleksey Sergan 2011.06.12 15:48 #29 beginner: 是的,谢谢!我花了一天的时间,我想我做的一切都和文章里说的一样,我的错误在哪里?在新的向导中,与以前的向导相比,有非常大的变化、virtual bool CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration);virtual bool CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration);我的理解如下:在 Expert Advisor 中使用的多个对象中,应该有一个 CExpertSignal 类对象具有主属性,它可以使用这些函数。virtual int ShortCondition(); // 检查卖出开仓条件virtual int LongCondition(); // 检查买入建仓条件为了点到为止,我们需要一篇关于如何在新向导中编写自己的信号模块的文章,我们拭目以待。 新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 KimIV的有用功能 MQL5 向导:如何创建交易信号模块 Oleg 2011.06.12 16:05 #30 是的,文章丢失了,CExpertSignal 文档可能也需要更新。 12345678 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
在新版 MQL5 向导中,信号模块的格式发生了变化。有关信息,请参见此处 -https://www.mql5.com/ru/forum/3724/66962#comment_66962。
我查看了信号文件夹中几个准备就绪的信号的代码,其中没有 CheckOpenShort/CheckOpenLong 函数的实现。我是否正确使用了它们?
是的,没错。
说实话,我有点困惑。CExpertSignal 类中 有 CheckOpenShort/CheckOpenLong 函数。你在信号中使用了其他函数,但我也不明白 CExpert 在哪里调用了这些函数。问题是,我从关于编写自己的信号模块的文章中获取了一个现成的信号,让向导看到了它(你或许可以对关于新格式的文章进行修改),并用这个信号得到了一个智能交易系统,但它并没有进行交易,一年来测试器中没有一笔交易。
在构造函数中调用函数--这很清楚,但为什么不使用标准函数呢?请看看出了什么问题。测试仪中没有交易。
该模块正在交易。
对于您的情况,将多头替换为
替换为
短线 - 自己查找
该模块交易
的情况下,将多头替换为
替换为
换成短线,你自己就会发现。
是的,谢谢!我花了一天的时间,我想我做的一切都和文章里说的一样,我的错误在哪里?
在新的向导中,与以前的向导相比,有非常大的变化、
virtual bool CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration);
virtual bool CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration);
我的理解如下:在 Expert Advisor 中使用的多个对象中,应该有一个 CExpertSignal 类对象具有主属性,它可以使用这些函数。
virtual int ShortCondition(); // 检查卖出开仓条件
virtual int LongCondition(); // 检查买入建仓条件
为了点到为止,我们需要一篇关于如何在新向导中编写自己的信号模块的文章,我们拭目以待。