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

mearichi (1)_5940281546685553607.mq4

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

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

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

О программе

Данный продукт представляет собой торговый советник для платформы MetaTrader 4, написанный на языке MQL4. Советник предназначен для работы с инструментом XAUUSD и реализует стратегию сетки ордеров — размещение Buy Stop ордеров выше текущей цены и Buy Limit ордеров ниже неё с заданным шагом.

Советник поддерживает два режима управления тейк-профитами: индивидуальный TP для каждого ордера и Basket TP — суммарную целевую прибыль по всей корзине ордеров. При достижении целевой прибыли в режиме Basket TP все открытые позиции закрываются.

В качестве обработчиков событий используются OnInit при запуске и start (в MQL4 выполняет роль обработчика тиков), которые обеспечивают поддержание сетки и проверку условий закрытия. Функция OnTester в текущей реализации не содержит тестовой логики и возвращает нулевое значение.

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

НастройкаОписание
TradeSymbol Символ инструмента, на котором работает советник.
Lots Объём позиции в лотах для каждого размещаемого ордера.
StepUSD Разница в USD между уровнями сетки ордеров.
TP_USD Уровень прибыли в USD для индивидуального тейк-профита каждого ордера при отключённом Basket TP.
LevelsAbove Количество Buy Stop ордеров, размещаемых выше текущей цены.
LevelsBelow Количество Buy Limit ордеров, размещаемых ниже текущей цены.
Slippage Допустимое отклонение цены при размещении ордеров и закрытии позиций.
MagicNumber Идентификатор для распознавания ордеров, принадлежащих данному советнику.
UseBasketTP true — суммарный TP по корзине ордеров, false — индивидуальный TP для каждого ордера.
BasketTarget Целевая общая прибыль в USD для закрытия всех позиций при активном режиме Basket TP.
Получить полный код

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

#property version   "1.00"
#property strict

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

void OnDeinit(const int reason)
  {

  }

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

double OnTester()
  {

   double ret=0.0;

   return(ret);
  }

#property strict

extern string  TradeSymbol   = "XAUUSD"; // Символ
extern double  Lots          = 0.01;     // Обем на ордерите
extern double  StepUSD       = 5.0;      // Стъпка между нивата (USD)
extern double  TP_USD        = 5.0;      // Индивидуален TP (USD)
extern int     LevelsAbove   = 6;        // Брой Buy Stop над цената
extern int     LevelsBelow   = 6;        // Брой Buy Limit под цената
extern int     Slippage      = 30;       // Слипидж
extern int     MagicNumber   = 888001;   // Magic за разпознаване

extern bool    UseBasketTP   = false;    // true = Basket TP, false = Individual TP
extern double  BasketTarget  = 20.0;     // Целева обща печалба (USD)

int    _digits;  double _point;

double NormalizePrice(double p){ return NormalizeDouble(p, _digits); }
bool   IsMine(){ return (OrderMagicNumber()==MagicNumber && OrderSymbol()==TradeSymbol); }

bool PendingExists(double level, int type){
   double tol = _point * 20;
   for(int i=0;i<OrdersTotal();i++){
      if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){
         if(IsMine() && OrderType()==type){
            if(MathAbs(OrderOpenPrice()-level) <= tol) return true;
         }
      }
   }
   return false;
}

bool PlacePending(int type, double level){
   double tp = 0.0;
   if(!UseBasketTP){ // индивидуален TP
      tp = NormalizePrice(level + TP_USD);
   }
   int ticket = OrderSend(TradeSymbol, type, Lots, level, Slippage, 0, tp,
                          "GridBUY", MagicNumber, 0,
         

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

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

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

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

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

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

Стоимость полного кода
255,30₽ ≈ $3.12