Согласен. Сам так же поступаю. Расчет только из прошлого в настоящее. Но похоже подобные вещи скрыты в алгоритмах стандартных индикаторов.
Постоянно вижу ошибки в кодах форумчан. Это касается как расчетов по iXXX(), так и по расчету на массиве - iXXXOnArray().
Например, сделанный вот так индикатор в реал-тайме начнет показывать расхождения с оригиналом после поступления новых баров:
Да чего там у форумчан! Эти же ошибки я заметил и в кодах стандартных индикаторов. Например, в Стохастике. Там сигнальная линия считается по iMAOnArray() в прямом цикле пересчета.
Разумеется, оффлайн все ок, но как только начинают поступать тики...
Я даже от разработчиков читал тут на форуме, что направление пересчета для iXXXOnArray, дескать, не играет роли. Чтоб не быть голословным, я прикрепил индикатор, где рассчитывается МА по массиву, и, в зависимости от параметра DirOfCount (true - прямой пересчет), меняется направление пересчета. Киньте этот индикатор на график вместе со стандартной МА и убедитесь, что они будут совпадать только на истории. Если же поставить обратный пересчет - все ок.
Вот так выглядит расклад, когда после прикрепления к графику поступило три новых бара: // красный - с прямым пересчетом, синий - стандартный SMA(3)
Узнаю брата Колю (с) 12 стульев.
Еслиб вы знали уважаемый Пётр сколько чашек кофе я разбил об стену изза это мелочи, бессоные ночи,
а всего то делов сделать разработчикам чтоб и iMA и iMAonArray считали в одну сторону, ну так нет же нужно выпендриться.
Вот и приходиться вместо встроенных делать такие же но более медленные функции зато работающие правильно.
Согласен. Сам так же поступаю. Расчет только из прошлого в настоящее. Но похоже подобные вещи скрыты в алгоритмах стандартных индикаторов.
Да. Но не все (как постоянно убеждаешься) об этом знают. Более того, в самих кодах стандартных индикаторов, осененных авторитетом разработчиков и по идее дОлжных служить примером для правильного кодирования, есть эти ошибки. А это уже - разгильдяйство, граничащее по квалификации с диверсией! )))
Впрочем, там и без этого в этих кодах ошибок хватает. Например, неправильно считается смещение в Bollinger's Bands (Bands.mq4) и еще много чего. Но это уже др.тема. Да и кого это волнует? Все равно 99.(9)% убеждены в том, что ТА не работает. Даже, судя по подходу к корректности "эталонных" кодов, так думают и сами разработчики. Бугагага!!!)))
Узнаю брата Колю (с) 12 стульев.
Еслиб вы знали уважаемый Пётр сколько чашек кофе я разбил об стену изза это мелочи, бессоные ночи,
а всего то делов сделать разработчикам чтоб и iMA и iMAonArray считали в одну сторону, ну так нет же нужно выпендриться.
Вот и приходиться вместо встроенных делать такие же но более медленные функции зато работающие правильно.
So do I.))) Вернее - did. В свое время просто-таки взял в себя в руки и решил разобраться - как корректно использовать встр. индикаторы по массиву. Вроде выяснил...
===
"Золотой теленок" вы, наверно, имели ввиду.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Постоянно вижу ошибки в кодах форумчан. Это касается как расчетов по iXXX(), так и по расчету на массиве - iXXXOnArray().
Например, сделанный вот так индикатор в реал-тайме начнет показывать расхождения с оригиналом после поступления новых баров:
Да чего там у форумчан! Эти же ошибки я заметил и в кодах стандартных индикаторов. Например, в Стохастике. Там сигнальная линия считается по iMAOnArray() в прямом цикле пересчета.
Разумеется, оффлайн все ок, но как только начинают поступать тики...
Я даже от разработчиков читал тут на форуме, что направление пересчета для iXXXOnArray, дескать, не играет роли. Чтоб не быть голословным, я прикрепил индикатор, где рассчитывается МА по массиву, и, в зависимости от параметра DirOfCount (true - прямой пересчет), меняется направление пересчета. Киньте этот индикатор на график вместе со стандартной МА и убедитесь, что они будут совпадать только на истории. Если же поставить обратный пересчет - все ок.
Вот так выглядит расклад, когда после прикрепления к графику поступило три новых бара: // красный - с прямым пересчетом, синий - стандартный SMA(3)