Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да, есть эффект. Сложно сказать в чём дело, возможно буфер всё же рассчитывается, но отображение до прихода тика не делается, нужно в рабочее время проверять. Насчёт Bars и других предопределённых переменных я всё же рекомендовал бы не использовать их в init().
Ну конечно предопределенные переменные нельзя использовать в init(), но значение Bars, как мне кажется, должно расчитываться без проблем в любой момент времени (не уверен, но мне так кажется).
Эффект есть, подождем ответов разработчиков.
Этот момент многократно обсуждался в форуме.
В init доступна не вся информация об рыночном окружении. Поэтому в init не нужно заниматься рыночными расчетами.
Этот момент многократно обсуждался в форуме.
С этим все понятно.
Что скажете по существу вопроса?
Задайте полный, точный и однозначный вопрос, пожалуйста.
Берем тестовый индикатор, который прикреплен ниже. Компилируем его в Метаэдиторе. Затем, добавляем его на открытый график и .... ничего не видим в окне индикатора. Теперь, сново откомпилируйте индикатор не снимая его с графика и он заработает как надо.
Вопрос: это особенность работы терминала, или глюк?
тестовый индикатор:
Спасибо.Ваш индикатор вообще содержит только одно значение, которое не отрисовывается, так как это просто точка без продолжений. Нормальный индикатор должен содержать примерно такой код (заполняющий всю область индикатора):
Хорошо я понял все с init(). Можно было бы об этом поподробней в хелпе рассказать. Заодно и дать определение, какие действия являются рыночными расчетами, чтобы знать.
Вот такая конструкция индикатора тоже не работает, что здесь не так?:
Спасибо за ответы. Я не просто так спрашиваю, ведь любой, кто первый раз пишет индикатор наткнется на эти грабли, потому что о них нет информации в хелпе.
Кстати в хелпе так и сказано, что функция Start() вызывается только по приходу новой котировки. Тогда возникает вопрос, а как же индикатор нанесенный на график будет пересчитан для уже имеющегося графика в офлайн режиме, если котировки больше не поступают?
Спасибо.
Как и требовалось - горизонтальная линия со значением 5.
А если изменить индикатор вот так, то получится синусоида:
Renat и все остальные, спасибо, что уделили время для разъяснений.
Все оказалось до банального просто. Все дело в том, что после перекомпилляции индикатора, который находится на графике, не происходит вызова функции start(). Она происходит только по приходу новой котировки или подгрузке истории. У меня, мой простейший индикатор, работал на некоторых графиках, а на некоторых нет. Теперь понимаю, что он работал на тех графиках, которые подгружали историю (дело было в выходной, когда новые котировки не поступали). На остальных же он работал только после удаления его и наложении снова (тут понятно, функция start() запускалось при наложении).
Поиски истины запутали меня настолько, что привели к не верным выводам. Плюс, желание выпендрится перед публикой в том, что обнаружен очередной глюк и были причиной создания этой ветки.
Право, это было крайне поучительно.
Спасибо всем, кто откликнулся в этой ветке.
Тему можно закрыть.