Ошибки, баги, вопросы - страница 373

 

Доброе время суток. Я сгенерировал советник с помощью mql5. К работе претензий нет. Только никак не могу понять, как изменить его чтобы вместо покупки была продажа и наоборот. Совсем немного знаком с mql4, а с mql5 еще хуже.

Подскажите если не затруднит.

Мастер MQL5: Создание эксперта без программирования
Мастер MQL5: Создание эксперта без программирования
  • 2010.12.15
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы хотите быстро проверить торговую идею, не тратя времени на программирование? Выберите в "Мастере MQL5" нужный тип торговых сигналов, подключите модули сопровождения позиций и управления капиталом - на этом вся работа закончена. Создайте свои реализации модулей или закажите их через сервис "Работа" - и комбинируйте новые модули с уже существующими.
 
Dimmish:

Доброе время суток. Я сгенерировал советник с помощью mql5. К работе претензий нет. Только никак не могу понять, как изменить его чтобы вместо покупки была продажа и наоборот. Совсем немного знаком с mql4, а с mql5 еще хуже.

Подскажите если не затруднит.

Наверное нужно указать спомощью чего Вы сгенерировали советник (скажем его можно мастером создать), используется ли там стандартная библиотека и что понимается под "чтобы вместо покупки была продажа и наоборот".
 
Interesting:
Наверное нужно указать спомощью чего Вы сгенерировали советник (скажем его можно мастером создать), используется ли там стандартная библиотека и что понимается под "чтобы вместо покупки была продажа и наоборот".
Ну да, мастером. Как тут описано https://www.mql5.com/ru/articles/171. Ну я хочу чтобы когда советник давал сигнал на покупку он продавал и наоборот. 
Мастер MQL5: Создание эксперта без программирования
Мастер MQL5: Создание эксперта без программирования
  • 2010.12.15
  • MetaQuotes Software Corp.
  • www.mql5.com
Вы хотите быстро проверить торговую идею, не тратя времени на программирование? Выберите в "Мастере MQL5" нужный тип торговых сигналов, подключите модули сопровождения позиций и управления капиталом - на этом вся работа закончена. Создайте свои реализации модулей или закажите их через сервис "Работа" - и комбинируйте новые модули с уже существующими.
 
Dimmish:

Доброе время суток. Я сгенерировал советник с помощью mql5. К работе претензий нет. Только никак не могу понять, как изменить его чтобы вместо покупки была продажа и наоборот. Совсем немного знаком с mql4, а с mql5 еще хуже.

Подскажите если не затруднит.

Есть два варианта, либо править класс сигналов, либо торговый класс (то место которое касается исполнения приказа).

Но проще править класс сигналов (мороки меньше).

Но по опыту МТ4 помню что переворачивание плохих сигнанов ничего не даёт. График будет отличатся, но всё равно слив со скоростью спреда.

 
Urain:

Есть два варианта, либо править класс сигналов, либо торговый класс (то место которое касается исполнения приказа).

Но проще править класс сигналов (мороки меньше).

Но по опыту МТ4 помню что переворачивание плохих сигнанов ничего не даёт. График будет отличатся, но всё равно слив со скоростью спреда.

Согласен что при перевороте будет слив со скоростью спреда. Но этот слив будет если и без переворота слив со скоростью спреда.
 
papaklass:

В торговом запросе нужно изменить тип ордера. Всего восемь типов ордеров:

для рыночных ордеров - ORDER_TYPE_BUY (покупка) , ORDER_TYPE_SELL (продажа) ;

для отложенных ордеров -  ORDER_TYPE_BUY_LIMIT (покупка), ORDER_TYPE_SELL_LIMIT (продажа);

                                      -  ORDER_TYPE_BUY_STOP (покупка), ORDER_TYPE_SELL_STOP (продажа); 

Для того чтобы поменять покупку на продажу замените тип ордера на противоположный, не забудьте при этом пересчитать стоп уровни. 

Я их искал, нету таковых.
 
Urain:

Есть два варианта, либо править класс сигналов, либо торговый класс (то место которое касается исполнения приказа).

Но проще править класс сигналов (мороки меньше).

Тут не согласен, если все нормально в эксперте написано то даже "торговый класс" возможно не придется править. Просто в нужном месте вместо функции продажи вызвать функцию покупки (соответственно указав нужные параметры вызова). 

Urain:

Но по опыту МТ4 помню что переворачивание плохих сигнанов ничего не даёт. График будет отличатся, но всё равно слив со скоростью спреда.

Тут полностью поддержу. Если стратегия слвивная то как не крути слив будет обеспечен по итогу (вопрос только во времени).
Документация по MQL5: Основы языка / Функции / Вызов функции
Документация по MQL5: Основы языка / Функции / Вызов функции
  • www.mql5.com
Основы языка / Функции / Вызов функции - Документация по MQL5
 
Dimmish:
Я их искал, нету таковых.
Есть, в торговом классе, но лучше изменять в классе сигналов тогда сохранится правильная логика и править меньше, дам только выходной сигнал меняешь на противоположный и всё.
 
Dimmish:
Я их искал, нету таковых.

Это если все пишется на низком уровне без ООП (стандартной библиотеки и собственных классов).

Если эксперт с применением ООП, обычно используется стандартная библиотека (для новичков актуальна генерация визардом) то поступать проще по другому. Не стоит тогда погружаться в дебри MQL5.

Взять к примеру стандартный класс (даже базовый так сказать) CExpert.

У него имеются следующий функционал для входа в рынок

Методы входа в рынок

 

virtual CheckOpen

Проверяет необходимость и возможность входа в рынок

virtual CheckOpenLong

Проверяет необходимость и возможность входа в длинную позицию

virtual CheckOpenShort

Проверяет необходимость и возможность входа в короткую позицию

virtual OpenLong

Выполняет операции для открытия длинной позиции

virtual CheckOpenShort

Выполняет операции для открытия короткой позиции


Достаточно поменять вызов OpenLong на OpenShort и всего делов.

Разработчикам - Не знаю как в файле справке по MQL, но на сайте косяк в имен OpenShort!

Urain:
Есть, в торговом классе, но лучше изменять в классе сигналов тогда сохранится правильная логика и править меньше, дам только выходной сигнал меняешь на противоположный и всё.

Если класс сигналов берется из стандартной библиотеки (как вариант его нельзя изменить) то не прокатит. А поменять "свой" код, особенно эксперт всегда удобней.

По крайней мере на мой взгляд. Хотя повторюсь, смысла я в этом не вижу.

 
Interesting:

Это если все пишется на низком уровне без ООП (стандартной библиотеки и собственных классов).

Если эксперт с применением ООП...


В стартовом посте Dimmish написал что сгенерировал советник а это значит что советник написан с помощью стандартных классов.
Причина обращения: