Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Прочтите внимательнее справку по ChartIndicatorAdd - особенно обратите внимание на это:
Возвращаемое значение
Возвращает true в случае успеха, иначе false. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError(). Ошибка 4114 означает, что график и добавляемый индикатор отличаются по символу или таймфрейму.
Похоже, что, да, нельзя так задавать входящие параметры таймфрейма и валютной пары:
Вот эта строчка давала ошибку (используются глобальные переменные symbol и period):
А если сделать, как в вашем примере:
то все хорошо.
Надо учить матчасть :)
Похоже, что, да, нельзя так задавать входящие параметры таймфрейма и валютной пары:
Вот эта строчка давала ошибку (используются глобальные переменные symbol и period):
Не должно такого быть. Какую ошибку получаете: компиляции или времени выполнения?
Не должно такого быть. Какую ошибку получаете: компиляции или времени выполнения?
Да вот в том и дело, что ошибок никаких нет. Все работает. За исключением того, что iMa считается неправильно. Убрал эти глобальные объявления и все работает. Но как-то же задаются эти входящие параметры? Может быть они задаются только для того, что установить окружение графика. А во всех функциях уже надо использовать Symbol() ?
Да вот в том и дело, что ошибок никаких нет. Все работает. За исключением того, что iMa считается неправильно. Убрал эти глобальные объявления и все работает. Но как-то же задаются эти входящие параметры? Может быть они задаются только для того, что установить окружение графика. А во всех функциях уже надо использовать Symbol() ?
совсем не понятно зачем вы делаете ChartSetSymbolPeriod(), почти 100% что он вам вообще не нужен
если вы поставите там период отличающийся от периода на котором изначально запущен эксперт,
то гарантированно получите "неверное значение iMA" по хендлу iMA(PERIOD_CURRENT,....)
и к тому-же явно не весь код показан.
Да вот в том и дело, что ошибок никаких нет. Все работает. За исключением того, что iMa считается неправильно. Убрал эти глобальные объявления и все работает. Но как-то же задаются эти входящие параметры? Может быть они задаются только для того, что установить окружение графика. А во всех функциях уже надо использовать Symbol() ?
На каком символе и ТФ запускаете индикатор?
Да вот в том и дело, что ошибок никаких нет. Все работает. За исключением того, что iMa считается неправильно. Убрал эти глобальные объявления и все работает. Но как-то же задаются эти входящие параметры? Может быть они задаются только для того, что установить окружение графика. А во всех функциях уже надо использовать Symbol() ?
Не может быть. Если символ и таймфрем тот же, то будет один и тот же хэндл. Наверно запускаете свой код не на EUIRUSD M15.
Тут где то косяк у Вас, что то упускаете.
Просто это базовый индикатор и много лет работает у кучи народу , ошибка если бы и была давно бы подняли тревогу.