Подскажите, каким образом можно при помощи LongCondition и ShortCondition не только открывать, но и закрывать позицию без открытия противоположной? Например, параметр Signal threshold value to open = 30 и Signal threshold value to close = 70.
Мы хотим открыть long при выполнении Condition1 и закрыть позицию при выполнении Condition2. Какие значения должны возвращать LongCondition и ShortCondition в этом случае?
Если управления возвращаемыми значениями LongCondition и ShortCondition недостаточно, то как это можно сделать? Предполагается, что мы используем только один сигнал.
Я загрузил сигнал из этой статьи и создал MQ5 с помощью мастера, но советник не совершает никаких сделок. Есть идеи?
Мне пришлось внести изменения в комментарии выше, чтобы сигнал появился в списке, но кроме этого он скомпилировался нормально. Запуск советника в тестере стратегий ничего не дает :(
EDIT: После вставки операторов печати во все функции класса CSampleSignal и CExpertSignal создается впечатление, что унаследованные функции не перезаписываются функциями CSampleSignal.
т. е. в этом примере вместо этих функций выполняются эти:
class CSampleSignal : public CExpertSignal
{
bool CSampleSignal::CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration);
bool CSampleSignal::CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration);
выполняются следующие:
class CExpertSignal : public CExpertBase
{
virtualbool CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration);
virtualbool CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration);
Имеет ли это смысл? Функции из родительского класса выполняются, когда они перезаписываются в дочернем классе ... Любая помощь будет очень признательна!!!
Я загрузил сигнал из этой статьи и создал MQ5 с помощью мастера, но советник не совершает никаких сделок. Есть идеи?
Мне пришлось внести изменения в комментарии выше, чтобы сигнал появился в списке, но кроме этого он скомпилировался нормально. Запуск советника в тестере стратегий ничего не дает :(
EDIT: После вставки операторов печати во все функции класса CSampleSignal и CExpertSignal создается впечатление, что унаследованные функции не перезаписываются функциями CSampleSignal.
т. е. в этом примере вместо этих функций выполняются эти:
выполняются следующие:
Имеет ли это смысл? Функции из родительского класса выполняются, когда они перезаписываются в дочернем классе ... Любая помощь будет очень признательна!!!
Привет, Троллейбус,
У меня такая же проблема. Вы нашли какое-нибудь решение или идею по этому поводу?
(неважно увеличить или уменьшить) через повторную генерацию условия в , например в
LongCondition();
ни к чему не приводит, уже открытая позиция не изменяется, ее можно только удалить через выполнение условия закрытия или по срабатыванию sl , tp.
Мастер MQL5 мне нравиться, можно легко и быстро "собирать" многоиндикаторный советник, менять модуль отслеживания sl, менять модуль управления капиталом.
Но попытка написать советник, который открывает минимальную позицию при формировании условия от одного индикатора и увеличивает (доливает) позицию при подтверждении тренда другим индикатором
натолкнулась на вышеописанную проблему - уже открытая позиция не изменяется при повторной выдаче сигнала на открытие через. например LongCondition();
Вы не знаете, как устроены торговые классы, и пугаетесь слов "Объектно-ориентированное программирование"? На самом деле вовсе не обязательно всё это знать, чтобы написать свой собственный модуль торговых сигналов - достаточно следовать простым правилам. Всё остальное сделает Мастер MQL5, и вы получите готовый торговый робот!
Скачал, сгенерил через Мастер, попробовал запустить в тестере. Не работает. Он даже не заходит в методы CheckOpenLong/Short() в samplesignal. Они вызываются в ExpertSignal, но не в SampleSignal. Что еще сделать, чтобы наверняка переопределить их?
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Подскажите, каким образом можно при помощи LongCondition и ShortCondition не только открывать, но и закрывать позицию без открытия противоположной? Например, параметр Signal threshold value to open = 30 и Signal threshold value to close = 70.
Мы хотим открыть long при выполнении Condition1 и закрыть позицию при выполнении Condition2. Какие значения должны возвращать LongCondition и ShortCondition в этом случае?
Если управления возвращаемыми значениями LongCondition и ShortCondition недостаточно, то как это можно сделать? Предполагается, что мы используем только один сигнал.
Спасибо.
Привет,
Я выполнил все шаги, описанные в статье, но у меня ничего не получилось.
Я сохранил сигнал в файле \include\expert\signal\mysignals\samplesignal.mqh.
Но он не распознается мета-редактором. Я попробовал то же самое с прикрепленным файлом в статье, никаких изменений...
Текущая версия метаредактора - 5.00 Build 567.
Есть идеи?
Спасибо, Марио
Когда я использую файл, который вы прикрепили к статье, что-то не так.
Я нахожу, что комментарий о Type должен быть следующим:
//| Type=SignalAdvanced |
Когда я использую файл, который вы прикрепили к статье, что-то не так.
Я нахожу, что комментарий о Type должен быть следующим:
//| Type=SignalAdvanced |
Привет всем,
Я загрузил сигнал из этой статьи и создал MQ5 с помощью мастера, но советник не совершает никаких сделок. Есть идеи?
Мне пришлось внести изменения в комментарии выше, чтобы сигнал появился в списке, но кроме этого он скомпилировался нормально. Запуск советника в тестере стратегий ничего не дает :(
EDIT: После вставки операторов печати во все функции класса CSampleSignal и CExpertSignal создается впечатление, что унаследованные функции не перезаписываются функциями CSampleSignal.
т. е. в этом примере вместо этих функций выполняются эти:
выполняются следующие:
Имеет ли это смысл? Функции из родительского класса выполняются, когда они перезаписываются в дочернем классе ... Любая помощь будет очень признательна!!!
Привет всем,
Я загрузил сигнал из этой статьи и создал MQ5 с помощью мастера, но советник не совершает никаких сделок. Есть идеи?
Мне пришлось внести изменения в комментарии выше, чтобы сигнал появился в списке, но кроме этого он скомпилировался нормально. Запуск советника в тестере стратегий ничего не дает :(
EDIT: После вставки операторов печати во все функции класса CSampleSignal и CExpertSignal создается впечатление, что унаследованные функции не перезаписываются функциями CSampleSignal.
т. е. в этом примере вместо этих функций выполняются эти:
выполняются следующие:
Имеет ли это смысл? Функции из родительского класса выполняются, когда они перезаписываются в дочернем классе ... Любая помощь будет очень признательна!!!
Привет, Троллейбус,
У меня такая же проблема. Вы нашли какое-нибудь решение или идею по этому поводу?
Спасибо
Добрый день,
Посоветуйте, пожалуйста, как увеличить (долить) позицию в советнике, который написан на базе Мастера MQL5 и где позиции открываются через
virtual int LongCondition();
virtual int ShortCondition();
Я написал робот по рекомендациям в статье
https://www.mql5.com/ru/articles/367 "создай торговый робот за 6 шагов" и он прекрасно работает, но попытки повлиять на размер позиции
(неважно увеличить или уменьшить) через повторную генерацию условия в , например в
LongCondition();
ни к чему не приводит, уже открытая позиция не изменяется, ее можно только удалить через выполнение условия закрытия или по срабатыванию sl , tp.
Мастер MQL5 мне нравиться, можно легко и быстро "собирать" многоиндикаторный советник, менять модуль отслеживания sl, менять модуль управления капиталом.
Но попытка написать советник, который открывает минимальную позицию при формировании условия от одного индикатора и увеличивает (доливает) позицию при подтверждении тренда другим индикатором
натолкнулась на вышеописанную проблему - уже открытая позиция не изменяется при повторной выдаче сигнала на открытие через. например LongCondition();
Спасибо.
файл из статьи не видно в мастере, кто в теме, подскажите пж-та что подправить.
В комментариях нужно заменить строчку
//| Type=Signal
на
//| Type=SignalAdvanced
После этого у меня мастер стал видеть сигнал.