所有行业的表。通过MQL5访问 - 页 5

 
prostotrader:

在我的代码中,这里是对重复的预防。

那么:)在你的代码中,有一个刻度的损失。
 
Yury Kulikov:
那么:)你的代码中出现了一个损失的刻度。

:) 但由于某些原因,它们是多余的 :)

非常感谢你,尤里,我现在就去看看。

 

的确,当切换到COPY_TICKS_TRADE时--刻度线混合的错误消失了,但同时在COPY_TICKS_TRADE模式下,无法接收标志。

  • TICK_FLAG_BUY - 由于买入交易 而发生的勾选。
  • TICK_FLAG_SELL - 由于卖出交易而发生的滴答。

 
Karputov Vladimir:

的确,当切换到COPY_TICKS_TRADE时--刻度线混合的错误消失了,但同时在COPY_TICKS_TRADE模式下,无法接收标志。

  • TICK_FLAG_BUY - 由于买入交易 而发生的勾选。
  • TICK_FLAG_SELL - 由于卖出交易而发生的滴答。

旗帜是真实交易的结果(我现在正在测试它们)。
 
Yury Kulikov:
好吧,那么:)你的代码中存在着一个损耗的刻度。

尤里,试试我的指标(仔细看)。

等待 虱子的出现,而不是在历史中观察它们。

我每次都会在新虱子出现之前复制。

int copied=CopyTicks(Symbol(),ticks,COPY_TICKS_TRADE,start_time,0);

"0 "是指有多少虱子重新出现。

如果复制的=0,就没有新的刻度线。

如果我们取消这种 "支持"。

if(start_time==ulong(ticks[copied-1].time_msc)) return;

那么肯定会有重复的情况。

其任务不是查看tick历史,而是实时显示tick feed。

 
prostotrader:
在真实的情况下,旗子进来了(我现在正在真实的情况下进行测试)。

是的,这是正确的。我对COPY_TICKS_INFO 产生了困惑。

已添加。

尽管如此,在COPY_TICKS_ALL模式,一些刻度线以杂乱的顺序到达

 
prostotrader:

尤里,试试我的指标(仔细看)。

你的代码有太多的字母 :)

该算法很简单。在OnCalculate() 中查看实际成交量,如果它发生了变化,则加载最后的ticks,记住最后时刻有多少ticks(相同的值time_msc),以便下一次调用CopyTicks()将这些ticks从计算中切断。

 
Yury Kulikov:

你的代码里有太多的字母 :)

算法很简单。在OnCalculate()中查看真实的成交量,如果它发生了变化,那么就加载最后的ticks,记住在最后时刻有多少ticks(相同的值time_msc),所以下一次调用CopyTicks()时,将这些ticks排除在计算之外。

谢谢,我想我知道如何解决这个问题......
 
Yury Kulikov:

你的代码里有太多的字母 :)

算法很简单。在OnCalculate()中查看实际成交量,如果它有变化,你就下载最后的ticks,并记住最后时刻有多少ticks(相同的值time_msc),所以下一次调用CopyTicks()时,将这些ticks从计算中排除。

尤里,再次非常感谢你的得力建议。

我做了所有的事情,它工作得很好,但在超过3个小时的时间里,没有出现任何情况。

我描述了:)

 

好了,终于成功了!

一切都是正确的,并且不再有重复或丢失的蜱虫。

演示在ZIP文件中,如果你想自己检查,调试版本在地下室。

附加的文件:
原因: