Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тогда это не будет иметь отношения к ветке.
Вам шашечки или ехать? Если ставить ограничения, то решение, действительно трудно найти. Очень часто бывает так, что решение проблемы оказывается в другой плоскости, отличной от той, где зародилась проблема.
Вызвать из советника.
Из за специфики индикатора он не может бить вызван из советника.
Перенёс обработку на OnCalculate() и первый уровень цикла распределил исполнения на каждой свечи. Примерно так:
Сейчас для того чтобы успеть обработать данных, надо затормозить приход свечей. Я так понял что это можно сделать с помощью EventChartCustom?
Перенёс обработку на OnCalculate() и первый уровень цикла распределил исполнения на каждой свечи. Примерно так:
Сейчас для того чтобы успеть обработать данных, надо затормозить приход свечей. Я так понял что это можно сделать с помощью EventChartCustom?
Думаю, архитектурно где-то неверный подход выбран для решения задачи.
Думаю, архитектурно где-то неверный подход выбран для решения задачи.
+. В индикаторе в любом случае висеть терминал будет.
Проблемы из за того что в последней функции я все собранные необходимые данные начинаю прогонять через многоуровневый цикл. Только эта последняя функция создают головную боль. Как вариант, я могу все собранные данные записать в файл и тогда уже из эксперта прочитать данные. В таком случае на эксперта будет навалена задача прогнать данные через многоуровневый цикл. Это как-то поможет? При этом мне не особо нравится то что изначальная задумка будет состоять из двух программ.
Может ещё какие-то решения?
Проблемы из за того что в последней функции я все собранные необходимые данные начинаю прогонять через многоуровневый цикл. Только эта последняя функция создают головную боль. Как вариант, я могу все собранные данные записать в файл и тогда уже из эксперта прочитать данные. В таком случае на эксперта будет навалена задача прогнать данные через многоуровневый цикл. Это как-то поможет? При этом мне не особо нравится то что изначальная задумка будет состоять из двух программ.
Может ещё какие-то решения?
Считайте порциями. Внутри циклов - проверять время, которое уже прошло в текущем событии и выходить по достижении лимита, например, 1-2 секунды. В следующем событии продолжить расчет с места, на котором он был приостановлен.
Проблемы из за того что в последней функции я все собранные необходимые данные начинаю прогонять через многоуровневый цикл. Только эта последняя функция создают головную боль. Как вариант, я могу все собранные данные записать в файл и тогда уже из эксперта прочитать данные. В таком случае на эксперта будет навалена задача прогнать данные через многоуровневый цикл. Это как-то поможет? При этом мне не особо нравится то что изначальная задумка будет состоять из двух программ.
Может ещё какие-то решения?
На мой взгляд, решение остается тем же - перенести код индикатора в эксперт. Не могу даже представить, по каким причинам эксперт не может выполнить ту же самую работу, что и индикатор. Понимаю, что, возможно, придется возиться с массивами, которые выполняют роль индикаторных буферов. Это задача не совсем легкая, но вполне выполнимая, не архисложная.
Эксперт в итоге не будет тормозить терминал. У него свой поток. К тому же появится возможность использования события OnTester().
P. S. Другое решение - попытаться оптимизировать код. Возможно, там есть еще куда ускориться.
Считайте порциями. Внутри циклов - проверять время, которое уже прошло в текущем событии и выходить по достижении лимита, например, 1-2 секунды. В следующем событии продолжить расчет с места, на котором он был приостановлен.
Это в эксперте можно будет делать? Потому что в индикаторе это не прокатила.
На мой взгляд, решение остается тем же - перенести код индикатора в эксперт. Не могу даже представить, по каким причинам эксперт не может выполнить ту же самую работу, что и индикатор. Понимаю, что, возможно, придется возиться с массивами, которые выполняют роль индикаторных буферов. Это задача не совсем легкая, но вполне выполнимая, не архисложная.
Эксперт в итоге не будет тормозить терминал. У него свой поток. К тому же появится возможность использования события OnTester().
P. S. Другое решение - попытаться оптимизировать код. Возможно, там есть еще куда ускориться.
Если решение только эксперт, тогда ещё раз попробую сделать на базе эксперта или хотя бы сделать отдельный эксперт для чтения файла и прогона через многоуровневый цикл.