最低和最高函数返回什么 - 页 6

 
我也在想,显然在这种情况下,不是抽水的问题,而是不等历史抽水就开始建立新的酒吧。而这是一种正确的做法。但另一方面,想象一下一个交易专家顾问。发生连接失败,然后恢复连接。专家可以根据错误的指标值开仓,直到历史记录完全被调换。因此,这个问题超出了本专题的范围,涉及到一般的自动交易的安全问题。当然,问题并不简单。也许,解决方案将是一个预定义的变量"最后一个连续历史时期的长度"?指标(专家)可以阅读它并以某种方式处理情况。
 
这就是存储Bars值(不仅仅是Time[0])可以帮助的地方。就是说。

start() {..... if (PrevBars!=Bars-1) { init(); PrevBars=Bars-1; }
 
那些认真做交易的EA的人可能知道这个问题。而这种情况的某种治疗方法也包括在EA中。
 
存储Bars值(不仅仅是Time[0])....,可能会有帮助。

这里是该日志文件的一个片段,它显示当一个新的条形图 开始时,Bars增加了1,而不是要更新的条形图的数量。所以它没有帮助
2006.10.31 23:58:25 CZZ2 EURUSD,M1: shift=0, Bars=38230, Time[shift]=2006.10.31 22:51, High[shift]=1.2763, Low[shift]=1.2763 2006.10.31 23:58:25 CZZ2 EURUSD,M1: shift=1, Bars=38230, Time[shift]=2006.10.31 22:45, High[shift] =1.2762, Low[shift]=1.2762 2006.10.31 23:58:23 CZZ2 EURUSD,M1: shift=0, Bars=38229, Time[shift]=2006.10.31 22:45, High[shift]=1.2762, Low[shift]=1.2762



那些认真做交易的EA的人可能知道这个问题。而这种情况的某种治疗方法也包括在EA中。

好吧,我们可以尝试以某种方式处理这种情况,但似乎我们不能没有一些棘手的招数。特别是考虑到MQ在没有孔的图表上的刚性位置。 另一方面,终端知道它是否需要抽出历史。如果MQL能够获得这些知识,问题就会更自然地得到解决。



 
然后我们比较Time[0]和Time[1]。我自己只在这种情况下挣扎过一次,所以我不能从一开始就给你一个实用的代码。
 
然后我们比较Time[0]和Time[1]。我自己只在这种情况下挣扎过一次,所以我不能给你任何实用的代码。<br / translate="no">。

除非你首先启用 "无孔图表 "类型的代码,否则这不会有任何作用,因为孔的存在是MT的一种正常情况。尽管在大的时间范围内,它几乎能抓住所有的失败。
 
事实上,这是一种 "妖魔化" :)
编写代码时应采取最大限度的保护措施,因为数据交换不仅可以由终端引起,还可以由ISP、数据中心、经纪人、计算机挂起等引起。
 
顺便说一下,以防万一。28.搜索价格极值-http://www.alpari-idc.ru/ru/experts/articles/29.html
 
我担心具有最大保护的代码将不适合实际使用 :)。由于交易一般都有风险,我们可以把自己限制在一个合理的保护范围内。但我们在这里谈论的是一个相当频繁发生的情况。顺便说一下,我在上一篇文章中关于大时间段更好的安全性的结论是错误的。在历史互换之前,前一个条形可能有不正确的高点、低点和亏损值,而当前条形有不正确的高点、低点和开盘值。
 
是的,事实证明,大的时间段比小的时间段更危险,因为我还没有看到任何简单的方法来确定最后两个柱子的数据是否正确。你可以想象一个挂在分钟上的指标,并填充全局变量 GoodHistoryDepht。其他指标对照其要求的计算深度检查这个值,并作出决定。但由于MQ在孔上的位置,大部分时间(而且时间框架越长越大,直至完全拒绝日线)将根本不适合交易。特别是考虑到沟通失败更喜欢生活在真实的账户中。