Закрытие сделки в функции OnTimer ()

 

Если я закрою сделки с помощью функции OnTimer (), где EventSetMillisecondTimer (200). поможет ли это в трейлинг-стопе и закрытии торговли быстрее, чем функция OnTick ()?

Пожалуйста, дайте мне знать, что вы думаете.

 
jaffer wilson:

Если я закрою сделки с помощью функции OnTimer (), где EventSetMillisecondTimer (200). поможет ли это в трейлинг-стопе и закрытии торговли быстрее, чем функция OnTick ()?

Пожалуйста, дайте мне знать, что вы думаете.

Не поможет.

Последняя известная цена не изменится. Цена исполнения - тоже.
 

Вот как раз цена исполнения зависит от времени прихода тика на сервер брокера и зависит от маркета поставщика.

Поэтому скорость зависит от фактического времени в OnTimer ()  и OnTick () .

Тут вопрос как и от чего считается трейлинг - если классический - то не поможет, а если не классический - то мало данных.

А если он данные из соседнего терминала берет?

А если тик потерялся?

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
В языке MQL5 предусмотрена обработка некоторых предопределенных событий. Функции для обработки этих событий должны быть определены в программе MQL5: имя функции, тип возвращаемого значения, состав параметров (если они есть) и их типы должны строго соответствовать описанию функции-обработчика события. Именно по типу возвращаемого значения и по...
 
Я не разработчик Метатрейдера и MQL, поэтому  смею лишь предположить из логики что Ontick срабатывает при событии нового тика, а таймер каждые N миллисекунд. Соотвественно в теории OnTick в большинстве случаев будет быстрее так как начнёт обрабатывать событие сразу, а Таймер начнёт через "от нуля до N миллисекунд" в зависимости на какой миллисекунде таймера придёт тик. 
 
Viktor Ternovskyi:
Я не разработчик Метатрейдера и MQL, поэтому  смею лишь предположить из логики что Ontick срабатывает при событии нового тика, а таймер каждые N миллисекунд. Соотвественно в теории OnTick в большинстве случаев будет быстрее так как начнёт обрабатывать событие сразу, а Таймер начнёт через "от нуля до N миллисекунд" в зависимости на какой миллисекунде таймера придёт тик. 

Ну так нет тика - нет новой цены, зачем таймер нужен.

 
Vitaly Muzichenko:

Ну так нет тика - нет новой цены, зачем таймер нужен.

Человек видимо думал может быстрый миллисекундный таймер быстрее обработает скальперскую сделку.

 
Хотел сказать "поможет", но вспомнил, что речь о реальной торговле....
 
Vitaly Muzichenko:

Ну так нет тика - нет новой цены, зачем таймер нужен.

даже более того, поток исполнения один.

И OnTimer отработает не раньше чем завершится любой текущий OnXXX. И сигнал таймера может быть пропущен, то есть вполне реальна ситуация что таймер 1/10 сработает 1 раз за секунду, а не 10. 

--

OnTimer полезен спрашивать цену у других инструментов вне зависимости от текущего. И вообще что-то делать покуда не пришли тики или события из чарта.
Если бы не приоритет в обработке, его вообще можно было назвать OnIdle

 
Что ж, дискуссия здесь немного двусмысленна. Есть простой ответ или объяснение. Знаю, что казнь состоится OnTick. Но может ли OnTimer быть полезным для трейлинг-стопа на 1 пункт, просто для того, чтобы сказать?
 
jaffer wilson:
Что ж, дискуссия здесь немного двусмысленна. Есть простой ответ или объяснение. Знаю, что казнь состоится OnTick. Но может ли OnTimer быть полезным для трейлинг-стопа на 1 пункт, просто для того, чтобы сказать?

Нет

 
Andrey Khatimlianskii:

Нет

если трал по времени - то да, а если по цене - то  нет)

тоже и с закрытием - если закрытие по времени, то нужен таймер, если закрытие по цене - то можно без таймера.