Возможна ли автоторговля с ДЦ, использующими Метатрейдер?

 
Насчет этого вопроса у меня за последние 24 часа появились сомнения. Ситуация 1 - почему ордер закрылся по этой цене?



Ситуация 2:
По одной паре с определонного момента перестали приходить котировки, експерт значит бездействует. Конкретно он должен был закрыть открытый ордер в определенное время. Ордер понятно не закрылся. Результат - стоп лосс вскоре.

Написал вчера мейлы саппорту, пока нету ответа. И если первую ситуацию можна заметить по факту (кстати, какое тут обьяснение может быть?), то вторую не увидеть, если не следить постоянно за потоком котировок. Но это ж уже не автоторговля?

Без обсуждения ДЦ: он забугорный и большой, и если с ним не получится, то ни с кем не получится, как на меня....
 
Всю проблему видимо могла бы решить встроенная функция, которая позволяла бы вызывать функцию старт из неё самой с завершением предыдущего вызова на глобальном уровне, то есть эмуляция прихода новой котировки с прежними значениями.
Это решило бы множество проблем, но разработчики МТ4 почему-то важность такой вещи не разделяют. :((
 
Andrei01 >>:
Всю проблему видимо могла бы решить встроенная функция, которая позволяла бы вызывать функцию старт из неё самой с завершением предыдущего вызова на глобальном уровне, то есть эмуляция прихода новой котировки с прежними значениями.
Это решило бы множество проблем, но разработчики МТ4 почему-то важность такой вещи не разделяют. :((
Я не совсем понял идею. Если ипользовать watchdog, то в автотрейдинге это не поможет, так как вас нету у монитора. И если есть открытые позиции, то никакого влияния на них уже нету ...
 
Choomazik >>:
Я не совсем понял идею. Если ипользовать watchdog, то в автотрейдинге это не поможет, так как вас нету у монитора. И если есть открытые позиции, то никакого влияния на них уже нету ...

Как я понял проблема в том что эксперт бездействовал из-за отсутствия котировок и вызова функции старт? Это может быть решено только на уровне внешнего приложения, которое вызывает функцию старт, то есть на уровне разработчиков МТ4. Это похоже на создание и удаление объектов в ООП.

Другой возможный вариант - это запустить эксперта паралелльно на графике с другой парой и от туда совершать какие-то операции по тикам этой пары, но для ордеров первой пары - вероятность что пропадут котировки одновременно на нескольких инструментах гораздо ниже.

 
Andrei01 >>:

Как я понял проблема в том что эксперт бездействовал из-за отсутствия котировок и вызова функции старт? Это может быть решено только на уровне внешнего приложения, которое вызывает функцию старт, то есть на уровне разработчиков МТ4. Это похоже на создание и удаление объектов в ООП.

Другой возможный вариант - это запустить эксперта паралелльно на графике с другой парой и от туда совершать какие-то операции по тикам этой пары, но для ордеров первой пары - вероятность что пропадут котировки одновременно на нескольких инструментах гораздо ниже.

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

 
Choomazik писал(а) >>

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


можно коряво - тело всего эксперта записать в зацикленном init() и обновлять котиры на каждом цикле. Тогда и закрыть позу можно в определенное время даже без поступления тиков и вызове start(). Но это фактически скрипт получается

 
 

а можно совместить эти две идеи и тогда будет всё гарантированно, то есть в другом окне зациклить скрипт и анализировать только факт прекращения прихода котировок в первом окне.

 
Avals >>:


 ..... даже без поступления тиков и вызове start()

Если долгое время не приходят котировки, скорее всего, вернет ошибку 136 ERR_OFF_QUOTES типа нет цены. Так что все же придется ждать :(

 
Andrei01 >>:

а можно совместить эти две идеи и тогда будет всё гарантированно, то есть в другом окне зациклить скрипт и анализировать только факт прекращения прихода котировок в первом окне.

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

 
Choomazik >>:

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

Это уже как запрограммируете на этот случай - вопрос-то был как распознать это событие, а не что делать в этом случае.

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

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