Группа "Стол заказов MQL"

Рейтинг 2146



РЕКОМЕНДУЮ



Мультивалютный хеджирующий советник на МТ5

Добрый день.
Прошу написать мультивалютный советник для МТ5.
За основу можно взять уже написанный Вами советник Corel.mq5
strategy.opentraders.ru/28779.html
В настройках указать:

//--- входные параметры группы 1
input string   Symb1     = "EURUSD";  // 1-й символ группы 1
input string   Symb2     = "GBPUSD";  // 2-й символ группы 1
input int      Profit1    = 200;       // Профит в валюте группы 1
input int      Stop1      = 30;        // Стоп в проценах по средствам группы 1
input int      MAPeriod  = 20;        // Период MA
input int      Slip1      = 50;        // Проскальзывание группы 1
input double   Lot1       = 1;         // Количество лотов для торговли группы 1 
input int      Magic1     = 123;      // Магик группы 1

//--- входные параметры группы 2
input string   Symb3     = "AUDUSD";  // 1-й символ группы 2
input string   Symb4     = "NZDUSD";  // 2-й символ группы 2
input int      Profit2    = 200;       // Профит в валюте группы 2
input int      Stop2      = 30;        // Стоп в проценах по средствам группы 2
input int      MAPeriod2  = 20;        // Период MA группы 2
input int      Slip2      = 50;        // Проскальзывание группы 2
input double   Lot2       = 1;         // Количество лотов для торговли группы 2 
input int      Magic2     = 321;      // Магик группы 2

input int      Profit     = 200;       // Профит советника в валюте 


Принцип торговли группы 1:
1.При старте советник открывает одновременно две позиции с магиком = Magic1
Symb1 на покупку и Symb2 на продажу.
2.При достижении общего профита группы 1 = Profit1 закрываются обе позиции с магиком = Magic1.
3.После одновременного зкрытия обоих позиций группы 1 советник опять открывает
позиции Symb1 на покупку и Symb2 на продажу.
4.В торговле группы 1 одновременно открыты только 2 позиции.

Принцип торговли группы 2 с магиком = Magic2 аналогичен принципу группы 1 с магиком = Magic1.
Торговля каждой группы происходит независимо друг от друга.
В случае достижения суимарного профита по советнику = Profit закрываются все позиции советника.
Спасибо.
  • 0
  • Просмотров: 3276
  • 31 июля 2020, 13:10
  • ssg
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Добавить мартингейл к советнику
Следующая запись в группе  
торговая стратегия по двум МА
31 июля 2020
01 августа 2020

Брокер для ваших роботов, 15 лет на рынке

Комментарии (13)

+
0
на 4-е
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 31 июля 2020, 19:28
+
0
Спасибо.
avatar

  16  ssg Автор Сообщений: 817

  • 1 августа 2020, 04:27
+
0
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 4 августа 2020, 21:49
+
0
Добрый день.
Андрей, конечно спасибо за советник, но на МТ4 я сам написал себе.
Стоит на демо, но не могу подобрать параметры и пары для работы.
Я просил написать советник на МТ5, для проверке идее в тестере.
И ссылку дал на
«Прошу написать мультивалютный советник для МТ5.
За основу можно взять уже написанный Вами советник Corel.mq5
strategy.opentraders.ru/28779.html».
И если не трудно добавте в советник усреднение.
avatar

  16  ssg Автор Сообщений: 817

  • 5 августа 2020, 04:47
+
0
Я просил написать советник на МТ5, для проверке идее в тестере.


в выходные, если время будет посмотрю
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 5 августа 2020, 18:34
+
0
Спасибо, подожду.
Если не затруднит добавьте усреднение позиций.
Вы выполняли заказ, правда для одной пары.
http://zakaz.opentraders.ru/47394.html
Просьба написать советник для платформы мт5!
avatar

  16  ssg Автор Сообщений: 817

  • 5 августа 2020, 20:38
+
0
не берусь
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 5 августа 2020, 21:38
+
0
А без усреднения позиций возьметесь?
avatar

  16  ssg Автор Сообщений: 817

  • 6 августа 2020, 04:01
+
0
для мт5 нет наработок таких, а с нуля долго.
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 6 августа 2020, 21:38
+
0
Посмотрите уже написанный Вами советник Corel.mq5
strategy.opentraders.ru/28779.html.
Там почти все есть. Надо только добавить магиги для групп.
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//--- Копируем значения индикатора MA используя хэндлы
   if(CopyBuffer(EURUSD_MA_Handle,0,0,MAPeriod,EURUSD)<0 || CopyBuffer(GBPUSD_MA_Handle,0,0,MAPeriod,GBPUSD)<0)
     {
      Alert("Ошибка копирования буферов индикатора Bollinger Bands - номер ошибки:",GetLastError(),"!");
      return;
     }
     
// Лучшее предложение на покупку
   double Ask1=SymbolInfoDouble(Symb1,SYMBOL_ASK);
   double Ask2=SymbolInfoDouble(Symb2,SYMBOL_ASK);
// Лучшее предложение на продажу                           
   double Bid1=SymbolInfoDouble(Symb1,SYMBOL_BID);
   double Bid2=SymbolInfoDouble(Symb2,SYMBOL_BID);
   
   double BALANCE=0, EQUITY=0, Prosadka=0;
//--- Профит
   double pr=0,pr1=0,pr2=0;
//Открытие двух позиций по разным символам
   if(PositionsTotal()<1)
     {
      trade.PositionOpen(Symb1,ORDER_TYPE_BUY,Lot,Ask1,0,0);
      trade.PositionOpen(Symb2,ORDER_TYPE_SELL,Lot,Bid2,0,0);
     }
//Профит по первому символу
   pr1=SymbProfit(Symb1);
//Профит по первому символу   
   pr2=SymbProfit(Symb2);
// Общий профит    
   pr=pr1+pr2;

//Если профит больше значения в настройках
   if(pr>Profit)
     {
      // Закрываем обе позиции
      trade.PositionClose(Symb1);
      trade.PositionClose(Symb2);
     }

   if(Stop>0)
     {
      BALANCE=AccountInfoDouble(ACCOUNT_BALANCE);
      EQUITY=AccountInfoDouble(ACCOUNT_EQUITY);
      Prosadka=100*(BALANCE-EQUITY)/BALANCE;
        {
         if(Prosadka>=Stop)
           {
            // Закрываем обе позиции
            trade.PositionClose(Symb1);
            trade.PositionClose(Symb2);
           }
        }
     }

void OnTick() можно обозвать void Trade1() и сделать как функцию.Аналогично создать функцию void Trade2() со своим магиком и своими парами.
Потом свести их в void OnTick().
Просто мт5 для меня вообще «темный лес».
Посмотрите.Может решитесь.Усреднение делать не надо, но если будет буду только рад.
avatar

  16  ssg Автор Сообщений: 817

  • 7 августа 2020, 04:02
+
0
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 8 августа 2020, 10:56
+
0
Андрей, спасибо!
А то я уже полез, как обычно, на сайт www.mql5.com там смотреть коды и статьи про МТ5. Прочитал Вашу статью «КАК БЫСТРО НАПИСАТЬ СОВЕТНИК ДЛЯ AUTOMATED TRADING CHAMPIONSHIP 2010».
Все хотелось обойтись без библиотек.
Усреднение попробую сам добавить.
Спасибо.
avatar

  16  ssg Автор Сообщений: 817

  • 8 августа 2020, 13:28
+
0
если сделаете усреднение, скиньте пожалуйста сюда
avatar

  6  lexa29 Сообщений: 10

  • 9 августа 2020, 02:39

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий