#include <TypeToBytes.mqh> // https://www.mql5.com/ru/code/16280voidOnTick( void )
{
staticMqlTick PrevTick;
staticint Amount = 0;
MqlTick Ticks[];
if (Amount > 0)
{
Amount = CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, PrevTick.time_msc);
int i;
for (i = 0; i < Amount; i++)
if (_R(Ticks[i]) == PrevTick) // https://www.mql5.com/ru/code/16280break;
if (i == Amount)
Print("В истории (length = " + (string)Amount + ") нет тика, что был на предыдущем Event.");
}
else
Amount = CopyTicks(_Symbol, Ticks, COPY_TICKS_ALL, TimeCurrent() * 1000);
if (Amount > 0)
PrevTick = Ticks[Amount - 1];
}
结果
2016.09.1511:04:02.810 Test2 (RTS-9.16,M1) В истории (length = 2) нет тика, что был на предыдущем Event.
2016.09.1511:03:59.312 Test2 (RTS-9.16,M1) В истории (length = 13) нет тика, что был на предыдущем Event.
2016.09.1511:03:59.290 Test2 (RTS-9.16,M1) В истории (length = 1) нет тика, что был на предыдущем Event.
比如说
略有重修
结果
事实证明,两个价格都从非零值变为零。而在零点之后又回到了非零点。
指标显示,CopyTicks可能没有送出最后的点位
更加有趣的是
结果CopyTicks既可以落后于也可以领先于Event-tick。Event-tick经常有一个零标志。
ZZY 在MqlTick 的帮助下,将MqlTick 标志改成标志。
其他人如何使用CopyTicks,我不知道。不幸的是,没有信任。非常原始。
EA
结果
一个在历史上的打勾,在下一个打勾事件中已经在历史上消失了!这是不可能的。
亲爱的开发者,请把CopyTicks带到一个工作状态。即使是简单的测试也会失败。
我需要在每个OnTick上向数组添加新的历史刻度。有谁实现了这一点?
我在挣扎--它没有用。我无法绕过CopyTicks的曲率。
目前,CopyTicks有一定的伸缩性,但在输入参数为==0的情况下实时工作。
下面是其中的一个延伸接收极端的刻度,发现最近的刻度比前一个刻度的时间短。
看看这个指标的代码
https://www.mql5.com/ru/forum/94399/page6#comment_2776784
我们采取极端的刻度线,发现最近的刻度线比前一个刻度线的时间要短。
我是否必须就这个主题的报告写信给服务台,还是开发人员自己监督?