Копировальщик сделок

 

Доброго времени суток. 

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

Поправьте, я чисто теоретически (знаний не имею в мкл), представляю это так:

– На валютной паре ЕВРОДОЛЛАР стоит Советник А. В дублированном окне с валютной парой ЕВРОДОЛЛАР стоит Советник В.

– Советник А подаёт сигнал в интернет через метатрейдер брокеру А, у которого сейчас в МТ залогинин счёт. 

– Советник В перехватыват/замечает/знает про этот сигнал, копирует/дублирует его через всякие протоколы (нужные, там, может всякие сторониие DLL нужны) или через тот же метатрейдер, на котором стоит, но только:

  • брокеру Б. 
  • брокеру А, но на другой счёт.
  • на другой терминал (на этом же компьютере, либо в интернет)

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

Чтобы сократить этот путь, можно ли на этапе послания сигнала советником А, дублировать этот сигнал сразу же на другие счета? 

Возможно ли построить такую схему? 

Это для новостных, для высокочастотников (если задаётесь вопросом: "нафига ему эта канитель?!")

Да и любопытно стало, изменить схему копирования в лучшую сторону, при которой у клиента может даже раньше открыться сделка, чем у мастера
 
Ivan Butko:

Доброго времени суток. 

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

Поправьте, я чисто теоретически (знаний не имею в мкл), представляю это так:

– На валютной паре ЕВРОДОЛЛАР стоит Советник А. В дублированном окне с валютной парой ЕВРОДОЛЛАР стоит Советник В.

– Советник А подаёт сигнал в интернет через метатрейдер брокеру А, у которого сейчас в МТ залогинин счёт. 

– Советник В перехватыват/замечает/знает про этот сигнал, копирует/дублирует его через всякие протоколы (нужные, там, может всякие сторониие DLL нужны) или через тот же метатрейдер, на котором стоит, но только:

  • брокеру Б. 
  • брокеру А, но на другой счёт.
  • на другой терминал (на этом же компьютере, либо в интернет)

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

Чтобы сократить этот путь, можно ли на этапе послания сигнала советником А, дублировать этот сигнал сразу же на другие счета? 

Возможно ли построить такую схему? 

Возможно. И даже очень легко.

 
Alexey Viktorov:

Возможно. И даже очень легко.


Т.е., есть смысл потратиться на фриланс?

Я так понимаю, в свободном доступе такое не найдёшь
 
Ivan Butko:

Т.е., есть смысл потратиться на фриланс?

Я так понимаю, в свободном доступе такое не найдёшь

потому что это не копировальщик сделок

вы просите здесь рассыльщик сигналов

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

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

 

вам нужен тогда не просто рассыльщик сигналов - вам нужно рассылать требуемое текущее состояние по символу, сколько должно быть открыто лотов и в какую сторону.

То есть эксперт должен не просто генерировать "продай", он должен иметь долгосрочное состояние "sell 1 лот"

В этом случае и мастер А и все остальные подписчики В, С, D... будут пытаться снова и снова выровнять объем по символу у себя на счете в нужное состояние.

 
o_o:

потому что это не копировальщик сделок

вы просите здесь рассыльщик сигналов

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

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


Хороший вопрос! Я и не задумывался про такие масштабы.

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

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

В любом случае, это уже головная боль рассыльного. 

Если вы имели ввиду меня, то нет, у меня другая проблема - советник работает только на демке, на реале не даёт, я пытаюсь копировать на реал. И все эти посреднические пути + идеальное исполнение у демки, увеличивают время исполнения на реале. Я уже сократил процент минусовых сделок уменьшением пинга на ВПС до 10 мс и принудительным ограничением в проскальзывании (в настройках клиента - 0,5 пунктов). Теперь некоторые сделки умудряются в плюсе закрываться (небольшом), а на демке - в минусе, или в нуле. 

Осталось теперь перейти на впс =<1 мс, найти брокера с исполнением меньше 0,05 мс (говорят, такие есть), улучшить схему копирования (или, как вы сказали - рассылки) и тогда 440%, что набрались на демке за 20 дней, можно реализовать ну пусть хотя бы 10 % - это уже 40!
Уже спортивный интерес, надо довести до конца это занудство, чтобы уж точно знать, работает или нет)


 

Ivan Butko:

Если вы имели ввиду меня, то нет, у меня другая проблема - советник работает только на демке, на реале не даёт, я пытаюсь копировать на реал. 


Если говорить исключительно о Вашей задаче (копирование с демо на реал в пределах одной машины) , я решал это так : в советник который  работает на демо дополнительно прописывал по сути тот же копировщик, только там копировалось не событие открытия позиции , а сам сигнал на открытие на демке. Советник один с настройками "трейдер"/"инвестор" - "трейдер" ставился на демо, "инвестор" на реал. В результате в большинстве случаев позиция на реале открывалась быстрее чем на демо (будет зависеть от используемых условий - тип счёта , пинг и т.д.).
 
Sergey Kolemanov:
Если говорить исключительно о Вашей задаче (копирование с демо на реал в пределах одной машины) , я решал это так : в советник который  работает на демо дополнительно прописывал по сути тот же копировщик, только там копировалось не событие открытия позиции , а сам сигнал на открытие на демке. Советник один с настройками "трейдер"/"инвестор" - "трейдер" ставился на демо, "инвестор" на реал. В результате в большинстве случаев позиция на реале открывалась быстрее чем на демо (будет зависеть от используемых условий - тип счёта , пинг и т.д.).

Если вы говорите про советник, который торгует, то у меня стоит защищённый, изменить нельзя. Отсюда и интересно, можно ли "перехватывать" его сигнал-запрос на открытие позиции сразу же, до того, как придёт ответ от брокера, и отправлять этот же сигнал параллельно на другой счёт/Брокер/либо другой терминал. 

 
Ivan Butko:

Если вы говорите про советник, который торгует, то у меня стоит защищённый, изменить нельзя. Отсюда и интересно, можно ли "перехватывать" отправку советником сигнала, и отправлять его параллельно на другой счёт/Брокер/либо другой терминал. 


Да, о нём речь...

Ну если у Вас он защищённый то путь один - это отслеживать событие открытия позиции на демке. При таких условиях чтобы сократить разницу между демкой и реальным счётом нужно уделить внимание не только пингу, но подбору типа реального счёта(например использовать ECN)...

 
Sergey Kolemanov:

Да, о нём речь...

Ну если у Вас он защищённый то путь один - это отслеживать событие открытия позиции на демке. При таких условиях чтобы сократить разницу между демкой и реальным счётом нужно уделить внимание не только пингу, но подбору типа реального счёта(например использовать ECN)...


А как это выглядит? Правильно я понимаю, это просто такой советник, который ставится на отдельную пару (любую) и мониторит торгующий советник, следит за ним. И как только "увидел", что торгующий "бросил" запрос в сторону брокера, – перехватил этот запрос, снял с него "ксерокопию", и кинул своему брокеру?)) Т.е., от одного Метатрейдера вылетело два запроса параллельно, а не после того, как на первый запрос пришёл ответ от брокера, т.е., не по очереди.

 
Ivan Butko:

А как это выглядит? Правильно я понимаю, это просто такой советник, который ставится на отдельную пару (любую) и мониторит торгующий советник, следит за ним. И как только "увидел", что торгующий "бросил" запрос в сторону брокера, – перехватил этот запрос, снял с него "ксерокопию", и кинул своему брокеру?))


Не запрос, а открыл позицию на демке...

То есть если код закрыт - не о каком перехвате пока не открыта позиция речи не идёт.