так и пользуйте Close[0] на здоровье, вот подобный индюк - прекрасно работает как втестере, так и в онлайне
С ценами как раз почти решимо, но што прикажете делать с функцией TimeCurrent()? Мне нужна точность внутри минуты, а её нет. И вообще все временные функции не пашут.
Кстати вижу в Вашем коде что Вы используете цены Bid Ask - но дык они же в тестере не цепляются(вернее цепляются текущие цены)... непонятно как вы ими работаете.
Ну так скорми ему его через глобальную переменную, если индикатор вызывать из эксперта - то моделируется. если просто вешать индюк, тогда можно через глобалку
Ну так скорми ему его через глобальную переменную, если индикатор вызывать из эксперта - то моделируется. если просто вешать индюк, тогда можно через глобалку
А тогда есть проблема с синхронизацией внутри тика - не всегда можно гарантировать что индюк считает данные позже чем его запишет советник - обычно советник как раз медленней. Поэтому нужно поставить задержку в индюк, а где её взять - её как раз запретили добрые люди. Нужно как-то использовать таймер API, но у меня нет этого кода.
Что то я не пойму кто у тебя за кем идет ? тогда сделай всю обработку в советнике, а индикатору через глобальные переменые передавай значения которые он будет отображать на экране и писать в буфера... Кто у тебя пишет в файл?
Что то я не пойму кто у тебя за кем идет ? тогда сделай всю обработку в советнике, а индикатору через глобальные переменые передавай значения которые он будет отображать на экране и писать в буфера... Кто у тебя пишет в файл?
В электронике это называется race condition.
Индикатор и советник начинают расчет в один и тот же момент с приходом тика и считают параллельно. При этом советник пишет в глобальную переменную, а индикатор одновременно читает её в тот же момент. Так как эти процессы несинхронизированы между собой и паралельны то невозможно знать кто выполнит запись или чтение первым. Разница во времени - доли секунды и зависит от многих факторов. Но если индикатор прочитает первым то он прочитает на данном тике предыдущие данные. Поэтому выход в такой ситуации - поставить задержку в индикаторе штоб он не опережал советника при обращении к глобальной переменной.
А файла тут никакого нет.
Но в принципе решение найдено - пользоваться объектами для нарисовки линий и тогда необходимость в индюках полностью отпадает и вообще тогда их присутсвие в МТ4 становится полностью излишним... но не будем про политику :))
Жаль только что нигде в документации это особо не рекомендуют ибо это решает все проблемы с переносами кода из индюка и тестированием.
Alderon>>: То есть, сплошного тикового потока не получить?
В индюке можно только через обмен времени через глобальную переменную. Но лучше не заморачиваться с индюками воопще и делать всё в эксперте через графические объекты. Будет и быстрее и проще. То что иногда в документации пишут что индюки удобны для аналитики - то это на практике не так.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
так и пользуйте Close[0] на здоровье, вот подобный индюк - прекрасно работает как втестере, так и в онлайне
С ценами как раз почти решимо, но што прикажете делать с функцией TimeCurrent()? Мне нужна точность внутри минуты, а её нет. И вообще все временные функции не пашут.
Кстати вижу в Вашем коде что Вы используете цены Bid Ask - но дык они же в тестере не цепляются(вернее цепляются текущие цены)... непонятно как вы ими работаете.
все прекрасно пашет, время в тестере эмулируется отлично...
все прекрасно пашет, время в тестере эмулируется отлично...
А тот код из примера тоже работает?
Да мне и тут сказали что это и не должно работать в индюке.
https://www.mql5.com/ru/forum/111497/page539
Ну так скорми ему его через глобальную переменную, если индикатор вызывать из эксперта - то моделируется. если просто вешать индюк, тогда можно через глобалку
Ну так скорми ему его через глобальную переменную, если индикатор вызывать из эксперта - то моделируется. если просто вешать индюк, тогда можно через глобалку
А тогда есть проблема с синхронизацией внутри тика - не всегда можно гарантировать что индюк считает данные позже чем его запишет советник - обычно советник как раз медленней. Поэтому нужно поставить задержку в индюк, а где её взять - её как раз запретили добрые люди. Нужно как-то использовать таймер API, но у меня нет этого кода.
Что то я не пойму кто у тебя за кем идет ?
тогда сделай всю обработку в советнике, а индикатору через глобальные переменые передавай значения которые он будет отображать на экране и писать в буфера...
Кто у тебя пишет в файл?
Что то я не пойму кто у тебя за кем идет ?
тогда сделай всю обработку в советнике, а индикатору через глобальные переменые передавай значения которые он будет отображать на экране и писать в буфера...
Кто у тебя пишет в файл?
В электронике это называется race condition.
Индикатор и советник начинают расчет в один и тот же момент с приходом тика и считают параллельно. При этом советник пишет в глобальную переменную, а индикатор одновременно читает её в тот же момент. Так как эти процессы несинхронизированы между собой и паралельны то невозможно знать кто выполнит запись или чтение первым. Разница во времени - доли секунды и зависит от многих факторов. Но если индикатор прочитает первым то он прочитает на данном тике предыдущие данные. Поэтому выход в такой ситуации - поставить задержку в индикаторе штоб он не опережал советника при обращении к глобальной переменной.
А файла тут никакого нет.
Но в принципе решение найдено - пользоваться объектами для нарисовки линий и тогда необходимость в индюках полностью отпадает и вообще тогда их присутсвие в МТ4 становится полностью излишним... но не будем про политику :))
Жаль только что нигде в документации это особо не рекомендуют ибо это решает все проблемы с переносами кода из индюка и тестированием.
То есть, сплошного тикового потока не получить?
В индюке можно только через обмен времени через глобальную переменную. Но лучше не заморачиваться с индюками воопще и делать всё в эксперте через графические объекты. Будет и быстрее и проще. То что иногда в документации пишут что индюки удобны для аналитики - то это на практике не так.
Вот отличная статья про это https://www.mql5.com/ru/articles/1503/page2
Что угодно можно сделать трендовыми линиями.
А каким образом рисуются экспертом трендовые линии в подокне? - ведь эксперт не может открывать подокна сам.
Нужно подцеплять для этого пустой индикатор шоб болтался сбоку?