Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 831
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я про имя фамилию, написано что надо исправить имя на реальное, а сделать это не получается
Да, если у Вас статус "Продавец", то Вы не можете редактировать свои данные:
Попробуйте напишите заявку в сервисдеск с пояснениями.
Да, если у Вас статус "Продавец", то Вы не можете редактировать свои данные:
Попробуйте напишите заявку в сервисдеск с пояснениями.
В том и дело что нет, чтобы им стать, надо отредактировать. Замкнутый круг...
Ваша заявка на регистрацию в качестве Продавца отклонена модератором.
Пожалуйста, исправьте предоставленные вами данные.
***
Пожалуйста, исправьте предоставленные вами данные.
Возможно причина в этом? Фотки кривые или тёмные или выполнены не по требованиям ...
В том и дело что нет, чтобы им стать, надо отредактировать. Замкнутый круг...
Ваша заявка на регистрацию в качестве Продавца отклонена модератором.
Пожалуйста, исправьте предоставленные вами данные.
Подскажите, пожалуйста, как при программировании на MQL5 использовать метод void Ignore(long value) { m_ignore=value; } стандартного класса CExpertSignal в пользовательском классе Трейлинга? Как к нему получить доступ?
У меня пользовательский класс сигналов дает методы открытия и закрытия позиций. Но в трейлинге я хотел вести сопровождение позиции по другому методу. Если просто отдельно написать пользовательские классы MySignal и MyTrailing, то закрытие позиции происходит по тому условию, которое сработало первым. Если условия Trailing сработало раньше, то все хорошо. Но иногда поступает новый (реверсный) сигнал от MySignal и позиция переворачивается, а мне после открытия нужно, чтобы она сопровождалась именно трейлингом, не закрывалась и новая не открывалась. Я посмотрел базовые классы и есть ощущение, что за это отвечает m_ignore из базового класса сигналов. Если ему присвоить значение 1 в соответствующем фильтре, то видимо будет работать как надо. Я добавил в класс эксперта в OnInit filter0.Ignore(0). Но я новичок в ООП и никак не пойму, как в классе MyTrailing, который не наследуется от класса CExpertSignal, а является его "кузеном"? поменять это значение (условно так filter0.Ignore(1) ). Подскажите, пожалуйста, как это сделать.
Собственно говоря, более общий вопрос: как передавать информацию между двумя классами, не являющимися наследниками? Как передать информацию из класса трейлинга в класс сигналов? Наверное можно создать глобальную переменную и общаться через нее. Но это выглядит совсем извращенно относительно логики защищенных членов в ООП.
Помогите пожалуйста кто-нибудь! Уже попробовал отойти от встроенного Ignore (что, конечно само по себе не хорошо, люди его старались включали в базовый код) и все-равно никак состыковать не могу. Третьи сутки мучаюсь изобретаю (учебника-то нет).
Уже даже коды классов подправил: ввел в классе MySignal защищенный булевый член (m_permition) и метод Set к нему создал, в лонгкондишн и шоткондишн заправил return(0) если !m_permition. В MyTrailing тоже создал защищенный булевый член m_signal_permition, к нему создал методы Get и Set, научил ЧекТрейлинги им управлять if(position==NULL) {m_signal_permition = true; return(false);} else m_signal_permition = false;
Не понимаю только одного, где и как мне их свести. Пробовал просто в OnTick на них ссылаться, не проходит.
Прочитал статью Владимира "Как научить ...". Вроде бы идея создания в пользовательском сигнале экземпляр еще одного сигнала и через него общаться понятная, но где-то у меня до конца не стыкуется: классы сигнала и трейлинга не наследуются друг от друга.
Помогите, люди добрые, кто чем может.
Здравствуйте коллеги. В котировках МТ5 помимо цены защиты некоторые данные, типа исторического спреда и проскальзывания(который по умолчанию везде одинаков и составляет 10 пятизначных пунктов).
Делая такой запрос после открытия позиции:
Получаем такой ответ:
Правильно ли я понимаю, что тестер МТ5 считает как спред так и проскальзывание вместе, ровно как в МТ4 я бы выставил вручную спред 13 пунктов, для конкретного примера в скриншоте.
Здравствуйте помогите пожалуйста кто нибудь ,как привязать советник мт5 к конкретному номеру счета ?
Здравствуйте помогите пожалуйста кто нибудь ,как привязать советник мт5 к конкретному номеру счета ?
Нужно проверять номер счёта. Делать это нужно в OnInit() и в OnTick(). Пример:
Здравствуйте, пробую перенести индикаторы из MT4 в MT5. Есть простой индикатор, который отображает время до следующего бара. В индикаторе используется OnTimer. Обновление в OnTimer происходит через функцию void refreshClock(). Правильно ли использовать такую конструкцию для других индикаторов, требующих использование OnTimer? Или можно оптимизировать процесс обращения к OnTimer?
Помогите пожалуйста кто-нибудь! Уже попробовал отойти от встроенного Ignore (что, конечно само по себе не хорошо, люди его старались включали в базовый код) и все-равно никак состыковать не могу. Третьи сутки мучаюсь изобретаю (учебника-то нет).
Уже даже коды классов подправил: ввел в классе MySignal защищенный булевый член (m_permition) и метод Set к нему создал, в лонгкондишн и шоткондишн заправил return(0) если !m_permition. В MyTrailing тоже создал защищенный булевый член m_signal_permition, к нему создал методы Get и Set, научил ЧекТрейлинги им управлять if(position==NULL) {m_signal_permition = true; return(false);} else m_signal_permition = false;
Не понимаю только одного, где и как мне их свести. Пробовал просто в OnTick на них ссылаться, не проходит.
Прочитал статью Владимира "Как научить ...". Вроде бы идея создания в пользовательском сигнале экземпляр еще одного сигнала и через него общаться понятная, но где-то у меня до конца не стыкуется: классы сигнала и трейлинга не наследуются друг от друга.
Помогите, люди добрые, кто чем может.
Я за неделю продвинулся! Нашел в классе CExpert метод Signal. Вставил в OnTick код
CExpertSignal *my_signal = ExtExpert.Signal(); my_signal.Ignore(0);
Теперь если в скобках руками на "1" меняю, то метод Ingnore работает - советник сделки по сигналу не совершает.
Осталось только понять, как в OnTick получить информацию об объекте трейлинга. К сожалению, метода ExtExpert.Trailing() для получения ссылки на объект трейлинга нет и, следовательно, компилятор не понимает, к какому объекту я хочу применить свой реализованный в трейлинге метод GetPermition. Может все-таки кто-нибудь подскажет, как быть?