Каким образом можно из одного окна управлять другим

 

Подскажите пожалуйста

На каждом окне висит индикатор , индикатор создает глобальную переменную

допустим EURUSD_KURS
допустим GBPUSD_KURS
допустим USDCHF_KURS

в каждом окне вывожу значение допустим 3-х валют

затем при получении тика! в любом из окон - хотел бы в каждом окне - отобразить изменение

например:
пришел тик в окно CHFUSD глобальную переменную USDCHF_KURS поменял из окна CHF
а каким образом сделать изменение в других окнах ?

т е в другие окна тик не пришел и перерисовка значения не произошла
вот и вопрос как можно перерисовать изменение в текущем активном окне - если котировка пришла в по другой валюте в другое окно!

или , как перерисовать объект который висит в другом окне из текущего окна


Может как то это решается еще проще





 
Просто надо "отрисовывать" не по приходу тика, а с заданным интервалом времени - в цикле.
Просто проверять - изменился ли какой-то курс, и, если да, перерисовывать.

Только, кажется, если зациклить индикатор, будут проблемы - я точно не помню.
Пробуй =)
 
komposter писал (а):
Просто надо "отрисовывать" не по приходу тика, а с заданным интервалом времени - в цикле.
Просто проверять - изменился ли какой-то курс, и, если да, перерисовывать.

Только, кажется, если зациклить индикатор, будут проблемы - я точно не помню.
Пробуй =)

Спасибо!
да , именно так наверно и прийдется выходить из положения , но жаль что нет возможности иной
не хотелось бы в цикл загонять индикатор.

вообще неплохо бы иметь событие TIMER в дополнение к START INIT DEINIT это было бы лучше цикла

но самое удобное было бы если бы СОБЫТИЕ окна (приход тика и т д ) могло перерисовывать
ДРУГИЕ экраны - вызывать на них индикаторы - советников и т д

а пока в цикле:
читаем курсы - если значимый курс поменялся отрисовываем в этом окне его
не помянялся стоим в цикле !
в связи с этим вопрос MARKETINFO - делает запрос к брокеру ? или читает с локальной базы
 
в связи с этим вопрос MARKETINFO - делает запрос к брокеру ? или читает с локальной базы

насколько я помню, MARKETINFO берёт информацию из "Обзора рынка" - а там она свежая ;)
 

Если верно Вас понял , MARKETINFO не посылает запрос брокеру о цене
о просто читает - ( ОБЗОР РЫНКА ) - по идее и есть локальная база - информация , куда пришла последняя котировка

почему то интуиция подсказывает что никакого запроса к брокеру не может идти
иначе: трафик - огромный и БРОКЕР замученый пакетами :)
скорее просто прихоят котировки и все!
но вдруг ошибаюсь

т е КОТИРОВКА пришла MT4 кинул в ( ОБЗОР РЫНКА ) уложил в ( БАЗУ ТИКОВ )
подвинул минтку если она загружена и накопил в другие тайфреймф - опять же если они загружены

инициатива исключительно от брокера

Есть ли способ принудительно прочитать котировки от брокера ?





 
только вручную....Home-Home-Home-Home.... ;)
 
Если зациклить индикатор, то проблемы будут точно.

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

Остальное несложно решить разводкой через глоб. переменные.
 
Может RefreshRates() поможет?
 
4ebur:
Может RefreshRates() поможет?
нет =)