bobef Опубликовано 27 октября, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 27 октября, 2022 Здравствуйте, можете сделать: https://www.mql5.com/ru/job/181327 Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 11 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 11 декабря, 2022 Ребята, кто может сделать код, начало и конец работы советника (например, начало в 10:00 и конец в 19:00) Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 11 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 11 декабря, 2022 1 час назад, drobayura сказал: Ребята, кто может сделать код, начало и конец работы советника (например, начало в 10:00 и конец в 19:00) // внешние параметры input string TimeStart="10:00"; // время начала открытия позиций input string TimeEnd="19:00"; // время окончания открытия позиций ... //------------------------------------------------------------------ bool CheckTime() // функция проверки времени, заданного строками { datetime dt=TimeCurrent(); datetime dt1=StringToTime(TimeToString(dt, TIME_DATE)+" "+TimeStart); datetime dt2=StringToTime(TimeToString(dt, TIME_DATE)+" "+TimeEnd); if (dt1==dt2) return true; if (dt1<dt2) if (dt>=dt1 && dt<=dt2) return true; if (dt1>dt2) if (dt>=dt1 || dt<=dt2) return true; return false ; } //------------------------------------------------------------------ void OnTick() // обработка тика { if (CheckTime()) // если время разрешает работать { ... /* выполняем какие-то действия в это время например открытие позиций */ ... } ... /* выполняем остальные действия, которые нужно делать всегда например трал стоплоса */ } Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 12 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 12 декабря, 2022 18 часов назад, mqloud сказал: // внешние параметры input string TimeStart="10:00"; // время начала открытия позиций input string TimeEnd="19:00"; // время окончания открытия позиций ... //------------------------------------------------------------------ bool CheckTime() // функция проверки времени, заданного строками { datetime dt=TimeCurrent(); datetime dt1=StringToTime(TimeToString(dt, TIME_DATE)+" "+TimeStart); datetime dt2=StringToTime(TimeToString(dt, TIME_DATE)+" "+TimeEnd); if (dt1==dt2) return true; if (dt1<dt2) if (dt>=dt1 && dt<=dt2) return true; if (dt1>dt2) if (dt>=dt1 || dt<=dt2) return true; return false ; } //------------------------------------------------------------------ void OnTick() // обработка тика { if (CheckTime()) // если время разрешает работать { ... /* выполняем какие-то действия в это время например открытие позиций */ ... } ... /* выполняем остальные действия, которые нужно делать всегда например трал стоплоса */ } Спасибо БОЛЬШОЕ. Всё работает отлично. Эта функция нужна для теста стратегий. В тестере советник шпарит круглые сутки напролёт, а в реалии так не работаем. Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 15 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 15 декабря, 2022 Ребята, а можно вставить компелированный индикатор в советник? Индикатор рисует в чарте синие и красные уровни. Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 15 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 15 декабря, 2022 можно, через #resource Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 16 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 17 часов назад, mqloud сказал: можно, через #resource А если дам исходный код советника и индикатор поможете? Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 16 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 попробуйте Ссылка на сообщение Поделиться на другие сайты More sharing options...
Oleg31t Опубликовано 16 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 Здравствуйте, возьметесь за написание советника. Если коротко то: выставляем уровни (бай и селл) на определённом расстоянии от цены. При касании ценой уровни активируются, если цена идёт против нас, то через заданное расстояние открывается новый ордер изменяется тейк и т.д., Если возьметесь подробно опишу Т.З. Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 16 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 2 часа назад, mqloud сказал: попробуйте Условия выполнения сделок: закрытие свечи выше синей BUY, ниже красной SELL. Сопровождение открытых позиций - цена проходит расстояние равное от открытия ордера до S/L переводим в Б/У и далее тралим кратному расстоянию S/L (проходим 1:2 переводим 1:1, проходим 1:3 переводим 1:2 и т,д.) Советник: High_Low_V00.mq4 Индикатор: Trend Magic.ex4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 16 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 (изменено) 16 минут назад, drobayura сказал: Условия выполнения сделок не совсем понял, я думал вам требуется скомпилировать советник, с втягиванием внутрь ex4, чтоб советник+индикатор был одним файлом, а не разными. Вот как вы написали 23 часа назад, drobayura сказал: а можно вставить компелированный индикатор в советник? если же вам нужно использовать индикатор в советнике, ну так это и так и работает, советник не использует mq4 коды. советник использует именно ex4 файл индикатора, когда вызывает iCustom Изменено 16 декабря, 2022 пользователем mqloud Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 16 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 2 часа назад, mqloud сказал: не совсем понял, я думал вам требуется скомпилировать советник, с втягиванием внутрь ex4, чтоб советник+индикатор был одним файлом, а не разными. Вот как вы написали если же вам нужно использовать индикатор в советнике, ну так это и так и работает, советник не использует mq4 коды. советник использует именно ex4 файл индикатора, когда вызывает iCustom "...когда вызывает iCustom" ну для этого же нужен исходник индикатора Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 16 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 16 декабря, 2022 2 часа назад, drobayura сказал: для этого же нужен исходник индикатора нет Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 19 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 19 декабря, 2022 В 16.12.2022 в 19:38, mqloud сказал: нет А можно реализовать в код трал кратный величине S/L. Попытался реализовать идею на картинке, не знаю на сколько это будет понятно. Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 19 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 19 декабря, 2022 в самом простом варианте (пример для Бай) if (OrderClosePrice()-OrderStopLoss()>2*SL*_Point) OrderModify(...); Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 19 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 19 декабря, 2022 (изменено) 2 часа назад, mqloud сказал: в самом простом варианте (пример для Бай) if (OrderClosePrice()-OrderStopLoss()>2*SL*_Point) OrderModify(...); Это прошли два SL, а если пройдём три как будет. " ... )>2*SL*_Point" где двойка какая то переменная наверно должна стоять да? Я здесь не смогу прописать и здесь OrderModify(...) тоже не знаю что писать. Прошу Вас сделайте пожалуйста на BUY, а SELL по аналогии я попробую сделать сам. Изменено 19 декабря, 2022 пользователем drobayura Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 19 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 19 декабря, 2022 for (int i=OrdersTotal()-1; i>=0; --i) { if (!OrderSelect(i, SELECT_BY_POS)) continue; // ошибка взяти if (OrderSymbol()!=Symbol()) continue; // чужой символ //if (OrderMagicNumber()!=Magic) continue; // чужой магик if (OrderType()==OP_BUY) { if (OrderClosePrice()-OrderStopLoss()>2*SL*_Point) { double sl=NormalizeDouble(OrderStopLoss()+SL*_Point, _Digits); // новый СЛ передвинули на шаг SL if (!OrderModify(OrderTicekt(), OrderOpenPrice(), sl, OrderTakeProfit(), 0)) Print(GetLastError()); // подвинули } } } Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 19 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 19 декабря, 2022 1 час назад, mqloud сказал: for (int i=OrdersTotal()-1; i>=0; --i) { if (!OrderSelect(i, SELECT_BY_POS)) continue; // ошибка взяти if (OrderSymbol()!=Symbol()) continue; // чужой символ //if (OrderMagicNumber()!=Magic) continue; // чужой магик if (OrderType()==OP_BUY) { if (OrderClosePrice()-OrderStopLoss()>2*SL*_Point) { double sl=NormalizeDouble(OrderStopLoss()+SL*_Point, _Digits); // новый СЛ передвинули на шаг SL if (!OrderModify(OrderTicekt(), OrderOpenPrice(), sl, OrderTakeProfit(), 0)) Print(GetLastError()); // подвинули } } } Попробую вставить, что получится. Ссылка на сообщение Поделиться на другие сайты More sharing options...
drobayura Опубликовано 19 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 19 декабря, 2022 1 час назад, drobayura сказал: Попробую вставить, что получится. 2 часа назад, mqloud сказал: for (int i=OrdersTotal()-1; i>=0; --i) { if (!OrderSelect(i, SELECT_BY_POS)) continue; // ошибка взяти if (OrderSymbol()!=Symbol()) continue; // чужой символ //if (OrderMagicNumber()!=Magic) continue; // чужой магик if (OrderType()==OP_BUY) { if (OrderClosePrice()-OrderStopLoss()>2*SL*_Point) { double sl=NormalizeDouble(OrderStopLoss()+SL*_Point, _Digits); // новый СЛ передвинули на шаг SL if (!OrderModify(OrderTicekt(), OrderOpenPrice(), sl, OrderTakeProfit(), 0)) Print(GetLastError()); // подвинули } } } Получилось вот что: void _TrailingStop(){ int i; bool m; if (OrdersTotal()>0){ for (i=OrdersTotal()-1; i>=0; i--){ if (OrderSelect(i, SELECT_BY_POS)){ if (OrderSymbol()==Symbol() /*&& OrderMagicNumber()==-1*/){ if (OrderType()==OP_BUY) { if (OrderClosePrice() - OrderStopLoss() < 2*SL*_Point) { while (IsTradeContextBusy()) Sleep(1000); RefreshRates(); double sl=NormalizeDouble(OrderStopLoss()+SL*_Point, _Digits); // новый СЛ передвинули на шаг SL m = OrderModify(OrderTicket(),OrderOpenPrice(),sl,OrderTakeProfit(),OrderExpiration(),CLR_NONE); } } if (OrderType()==OP_SELL) { if (OrderStopLoss() - OrderClosePrice() > 2*SL*_Point) { while (IsTradeContextBusy()) Sleep(1000); RefreshRates(); double sl=NormalizeDouble(OrderStopLoss()-SL*_Point, _Digits); // новый СЛ передвинули на шаг SL m = OrderModify(OrderTicket(),OrderOpenPrice(),sl,OrderTakeProfit(),OrderExpiration(),CLR_NONE); } } } } } } return; } Не работает как надо. Ссылка на сообщение Поделиться на другие сайты More sharing options...
pasem Опубликовано 24 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 24 декабря, 2022 Здравствуйте. Вопрос по реализации клика мышкой в mql4 Нужно по сигналу (сигнал есть в советнике) , кликнуть мышкой в определенном месте. Необходимо для торговли опционами Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 25 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 25 декабря, 2022 нужна полная задача, что когда и где кликать Ссылка на сообщение Поделиться на другие сайты More sharing options...
pasem Опубликовано 25 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 25 декабря, 2022 (изменено) Хотя бы пример, а дальше я сам. Если вкратце есть фунция которая дает сигнал: GetSign(); // код // Функция может быть меньше или больше ноля. Мне бы хотя бы в одном случае (например int sign = GetSign(); if( sign > 0 ) далее код как кликнуть мышью во вкладке браузера. Можно рандомные координаты. Я потом попытаюсь разобраться как ввести нужные). Вообще, кликать нужно будет на странице сайта компании торгующей бинарными опционами, Чтобы упростить код - например, я включаю советник, открываю нужную страницу и мышь просто кликает в определенном месте. Не нужно чтобы она еще и сама туда двигалась. Просто я почему то даже пример не могу найти, да есть функция в mql4, но я плохо знаю код. Если бы простейший пример я бы понял бы. У п\Павла есть урок написания скрипта, который запускает вкладку хрома и перезагружает компьютер, а как раз клика по мыши нет. Изменено 25 декабря, 2022 пользователем pasem Ссылка на сообщение Поделиться на другие сайты More sharing options...
pasem Опубликовано 25 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 25 декабря, 2022 14 часов назад, mqloud сказал: нужна полная задача, что когда и где кликать ответил выше Ссылка на сообщение Поделиться на другие сайты More sharing options...
mqloud Опубликовано 26 декабря, 2022 Автор Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 26 декабря, 2022 9 часов назад, pasem сказал: Можно рандомные координаты тогда или SendInput https://stackoverflow.com/questions/28386029/how-to-simulate-mouse-click-using-c или PostMessage https://stackoverflow.com/questions/6688369/simulate-mouse-events-from-c-in-windows Ссылка на сообщение Поделиться на другие сайты More sharing options...
pasem Опубликовано 26 декабря, 2022 Поделиться Напишу советник для МТ4/MT5 по вашему техзаданию Опубликовано 26 декабря, 2022 34 минуты назад, mqloud сказал: тогда или SendInput https://stackoverflow.com/questions/28386029/how-to-simulate-mouse-click-using-c или PostMessage https://stackoverflow.com/questions/6688369/simulate-mouse-events-from-c-in-windows я извиняюсь там написано с++, а мне нужно чтобы это было в советнике на mql4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти