Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 647

 
pako:
Глобальные не помогут?
Думал - стрёмно, как-то не всегда даже GlobalVariablesFlush помогает при экстренном выключении.
 
Vitaly Muzichenko:
Думал - стрёмно, как-то не всегда даже GlobalVariablesFlush помогает при экстренном выключении.

Вам всеравно прйдется проверять каждый тик

потому что спред также расширяется перед новостями 

ну или по таймеру 

но по таймеру можно пропустить начало расширения 

 
pako:
Вам всеравно прйдется проверять каждый тик

А почему нельзя реализовать запись спреда к примеру каждые ХХ:10 минут? В начале часа спред вроде не должен расширяться, или есть какой-то подвох?

 
Vitaly Muzichenko:

А почему нельзя реализовать запись спреда к примеру каждые ХХ:10 минут? В начале часа спред вроде не должен расширяться, или есть какой-то подвох?

Новости, которые бывают нежданно

 

можно написать индикатор спреда и в советнике опрашивать индикатор

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

 
pako:
Новости, которые бывают нежданно

Ладно, тогда как реализовать на каждом тике, как потом узнать, что текущий спред нормальный?

P.S. Вот тут в реализации у меня снова трудность: после выходных рынок открывается с большим спредом, как выяснить что спред большой? Брать пятничные данные, но они так-же могут быть высокими, если запись шла до закрытия рынка. Это нужно городить целую портянку кода с разными проверками, или Я не в том направлении иду?

 
Vitaly Muzichenko:
Ладно, тогда как реализовать на каждом тике, как потом узнать, что текущий спред нормальный?

Сравнить прошлый тик и актуальный

если больше 4, торговля запрещена

был 2 стал 8 коэф 4

или при первом старте посчитать  средний спред за 1000 тиков, записать в глобальные

при старте опросить глобальные, записать в переменную как образец и сверять спред с образцом  

 
Vitaly Muzichenko:

Ладно, тогда как реализовать на каждом тике, как потом узнать, что текущий спред нормальный?

P.S. Вот тут в реализации у меня снова трудность: после выходных рынок открывается с большим спредом, как выяснить что спред большой? Брать пятничные данные, но они так-же могут быть высокими, если запись шла до закрытия рынка. Это нужно городить целую портянку кода с разными проверками, или Я не в том направлении иду?

Ну а как без проверок? 30-40% кода проверки

желательно делать как у "nix" запрещено все что не разрешено 

 
pako:

Ну а как без проверок? 30-40% кода проверки

желательно делать как у "nix" запрещено все что не разрешено 

Сверку наверное лучше делать по TimeGMT, чтоб брать в учёт временные пояса? Запись в массив последних 1000 тиков, после запись в глоб.переменную и так на каждом новом часе?

Что-то как-то всё сложно, или мало сплю)

Опишите детальнее пожалуйста. 

 
Vitaly Muzichenko:

Сверку наверное лучше делать по TimeGMT, чтоб брать в учёт временные пояса? Запись в массив последних 1000 тиков, после запись в глоб.переменную, и так на каждом новом часе?

Что-то как-то всё сложно, или мало сплю)

Опишите детальнее пожалуйста. 

MqlTick , записываете в структуру , проверяте количество тиков , считаете средний спред, записываете в глобальные

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

 
pako:

MqlTick , записываете в структуру , проверяте количество тиков , считаете средний спред, записываете в глобальные

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

Ладно, с этим проблем нет.

Когда проверять, чтоб не попасть в просак и не начать писать спред с каждым разом всё больше и больше, и в итоге дойти до 20пп.

Ситуация то может быть такая, что начинаем писать маленький, в итоге он округляется и текущий проходит проверку на максимальный, потом спред постепенно повышается и мы уже пишем более высокий, так-как проверку то он прошёл с записанным, и в итоге доходим до максимального) Неужели нужно делать сверку со спредом, который был неделю назад=)

Причина обращения: