Всем доброго времени суток, это моя вторая тема на форуме, и в этот раз я предлагаю вам опробовать наше новое творение на основе всеми известного индикатора PZ_Harmonic. Проблема этого индикатора в том, что он рисует, как и большинство ему подобных, поэтому мы заказали у программиста версию, которая рисует стрелочку, когда первый раз появляется паттерн Гартли, таким образом, мы видим где он был изначально, и избегаем перерисовки, проходим её стороной. По этому индикатору был создан советник, стало быть, сделки открываются в направлении стрелочек (Направлении отрисованного паттерна Гартли). Нам этого показалось мало, и на всякий случай мы решили сделать еще одну строчку в советнике, в которой можно выбрать после скольки перерисовываний будет открываться ордер.
Хотелось бы отметить, что настройки этого советника идентичны с настройками моего предыдущего по Дивергенции, поэтому в этом советнике в первую очередь в самой первой строчке нам нужно выбрать PZ_Harmonic(без рисовки).
Приглашаю всех желающих протестировать нашего советника, приложить в эту ветку прибыльные сеты по валютным парам, если таковые будут, а так же озвучить ваше мнение и идеи по этому советнику.
P.S в строчках "размер 1 и 2 минимального стопа" указаны дроби, верхние строчки стоп лосса и тейк профита в долларах (помечено, не перепутать)!
[Советник] Гартли
От Вячеслав Беркутов, 13 февраля, 2021 в Лаборатория ProfitFX
Прилагаю сет, который я успел протестировать, и который мне в данный момент понравился. Хочу так же отметить, что с роботами я только недавно имею дело и не так хорошо умею их тестировать, поэтому рассчитываю на помощь более опытных людей на этом форуме! ![]()

Привет.
Я глянул в код и у меня возникло несколько вопросов.
- Зачем нужно выносить в настройки и вообще как-то выбирать, по какой цене закрывать покупки, по какой - продажи? По определению, покупка может быть закрыта только по текущему Bid, а продажа - по Ask, но при этом можно совсем не заморачиваться этим вопросом: когда у вас уже выбран ордер, который вы решили закрыть, можно использовать OrderClosePrice(). В вашем случае "цена закрытия" задается один раз на открытие бара, а использовать ее вы будете пытаться при закрытии на каждом тике - что-то мне подсказывает, что будет очень много сложностей с закрытием в таком режиме
- Мне не совсем понятно, зачем столько внимания уделять закрытию сделок в коде - если можно, вообще говоря, открыть сделки с тейком и стопом сразу, они закроются брокером/тестером.
- Очень рекомендуется нормализовать абсолютно все double величины, отправляемые в торговые функции (NormalizeDouble(price, Digits()) для цены, тейков, стопов)
- Я не увидел ни одной проверки на StopLevel, FreezeLevel и прочие заморочки.
- Есть смысл проверить лот на "больше минимума", "меньше максимума", "делится на шаг лота"
- Есть смысл проверять на достаточность средств при открытии сделки
-
Проверку магика и символа ордера можно сделать один раз - и все остальное проверять внутри блока. И магик, кстати, имеет смысл вынести в настройки

- Не знаю, может, это у меня у одного такая проблема, но при попытке запустить тест, советник пытается подгрузить Индикатор PZ Harmonic, игнорируя ту часть имени, которая в скобках - возможно, метатрейдер не очень любит скобки в именах индикаторов?. А после переименования, он его находит, но теперь почему-то не удается инициализация индикатора. Она, к слову, не удается у меня и при попытке просто накинуть этот индикатор на график - хотя компилируется на ура и я не вижу ничего подозрительного в коде инициализации.

Это очень здорово, что вы делитесь результатами вашей работы.
Но мне бы казалось, что нужно делиться чем-то, что можно хотя бы прогнать в тестере?
Изменено 13 февраля, 2021 пользователем Rigal
2 минуты назад, Rigal сказал:Привет.
Я глянул в код и у меня возникло несколько вопросов.
- Зачем нужно выносить в настройки и вообще как-то выбирать, по какой цене закрывать покупки, по какой - продажи? По определению, покупка может быть закрыта только по текущему Bid, а продажа - по Ask, но при этом можно совсем не заморачиваться этим вопросом: когда у вас уже выбран ордер, который вы решили закрыть, можно использовать OrderClosePrice(). В вашем случае "цена закрытия" задается один раз на открытие бара, а использовать ее вы будете пытаться при закрытии на каждом тике - что-то мне подсказывает, что будет очень много сложностей с закрытием в таком режиме
- Мне не совсем понятно, зачем столько внимания уделять закрытию сделок в коде - если можно, вообще говоря, открыть сделки с тейком и стопом сразу, они закроются брокером/тестером.
- Очень рекомендуется нормализовать абсолютно все double величины, отправляемые в торговые функции (NormalizeDouble(price, Digits()) для цены, тейков, стопов)
- Я не увидел ни одной проверки на StopLevel, FreezeLevel и прочие заморочки.
- Есть смысл проверить лот на "больше минимума", "меньше максимума", "делится на шаг лота"
- Есть смысл проверять на достаточность средств при открытии сделки
- Проверку магика и символа ордера можно сделать один раз - и все остальное проверять внутри блока. И магик, кстати, имеет смысл вынести в настройки
- Не знаю, может, это у меня у одного такая проблема, но при попытке запустить тест, советник пытается подгрузить Индикатор PZ Harmonic, игнорируя ту часть имени, которая в скобках - возможно, метатрейдер не очень любит скобки в именах индикаторов?. А после переименования, он его находит, но теперь почему-то не удается инициализация индикатора. Она, к слову, не удается у меня и при попытке просто накинуть этот индикатор на график - хотя компилируется на ура и я не вижу ничего подозрительного в коде инициализации.
Это очень здорово, что вы делитесь результатами вашей работы.
Но мне бы казалось, что нужно делиться чем-то, что можно хотя бы прогнать в тестере?
У меня все прогоняется в тестере, и не только у меня, понятия не имею почему у вас не получается, если честно
17 часов назад, Вячеслав Беркутов сказал:У меня все прогоняется в тестере, и не только у меня, понятия не имею почему у вас не получается, если честно
Я гляну внимательнее и разберусь, спасибо
UPD:
Ну вы правы, если сложить скомпилированные версии - они работают.
А если скомпилировать исходники (что я и сделал исходно) - они не работают почему-то.
Изменено 14 февраля, 2021 пользователем Rigal
10 часов назад, Rigal сказал:Я гляну внимательнее и разберусь, спасибо
UPD:
Ну вы правы, если сложить скомпилированные версии - они работают.
А если скомпилировать исходники (что я и сделал исходно) - они не работают почему-то.
Разобрался: у вас один индикатор внутри вызывает другой. Мой косяк.
Для публикации сообщений создайте учётную запись или авторизуйтесь
Перейти к списку тем