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

2000pips-daily-ea.mq4

Похожие материалы по тегам

! macd+.mq5MQL5 / MetaTrader 5 · 1 общих тегов!!!macd_adx.mq4MQL4 / MetaTrader 4 · 1 общих теговxauusd_gold_perfect.mq4MQL4 / MetaTrader 4 · 1 общих теговtm sniper pro.pineTradingView · 1 общих теговsource code of grid with 100 pips stop loss.mq4MQL4 / MetaTrader 4 · 1 общих теговsniper pro.mq5MQL5 / MetaTrader 5 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

Советник для платформы MetaTrader 4, предназначенный для автоматической торговли на валютном рынке. Работает в режиме обработки тиков и управляет открытием, модификацией и закрытием позиций. Поддерживает расчёт размера лота на основе баланса счёта и позволяет задавать фиксированные или автоматически рассчитанные параметры объёма.

Советник использует сигналы индикатора MACD (при включённой опции) для определения направления входа в сделки. Имеет систему управления позициями с несколькими уровнями отложенных ордеров и прогрессивным изменением параметров на каждом уровне. Встроена фильтрация по времени торговли и возможность принудительного закрытия всех позиций.

Поддерживает установку стоп-лоссов и тейк-профитов как фиксированных, так и динамических. При достижении заданных условий советник размещает отложенные ордера BUYLIMIT и SELLLIMIT, модифицирует существующие позиции и удаляет нереализуемые ордера при недостаточном марже.

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

