[存档]任何菜鸟问题,为了不使论坛变得杂乱无章。专业人士,不要路过。没有你就无处可去 - 3. - 页 169 1...162163164165166167168169170171172173174175176...652 新评论 Maxim Zaguzov 2011.09.11 08:54 #1681 splxgf: DhP。 你如何 "减轻 "这个周期?需要很长的时间来计算。 if(iHigh(NULL,60,i)>LOWprice && LOWprice>iLow(NULL,60,i)) if(LOWprice> bid) CountH++ else CountL++; 或者更好的是,像这样。 if(iHigh(NULL,60,i)>LOWprice) if(LOWprice>iLow(NULL,60,i)) if(LOWprice> bid) CountH++ else CountL++; 还有一个想法是形成一个High和Low值的数组。也许这能让事情变得更快一些? [删除] 2011.09.11 09:06 #1682 abolk: 订单的选择https://docs.mql4.com/ru/trading/OrderSelect- 循环或按票选择 然后,Order*()函数查找相关的顺序参数 对不起,我的问题太直白了,但是。 如果我们在OrderSelect函数中 使用MODE_HISTORY作为选择的数据源,即在已关闭和已删除的订单中选择订单,那么我们如何找到最后关闭的订单的编号?这些订单在程序中是如何编号的?是从最后一个到第一个还是反过来? Denis Lazarev 2011.09.11 09:13 #1683 Xaoss1990: 当然,很抱歉,对于这些愚蠢的问题,但是。 如果在OrderSelect函数中 使用MODE_HISTORY作为数据源,即在已关闭和已删除的订单中选择订单,我如何找到最后关闭的订单的编号?这些订单在程序中是如何编号的?是从最后一个到第一个还是反过来? 网上有很多这样的问题 http://forum.alpari.ru/showthread.php?t=27708 Andrey F. Zelinsky 2011.09.11 09:13 #1684 Xaoss1990: 对不起,我的问题很愚蠢,但是。 如果在OrderSelect函数中 使用MODE_HISTORY作为选择的数据源,即在已关闭和已删除的订单中选择订单,我如何找到最后关闭的订单的编号?这些订单在程序中是如何编号的?是从最后一个到第一个还是反过来? 找到最后一个关闭的订单的函数与找到具有最大关闭时间的订单的函数类似 [删除] 2011.09.11 09:29 #1685 LazarevDenis: 很多问题已经在网上被问过了http://forum.alpari.ru/showthread.php?t=27708 О!找到了,谢谢。 OrderSelect(HistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY)。 这就对了,不是吗!? Maxim Zaguzov 2011.09.11 09:37 #1686 DhP: 如何 "缓解 "这个循环?它需要很长的时间来计算。咒语。 INS = True; for (int i=1; i<=6000; i++) { if (INS) { if (LOWprice > iHigh(NULL,60,i)) { INS = False; UPP = True; LOW = False; continue; } if (LOWprice < iLow (NULL,60,i)) { INS = False; UPP = False; LOW = True; continue; } } else { if (UPP) if (LOWprice > iHigh(NULL,60,i)) continue; else if (LOWprice < iLow (NULL,60,i)) { // INS = "False" UPP = False; LOW = True; continue; } if (LOW) if (LOWprice < iLow (NULL,60,i)) continue; else if (LOWprice > iHigh(NULL,60,i)) { // INS = "False" UPP = True; LOW = False; continue; } INS = True; } if (LOWprice > Bid) CountH++; else CountL++; } 其逻辑是,价格在历史条形图之外的情况比在历史条形图之内的情况更多。 INS = 内部。 我在一份传单上检查了代码的准确性。我没有检查代码的速度。但我相信布尔变量会带来很好的优势。 Andrey F. Zelinsky 2011.09.11 09:48 #1687 MaxZ:咒语。其逻辑是,价格在历史条形图之外的情况比在历史条形图之内的情况更多。INS = "内部"。P.S.: 我在一张纸上检查了代码的正确性。我没有检查代码的速度。但我相信布尔变量会带来很好的优势。 是的。你一定很扭曲,把三行清晰的代码变成难以理解的代码。如果你有拆分iLow、iHigh支票的 想法,你可以马上拆分。 if(LOWprice> bid)if(iHigh(NULL,60,i)>LOWprice)if( LOWprice>iLow(NULL,60,i))CountH++; if(LOWprice<=bid)if(iHigh(NULL,60,i)>LOWprice)if( LOWprice>iLow(NULL,60,i))CountL++; 而且不要乱动任何东西 Всеволод 2011.09.11 10:13 #1688 int HourPrices[20000]; for(int i=1; i<=6000; i++) for (double cPrice=iLow(NULL,60,i);cprice<=iHigh(NULL,60,i);cPrice+=Point) HourPrices[cPrice/Point]+=1; 从这样一个阵列中找到阻力水平是没有问题的。同时添加新条,删除旧条。而从它那里获取信息是两个循环,一个条件或ArrayMaximum将一次性给出所需的值。 Maxim Zaguzov 2011.09.11 10:30 #1689 abolk: 对。 你必须变得如此扭曲,把三行清晰的代码变成难以理解的代码。 如果你有把iLow、iHigh检查分开的想法,你可以马上把它分开。 并且不要乱用任何东西。一个与我上面建议的类似的变体(分离的如果)。 而你甚至没有尝试去理解我的想法(虽然我简单地描述了逻辑)...当价格很高时,我们会做一张支票而不是两张。价格低时的情况也是如此。而当价格在历史条形图内时(这相当罕见--这就是逻辑和想法!),我们会做两次检查(没有其他方法)。 检查的是酒吧外面的价格,而不是里面的价格。早些时候,他们是在大海捞针,而我,如果我没有看到另一根针,也不会去找它......在需要的时候,针会自己显示出来!:))) Всеволод 2011.09.11 10:48 #1690 MaxZ: 我在上面提出的一个类似的变体(分开的如果)。 而你甚至没有尝试去理解我的想法(虽然我简单地描述了逻辑)...当价格很高时,我们不做两张支票,而是做一张。价格低时的情况也是如此。而当价格在历史条形图内时(这相当罕见--这就是逻辑和想法!),我们会做两次检查(没有其他方法)。 if (LOWprice > iHigh(NULL,60,i)) continue; if (UPPprice < iLow (NULL,60,i)) continue; 你的版本可以简化为这两行加入到作者的版本中,只要对条件进行一些修改,原则上应该是相当快的。 1...162163164165166167168169170171172173174175176...652 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
splxgf:
你如何 "减轻 "这个周期?需要很长的时间来计算。
或者更好的是,像这样。
还有一个想法是形成一个High和Low值的数组。也许这能让事情变得更快一些?
订单的选择https://docs.mql4.com/ru/trading/OrderSelect- 循环或按票选择
然后,Order*()函数查找相关的顺序参数
对不起,我的问题太直白了,但是。
如果我们在OrderSelect函数中 使用MODE_HISTORY作为选择的数据源,即在已关闭和已删除的订单中选择订单,那么我们如何找到最后关闭的订单的编号?这些订单在程序中是如何编号的?是从最后一个到第一个还是反过来?
当然,很抱歉,对于这些愚蠢的问题,但是。
如果在OrderSelect函数中 使用MODE_HISTORY作为数据源,即在已关闭和已删除的订单中选择订单,我如何找到最后关闭的订单的编号?这些订单在程序中是如何编号的?是从最后一个到第一个还是反过来?
网上有很多这样的问题
http://forum.alpari.ru/showthread.php?t=27708
对不起,我的问题很愚蠢,但是。
如果在OrderSelect函数中 使用MODE_HISTORY作为选择的数据源,即在已关闭和已删除的订单中选择订单,我如何找到最后关闭的订单的编号?这些订单在程序中是如何编号的?是从最后一个到第一个还是反过来?
找到最后一个关闭的订单的函数与找到具有最大关闭时间的订单的函数类似
很多问题已经在网上被问过了
http://forum.alpari.ru/showthread.php?t=27708
О!找到了,谢谢。
OrderSelect(HistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY)。
这就对了,不是吗!?
如何 "缓解 "这个循环?它需要很长的时间来计算。
咒语。
其逻辑是,价格在历史条形图之外的情况比在历史条形图之内的情况更多。
INS = 内部。
我在一份传单上检查了代码的准确性。我没有检查代码的速度。但我相信布尔变量会带来很好的优势。
咒语。
其逻辑是,价格在历史条形图之外的情况比在历史条形图之内的情况更多。
INS = "内部"。
P.S.: 我在一张纸上检查了代码的正确性。我没有检查代码的速度。但我相信布尔变量会带来很好的优势。
是的。
你一定很扭曲,把三行清晰的代码变成难以理解的代码。
如果你有拆分iLow、iHigh支票的 想法,你可以马上拆分。
而且不要乱动任何东西从这样一个阵列中找到阻力水平是没有问题的。同时添加新条,删除旧条。而从它那里获取信息是两个循环,一个条件或ArrayMaximum将一次性给出所需的值。
对。
你必须变得如此扭曲,把三行清晰的代码变成难以理解的代码。
如果你有把iLow、iHigh检查分开的想法,你可以马上把它分开。
并且不要乱用任何东西。一个与我上面建议的类似的变体(分离的如果)。
而你甚至没有尝试去理解我的想法(虽然我简单地描述了逻辑)...当价格很高时,我们会做一张支票而不是两张。价格低时的情况也是如此。而当价格在历史条形图内时(这相当罕见--这就是逻辑和想法!),我们会做两次检查(没有其他方法)。
检查的是酒吧外面的价格,而不是里面的价格。早些时候,他们是在大海捞针,而我,如果我没有看到另一根针,也不会去找它......在需要的时候,针会自己显示出来!:)))
我在上面提出的一个类似的变体(分开的如果)。
而你甚至没有尝试去理解我的想法(虽然我简单地描述了逻辑)...当价格很高时,我们不做两张支票,而是做一张。价格低时的情况也是如此。而当价格在历史条形图内时(这相当罕见--这就是逻辑和想法!),我们会做两次检查(没有其他方法)。