Ошибки, баги, вопросы - страница 3539
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Хорошо, Алексей, давайте продолжим тут
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 4380: улучшения в работе
Alexey Viktorov, 2024.06.20 14:31
Так вот на основе ваших исходников я и делал свои индикаторы. В чём ваша ошибка уже сказал, делайте контроль нового бара и в ресурсном, и в рабочем индикаторах. Разработчикам это не надо, они не будут объяснять вам в чём вы ошибаетесь.
Так как вы контролируете бары? Если дождаться получения нового бара с ресурсного индикатора, то вызыващий индикатор увидит это только на втором тике. Я не смог получить на первом тике данные нового бара из ресурсного индикатора.
Так как вы контролируете бары? Если дождаться получения нового бара с ресурсного индикатора, то вызыващий индикатор увидит это только на втором тике. Я не смог получить на первом тике данные нового бара из ресурсного индикатора.
Во входные параметры ресурсного индикатора добавьте ТФ на котором нужно получать новый бар и контролируйте именно этот ТФ непосредственно в ресурсном индикаторе. И в iCustom() обязательно укажите это. Тогда получите заполнение буфера в момент первого тика нового бара.
В вызывающем индикаторе можете контролировать любой, наверное только младший, ТФ на новый бар. Старший ТФ надо проверять как будет работать…
Во входные параметры ресурсного индикатора добавьте ТФ на котором нужно получать новый бар и контролируйте именно этот ТФ непосредственно в ресурсном индикаторе. И в iCustom() обязательно укажите это. Тогда получите заполнение буфера в момент первого тика нового бара.
В вызывающем индикаторе можете контролировать любой, наверное только младший, ТФ на новый бар. Старший ТФ надо проверять как будет работать…
Что делать, если нет исходника индикатора?
Баланс может увеличиваться при слабо меняющемся эквити.
Может.
По сути нужна точка отчёта, которая будет означать, что до момента открытия позиции можно было вывести N денег.
Как вариант, можно брать текущий убыток по позиции, и делить на эквити в момент открытия позиции. Но, тут возникает вопрос, как аккумулировать текущие результаты, ведь каждая позиция была открыта в разный момент времени. Для оценки рисков, можно просто брать из этого множества вариант по максимальной просадке в % и увеличить пропорционально на оставшийся объем открытых позиций - ведь это именно то, что хочет знать потенциальный подписчик. Да, такой подход ухудшит показатели сеточников, но будет весьма не плох для направленной торговли от открытия до закрытия.
Другой вариант - обязать всех сигнальщиков в пятницу закрывать позиции, и сумму денежных средств на эту дату брать для сравнительной оценки.
Как вариант
Что делать, если нет исходника индикатора?
Написать новый.
Это реальная ситуация или поболтать?
Просто всегда для оценки DD брать надо только показатель Equity. Есть же сервисы мониторинга, которые именно так и делают.
На какую дату брать показатель в 100%? Что он символизирует?
Во входные параметры ресурсного индикатора добавьте ТФ на котором нужно получать новый бар и контролируйте именно этот ТФ непосредственно в ресурсном индикаторе. И в iCustom() обязательно укажите это. Тогда получите заполнение буфера в момент первого тика нового бара.
В вызывающем индикаторе можете контролировать любой, наверное только младший, ТФ на новый бар. Старший ТФ надо проверять как будет работать…
Вот добавил в вызывающий индикатор:
В ресурсный - входный параметр:
В OnCalculate перд заполнением буфера два варианта проверки нового бара по time[] и iTime():
И все равно CopyBuffer() вызывается до появления нового бара.
Исходники прилагаю.
Что не так делаю?
На какую дату брать показатель в 100%? Что он символизирует?
Любой положительный числовой массив всегда обладает MaxDD-характеристикой.
Хотите MaxDD с начала жизни счете - формируйте Equity-массив с момента его открытия. C момента включения в мониторинг - аналогично.
Во входные параметры ресурсного индикатора добавьте ТФ на котором нужно получать новый бар и контролируйте именно этот ТФ непосредственно в ресурсном индикаторе. И в iCustom() обязательно укажите это. Тогда получите заполнение буфера в момент первого тика нового бара.
В вызывающем индикаторе можете контролировать любой, наверное только младший, ТФ на новый бар. Старший ТФ надо проверять как будет работать…
Проверил, когда вызывающий индикатор имеет старший ТФ, а ресурсный - младший ТФ, там действительно CopyBuffer() получает данные с младшего бара заранее.
Хотя я не знаю, почему вы именно так проверяли, все мои примеры были о получении данных со старшего ТФ.
Дождусь вашего ответа, если не увидите вариантов решения по вызову CopyBuffer() со старшего ТФ, вернусь в ветку с текущим билдом об актуальности проблемы.