НастройкаОписание
Magic Магический номер — Уникальный идентификатор ордеров советника для фильтрации позиций.
CloseAllNow Закрыть все — При включении закрывает все текущие позиции и удаляет все отложенные ордера на символе.
moneymanagement Управление капиталом — Группа параметров управления денежными средствами и расчёта размера лота.
BuyLots Лот покупки — Фиксированный размер лота для покупки при ручном режиме управления.
SellLots Лот продажи — Фиксированный размер лота для продажи при ручном режиме управления.
MM Автоуправление лотом — Включает автоматический расчёт размера лота на основе баланса счёта и заданного риска.
BuyRisk Риск покупки — Процент от баланса, используемый для расчёта размера лота покупки.
SellRisk Риск продажи — Процент от баланса, используемый для расчёта размера лота продажи.
MinLot Минимальный лот — Минимально допустимый размер лота.
MaxLot Максимальный лот — Максимально допустимый размер лота.
LotDigits Знаки лота — Количество знаков после запятой для округления размера лота.
ordersmanagement Управление ордерами — Группа параметров управления ордерами и позициями.
StopLoss Стоп-лосс — Размер стоп-лосса в пунктах для новых и существующих позиций.
TakeProfit Тейк-профит — Размер тейк-профита в пунктах для новых и существующих позиций.
ConstantStop Постоянный стоп — При включении стоп-лосс остаётся фиксированным относительно цены открытия; при выключении — пересчитывается при каждом добавлении уровня.
Step1 Шаг 1 — Размер шага цены для отложенного ордера на первом уровне сетки.
TP1 Тейк-профит 1 — Размер тейк-профита в пунктах для позиции на первом уровне сетки.
Multiplier1 Множитель 1 — Множитель объёма лота для позиции на первом уровне сетки.
Step2 Шаг 2 — Размер шага цены для отложенного ордера на втором уровне сетки.
TP2 Тейк-профит 2 — Размер тейк-профита в пунктах для позиции на втором уровне сетки.
Multiplier2 Множитель 2 — Множитель объёма лота для позиции на втором уровне сетки.
Step3 Шаг 3 — Размер шага цены для отложенного ордера на третьем уровне сетки.
TP3 Тейк-профит 3 — Размер тейк-профита в пунктах для позиции на третьем уровне сетки.
Multiplier3 Множитель 3 — Множитель объёма лота для позиции на третьем уровне сетки.
Step4 Шаг 4 — Размер шага цены для отложенного ордера на четвёртом уровне сетки.
TP4 Тейк-профит 4 — Размер тейк-профита в пунктах для позиции на четвёртом уровне сетки.
Multiplier4 Множитель 4 — Множитель объёма лота для позиции на четвёртом уровне сетки.
Step5 Шаг 5 — Размер шага цены для отложенного ордера на пятом уровне сетки.
TP5 Тейк-профит 5 — Размер тейк-профита в пунктах для позиции на пятом уровне сетки.
Multiplier5 Множитель 5 — Множитель объёма лота для позиции на пятом уровне сетки.
Step6 Шаг 6 — Размер шага цены для отложенного ордера на шестом уровне сетки.
TP6 Тейк-профит 6 — Размер тейк-профита в пунктах для позиции на шестом уровне сетки.
Multiplier6 Множитель 6 — Множитель объёма лота для позиции на шестом уровне сетки.
Step7 Шаг 7 — Размер шага цены для отложенного ордера на седьмом уровне сетки.
TP7 Тейк-профит 7 — Размер тейк-профита в пунктах для позиции на седьмом уровне сетки.
Multiplier7 Множитель 7 — Множитель объёма лота для позиции на седьмом уровне сетки.
Step8 Шаг 8 — Размер шага цены для отложенного ордера на восьмом уровне сетки.
TP8 Тейк-профит 8 — Размер тейк-профита в пунктах для позиции на восьмом уровне сетки.
Multiplier8 Множитель 8 — Множитель объёма лота для позиции на восьмом уровне сетки.
Step9 Шаг 9 — Размер шага цены для отложенного ордера на девятом уровне сетки.
TP9 Тейк-профит 9 — Размер тейк-профита в пунктах для позиции на девятом уровне сетки.
Multiplier9 Множитель 9 — Множитель объёма лота для позиции на девятом уровне сетки.
Step10 Шаг 10 — Размер шага цены для отложенного ордера на десятом уровне сетки.
TP10 Тейк-профит 10 — Размер тейк-профита в пунктах для позиции на десятом уровне сетки.
Multiplier10 Множитель 10 — Множитель объёма лота для позиции на десятом уровне сетки.
Step11 Шаг 11 — Размер шага цены для отложенного ордера на одиннадцатом уровне сетки.
TP11 Тейк-профит 11 — Размер тейк-профита в пунктах для позиции на одиннадцатом уровне сетки.
Multiplier11 Множитель 11 — Множитель объёма лота для позиции на одиннадцатом уровне сетки.
Step12 Шаг 12 — Размер шага цены для отложенного ордера на двенадцатом уровне сетки.
TP12 Тейк-профит 12 — Размер тейк-профита в пунктах для позиции на двенадцатом уровне сетки.
Multiplier12 Множитель 12 — Множитель объёма лота для позиции на двенадцатом уровне сетки.
Step13 Шаг 13 — Размер шага цены для отложенного ордера на тринадцатом уровне сетки.
TP13 Тейк-профит 13 — Размер тейк-профита в пунктах для позиции на тринадцатом уровне сетки.
Multiplier13 Множитель 13 — Множитель объёма лота для позиции на тринадцатом уровне сетки.
Step14 Шаг 14 — Размер шага цены для отложенного ордера на четырнадцатом уровне сетки.
TP14 Тейк-профит 14 — Размер тейк-профита в пунктах для позиции на четырнадцатом уровне сетки.
Multiplier14 Множитель 14 — Множитель объёма лота для позиции на четырнадцатом уровне сетки.
Step15 Шаг 15 — Размер шага цены для отложенного ордера на пятнадцатом уровне сетки.
TP15 Тейк-профит 15 — Размер тейк-профита в пунктах для позиции на пятнадцатом уровне сетки.
Multiplier15 Множитель 15 — Множитель объёма лота для позиции на пятнадцатом уровне сетки.
Step16 Шаг 16 — Размер шага цены для отложенного ордера на шестнадцатом уровне сетки.
TP16 Тейк-профит 16 — Размер тейк-профита в пунктах для позиции на шестнадцатом уровне сетки.
Multiplier16 Множитель 16 — Множитель объёма лота для позиции на шестнадцатом уровне сетки.
Step17 Шаг 17 — Размер шага цены для отложенного ордера на семнадцатом уровне сетки.
TP17 Тейк-профит 17 — Размер тейк-профита в пунктах для позиции на семнадцатом уровне сетки.
Multiplier17 Множитель 17 — Множитель объёма лота для позиции на семнадцатом уровне сетки.
Step18 Шаг 18 — Размер шага цены для отложенного ордера на восемнадцатом уровне сетки.
TP18 Тейк-профит 18 — Размер тейк-профита в пунктах для позиции на восемнадцатом уровне сетки.
Multiplier18 Множитель 18 — Множитель объёма лота для позиции на восемнадцатом уровне сетки.
Step19 Шаг 19 — Размер шага цены для отложенного ордера на девятнадцатом уровне сетки.
TP19 Тейк-профит 19 — Размер тейк-профита в пунктах для позиции на девятнадцатом уровне сетки.
Multiplier19 Множитель 19 — Множитель объёма лота для позиции на девятнадцатом уровне сетки.
Step20 Шаг 20 — Размер шага цены для отложенного ордера на двадцатом уровне сетки.
TP20 Тейк-профит 20 — Размер тейк-профита в пунктах для позиции на двадцатом уровне сетки.
Multiplier20 Множитель 20 — Множитель объёма лота для позиции на двадцатом уровне сетки.
Slippage Проскальзывание — Допустимое проскальзывание цены при открытии ордера в пунктах.
entrylogics Логика входа — Группа параметров логики входа в сделки.
UseMACD Использовать MACD — Включает использование сигнала пересечения линий MACD для определения направления входа.
MACDFast Быстрая MACD — Период быстрой линии индикатора MACD.
MACDSlow Медленная MACD — Период медленной линии индикатора MACD.
MACDSMA Сигнальная MACD — Период сигнальной линии индикатора MACD.
timefilter Фильтр времени — Группа параметров фильтрации по времени торговли.
StartHour Час начала — Час начала торговой сессии (по серверному времени).
EndHour Час окончания — Час окончания торговой сессии (по серверному времени).
FridayCloseTime Закрытие в пятницу — Час закрытия всех позиций в пятницу (по серверному времени).
Получить полный код

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

