Ребят, нужна помощь (MQL4)

 

Нужна функция в советник, которая при указаной просадке в % закрывает все ордера и выводит на экран сообщение, типа * допущена просадка (столько то)%. Продолжить работу советника: да/нет*.

Если да, то снова продолжает работать, если нет, то отключается. 
В данный момент, просто выводится сообщение *допущена просадка*

if(ProsadkaStop==true)
{
   double ProfitNow=AccountInfoDouble(ACCOUNT_PROFIT);
   double BalansNew=AccountInfoDouble(ACCOUNT_BALANCE);
   if((BalansNew+ProfitNow)/BalansNew*100<=100-Procent)
  {
   Print("Допущена просадка");
  }
}
 
Anton Nikiforov:

Нужна функция в советник, которая при указаной просадке в % закрывает все ордера и выводит на экран сообщение, типа * допущена просадка (столько то)%. Продолжить работу советника: да/нет*.

Если да, то снова продолжает работать, если нет, то отключается. 
В данный момент, просто выводится сообщение *допущена просадка*

Так ордера или позиции хотите закрывать?
 
Karputov Vladimir:
Так ордера или позиции хотите закрывать?

Позиции

 
Anton Nikiforov:

Позиции

Вот очень простой способ закрытия всех позиций:

//+------------------------------------------------------------------+
//|                                            CloseAllPositions.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#include<Trade\Trade.mqh>
//---
CTrade my_trade;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   int count=PositionsTotal();

   for(int i=count-1;i>=0;i--)
     {
      string name=PositionGetSymbol(i);
      my_trade.PositionClose(name,-1);
     }
  }
//+------------------------------------------------------------------+

 

Вот только здесь нет никаких проверок: торговля может быть запрещена (для программы, для счёта, просто выходные), различные реквоты...

Файлы:
 
Karputov Vladimir:

Вот очень простой способ закрытия всех позиций:

 

Вот только здесь нет никаких проверок: торговля может быть запрещена (для программы, для счёта, просто выходные), различные реквоты.

а для МТ4?)
 
Anton Nikiforov:
а для МТ4?)

О таком лучше сразу упоминать.

Название темы исправлю. Думаю кто-нибудь сейчас поможет Вам. 

 
Karputov Vladimir:
Так ордера или позиции хотите закрывать?

Владимир не мути воду, в заголовке тему чётко написано MQL4 а вы категорически отказались помогать в вопросах по нему(mql4).

Хуже рекламы по телеку. Ну везде это навязывание...


добавлено: Беру половину своих слов взад. Об исправлении заголовка темы прочёл позже.

 
Alexey Viktorov:

Владимир не мути воду, в заголовке тему чётко написано MQL4 а вы категорически отказались помогать в вопросах по нему(mql4).

Хуже рекламы по телеку. Ну везде это навязывание...

Вы бы сначала внимательно читали ВСЮ ветку, а потом уже пытались говорить. Особенно рекомендую к прочтению:

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Ребят, нужна помощь (MQL4)

Karputov Vladimir, 2016.09.29 20:33

О таком лучше сразу упоминать.

Название темы исправлю. Думаю кто-нибудь сейчас поможет Вам. 


Причина обращения: