![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
что значит не нужно ждать тики?, а как же 3 секунды и оффквот (нет цены)
"оффквот" - это код ошибки, то есть документированная ситуация сервера-терминала
а что такое "3 секунды"?
где можно почитать?
"оффквот" - это код ошибки, то есть документированная ситуация сервера-терминала
а что такое "3 секунды"?
где можно почитать?
ну как - тик живёт 3 секунды, то есть актуальная цена существует 3 секунды и если через 3 секунды новый тик не пришёл то можно получить состояние оффквот - нет цены, потому как последняя цена уже не актуальна, а свежей цены ещё не поступило - причины такого события могут быть разные
а почему 3 секунды?
почему не 1 или не 20 ?
где об этом почитать?
пс. и "можно получить состояние оффквот" - это можно получить и через миллисекунду после новой котировкиа почему 3 секунды?
почему не 1 или не 20 ?
где об этом почитать?
пс. и "можно получить состояние оффквот" - это можно получить и через миллисекунду после новой котировкипро актуальность котировки это обычный регламент со стороны брокера - где читал не помню, но почему-то эти 3 секунды хорошо запомнились, не уверен на 100% на счёт оффквот, но реквот точно прилетит если собрались торговать по старой цене, а если брокер не может дать реквот то посылает вас оффквотом чтоб подождали когда придёт нормальная цена
Конечно, предыдущую цену нельзя использовать, и конечно брокер будет банить (реквотами) если его дёргать каждую секунду.
Но если брокер исполняет ордера только в первые секунды котировки, то это значит что он кухня, которая никуда не отправляет сделки клиентов.
Новый тик - это сделка, и это должно исполнятся по желанию клиента.
(не представляю, как это - сделки могут происходить только в течение 3 секунд после нового тика)
тики не нужны, (нужен только один-первый тик, для сравнения/синхронизации времени), дальше считается только локальное время, и по нему всё считается/открывается/закрывается.
...открою секрет - для открытия/закрытия ордеров не нужно ждать тики)
Локальное время может врать на стороннем VPS. Например я встречал VPS, где локальное время было на 3 секунды позже реального и никакие настройки в реестре и бог знает где еще не помогали, время синхронизировалось с ненадежным источником и его было не перебить своим.
Вот здесь функция TimeCross() ее можно доработать немного. Но не нужны эти секунды.
для БО как раз нужны
Локальное время может врать на стороннем VPS. Например я встречал VPS, где локальное время было на 3 секунды позже реального и никакие настройки в реестре и бог знает где еще не помогали, время синхронизировалось с ненадежным источником и его было не перебить своим.
Значение локального времени не имеет значения, более того оно может изменяться само по себе - перевод стрелок или виндовс-синхронизация.
Нужно только запомнить - вот пришел тик с таким-то временем, а по локальному времени сейчас - столько-то.
И дальше вести отсчет по секундам локального времени (или даже миллисекундам.)
Ну и попутно проверять чтобы вдруг эта разница не изменилась - значит произошел "перевод стрелок", и нужно заново вычислять точку отсчета.