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

Controlled Hedge Bot

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

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

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

О программе

TradingView Controlled Hedge Bot — это торговый советник для MetaTrader 5, реализующий стратегию хеджирования. Советник отслеживает текущие позиции на символе и открывает дополнительные сделки при изменении направления цены, формируя хедж-позицию для управления рисками.

При достижении заданного уровня фиксированной прибыли (в долларах) советник автоматически закрывает позиции. Также предусмотрен опциональный трейлинг-стоп, который активируется при превышении прибыли над заданным порогом.

Советник работает в рамках обработчика OnTick, используя торговый API MetaTrader (CTrade) для открытия и закрытия позиций. Количество одновременных входов ограничивается параметром MaxEntries, что позволяет контролировать суммарную экспозицию.

Версия советника рассчитана на фиксацию прибыли в долларовом эквиваленте, что упрощает управление результатом независимо от размера контракта.

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

НастройкаОписание
LotSize Размер лота — Размер лота для каждой сделки (по умолчанию 0.01)
MaxEntries Максимальное количество входов — Максимальное количество одновременных позиций на символе (по умолчанию 2)
TakeProfitAmount Фиксированная прибыль (TP в $) — Целевая фиксированная прибыль в долларах для закрытия позиции (по умолчанию 0.50)
EnableTrailingStop Включить трейлинг-стоп — Включение/отключение трейлинг-стопа (по умолчанию выключен)
TrailingProfit Прибыль для трейлинг-стопа — Уровень прибыли, при котором активируется трейлинг-стоп (по умолчанию 0.30)
Получить полный код

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

#include <Trade/Trade.mqh>
CTrade trade;

input double LotSize = 0.01;
input int MaxEntries = 2;
input double TakeProfitAmount = 0.50;
input bool EnableTrailingStop = false;
input double TrailingProfit = 0.30;

bool hedgeOpened = false;
ulong sellTicket = 0;
ulong buyTicket = 0;

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

void OnTick()
  {
      // код доступен только после оплаты
   }
   double ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK);
   double bid = SymbolInfoDouble(_Symbol, SYMBOL_BID);

   int count = 0;
   for(int i = 0; i < PositionsTotal(); i++)
     {
      ulong ticket = PositionGetTicket(i);
      if(PositionSelectByTicket(ticket) && PositionGetString(POSITION_SYMBOL) == _Symbol)
         count++;
     }
   if(count >= MaxEntries) return;

   if(!PositionSelect(_Symbol))
     {
      if(trade.Sell(LotSize, _Symbol, bid, 0, 0))
         sellTicket = trade.ResultOrder();
      return;
     }

   if(sellTicket > 0 && PositionSelectByTicket(sellTicket))
     {
      double sellOpenPrice = PositionGetDouble(POSITION_PRICE_OPEN);
      if(bid > sellOpenPrice && !hedgeOpened)
        {
     

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

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

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

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

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

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

Стоимость полного кода
164,70₽ ≈ $2.01