А давайте скрестим МТ4 и МТ5

 

Идея следующая: бета МТ5 уже есть и на ней можно работать. Можно написать пару экспертов чтобы сделки из 5-ки "транслировались" в 4-ку. Конечная цель - поддержание идентичного состояния ордеров на двух счетах (любыми доступными средствами). Теоретически это позволит использовать эксперты МТ5 для работы даже на реальных счетах на серверах с МТ4. Задачу можно решать в упрощенной постановке оба терминала работают на одной машинке - значит можно использовать общее адресное пространство памяти и файловой системы.

Граблей здесь конечно немеряно: разные котировки, устойчивость связки, неадекватность ситуации, когда реальном МТ4 "обстановка" будет отличаться от тестовго МТ5 (например 4ка потеряет связь с ДЦ а 5ка все еще на связи, или один из терминалов завис, его перегрузили а за это время в другом терминале закрылся или открылся ордер) и т.д. и т.п.

С ходу видно два решения задачи:

1) трансляция торговых команд работы с ордерами из 5 в 4 и "сигнализация" о закрытии ордеров из 4 в 5

2) обоюдная синхронизация: если чтото изменилось в 5ке (например стоп подвинули) такое же изменение нужно сделать на соответствующем ордере в 4ке ну и наоборот

Предлагаю всем заинтересовавшимся обсудить возможность такой реализации и совместно соорудить такую связочку.

(всех считающих эту затею бредом заранее очень прошу не брызгать своим остроумием и бесполезным флудом в этой ветке)

 

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


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

 
HideYourRichess >>:

Нужен апликейшен, .... Логика советников усложнится, нужен обмен данными, а это опять длл или ...т.д. Кроме того, нужна будет синхронизация работ терминалов.

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

Я же имел в виду маленькую и специфическую задачку: есть МТ5 для которого пока еще нет (реального) сервера, или (как будет это в ближайшем будущем) есть, но у другого ДЦ а мой - никак не перейдет на 5ку. Поэтому: работаем в одном локальном терминале МТ5 а его действия наблюдаем в МТ4 и если что то случилось в МТ4 - мы это сразу в МТ5 (в пределах одной машинки).

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