Торгую по 28 инструментам. Мне нужно скриптом иметь возможность обновить по ним бары по определённым таймфреймам. Автоматически терминалом они обновляются только если открыть все эти инструменты на графиках, причём ещё и в каждом таймфрейме. Держать открытыми столько графиков нет возможности - сильно грузит ОЗУ и получается мешанина, слишком много графиков и мешают работать с нужными.
Если скриптом выполнить команду iClose(Symb, PERIOD_M1, 0), где Symb - это один из инструментов, то вернётся цена последнего загруженного бара M1, хотя он был загружен, скажем 16 минут назад и уже неактуален, а нужно свежий. Обновить бары нужно именно скриптом, чтобы после этого имелись актуальные бары и можно было с ними работать другим скриптом.
свои пары добавишь по аналогии его надо положить в индикаторы это для четверки
Мне нужно скриптом иметь возможность обновить по ним бары по определённым таймфреймам.
в скриптах нужно самостоятельно обновлять данные: RefreshRates()
Заметил, что вот эта фишка производит синхронизацию исторических данных (размещаем в инит)
а вот эта:
RefreshRates();
чо то не
Вот не понимаю вас, зачем вы постоянно даете советы и вставляете своё "фэ", если вы не разбираетесь в этом?
Откройте справку - почитайте.
Создайте скрипт - проверьте.
и при этом хотите чтобы я вас обучал - открывайте работу во фрилансе.
Вот не понимаю вас, зачем вы постоянно даете советы и вставляете своё "фэ", если вы не разбираетесь в этом?
Откройте справку - почитайте.
Создайте скрипт - проверьте.
Хотите чтобы я вас обучал - открывайте работу во фрилансе.
нет. это я Вас обучаю, чтобы дров за платно не наломали
;)
вот, как работает то, что я показал
крутая штучка, да?
поэтому, рекомендую ;)
покажите результат отработки функции RefreshRates() ?
кстати, инит по сути скрипт
А скрипт - это по сути законченный продукт, с этим вопросом лучше на фриланс, не Вам конечно, автору ветки.нет. это я Вас обучаю, чтобы дров за платно не наломали
;)
вот, как работает то, что я показал
крутая штучка, да?
поэтому, рекомендую ;)
покажите результат отработки функции RefreshRates() ?
кстати, инит по сути скрипт
А скрипт - это по сути законченный продукт, с этим вопросом лучше на фриланс, не Вам конечно, автору ветки.
вот вам скрипт с RefreshRates() который постоянно обновляет текущую цену.
теперь покажите ваш скрипт :)
void OnStart() { while (!IsStopped()) { RefreshRates(); Comment(DoubleToStr(iClose("EURUSD",PERIOD_H1,0),_Digits)+"\n"+ DoubleToStr(iClose("GBPUSD",PERIOD_H1,0),_Digits) ); Sleep(200); } }
вот вам скрипт с RefreshRates() который постоянно обновляет текущую цену.
теперь покажите ваш скрипт :)
во первых, я в это не верю:
Если скриптом выполнить команду iClose(Symb, PERIOD_M1, 0), где Symb - это один из инструментов, то вернётся цена последнего загруженного бара M1, хотя он был загружен, скажем 16 минут назад и уже неактуален,
т.к. нет более актуального бара, чем последний
во вторых, мне не нравится Ваш скрипт, т.к. я не люблю зацикливать функции, хлопотно это для системы
точно также, как и не практично применение Sleep в торговых системах.
в третьих, я эту проблему решил не так, совсем не так. была она и формулируется по другому.
реализуется с помощью таймера + внешняя примочка на С# - это уже когда связь рубанули.
одним скриптом тут не обойтись, в принципе
так что у нас с Вами совершенно разные цели написания и применения программ
дальнейший диалог считаю бесполезным.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Торгую по 28 инструментам. Мне нужно скриптом иметь возможность обновить по ним бары по определённым таймфреймам. Автоматически терминалом они обновляются только если открыть все эти инструменты на графиках, причём ещё и в каждом таймфрейме. Держать открытыми столько графиков нет возможности - сильно грузит ОЗУ и получается мешанина, слишком много графиков и мешают работать с нужными.
Если скриптом выполнить команду iClose(Symb, PERIOD_M1, 0), где Symb - это один из инструментов, то вернётся цена последнего загруженного бара M1, хотя он был загружен, скажем 16 минут назад и уже неактуален, а нужно свежий. Обновить бары нужно именно скриптом, чтобы после этого имелись актуальные бары и можно было с ними работать другим скриптом.