![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всё!!! Здаюсь... ковырял ковырял справку, но так и не смог получить нужного результата. Собственно Сам вопрос. Может ктонибудь просто сказать. Чувачёк, в твоих индикаторах нужно вот тут поставить вот это, потому что то-то, а вот тут поставить вот это, потому что такто. Это действительно будет помощь. Потому как время идёт, а я тупо не догоняю как исправить код..... Заранее благодарен.
Описание. Основной индикатор "Секвента" в одном из буферов формирует сигнал 1 покупаем -1 продаём, в остальное время буфер равен нулю.
Как только пришёл сигнал начинаем запрашивать смежные индикаторе (в нашем случае AD) на предмет текущих значений.
Проблема в том что при компиле в принт выводит одни значение АД, в тестере на том же самом месте значения абсалютно другие.
Первый индикатор Секвента, второй организовывает вызов АД в момент поступления сигнала.
Ну не понимаю я как это сделать, помощи прошу просто.....
Неужто перевелись богатыри на руси??? И подсказать не кому???
Ну где же вы профессионалы??? Подскажите хоть в чём проблема? Хуже всего когда всё написано правильно, а всё равно не работает.
Ну где же вы профессионалы??? Подскажите хоть в чём проблема? Хуже всего когда всё написано правильно, а всё равно не работает.
А может проблема в вычислении индикатора? Почему-бы не взять стандартный iAD и не мудрить с вычислениями?
Вот показания стандартного и вашего индикаторов по реальным объёмам.
Как видите расхождения есть. Да и вычисление организовано... Зачем пытаться подогнать под стандарт mql4 и менять направление индексации?.
А может проблема в вычислении индикатора? Почему-бы не взять стандартный iAD и не мудрить с вычислениями?
Вот показания стандартного и вашего индикаторов по реальным объёмам.
Как видите расхождения есть. Да и вычисление организовано... Зачем пытаться подогнать под стандарт mql4 и менять направление индексации?.
Со стандартным такаяже беда.....
Я правильно понимаю, что индикатор правильно рассчитывает на истории значения, как в тестере, так и на реальных данных (у меня так получилось), если расчет идет на чарте VTBR-12.17?
А вот расчет при появлении нового бара отличается от тестера и реальных данных?
При этом индикатор Вы вызываете не на том инструменте, на котором идет расчет?
Соответстено проблема возникает из-за рассинхронизации баров на двух инструментах.
Тогда, почему бы не копировать значение индикатора AD не по индексу буфера, а по времени? Копировать можно сразу за последние 15 минут, если дыра большая, а потом посмотреть где кончаются нули в буфере и от туда уже вычислить последнее значение.
Нет. Различия между компиляцией и тестером.
В момент компиляции или сохранения данных на диск с помощью скрипта сохраняются одни данные, а в тестере и на реале дургие. Согласен что проблема с ориентацией между массивами. Думаю по времекни обращение можно попролбовать как вариант, но думаю результат будет точно такойже. Мне так кажется. чуть позже проверю. Или проблема во времени расчёта нидикатора. В тестере и реале, просто не успевает просчитаться. Причём если делаю вызов без использования базового индикатора, то всё вроде как правильно, когда начинаю сохранять данные в определённый момент, по сигналу базового индюка. Начинается свистоплятска. Потому как где нужно, я уже все массивы перевернул.... Как то так....
В поисках проблемы немного изменил Ваш индикатор,
Запустил индикатор на графике Si-12.17 минутки и вот что увидел в логе:
2017.12.09 14:12:51.754 Train (Si-12.17,M1) AD время 2017.12.08 23:47:00 Время на VTBR-12.17 2017.12.08 23:43:00 -26890.0 81496 81499
2017.12.09 14:12:51.754 Train (Si-12.17,M1) AD время 2017.12.08 23:48:00 Время на VTBR-12.17 2017.12.08 23:48:00 -26890.0 81497 81499
2017.12.09 14:12:51.754 Train (Si-12.17,M1) AD время 2017.12.08 23:49:00 Время на VTBR-12.17 2017.12.08 23:49:00 -26902.0 81498 81499
Если представить индикатор в таком формате
то по неясным мне причинам в тестере не получается сразу после инициализации запросить расчет индикатора AD - вероятно это особенность тестера и значения можно получать только после даты инициализации. На реальном чарте это вполне работает. Но надо понимать, что расчеты будут не совсем корректными из-за отсутствия коррекции на индекс! Попробуйте реализовать такую проверку сами.
Поэтому расчеты по текущем данным будут идти в блоке "Расчет по текущим данным", и думаю, они будут совпадать, как в тестере, так и в реале.
Спасибо! Попробую рассмотреть чуть позже Ваш вариант...