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

eatradecloser_ron_mt4_vrt.mq4

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

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

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

О программе

Советник для MetaTrader 4, который отслеживает текущую прибыль на счёте как разницу между эквити и балансом. Если прибыль опускается ниже заданного порога, автоматически закрываются все открытые позиции — как покупочные, так и продажные. Закрытие происходит по текущим ценам Bid/Ask с заданным допустимым проскальзыванием.

Внутри советника нет собственной логики входа в сделки и управления капиталом; единственная функция — массовое закрытие ордеров при достижении условия по эквити. Результат закрытия каждого ордера выводится в комментарии на графике, а также в журнал экспертов.

Советник работает на платформе MetaTrader 4 (язык MQL4) и обрабатывает событие каждого тика через функцию start(). Параметры задаются в виде внешних переменных и доступны для настройки прямо из интерфейса терминала.

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

НастройкаОписание
Basketloss Порог прибыли корзины — Порог прибыли на уровне эквити (AccountEquity минус AccountBalance). При значении ниже этого числа все открытые ордера закрываются автоматически.
Slippage Проскальзывание — Допустимое проскальзывание цены при закрытии ордеров, задаётся в пунктах.
Получить полный код

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

/*
+------------+
|FrameTrader |
+------------+

Theory of operation

TIME FRAME
==========
Close at equity level with a profit :)

PAIRS
=====
ALL

ENTRY LONG
==========

ENTRY SHORT
===========

EXIT
====

MONEY MANAGEMENT
================
-none-

RISK MANAGEMENT
===============
-none-

FAILURE MANAGEMENT
==================
-none-

VERSION HISTORY
===============
00    - initial concept

*/

extern double Basketloss=50;
extern double Slippage=3;

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

int deinit()
  {
   Print("DE-Init happened ",CurTime());
   Comment(" ");
  }

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

   int      cnt=0;
   int      gle=0;
   int      OrdersOpenCount=0;

   string mySymbol;
   double myAsk;
   double myBid;   

   double   currBasket=0;

   currBasket=AccountEquity()-AccountBalance();
   Comment("Profit/Loss = ",currBasket);

   if(currBasket<Basketloss)
     {

      for(cnt=OrdersTotal(); cnt>=0; cnt--)
        {
         OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
         if( OrderType()==OP_BUY || OrderType()==OP_SELL )
           {
            m

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

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

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

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

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

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

Стоимость полного кода
140,20₽ ≈ $1.71