клиент сервер на сокетах

 

Всем привет.

Вопрос по сабжу. Хочу что один сервер принимал закпросы от Х советников одноврменно с разных терминалов, на сокетах, а от сервера получал ответ в виде торгового сигнала.

Все это дело будет работать на локальной машине. Сорци нашел в кодебазе. Но там асинхронный режим. И у меня периодически просиходит рассинхрониазация между клиентовм и сервером.

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

 
NIkolay2000:

Всем привет.

Все это дело будет работать на локальной машине. Сорци нашел в кодебазе. Но там асинхронный режим. И у меня периодически просиходит рассинхрониазация между клиентовм и сервером.


не верю. mql этого в принципе не позволит сделать.
 

NIkolay2000:

Хочу что один сервер принимал закпросы от Х советников одноврменно с разных терминалов, на сокетах, а от сервера получал ответ в виде торгового сигнала.

пытаюсь понять вашу задачу и не очень получается.

вы хотите, чтоб клиенты МТ4 обращались на сервер и отправляли ему что то? или МТ4 клиенты обращаются на сервер и получали сигнал?

Все это дело будет работать на локальной машине. Сорци нашел в кодебазе. Но там асинхронный режим. И у меня периодически просиходит рассинхрониазация между клиентовм и сервером.

что такое рассинхронизация в ваших словах? это как?

Под мт4 каждый совтеник становится сервером а потом они обащаются с прогой которая генерит сигналы, (клиентом), вот тут бывают колизии при прослущивании сокета.

у вас клиент МТ4 генерит сигналы для других клиентов?

 

по общему счету все очень просто.

Сервер в данном случае это прога, которая обрабатовает котировки полученные из разных терминалов и разных советников. И отдает им торговые сигналы (прогноз на будущее).

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

 
SofTAA:
не верю. mql этого в принципе не позволит сделать.

может я напутал чего.

https://www.mql5.com/en/code/9772 - вот тут сорци брал.

Может подскажете как правильно.

 
NIkolay2000:

Сервер в данном случае это прога, которая обрабатовает котировки полученные из разных терминалов и разных советников. И отдает им торговые сигналы (прогноз на будущее).

терминал который отправил котировку и он тут же получает и сигнал на вход?
 
sergeev:
терминал который отправил котировку и он тут же получает и сигнал на вход?


так точно. Советник когда получает новый бар сразу отправляет котировки через Х милисекунд получает ответ от проги, и начинает по этому сигналу торговать. Обарботку колизий внутри одного терминала решаю с помощью глобальных переменных. На меседжах гдето получается разогнатся до 5 раз в секунду. Но это мало. Для тестирования оперативного нужно разы больше.
 
Спасибо, смотрится очень интересно.
 
NIkolay2000:
Спасибо, смотрится очень интересно.

но лучше конечно самому сделать, так как не известно что в dll ложится.