新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1301 1...129412951296129712981299130013011302130313041305130613071308...1953 新评论 Denis Pershin 2020.11.08 06:23 #13001 Igor Makanu:一切都需要修复。你的代码从订单历史中搜索到第一份具有给定符号和给定魔术师的订单。然后计算发现的无利可图的订单数量,并将该订单数量乘以2的幂。在论坛上搜索"CMM的有用功能",然后做这样的事情- 找到我们的符号和我们的魔法 的最后订单的票。 - 从找到的票据中获得OrderProfit()和OrderLots(),如有必要,乘以你的马丁格尔系数。ZS:可能有一个现成的解决方案这个问题有点不同,我在每个开口上都有一个浮动的地段,需要乘以系数。例如,第一个膝盖的手数为0.07,而第二个可能是0.04,损失后第三个膝盖的手数为0.05,这里是这个手数,需要乘以系数4。我的函数计算的是一个浮动手数,它需要乘以LotSize() * 2,4,8,16等等。 Igor Makanu 2020.11.08 06:35 #13002 Denis Pershin:这个任务有点不同,我在每个开口处都有一个浮动的地段,我需要把它乘以一个系数。 例如第一个膝盖的手数是0.07,第二个可能是0.04,在损失之后,第三个膝盖的手数是0.05,这个手数应该乘以系数4。 我的函数计算的是一个浮动手数,它需要乘以LotSize() * 2,4,8,16等等。 这种 如果你知道起始手数,你可以用最后一个亏损的订单来检查它的手数,并计算出膝数,如果该订单处于盈利状态,你可以再次从起始手数开始。 学会和你的魔术师一起找到最后一个封闭的订单 如果批量计算系统非常复杂 - 一个魔术师+新订单的膝盖号码的选项,你也可以使用评论,但不是很可靠,最好使用几个魔术师。 你的代码只是通过订单 - 它没有看到任何东西,这就是为什么我注意到它的原因 Denis Pershin 2020.11.08 06:54 #13003 Igor Makanu:像这样如果你知道起始手数,那么你可以用最后一个亏损的订单来检查它的手数,并计算出膝数,如果该订单处于盈利状态,你可以再次从起始手数开始。学会和你的魔术师一起找到最后一个封闭的订单如果批量计算系统相当复杂--一个魔术师的选项+新订单的一个膝盖的数量,你也可以使用评论,但不可靠,最好使用几个魔术师。你的代码只是通过订单 - 它没有看到任何东西,这就是为什么我注意到了它这就是困难所在:起拍价是未知的,是根据n%的股权计算的。我不愿意使用这个评论。现在代码中计算了连续损失的数量,并且考虑得很正确,但我不能决定如何使用2,4,8,16的乘法系数来改进它。 Igor Makanu 2020.11.08 07:11 #13004 Denis Pershin:现在的代码计算出了连续输的次数,而且计算正确,但如何用2,4,8,16的乘法系数进行计算,我想不出来。 不对 但如果它适合你,那就试着用这种方式来修复你的代码。 int c=1; .... c*=2; // 1,2,4,8.... Vitaly Muzichenko 2020.11.08 07:18 #13005 Igor Makanu:错误的但如果它适合你,那么请尝试像这样纠正你的代码 他将得到第三个乘法:3*2=6,而他已经需要8,第四个乘法将是8,而他需要16。 [删除] 2020.11.08 07:27 #13006 k = {1,2,4,8,16,......} cn = k[c] Igor Makanu 2020.11.08 07:29 #13007 Vitaly Muzichenko:他在第三个乘法中会得到:3*2=6,而他已经需要8,在第四个乘法中他会得到8,而他需要16。 void OnStart() { int c = 1; for(int i = 1; i <= 5; i++) { c *= 2; printf("i = %i, c = %i",i,c); } } 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 1, c = 2 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 2, c = 4 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 3, c = 8 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 4, c = 16 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 5, c = 32 6在哪里? 还是什么呢? Vitaly Muzichenko 2020.11.08 07:32 #13008 Igor Makanu: 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 1, c = 2 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 2, c = 4 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 3, c = 8 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 4, c = 16 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 5, c = 32 6在哪里?还是什么呢? 是的,我弄错了。 [删除] 2020.11.08 07:49 #13009 MQ是否计划在移动平台上增加自定义指标? Denis Pershin 2020.11.08 08:33 #13010 Igor Makanu: 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 1, c = 2 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 2, c = 4 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 3, c = 8 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 4, c = 16 2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 5, c = 32 6在哪里?或需要什么? 谢谢你,非常有帮助) 1...129412951296129712981299130013011302130313041305130613071308...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
一切都需要修复。
你的代码从订单历史中搜索到第一份具有给定符号和给定魔术师的订单。
然后计算发现的无利可图的订单数量,并将该订单数量乘以2的幂。
在论坛上搜索"CMM的有用功能",然后做这样的事情
- 找到我们的符号和我们的魔法 的最后订单的票。
- 从找到的票据中获得OrderProfit()和OrderLots(),如有必要,乘以你的马丁格尔系数。
ZS:可能有一个现成的解决方案
这种
如果你知道起始手数,你可以用最后一个亏损的订单来检查它的手数,并计算出膝数,如果该订单处于盈利状态,你可以再次从起始手数开始。
学会和你的魔术师一起找到最后一个封闭的订单
如果批量计算系统非常复杂 - 一个魔术师+新订单的膝盖号码的选项,你也可以使用评论,但不是很可靠,最好使用几个魔术师。
你的代码只是通过订单 - 它没有看到任何东西,这就是为什么我注意到它的原因
像这样
如果你知道起始手数,那么你可以用最后一个亏损的订单来检查它的手数,并计算出膝数,如果该订单处于盈利状态,你可以再次从起始手数开始。
学会和你的魔术师一起找到最后一个封闭的订单
如果批量计算系统相当复杂--一个魔术师的选项+新订单的一个膝盖的数量,你也可以使用评论,但不可靠,最好使用几个魔术师。
你的代码只是通过订单 - 它没有看到任何东西,这就是为什么我注意到了它
不对
但如果它适合你,那就试着用这种方式来修复你的代码。
错误的
但如果它适合你,那么请尝试像这样纠正你的代码
他将得到第三个乘法:3*2=6,而他已经需要8,第四个乘法将是8,而他需要16。
k = {1,2,4,8,16,......}
cn = k[c]
他在第三个乘法中会得到:3*2=6,而他已经需要8,在第四个乘法中他会得到8,而他需要16。
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 1, c = 2
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 2, c = 4
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 3, c = 8
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 4, c = 16
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 5, c = 32
6在哪里?
还是什么呢?
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 1, c = 2
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 2, c = 4
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 3, c = 8
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 4, c = 16
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 5, c = 32
6在哪里?
还是什么呢?
是的,我弄错了。
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 1, c = 2
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 2, c = 4
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 3, c = 8
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 4, c = 16
2020.11.08 11:28:09.527 tst (EURUSD,H1) i = 5, c = 32
6在哪里?
或需要什么?
谢谢你,非常有帮助)