После запуска какие ошибки видите в логе?
Две частые причины падения индикаторов это выход за пределы массива и деление на ноль.
деления тут нет, по этому скорее всего выход за пределы массива.
if ( myDataCount == 2 ) { myBuffer[ i ] = myRates[1].close; } /// смотреть, думать и плакать else { PrintFormat("что-то пошло не так"); }
в общем-то никто не обещал, что данные по D1 будут доступны на момент первого-же запуска индикатора
рецепты предлагают разные - от запроса iBars(PERIOD_D1) в OnInit;
до "при работе с другими символами и таймфреймами - учитывать что они асинхронны и надо самому разбираться с изменением доступной глубины истории и временем последнего бара".
После запуска какие ошибки видите в логе?
Две частые причины падения индикаторов это выход за пределы массива и деление на ноль.
деления тут нет, по этому скорее всего выход за пределы массива.
в общем-то никто не обещал, что данные по D1 будут доступны на момент первого-же запуска индикатора
рецепты предлагают разные - от запроса iBars(PERIOD_D1) в OnInit;
до "при работе с другими символами и таймфреймами - учитывать что они асинхронны и надо самому разбираться с изменением доступной глубины истории и временем последнего бара".
Хорошо, я переработал код и теперь обхожусь без CopyRates().
Теперь это работает!
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования