мультивалютные события - страница 2

 
tmp1204:

Почитал про рекомендуемые варианты получения мультитиков.

По таймеру - как-то слишком не рационально.

Используя фунтцию OnChartEvent()  -  необходимо к советнику подгружать какую-то "панель (график)", для получения "других" тиков.

Вопрос: Как сделать так, чтобы простецкий советник (без всяких индикаторов) , прицепленный к какойньть паре, получал тики других "пар" и просто делал "Print".

Работайте с таймером, минимально удобный для Вас интервал. при этом контролируйте дату последнего тика по каждой паре (и будет вам счастье).

Не думаю что реально важно контролить цену каждого тика (если конечно пишем не сверх навороченный пипсовщик), вполне хватит таймера с периодом от 1 секунды до 60...

 
Interesting:

Работайте с таймером, минимально удобный для Вас интервал. при этом контролируйте дату последнего тика по каждой паре (и будет вам счастье).

Не думаю что реально важно контролить цену каждого тика (если конечно пишем не сверх навороченный пипсовщик), вполне хватит таймера с периодом от 1 секунды до 60...

Да, все верно!

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

 
gisip:

Да, все верно!

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

А причем тут стакан цен?
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Виды заявок в стакане цен
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Виды заявок в стакане цен
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Виды заявок в стакане цен - Документация по MQL5
 
Interesting:
А причем тут стакан цен?

Ну как же.

Производим подписку на получение извещений на нужные инструменты:

 for (int i = 0; i < CountSymbols; i++){
      Symbols = ListSymbols[i];

      MarketBookActive = MarketBookAdd(Symbols);


 Как только приходит котировка по любому из этих инструментов возникает событие

void OnBookEvent(const string& symbol)


Вы мне сами этот пример когда-то дали.



 
gisip:

Потом получаем любые изменения по этим инструментам в:

void OnBookEvent(const string& symbol)

Вы мне сами этот пример когда-то дали.

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

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

 
Interesting:

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

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

Событие возникает по приходу всех котировок любого подписанного инструмента.

Я целый час тестировал.

 
gisip:

Событие возникает по приходу всех котировок любого подписанного инструмента.

Я целый час тестировал.

пожалуйста если вас не затруднит. поделитесь примером кода. главное понять принцип. Да и еще вопрос в тестере на истории это тоже работает ?
 
Trolls:
пожалуйста если вас не затруднит. поделитесь примером кода. главное понять принцип. Да и еще вопрос в тестере на истории это тоже работает ?

Пример тут: https://www.mql5.com/ru/forum/1883

Работает только в Альпари поэтому сразу забыл и в тестере не проверял.

 
Trolls:
пожалуйста если вас не затруднит. поделитесь примером кода. главное понять принцип. Да и еще вопрос в тестере на истории это тоже работает ?

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

Как минимум придется решить двае основные проблемы:

1. насколько я помню в тестере эта фича не доступна (нет структуры и механизма хронящего данную дату);

2. не все брокеры /ДЦ будут поддерживать стакан по торгуемым инструментам.

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

 
gisip:

Пример тут: https://www.mql5.com/ru/forum/1883

Работает только в Альпари поэтому сразу забыл и в тестере не проверял.

спасибо (( жаль что нельзя подписаться на валюты, т.е. к обзору рынка. Еще раз спасибо