← К каталогу
Исходный код · ID 2941

Alligator_Signal_Expert

alligator_signal_expert_v3.mq4
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

[Alligator_Signal_Expert](Alligator_Signal_Expert) — торговый советник для MetaTrader 4, который анализирует ценовые данные с помощью трёх скользящих средних и формирует сигналы для открытия и закрытия позиций. Советник автоматически управляет ордерами: открывает сделки при соответствующем расположении линий индикатора, закрывает убыточные или разворачивает позицию при изменении тренда.

В работе используются параметры объёма, стоп-лосса, тейк-профита и уровня безубыточности, позволяющие управлять рисками. Советник фильтрует ордера по магическому номеру, поддерживает модификацию позиций и содержит встроенную обработку типичных торговых ошибок с уведомлением трейдера.

Продукт предназначен для автоматической торговли на платформе MetaTrader 4 и работает в рамках стандартного торгового терминала, используя его API для отправки и управления ордерами.

Настройки программы

НастройкаОписание
rem1 rem1 — Текстовый параметр-примечание.
P_MA_1 P_MA_1 — Период первой скользящей средней, используемой для анализа и формирования торговых сигналов.
P_MA_2 P_MA_2 — Период второй скользящей средней, используемой для анализа и формирования торговых сигналов.
P_MA_3 P_MA_3 — Период третьей скользящей средней, используемой для анализа и формирования торговых сигналов.
rem2 rem2 — Текстовый параметр-примечание.
Delta Delta — Пороговое значение (в пунктах) для сравнения уровней скользящих средних при формировании сигналов на открытие и закрытие позиций.
rem3 rem3 — Текстовый параметр-примечание.
Lot Lot — Объём (размер) открытой позиции в лотах.
rem34 rem34 — Текстовый параметр-примечание.
StopLoss StopLoss — Значение стоп-лосса в пунктах для новых ордеров. При значении 0 стоп-лосс не устанавливается.
TakeProfit TakeProfit — Значение тейк-профита в пунктах для новых ордеров. При значении 0 тейк-профит не устанавливается.
rem33 rem33 — Текстовый параметр-примечание.
Level_NoLoss Level_NoLoss — Уровень в пунктах, при превышении которого позиции модифицируются с переносом стоп-лосса на уровень открытия.
rem4 rem4 — Текстовый параметр-примечание.
Shift_Indik Shift_Indik — Сдвиг бара, на котором рассчитываются значения скользящих средних.
Shift_open Shift_open — Сдвиг бара, используемый при проверке цены открытия для принятия решения о входе в позицию.
rem5 rem5 — Текстовый параметр-примечание.
Magik Magik — Магический номер для фильтрации управляемых ордеров — советник обрабатывает только позиции с указанным номером.
Получить полный код

Поиск по коду файла

extern string rem1="????????? ????????";
extern int P_MA_1=13;
extern int P_MA_2=8;
extern int P_MA_3=5;
extern string rem2="??????????? ????????";
extern int Delta=3;
extern string rem3="???????? ?????????";
extern double Lot=1;
extern string rem34="??? ????????? ???????? ?? 10";
extern int StopLoss=50;
extern int TakeProfit=50;
extern string rem33="??????? ????????? ? ??";
extern int Level_NoLoss=30;
extern string rem4="????? 0-??????? ???, 1-???????? ??????????";
extern int Shift_Indik=1;
extern int Shift_open=0;
extern string rem5="????? ??????";
extern int Magik=112233;
bool   Label_B=true,                    // ????? ???????? ?????? Buy
       Label_S=true;                    // ????? ???????? ?????? Sell
bool   Label_Modify=true;
int Lot_Close[];

int init()
  {
      // код доступен только после оплаты
   }

int deinit()
  {

   return(0);
  }

int start()
  {
      // код доступен только после оплаты
   }

   bool
   Ans,
   Cls_B=false,                     // ???????? ??? ????????  Buy
   Cls_S=false,                     // ???????? ??? ????????  Sell
   Opn_B=false,                     // ???????? ??? ????????  Buy
   Opn_S=false;                     // ???????? ??? ????????  Sell
   int Total=0;                                    // ?????????? ??????? 
   int Ticket[5];
   double SL = StopLoss;
   double TP = TakeProfit;
   for(int i=1; i<=OrdersTotal(); i++)          // ???? ???????? ?????
     {
      if (OrderSelect(i-1,SELECT_BY_POS,MODE_TRADES)==true) // ???? ???? ?????????
        {                                       // ?????? ???????:
          if (OrderSymbol()!=Symbol())continue;      // ?? ??? ???. ???????
          if (OrderMagicNumber()!=Magik)continue;  
           ArrayResize(Ticket,Total+1);
           ArrayResize(Lot_Close,Total+1);
          Ticket[Total]=OrderTicket();
          Lot_Close[Total]=OrderLots();
          Total++;                               // ??????? ?????????? ???????

        }
     }
     int    Error=GetLastError();
   double MA_1=iMA(NULL,0,P_MA_1,0,MODE_SMMA,PRICE_MEDIAN,Shift_Indik);
   double MA_2=iMA(NULL,0,P_MA_2,0,MODE_SMMA,PRICE_MEDIAN,Shift_Indik);
   double MA_3=iMA(NULL,0,P_MA_3,0,MODE_SMMA,PRICE_MEDIAN,Shift_Indik);  

   if (MA_3 > MA_2+Delta*Point && MA_2 > MA_1+Delta*Point  )  
     {  
       Opn_B=true; 
       Cls_S=true; 
     }
   if (MA_1 > MA_2+Delta*Point && MA_2 > MA_3+Delta*Point  )  
    { 
      Opn_S=true; 
      Cls_B=true; 
    }

  for (i=0; i<Total; i++)
  {
   if (Label_Modify == true 
       && OrderSelect(Ticket[i],SELECT_BY_TICKET) == true 
       && OrderProfit() > 0 
       && MathAbs(iClose(NULL,0,0)-OrderOpenPrice()) > Level_NoLoss*Point  ) 
    {
    OrderModify(Ticket[i],OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0);
    Label_Modify=false;
    }
  }

  for (i=0; i < Total; i++)
  {
    if (Cls_B==true)
       if ( OrderSelect(Ticket[i],SELECT_BY_TICKET) == true && OrderType()==0 )
          { OrderClose(Ticket[i],Lot,Bid,2); }
    if (Cls_S==true)
      if ( OrderSelect(Ticket[i],SELECT_BY_TICKET) == true && OrderType()==1)
         {  OrderClose(Ticket[i],Lot,Ask,

Показано первые 50% кода (символов: 4175)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
417,50₽ ≈ $5.10