Индикаторы: Ping - страница 3

 

В вашем индикаторе есть логическая проблема.

Ping = PrevTime ? MathAbs(Tick.time_msc - PrevTick.time_msc - (NowTime - PrevTime) / 1 e3) : 0;

Вы не можете просто взять абсолютное значение и посчитать его как задержку. Задержка -250 мс "вперед" будет считаться как задержка 250, а это нехорошо.

Тики часто принимаются пакетами в МТ5, поэтому и возникают отрицательные значения.

Не думаю, что можно вычислить что-то точное по этому поводу. Я убрал MathAbs() и разрешил отрицательные значения, все хорошо сбалансировано между плюсовыми и минусовыми значениями.


 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Индикаторы: Пинг

Ален Верлейен , 2023.03.09 20:58

С вашим индикатором возникла логическая проблема.

Ping = PrevTime ? MathAbs (Tick.time_msc - PrevTick.time_msc - (NowTime - PrevTime) / 1 e3) : 0 ;

Вы не можете просто взять абсолютное значение и считать его задержкой. -250 мс «заранее» будет считаться задержкой 250, это нехорошо.

Тики часто поступают в МТ5 пакетами, поэтому и отрицательные значения.

Я не думаю, что можно что-то точно вычислить по этому поводу. Я удалил MathAbs() и разрешил отрицательные значения, все хорошо сбалансировано между положительными и отрицательными значениями.



 
Alain Verleyen #:

В вашем индикаторе есть логическая проблема.

Любое отклонение от нуля не является идеальным.
 
Alain Verleyen #:

Наводящий вопрос: разве время в тиках проставляет терминал? ИМХО, тиковая история формируется сервером. Тогда о каком пинге терминала идет речь?

 
Stanislav Korotky # :

Наводящий вопрос: разве время в тиках проставляет терминал? ИМХО, тиковая история формируется сервером. Тогда о каком пинге терминала идет речь?

Конечно, я согласен, это не из Терминала.

Невозможно точно узнать реальную задержку в сети.

 
Stanislav Korotky #:

Наводящий вопрос: разве время в тиках проставляет терминал? ИМХО, тиковая история формируется сервером. Тогда о каком пинге терминала идет речь?

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Новая версия платформы MetaTrader 5 build 3620: улучшения веб-терминала, поддержка ONNX и ускоренное умножение матриц в MQL5

fxsaber, 2023.03.09 07:31

Случаются задержки в приходе тиков. На примере двух соседних тиков это выглядит так.

Tick.time_msc = 08:00:00.000, время прихода 08:00:00.000.

Tick.time_msc = 08:00:00.200, время прихода 08:00:00.490.

Тик пришел на 290 миллисекунд позже, чем должен был.


Подобную ситуацию с такими всплесками задержки прихода тиков наблюдаю на выделенном сервере с почти нулевым пингом. Из сетевых приложений только Терминал.

При этом средняя задержка 200 микросекунд, т.е. сильно меньше миллисекунды.

Порекомендуйте, что нужно сделать для снятия задержек?


Для визуализации лагов использовал этот индикатор.


Сопоставляются между собой две разности: меджу временами формирования тиков на сервере и между временами их прихода в терминал.

 
Поддерживает ли он MT4? 
 
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])

Измените код на эту функцию, совместимую с версией mt4