Yurkka Опубликовано 27 сентября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 27 сентября, 2019 Всем привет, есть здесь темы по интеграции Python в MetaTrader 5 ? Есть пару статей только по анализу рынка =( НО НИКАКОЙ инфы о том как можно интегрировать торговую стратегию в терминал MetaTrader5 =( Есть идеи ???? Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 27 сентября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 27 сентября, 2019 @Yurkka посмотрите эту статью на хабре Ссылка на сообщение Поделиться на другие сайты More sharing options...
Yurkka Опубликовано 28 сентября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 28 сентября, 2019 21 час назад, 0ll сказал: @Yurkka посмотрите эту статью на хабре спасибо помогло немного дальше Ссылка на сообщение Поделиться на другие сайты More sharing options...
AndreyVLG Опубликовано 3 октября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 3 октября, 2019 Всем добрый день. Может кто помочь? Посмотрел обучающий урок "Как написать советник для Metatrader 5" не получается добавить в него что бы он каждый раз при закрытие по SL добавлял определенное количество лотов. И как будет TP возвращался обратно к исходному лоту. Спойлер #property copyright "Copyright 2019, MetaQuotes Software Corp." #property link "https://www.mql5.com" #property version "1.00" #include <Trade\Trade.mqh> input double Lot=1; input int TakeProfit = 400; input int Stoploss = 600; int TP; int SL; CTrade trader; bool Invertor; //+------------------------------------------------------------------+ //| Expert initialization function | //+------------------------------------------------------------------+ int OnInit() { TP = TakeProfit; SL = Stoploss; return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Expert deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { } //+------------------------------------------------------------------+ //| Expert tick function | //+------------------------------------------------------------------+ void OnTick() { double points; if(!PositionSelect(_Symbol)) { if(Invertor) trader.Buy(Lot); else trader.Sell(Lot); } else { if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY) { points=(SymbolInfoDouble(_Symbol,SYMBOL_BID)-PositionGetDouble(POSITION_PRICE_OPEN))/_Point; if(points>=TP) { trader.PositionClose(_Symbol); Invertor=true; } if(points<=-SL) { trader.PositionClose(_Symbol); Invertor=false; } } if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL) { points=(PositionGetDouble(POSITION_PRICE_OPEN)-SymbolInfoDouble(_Symbol,SYMBOL_ASK))/_Point; if(points>=TP) { trader.PositionClose(_Symbol); Invertor=false; } if(points<=-SL) { trader.PositionClose(_Symbol); Invertor=true; } } } Изменено 3 октября, 2019 пользователем 0ll Ссылка на сообщение Поделиться на другие сайты More sharing options...
MikR0ReR Опубликовано 4 октября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 4 октября, 2019 Чего сложного то? Есть блок закрытия позиций по стопу, так в нем увеличиваете лот. Есть блок закрытия позиций по профиту, в нем ставим лот тот который нам нужен. Добавляем переменную в входных настройках double lo; до int TP; int SL; после int TP; int SL; double lo; В блоке OnInit задаем значение lo //--- после TP = TakeProfit; SL = Stoploss; lo = Lot; В блоке OnTick меняем Lot на lo //--- до trader.Buy(Lot); //--- после trader.Buy(lo); с Sell аналогично Добавляем код lo *= 2 и lo = 1 в код if(points >= TP) { trader.PositionClose(_Symbol); Invertor = true; lo *= 2;//увеличиваем лот на сколоко нам нужно } if(points <= -SL) { trader.PositionClose(_Symbol); Invertor = false; lo = 1;//востанавливаем лот } для Sell аналогично 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
dorzhi Опубликовано 7 ноября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 7 ноября, 2019 Здравствуйте! Я взял из Стандартной библиотеки MQL5 шаблон создания "Текстовой метки"(Стандартная библиотека -> Панели и диалоги -> CLabel). Подскажите, пожалуйста, как сделать так, чтобы при изменении торгового счета сделал кое какие расчеты(на основе счета, текущей цены, входных параметров программы) и передал результаты в "Текстовую метку"? Такой же вопрос при создании "Кнопки", также, из Стандартной библиотеки, и передачи результатов для открытия ордеров при нажатии кнопки. Спасибо! Ссылка на сообщение Поделиться на другие сайты More sharing options...
Larcher Опубликовано 12 ноября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 12 ноября, 2019 Здравствуйте. У меня вопосы по 7 уроку. По функции TradeSignal Спойлер void TradeSignal(int Number, string Symbol_, bool Trade, int period, ENUM_APPLIED_PRICE APrice, ENUM_MA_METHOD MaMethod, bool &SignalBuy[], bool &SignalSell[]) { if (!Trade) return; int Size_ = 0; int Handle[]; int Recount[], MinBars[]; double SMA[], dsma1, dsma2; if (Number+1 > Size_) { Size_ = Number + 1; ArrayResize(Handle, Size_); ArrayResize(Recount, Size_); ArrayResize(MinBars, Size_); ArrayInitialize(Handle, 0); ArrayInitialize(Recount, 0); ArrayInitialize(MinBars, 0); MinBars[Number] = 3*period; SignalBuy[Number] = false; SignalSell[Number] = false; ArraySetAsSeries(SMA, true); Handle[Number] = iMA(Symbol_, 0, period, 0, MaMethod, APrice); if (IsNewBar(Number, Symbol_, 0) || Recount[Number]) { SignalBuy[Number] = false; SignalSell[Number] = false; if (CopyBuffer(Handle[Number], 0, 0, 4, SMA) < 0) { Recount[Number] = true; return; } } Recount[Number] = false; dsma1 = NormalizeDouble(SMA[1] - SMA[2], _Digits); dsma2 = NormalizeDouble(SMA[2] - SMA[3], _Digits); if (dsma2 > 0 && dsma1 > 0) SignalSell[Number] = true; if (dsma2 < 0 && dsma1 < 0) SignalBuy[Number] = true; } } Непонятно назначение следующих массивов int Recount[], MinBars[]; 1) Recount[] мы сначала обнуляем при каждом вызове функции, а потом зачем-то идет проверка if (IsNewBar(Number, Symbol_, 0) || Recount[Number]) Смысл в этом, если Recount[Number] всегда = 0? 2)MinBars[] зачем то рассчитывается, а потом никак не используется. Изменено 13 ноября, 2019 пользователем 0ll Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 13 ноября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 13 ноября, 2019 @Larcher в приведённой Вами функции эти массивы действительно не работают, видимо были взяты из другого кода, где присутствовал цикл - там Recount был-бы уместен. Ссылка на сообщение Поделиться на другие сайты More sharing options...
Maks_MM Опубликовано 14 ноября, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 14 ноября, 2019 Здравствуйте уважаемые программисты MQL5. Задался вопросом о расчете лотности при депо в % риска. Искал информацию на форумах и гуглах. Находил только ответ на MQL4 при помощи функции MarketInfo(); но к сожалению такой функции в MQL5 нет. Кто сможет поделится опытом и знаниями, как при помочи переменной % риска на депо, и размер стоп лоста рассчитать правильную лотность на форексах. Буду вам очень благодарен. Ссылка на сообщение Поделиться на другие сайты More sharing options...
MaeMfe Опубликовано 23 декабря, 2019 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 23 декабря, 2019 Вопрос решён Изменено 30 декабря, 2019 пользователем MaeMfe выделение заголовка Ссылка на сообщение Поделиться на другие сайты More sharing options...
Logic Опубликовано 15 февраля, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 15 февраля, 2020 Добрый вечер. Заполнил заявку на получение курса уроков на почту. Прошло уже более 5 часов, ответа нет. Подскажите плиз, каков статус заявки ??? Ящик 121267@mail.ru Ссылка на сообщение Поделиться на другие сайты More sharing options...
MikR0ReR Опубликовано 15 февраля, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 15 февраля, 2020 @Logic воспользуйся временной почтой и закажи на нее. Хозяева используют глюковатый сервис justclick.ru. Если курс когда либо заказывал, то повторно заказать его невозможно. Только на на новую почту. 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
yasd810 Опубликовано 9 апреля, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 9 апреля, 2020 Прошу помощи. Нужен простой скрипт (или советник), который открывает два ордера по разным инструментам одновременно (mql5) Заранее спасибо! Ссылка на сообщение Поделиться на другие сайты More sharing options...
Eiden Опубликовано 25 апреля, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 25 апреля, 2020 В 09.04.2020 в 19:19, yasd810 сказал: Прошу помощи. Нужен простой скрипт (или советник), который открывает два ордера по разным инструментам одновременно (mql5) Заранее спасибо! Если сопровождение открытых ордеров не планируется, то проще скрипт Ссылка на сообщение Поделиться на другие сайты More sharing options...
Alex_143 Опубликовано 30 апреля, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 30 апреля, 2020 Приветствую, внимательно изучил урок по созданию информационной панели: http://tlap.com/mql5-infopanel/ Но так и не понял, каким образом в ней обновляется информация, если объекты удаляются только внутри OnDeinit? Как обновляются переменные с данными - понятно. Но каким образом эта информация попадает в свойства объектов? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Ramirez1978 Опубликовано 8 мая, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 8 мая, 2020 MT5 Expert.zipПриветствую! Недавно смотрел видео на вашем youtube канале https://www.youtube.com/watch?v=fEuwE6WgYTc как написать советника по мартингейлу на основе МА MQL5 Пробую написать иду за автором строка в строку, но при компиляции все равно выдает 2 ошибки , указывает на фигурную скобку С момента записи видео и по сегодня в метаэдиторе произошли изменения может как то это связано с ошибками Можете посмотреть код? , Заранее благодарен Изменено 8 мая, 2020 пользователем Ramirez1978 Ссылка на сообщение Поделиться на другие сайты More sharing options...
0ll Опубликовано 10 мая, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 10 мая, 2020 @Ramirez1978 @Ramirez1978 Ошибку исправил, но не уверен, что советник будет работать - код плохо структуирован, много вложенных условий. В таком коде легко пропустить логическую ошибку. Советую хотя-бы открытие ордера вынести в отдельную функцию. MARTINGAIL MT5.mq5 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Nox Опубликовано 24 июня, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 24 июня, 2020 Что то я так и не дождался на почту ссылок на уроки MQ5. Ссылка на сообщение Поделиться на другие сайты More sharing options...
pavlus777 Опубликовано 25 июня, 2020 Автор Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 25 июня, 2020 17 часов назад, Nox сказал: Что то я так и не дождался на почту ссылок на уроки MQ5. Напишите на mail@tlap.com Ну или просто смотрите по тэгу: https://tlap.com/tag/mql5/ 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Capricorn Опубликовано 2 октября, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 2 октября, 2020 В 02.08.2016 в 23:59, xbms сказал: Уважаемые коллеги, добавлю от себя... По ссылке полный справочник по функциям MQL5, с примерами, который вы можете скачать себе локально. Хорошая штука, рекомендую https://yadi.sk/d/BBFYJw_-trnbN Сергей, ссылка уже не рабочая, можно еще раз выложить материал?! Ссылка на сообщение Поделиться на другие сайты More sharing options...
nkn777 Опубликовано 5 октября, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 5 октября, 2020 В 02.10.2020 в 22:24, Capricorn сказал: Сергей, ссылка уже не рабочая, можно еще раз выложить материал?! Добрый день! Плз.обновите ссылку, так как не работает. Заранее благодарен! Ссылка на сообщение Поделиться на другие сайты More sharing options...
Alex12345 Опубликовано 21 октября, 2020 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 21 октября, 2020 Добрый день! Может у кого есть модуль или кто может написать модуль на mql5 для открытия 2 ордеров одновременно в одном направлении (2 ордера для хеджинга или 1 с частичным закрытием для нетинга) с выставлением стоп лоса по этим двум позициям и перевод в безубыток при срабатывании тейк-профита первого ордера и тралом 2 ордера. Заранее спасибо. Изменено 21 октября, 2020 пользователем Alex12345 Ссылка на сообщение Поделиться на другие сайты More sharing options...
apologietest Опубликовано 22 января, 2021 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 22 января, 2021 Коллеги, все доброго дня и крепкого здравия! У меня еще очень мало опыта. Пока только учусь. Написал индикатор АТR. Принцип работы следующий. 1. Измеряем величину движения цены от дневного максимума до дневного минимума за каждый из последних пяти дней. 2. Находим среднее арифметическое. 3. Измеряем в текущем дне движение от максимума до минимума и вычисляем процент от среднего арифметического. Проблема в том, что при измерении вручную получаю одни величины, а индикатор дает немного другие. Не могу понять где ошибка. Прошу помощи у мэтров программирования. Индикатор и скрин прилагаю. ATR Volume.mq5 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 22 января, 2021 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 22 января, 2021 3 часа назад, apologietest сказал: Написал индикатор АТR. глобально в логике нет ошибок. Я убрал преобразование из double в int на каждом шаге- возможно у Вас там накапливается ошибка расчета... На рассчитывать среднее значение на каждом тике.. это, мягко говоря, мазохизм... Добавьте проверку хотя бы на каждой свече.. И то- это будет не оптимально.. Далее... для получения исторических данных в mql5 есть такая штука, как CopyRates(); Как минимум- это работает быстрее, чем цикл... А если уже заморачиваться с усреднением, то смотрите в сторону встроенных классов стандартных индикаторов.. Но это совсем на любителя ATR Volume_1.mq5 Ссылка на сообщение Поделиться на другие сайты More sharing options...
apologietest Опубликовано 3 февраля, 2021 Поделиться Обучение языку MQL5 под MetaTrader 5 Опубликовано 3 февраля, 2021 Благодарю за подсказку! Но у меня ничего не получилось. Оставил как есть. Посмотрел, что один-два %% на погоду не влияют. )) Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти