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

Рейтинг 2141



РЕКОМЕНДУЮ



Прошу исправить советник

Здравствуйте. Здесь в файлах МТ5 есть советник «Треугольный арбитраж». Он в корне неправильно сделан. Я исправил как смог, в соответствии с концепцией треугольного арбитража, пары треугольника ровняются друг с другом. К примеру EURUSD/GBPUSD — EURGBP, чистая разница за минусом издержек на совокупный спред торгуется.

Сделал, функция Synt работает, выводит разницу синтетика и реального актива. Но почему-то он никак не хочет открывать сделки. Андрей, посмотрите пожалуйста, помогите исправить!

P.S. Всех любителей арбитража предупреждаю, что брокеры будут блокировать вам счета и загонять в минус. Даже гендиректор Альпари по личному знакомству через людей не одобрил эту тему. Арбитраж только для своих у большинства брокеров.Они будут рады т только вашим сливам, но не вашим заработкам. TRISS.rar (1 Kb)
  • +2
  • Просмотров: 2768
  • 2 мая 2023, 09:38
  • Shtenco
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

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

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

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

+
0
Сделал, функция Synt работает, выводит разницу синтетика и реального актива. Но почему-то он никак не хочет открывать сделки.


опять куролесный код?
avatar

  34  AM2 Сообщений: 16193 - Андрей

  • 2 мая 2023, 16:35
+
0
ну уж какой есь
avatar

  23  igrun Сообщений: 1630 - igrun

  • 6 мая 2023, 05:26
+
+1
сделал чтобы работало *uptrend*  :D 



www.opentraders.ru/downloads/3587/
avatar

  34  AM2 Сообщений: 16193 - Андрей

  • 2 мая 2023, 17:56
+
+1
Андрей, вы просто волшебник, мои куролесные коды — Франкенштейны исправлять!)))С праздником!!! Дай Бог вам здоровья и счастья, как и всем подписчикам этого прекрасного сайта!!!
avatar

  9  Shtenco Автор Сообщений: 238

  • 2 мая 2023, 18:44
+
0
Добрый день, скажите пожалуйста откуда взяли этот советник? хотелось бы узнать какая в него логика.
avatar

  4  V888V Сообщений: 25

  • 9 мая 2023, 08:36
+
0
<code>
input string   Symb1     = "EURUSD";  // 1-й символ
input string   Symb2     = "GBPUSD";  // 2-й символ
input string   Symb3     = "EURGBP";  // 3-й символ

input double   Delta     = 50;        // дельта
</code>


<code>
void OnTick()
  {
   double Ask1=SymbolInfoDouble(Symb1,SYMBOL_ASK);
   double Ask2=SymbolInfoDouble(Symb2,SYMBOL_ASK);
   double Ask3=SymbolInfoDouble(Symb3,SYMBOL_ASK);

   double Bid1=SymbolInfoDouble(Symb1,SYMBOL_BID);
   double Bid2=SymbolInfoDouble(Symb2,SYMBOL_BID);
   double Bid3=SymbolInfoDouble(Symb3,SYMBOL_BID);

   double Synt=((Ask1/Bid2)-Ask3)/_Point;

   double Spread1=Ask1-Bid1*_Point;
   double Spread2=Ask2-Bid2*_Point;
   double Spread3=Ask3-Bid3*_Point;

   if(AllProfit()>Profit || AllProfit()<-Loss)
      CloseAll();
    
   if(PositionsTotal()<1)
     {
      if((Synt)<-Delta)
        {
         trade.PositionOpen(Symb1,1,Lot,Bid1,0,0);
         trade.PositionOpen(Symb2,1,Lot,Bid2,0,0);
         trade.PositionOpen(Symb3,0,Lot,Ask3,0,0);
        }

      if((Synt)>Delta)
        {
         trade.PositionOpen(Symb1,0,Lot,Ask1,0,0);
         trade.PositionOpen(Symb2,0,Lot,Ask2,0,0);
         trade.PositionOpen(Symb3,1,Lot,Bid3,0,0);
        }
     }

   Comment("\n Прибыль : ",AllProfit(),
           "\n Синтетик : ",(Synt));
  }
</code>


Вычисляется искуственный Аск двух пар = (Ask1/Bid2);
Затем находится разность искуственного Аск и реального Аск третьей пары .
<code>double Synt=((Ask1/Bid2)-Ask3)/_Point;</code>

Это значение и сравнивается с контрольным Delta.
В зависимости от ситуации и принимается решение.
<code>
 if(PositionsTotal()<1)
     {
      if((Synt)<-Delta)
        {
         trade.PositionOpen(Symb1,1,Lot,Bid1,0,0);
         trade.PositionOpen(Symb2,1,Lot,Bid2,0,0);
         trade.PositionOpen(Symb3,0,Lot,Ask3,0,0);
        }

      if((Synt)>Delta)
        {
         trade.PositionOpen(Symb1,0,Lot,Ask1,0,0);
         trade.PositionOpen(Symb2,0,Lot,Ask2,0,0);
         trade.PositionOpen(Symb3,1,Lot,Bid3,0,0);
        }
     }

</code>


Редактирован: 9 мая 2023, 10:33
avatar

  16  ssg Сообщений: 817

  • 9 мая 2023, 10:31

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