错误 4756 - 页 3 1234 新评论 Simon Gniadkowski 2013.03.12 10:18 #21 BHC:我的EA在构建778时带来了奇怪的错误。0.1的成交量是正常的,显然不是无效的。 你能不能检查一下白银的符号属性,让我们知道SYMBOL_VOLUME_MIN和SYMBOL_VOLUME_STEP 是什么。 仅仅归一化并不总是足够的,例如,如果你的成交量步长是0.5,那么归一化就不能帮助你。 BHC 2013.03.12 10:47 #22 RaptorUK: 你能不能检查一下Silver的符号属性,并让我们知道SYMBOL_VOLUME_MIN和SYMBOL_VOLUME_STEP 是什么。 仅仅规范化并不总是足够的,例如,如果你的体积步长是0.5,那么规范化就不能帮助你。这个来源Print(" volume step: ",SymbolInfoDouble(_trade_symbol,SYMBOL_VOLUME_STEP),", volume minimum: ",", ",SymbolInfoDouble(_trade_symbol,SYMBOL_VOLUME_MIN)); return; 在测试者的日志中给出了这个...2013.03.12 12:46:01 Core 1 2013.01.23 13:32:59 volume step: 0.1, volume minimum:, 0.1 Simon Gniadkowski 2013.03.12 11:17 #23 BHC: 这个来源在测试者的日志中给出了这个...2013.03.12 12:46:01 Core 1 2013.01.23 13:32:59 volume step: 0.1, volume minimum:, 0.1问题可能出在你的错误报告上,我没有用mql5检查过,但这在mql4上是行不通的 . .if(_result.retcode != ( 0 || TRADE_RETCODE_PLACED || TRADE_RETCODE_DONE))相反,试试这个 .if( _result.retcode != 0 && _result.retcode != TRADE_RETCODE_PLACED && _result.retcode != TRADE_RETCODE_DONE ) BHC 2013.03.12 12:01 #24 这样就摆脱了错误!谢谢 Alain Verleyen 2013.03.12 12:15 #25 BHC: 这就摆脱了错误!谢谢if(_result.retcode != ( 0 || TRADE_RETCODE_PLACED || TRADE_RETCODE_DONE))是否有任何语言的这种语法是有效的? BHC 2013.03.12 12:22 #26 其实我也没有遇到过......。我想我是从某人的订单检查的实施中得到的。它是在这个网站上... Simon Gniadkowski 2013.03.12 12:30 #27 angevoyageur:是否有任何语言的这种语法是有效的? 也许,如果变量是bool类型的,它可能会有一些意义。我在mql4论坛上看到一些人做了类似的事情,这是一个简单的错误。 Alain Verleyen 2013.03.12 12:31 #28 RaptorUK: 这是你找到的线程吗?https://www.mql5.com/en/forum/10850,它报告的问题与我的问题相同。我没有看到这个主题。解决方案就像我说的那样,使用OnTradeTransaction()事件处理程序(不要使用这个代码,它是用来试验和测试的)。void OnTradeTransaction(const MqlTradeTransaction& trans, const MqlTradeRequest& request, const MqlTradeResult& result) { if (trans.type == TRADE_TRANSACTION_DEAL_ADD) { if (execution == SYMBOL_TRADE_EXECUTION_MARKET) { if (!trade.PositionModify(_Symbol, _sl, _tp)) if (debugMode) { Print("Modify SL & TP failed. Return code=", trade.ResultRetcode(), ". Code description: ", trade.ResultRetcodeDescription()); Print("Deal ticket : ", trans.deal); } else if (debugMode) Print("Modify SL & TP executed successfully. Return code=", trade.ResultRetcode(), " (", trade.ResultRetcodeDescription(),")"); } } } 这是在工作。_sl和_tp是全局变量,在本地处理肯定更好。我想你可以用OrderSend()做同样的事情。 Simon Gniadkowski 2013.03.12 12:52 #29 angevoyageur:我没有看到这个主题。解决方案就像我说的那样,使用OnTradeTransaction()事件处理程序(不要使用这个代码,它是用来试验和测试的)。这是在工作。_sl和_tp是全局变量,在本地处理肯定更好。trade是CTrade类的类型。我想你可以用OrderSend()做同样的事情。我远离CTrade类,试图学习基础知识,我从来没有使用过OOP,所以类、结构等都是我学习mql5的一部分。我相信OnTradeTransaction()会提供一个变通方法,但对我来说,即使对我正在做的简单EA来说,它似乎也是一个相当可怕的方法,OrderSend() 的文档中也没有提到需要使用它。我想,我将确认,我在策略测试器中看到了同样的问题,不确定这到底是如何发生的,我将在增加一些错误报告后再试一次,以确保。 Alain Verleyen 2013.03.12 13:15 #30 RaptorUK:我远离CTrade类,试图学习基础知识,我从来没有使用过OOP,所以类、结构等都是我学习mql5的一部分。我相信OnTradeTransaction()会提供一个变通方法,但对我来说,即使对我正在做的简单EA来说,它似乎也是一个相当可怕的方法,OrderSend() 的文档中也没有提到需要使用它。我想,我将确认,我在策略测试器中看到了同样的问题,不确定这到底是如何发生的,我将在增加一些错误报告的情况下再次尝试,以确保。我理解你对OOP的立场。它总是 比 "传统 "方法花费 更多的时间,对于大型(或中型)项目来说是非常有用的。我很想 知道对于我们的问题是否存在一个 "经典 "的解决方案。 1234 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我的EA在构建778时带来了奇怪的错误。0.1的成交量是正常的,显然不是无效的。
你能不能检查一下Silver的符号属性,并让我们知道SYMBOL_VOLUME_MIN和SYMBOL_VOLUME_STEP 是什么。 仅仅规范化并不总是足够的,例如,如果你的体积步长是0.5,那么规范化就不能帮助你。
这个来源
在测试者的日志中给出了这个...
2013.03.12 12:46:01 Core 1 2013.01.23 13:32:59 volume step: 0.1, volume minimum:, 0.1
这个来源
在测试者的日志中给出了这个...
2013.03.12 12:46:01 Core 1 2013.01.23 13:32:59 volume step: 0.1, volume minimum:, 0.1
问题可能出在你的错误报告上,我没有用mql5检查过,但这在mql4上是行不通的 . .
相反,试试这个 .
这就摆脱了错误!谢谢
是否有任何语言的这种语法是有效的?
是否有任何语言的这种语法是有效的?
这是你找到的线程吗?https://www.mql5.com/en/forum/10850,它报告的问题与我的问题相同。
我没有看到这个主题。
解决方案就像我说的那样,使用OnTradeTransaction()事件处理程序(不要使用这个代码,它是用来试验和测试的)。
这是在工作。_sl和_tp是全局变量,在本地处理肯定更好。我想你可以用OrderSend()做同样的事情。
我没有看到这个主题。
解决方案就像我说的那样,使用OnTradeTransaction()事件处理程序(不要使用这个代码,它是用来试验和测试的)。
这是在工作。_sl和_tp是全局变量,在本地处理肯定更好。trade是CTrade类的类型。我想你可以用OrderSend()做同样的事情。
我远离CTrade类,试图学习基础知识,我从来没有使用过OOP,所以类、结构等都是我学习mql5的一部分。
我相信OnTradeTransaction()会提供一个变通方法,但对我来说,即使对我正在做的简单EA来说,它似乎也是一个相当可怕的方法,OrderSend() 的文档中也没有提到需要使用它。我想,我将确认,我在策略测试器中看到了同样的问题,不确定这到底是如何发生的,我将在增加一些错误报告后再试一次,以确保。
我远离CTrade类,试图学习基础知识,我从来没有使用过OOP,所以类、结构等都是我学习mql5的一部分。
我相信OnTradeTransaction()会提供一个变通方法,但对我来说,即使对我正在做的简单EA来说,它似乎也是一个相当可怕的方法,OrderSend() 的文档中也没有提到需要使用它。我想,我将确认,我在策略测试器中看到了同样的问题,不确定这到底是如何发生的,我将在增加一些错误报告的情况下再次尝试,以确保。
我理解你对OOP的立场。它总是 比 "传统 "方法花费 更多的时间,对于大型(或中型)项目来说是非常有用的。
我很想 知道对于我们的问题是否存在一个 "经典 "的解决方案。