/*
   Generated by EX4-TO-MQ4 decompiler V4.0.224.1 []
   Website: 
   E-mail : p******m*@gmail.com
*/
extern int Magic = 111;
extern bool CloseAllNow = FALSE;
extern string moneymanagement = "Money Management";
extern double BuyLots = 0.1;
extern double SellLots = 0.1;
extern bool MM = FALSE;
extern double BuyRisk = 2.0;
extern double SellRisk = 2.0;
int gi_128 = 1;
extern double MinLot = 0.1;
extern double MaxLot = 1.0;
extern int LotDigits = 2;
extern string ordersmanagement = "Order Management";
extern int StopLoss = 0;
extern int TakeProfit = 30;
extern bool ConstantStop = FALSE;
extern int Step1 = 30;
extern int TP1 = 30;
extern double Multiplier1 = 2.0;
extern int Step2 = 30;
extern int TP2 = 30;
extern double Multiplier2 = 2.0;
extern int Step3 = 30;
extern int TP3 = 30;
extern double Multiplier3 = 2.0;
extern int Step4 = 30;
extern int TP4 = 30;
extern double Multiplier4 = 2.0;
extern int Step5 = 30;
extern int TP5 = 30;
extern double Multiplier5 = 2.0;
extern int Step6 = 30;
extern int TP6 = 30;
extern double Multiplier6 = 2.0;
extern int Step7 = 30;
extern int TP7 = 30;
extern double Multiplier7 = 2.0;
extern int Step8 = 30;
extern int TP8 = 30;
extern double Multiplier8 = 2.0;
extern int Step9 = 30;
extern int TP9 = 30;
extern double Multiplier9 = 2.0;
extern int Step10 = 30;
extern int TP10 = 30;
extern double Multiplier10 = 2.0;
extern int Step11 = 30;
extern int TP11 = 30;
extern double Multiplier11 = 2.0;
extern int Step12 = 30;
extern int TP12 = 30;
extern double Multiplier12 = 2.0;
extern int Step13 = 30;
extern int TP13 = 30;
extern double Multiplier13 = 2.0;
extern int Step14 = 30;
extern int TP14 = 30;
extern double Multiplier14 = 2.0;
extern int Step15 = 30;
extern int TP15 = 30;
extern double Multiplier15 = 2.0;
extern int Step16 = 30;
extern int TP16 = 30;
extern double Multiplier16 = 2.0;
extern int Step17 = 30;
extern int TP17 = 30;
extern double Multiplier17 = 2.0;
extern int Step18 = 30;
extern int TP18 = 30;
extern double Multiplier18 = 2.0;
extern int Step19 = 30;
extern int TP19 = 30;
extern double Multiplier19 = 2.0;
extern int Step20 = 30;
extern int TP20 = 30;
extern double Multiplier20 = 2.0;
extern int Slippage = 3;
extern string entrylogics = "Entry Settins";
extern bool UseMACD = FALSE;
extern int MACDFast = 14;
extern int MACDSlow = 26;
extern int MACDSMA = 9;
extern string timefilter = "Time Filter";
extern int StartHour = 0;
extern int EndHour = 24;
extern int FridayCloseTime = 20;
double gd_540;
double gd_548;
double g_price_556;
double g_price_564;
double g_lots_572;
double g_price_580;
double gd_588;
double gd_596;
int g_ord_total_604;
int g_digits_608;
int gi_612;
int g_ticket_616;
int g_bool_620;

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

