
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
пока ничего не делал, пытаюсь скомпилировать этот код:
Этот код компилируется. Virtual и BestInterval вчера были обновлены. Возможно, у Вас старая версия.
без Virtual компилируется,
без BestInterval тоже компилируется,
вместе не хочет.
Как это понимать?
Нет ещё одного входного параметра из Вашей библиотеки.Как это понимать?
Нет ещё одного входного параметра из Вашей библиотеки.Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: BestInterval
fxsaber, 2018.10.16 14:57
Virtual и BestInterval вчера были обновлены. Возможно, у Вас старая версия.
Этот код компилируется. Virtual и BestInterval вчера были обновлены. Возможно, у Вас старая версия.
Спасибо!
Обновил Virtual, компилируется.
Советник компилируется, интервалы для пропуска обсчитываются, файлик в Common появляется.
Но параметр inBestInterval_Action в тестере отсутствует и не появляется ни с VIRTUAL_TESTER, ни без него.
Соответственно выполнить тест с учетом выброшенных интервалов никак не получается.
Нужна помощь - что я делаю не так?
Советник компилируется, интервалы для пропуска обсчитываются, файлик в Common появляется.
Но параметр inBestInterval_Action в тестере отсутствует и не появляется ни с VIRTUAL_TESTER, ни без него.
Соответственно выполнить тест с учетом выброшенных интервалов никак не получается.
Нужна помощь - что я делаю не так?
VIRTUAL_TESTER нужен только для ускорения Оптимизации, либо реверса. Поэтому для работы с BestInterval он не прописывается
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Библиотеки: BestInterval
fxsaber, 2018.10.15 13:30
1. Берете любой советник и прописываете в его начало эти строки
ЗЫ Хорошо, что в коде разобрались. Если библиотеки в таком же виде, что и в КБ, то причин не знаю. Возможно, забыли скомпилировать, когда убирали VIRTUAL_TESTER.
fxsaber:
ЗЫ Хорошо, что в коде разобрались. Если библиотеки в таком же виде, что и в КБ, то причин не знаю. Возможно, забыли скомпилировать, когда убирали VIRTUAL_TESTER.
Создал файл TesterEA_mq4.mq5 следующего содержания:
Файл TesterEA.mq4 оригинальный, из КБ. Скомпилировал нормально.
MT4Orders, Virtual, BestInterval - свежие из КБ.
В EMA.mqh исправил (выскакивала ошибка деления на ноль):
EMA( const int period ) : Alpha(1.0 / period), Value(0)
на
EMA( const int period ) : Alpha(2.0 / (period+1.0)), Value(0)
Пробовал в BestInterval.mqh вместо
делать
переменная BestInterval Action в тестере появляется, при BestInterval Action=false в логе всё красиво, но при BestInterval Action=true тест идёт целиком и в логе ничего про интервалы не пишет...
А жалко... :)
Создал файл TesterEA_mq4.mq5 следующего содержания:
Файл TesterEA.mq4 оригинальный, из КБ. Скомпилировал нормально.
MT4Orders, Virtual, BestInterval - свежие из КБ.
В EMA.mqh исправил (выскакивала ошибка деления на ноль):
EMA( const int period ) : Alpha(1.0 / period), Value(0)
на
EMA( const int period ) : Alpha(2.0 / (period+1.0)), Value(0)
Нулевой период - некорректное значение. Так что деление на ноль - норм и специально оставлено, чтобы видно было, что такое значение задавать нельзя.
Пробовал в BestInterval.mqh вместо
делать
переменная BestInterval Action в тестере появляется, при BestInterval Action=false в логе всё красиво, но при BestInterval Action=true тест идёт целиком и в логе ничего про интервалы не пишет...
А жалко... :)
Для Action вот такой исходник
При Action = true в отчете Тестера должен получиться такой же профит, как был расчитан в логе при Action = false.
Для Action вот такой исходник
При Action = true в отчете Тестера должен получиться такой же профит, как был расчитан в логе при Action = false.
Неа, не выходит каменный цветок... :)
В таком виде при Action = true вообще перестаёт закрывать ордера и мигом всю маржу новыми ордерами выжирает (видимо что-то с CloseBy)...
С отключенной Virtual.mqh всё работает, только Action интервалы игнорирует.
А разобраться глубже в Вашем коде ещё та задачка... Пожалуй, я пока пас. ;)
Неа, не выходит каменный цветок... :)
В таком виде при Action = true вообще перестаёт закрывать ордера и мигом всю маржу новыми ордерами выжирает (видимо что-то с CloseBy)...
Не удивлюсь, если на Неттинге запускали. Там CloseBy не пашет.
С отключенной Virtual.mqh всё работает, только Action интервалы игнорирует.
А разобраться глубже в Вашем коде ещё та задачка... Пожалуй, я пока пас. ;)
Делайте на хедже. Для неттинга не заморачивался, т.к. MT4-советник не предполагался запускаться в таком режиме, конечно.
ЗЫ Алгоритм игнора плохих промежутков простой. ТС запускается в виртуальном окружении. Вычисляется там неттинг-позиция только тех открытых позиций, что подходят под расчетные промежутки. Далее идет в реальном окружении синхронизация своей неттинг-позиции с виртуальной. Делается это самым некрасивым для анализа, но простым для реализации способом - CloseBy.
Собственно, Reverse-режим реализован так же. Можно CloseBy-вариант переписать, чтобы и на Неттинг-счетах пахало. Не до этого было.