int start() {
      // код доступен только после оплаты
   }
   if (count(OP_BUY) + count(OP_SELL) == 0) {
      BuyLots = NormalizeDouble(AccountBalance() / 1000.0 / 100.0 * BuyRisk, LotDigits);
      SellLots = NormalizeDouble(AccountBalance() / 1000.0 / 100.0 * SellRisk, LotDigits);
      if (BuyLots < MinLot) BuyLots = MinLot;
      if (SellLots < MinLot) SellLots = MinLot;
      if (BuyLots > MaxLot) BuyLots = MaxLot;
      if (SellLots > MaxLot) SellLots = MaxLot;
   }
   if (CloseAllNow == TRUE) {
      for (g_ord_total_604 = OrdersTotal(); g_ord_total_604 >= 0; g_ord_total_604--) {
         OrderSelect(g_ord_total_604, SELECT_BY_POS, MODE_TRADES);
         if (OrderSymbol() == Symbol() || gi_128 == 3 && OrderMagicNumber() == Magic) {
            if (OrderType() == OP_BUY || OrderType() == OP_SELL) OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), 5, CLR_NONE);
            if (OrderType() != OP_BUY && OrderType() != OP_SELL) OrderDelete(OrderTicket());
         }
      }
      return (0);
   }
   int l_ticket_0 = 0;
   int l_ticket_4 = 0;
   int l_ticket_8 = 0;
   int l_ticket_12 = 0;
   double l_ord_lots_16 = 0;
   double l_ord_lots_24 = 0;
   double l_ord_lots_32 = 0;
   double l_ord_lots_40 = 0;
   double l_ord_lots_48 = 0;
   double l_ord_lots_56 = 0;
   double l_ord_open_price_64 = 0;
   double l_ord_open_price_72 = 0;
   double l_ord_takeprofit_80 = 0;
   double l_ord_takeprofit_88 = 0;
   double ld_96 = 0;
   double ld_104 = 0;
   string ls_112 = "";
   string ls_120 = "";
   string ls_128 = "";
   string ls_136 = "";
   string ls_144 = "";
   string ls_152 = "";
   string ls_160 = "";
   string ls_168 = "";
   string ls_176 = "";
   if (iMACD(NULL, 0, MACDFast, MACDSlow, MACDSMA, PRICE_CLOSE, MODE_MAIN, 0) > iMACD(NULL, 0, MACDFast, MACDSlow, MACDSMA, PRICE_CLOSE, MODE_MAIN, 1)) gi_612 = 2;
   if (iMACD(NULL, 0, MACDFast, MACDSlow, MACDSMA, PRICE_CLOSE, MODE_MAIN, 0) < iMACD(NULL, 0, MACDFast, MACDSlow, MACDSMA, PRICE_CLOSE, MODE_MAIN, 1)) gi_612 = 1;
   for (g_ord_total_604 = 0; g_ord_total_604 < OrdersTotal(); g_ord_total_604++) {
      OrderSelect(g_ord_total_604, SELECT_BY_POS, MODE_TRADES);
      if (OrderSymbol() == Symbol() || gi_128 == 3 && OrderMagicNumber() == Magic) {
         if (OrderType() == OP_BUY && l_ticket_0 < OrderTicket()) {
            l_ord_lots_16 = OrderLots();
            l_ord_open_price_64 = OrderOpenPrice();
            l_ticket_0 = OrderTicket();
            l_ord_takeprofit_88 = OrderTakeProfit();
         }
         if (OrderType() == OP_BUY) {
            if (OrderLots() < l_ord_lots_48 || l_ord_lots_48 == 0.0) {
               l_ord_lots_48 = OrderLots();
               ld_96 = OrderOpenPrice() - StopLoss * gd_540;
            }
         }
         if (OrderType() == OP_SELL && l_ticket_4 < OrderTicket()) {
            l_ord_lots_24 = OrderLots();
            l_ord_open_price_72 = OrderOpenPrice();
            l_ticket_4 = OrderTicket();
            l_ord_takeprofit_80 = OrderTakeProfit();
         }
         if (OrderType() == OP_SELL) {
            if (OrderLots() < l_ord_lots_56 || l_ord_lots_56 == 0.0) {
               l_ord_lots_56 = OrderLots();
               ld_104 = OrderOpenPrice() + StopLoss * gd_540;
            }
         }
         if (OrderType() == OP_BUYLIMIT) {
            l_ticket_8 = OrderTicket();
            l_ord_lots_32 = OrderLots();
         }
         if (OrderType() == OP_SELLLIMIT) {
            l_ticket_12 = OrderTicket();
            l_ord_lots_40 = OrderLots();
         }
      }
   }
   if (l_ticket_0 == 0 && l_ticket_8 != 0) OrderDelete(l_ticket_8);
   if (l_ticket_0 == 0 && l_ticket_8 == 0) {
      g_price_556 = Ask - StopLoss * gd_540;
      if (StopLoss <= 0) g_price_556 = 0;
      g_price_564 = Ask + TakeProfit * gd_540;
      if ((StartHour < EndHour && TimeHour(TimeCurrent()) >= StartHour && TimeHour(TimeCurrent()) < EndHour) || (StartHour > EndHour && TimeHour(TimeCurrent()) >= StartHour ||
         TimeHour(TimeCurrent()) < EndHour)) {
         if (DayOfWeek() != 5 || Hour() < FridayCloseTime) {
            if ((gi_612 == 2 && l_ticket_4 == 0) || UseMACD == FALSE) {
               if (AccountFreeMarginCheck(Symbol(), OP_BUY, BuyLots) >= 0.0) {
                  if (gi_128 != 2 && gi_128 != 3) OrderSend(Symbol(), OP_BUY, BuyLots, Ask, Slippage * gd_548, g_price_556, g_price_564, "", Magic, 0, CLR_NONE);
                  else {
                     g_ticket_616 = OrderSend(Symbol(), OP_BUY, BuyLots, Ask, Slippage * gd_548, 0, 0, "", Magic, 0, CLR_NONE);
                     g_bool_620 = OrderModify(g_ticket_616, OrderOpenPrice(), g_price_556, g_price_564, 0, CLR_NONE);
                     if (g_bool_620 == FALSE) Print("Error modifying BUY order : ", GetLastError());
                  }
               } else {
                  if (AccountFreeMarginCheck(Symbol(), OP_BUY, BuyLots) >= 0.0) ls_176 = "we recommend you to decrease your start lot or increase deposit";
                  else ls_128 = "BUY," + DoubleToStr(BuyLots, 2) + " lots. ";
               }
            }
         }
      }
   }
   if (l_ticket_4 == 0 && l_ticket_12 != 0) OrderDelete(l_ticket_12);
   if (l_ticket_4 == 0 && l_ticket_12 == 0) {
      g_price_556 = Bid + StopLoss * gd_540;
      if (StopLoss <= 0) g_price_556 = 0;
      g_price_564 = Bid - TakeProfit * gd_540;
      if ((StartHour < EndHour && TimeHour(TimeCurrent()) >= StartHour && TimeHour(TimeCurrent()) < E

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

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

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

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

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

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

Стоимость полного кода
1 224,40₽ ≈ $14.97