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

mr.dollar_pending orders ea v5.5.mq4

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

#1.mtf_collider_h4_close_13_v18bar.mq4MQL4 / MetaTrader 4 · 1 общих теговea robofibo source v.11.2.mq4MQL4 / MetaTrader 4 · 1 общих теговsma crossover scalper ea for mt4.mq4MQL4 / MetaTrader 4 · 1 общих теговr15 pivot points expert advisor by @fundedmillionairess.mq4MQL4 / MetaTrader 4 · 1 общих теговnewstrader.mq5MQL5 / MetaTrader 5 · 1 общих теговmm3.0_flip_codepro_v3.1_with_cooldown@lifeindreamsworld.mq5MQL5 / MetaTrader 5 · 1 общих тегов
Вы автор или правообладатель?

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

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

О программе

Торговый советник для MetaTrader 4, размещающий отложенные ордера четырёх типов: BuyStop, BuyLimit, SellStop и SellLimit. Советник работает в рамках заданных временных фильтров и поддерживает управление лотами, стоп-лоссами, тейк-профитами, трейлинг-стопом, а также автоматическое закрытие и удаление ордеров по заданным условиям. Советник позволяет настраивать количество ордеров каждого типа, расстояние от текущей цены и между ордерами, начальные лоты и их увеличение с помощью мультипликатора. Доступны опции хеджирования при первом запуске, повторного открытия закрытых позиций и фильтрации работы в пятницу.

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

НастройкаОписание
UseHourTrade Фильтр по часам торговли — Включает или выключает ограничение торговли по часам
FromHourTrade Начало часа торговли — Час начала торгового окна
ToHourTrade Конец часа торговли — Час окончания торгового окна
OpenHedgeFirstTime Хедж при первом запуске — Открывает хедж-позиции Buy и Sell при первом запуске советника
HedgeLots Лот хедж-позиции — Размер лота для хедж-позиций
HedgeTP Тейк-профит хеджа — Тейк-профит хедж-позиций в пунктах
HedgeSL Стоп-лосс хеджа — Стоп-лосс хедж-позиций в пунктах
AddOrdersAfterClose Повторное открытие после закрытия — Повторно открывает ордера после закрытия всех позиций
ReverseClosedOrders Разворот закрытых ордеров — Разворачивает направление при повторном открытии закрытых ордеров
CloseIfLastOrderProfit Закрыть при прибыли последнего ордера — Удаляет все отложенные и закрывает рыночные ордера, если последний ордер в прибыли
S1 Группа BuyStop — Разделитель группы настроек BuyStop ордеров
OpenBuyStopOrders Открывать BuyStop — Включает размещение ордеров BuyStop
NumberOfBuyStopOrders Количество BuyStop — Количество ордеров BuyStop для размещения
BuyStopFirstLot Начальный лот BuyStop — Начальный размер лота для BuyStop ордеров
DistanceFromCurrentPriceBS Расстояние BuyStop от цены — Расстояние от текущей цены для первого BuyStop ордера в пунктах
DistanceBetweenBuyS Расстояние между BuyStop — Расстояние между последовательными BuyStop ордерами в пунктах
Distance_AddBuyS Доп. расстояние BuyStop — Дополнительное расстояние между BuyStop ордерами в пунктах
BuyStopTakeProfit Тейк-профит BuyStop — Тейк-профит для BuyStop ордеров в пунктах
BuyStopSL Стоп-лосс BuyStop — Стоп-лосс для BuyStop ордеров в пунктах
S2 Группа BuyLimit — Разделитель группы настроек BuyLimit ордеров
OpenBuyLimitOrders Открывать BuyLimit — Включает размещение ордеров BuyLimit
NumberOfBuyLimitOrders Количество BuyLimit — Количество ордеров BuyLimit для размещения
BuyLimitFirstLot Начальный лот BuyLimit — Начальный размер лота для BuyLimit ордеров
DistanceFromCurrentPriceBL Расстояние BuyLimit от цены — Расстояние от текущей цены для первого BuyLimit ордера в пунктах
DistanceBetweenBuyL Расстояние между BuyLimit — Расстояние между последовательными BuyLimit ордерами в пунктах
Distance_AddBuyL Доп. расстояние BuyLimit — Дополнительное расстояние между BuyLimit ордерами в пунктах
BuyLimitTakeProfit Тейк-профит BuyLimit — Тейк-профит для BuyLimit ордеров в пунктах
BuyLimitSL Стоп-лосс BuyLimit — Стоп-лосс для BuyLimit ордеров в пунктах
S3 Группа SellStop — Разделитель группы настроек SellStop ордеров
OpenSellStopOrders Открывать SellStop — Включает размещение ордеров SellStop
NumberOfSellStopOrders Количество SellStop — Количество ордеров SellStop для размещения
SellStopFirstLot Начальный лот SellStop — Начальный размер лота для SellStop ордеров
DistanceFromCurrentPriceSS Расстояние SellStop от цены — Расстояние от текущей цены для первого SellStop ордера в пунктах
DistanceBetweenSellS Расстояние между SellStop — Расстояние между последовательными SellStop ордерами в пунктах
Distance_AddSellS Доп. расстояние SellStop — Дополнительное расстояние между SellStop ордерами в пунктах
SellStopTakeProfit Тейк-профит SellStop — Тейк-профит для SellStop ордеров в пунктах
SellStopSL Стоп-лосс SellStop — Стоп-лосс для SellStop ордеров в пунктах
S4 Группа SellLimit — Разделитель группы настроек SellLimit ордеров
OpenSellLimitOrders Открывать SellLimit — Включает размещение ордеров SellLimit
NumberOfSellLimitOrders Количество SellLimit — Количество ордеров SellLimit для размещения
SellLimitFirstLot Начальный лот SellLimit — Начальный размер лота для SellLimit ордеров
DistanceFromCurrentPriceSL Расстояние SellLimit от цены — Расстояние от текущей цены для первого SellLimit ордера в пунктах
DistanceBetweenSellL Расстояние между SellLimit — Расстояние между последовательными SellLimit ордерами в пунктах
Distance_AddSellL Доп. расстояние SellLimit — Дополнительное расстояние между SellLimit ордерами в пунктах
SellLimitTakeProfit Тейк-профит SellLimit — Тейк-профит для SellLimit ордеров в пунктах
SellLimitSL Стоп-лосс SellLimit — Стоп-лосс для SellLimit ордеров в пунктах
S5 Группа мультипликатора — Разделитель группы настроек мультипликатора лотов
UseMultiplier Использовать мультипликатор — Включает увеличение размера лота при размещении последующих ордеров
X_Multiplier Режим мультипликатора — Если включён, лот умножается; если выключён, лот увеличивается на начальное значение
Multiplier Множитель лота — Коэффициент умножения лота при использовании мультипликатора
S6 Группа времени и цены — Разделитель группы настроек времени и цены открытия
HighLowCandle Использовать High/Low свечи — Использует цену High или Low предыдущей свечи как базовую для расчёта уровней
OpenAtChoosenHour Открывать в выбранный час — Разрешает открытие ордеров только в указанный час
Hour_ Час открытия — Час, в который разрешено открытие ордеров
StartPrice Начальная цена — Базовая цена для расчёта уровней ордеров; если ноль — используется текущая цена
Gap Допустимый диапазон цены — Допустимый диапазон отклонения цены от StartPrice для открытия ордеров в пунктах
OnlyOnce Только один раз — Разрешает открытие ордеров только один раз за запуск советника
S7 Группа закрытия ордеров — Разделитель группы настроек закрытия и удаления ордеров
FridayOpenOrdersFilter Фильтр пятницы для открытия — Запрещает открытие новых ордеров в пятницу до указанного часа
FridayDeleteOrders Удалять ордера в пятницу — Удаляет все отложенные ордера в пятницу после указанного часа
FridayCloseOrders Закрывать ордера в пятницу — Закрывает все рыночные ордера в пятницу после указанного часа
_Hour Час пятничных фильтров — Час, после которого применяются пятничные фильтры
CloseAfterPassMinutes Закрывать по времени — Включает автоматическое закрытие ордеров по истечении заданного времени
MinutesPass Минуты до закрытия — Время в минутах после открытия ордера для его автоматического закрытия
CloseOrdersAfterProfit Закрывать при прибыли — Закрывает все рыночные ордера при достижении заданной прибыли
DeleteOrdersAfterProfit Удалять при прибыли — Удаляет все отложенные ордера при достижении заданной прибыли
Profit Уровень прибыли — Уровень прибыли в пунктах для автоматического закрытия и удаления ордеров
CloseOrdersAfterLoss Закрывать при убытке — Закрывает все рыночные ордера при достижении заданного убытка
Loss Уровень убытка — Уровень убытка в пунктах для автоматического закрытия ордеров
S8 Группа управления ордерами — Разделитель группы настроек управления ордерами
TrailingStop Трейлинг-стоп — Размер трейлинг-стопа в пунктах; 0 отключает функцию
TrailingProfit Прибыль для трейлинга — Минимальная прибыль в пунктах для активации трейлинг-стопа
TrailingStep Шаг трейлинга — Минимальный шаг сдвига трейлинг-стопа в пунктах
S9 Группа временного фильтра — Разделитель группы настроек временного фильтра
FridayCloseEA Останавливать в пятницу — Останавливает работу советника в пятницу после указанного часа
Friday_CloseHour Час завершения в пятницу — Час, после которого советник прекращает работу в пятницу
MagicNumber Магический номер — Магический номер для идентификации ордеров советника
Получить полный код

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

extern bool  UseHourTrade = false;        
 extern int  FromHourTrade = 7;            
 extern int  ToHourTrade = 17; 
 extern bool OpenHedgeFirstTime=false;
 extern double HedgeLots=0.1;
 extern int HedgeTP=0;
 extern int HedgeSL=0;
 extern bool AddOrdersAfterClose=true;
 extern bool ReverseClosedOrders=false;
 extern bool CloseIfLastOrderProfit=false;
 extern string S1="BuyStop Orders Settings ";
 extern bool OpenBuyStopOrders=true;
 extern int NumberOfBuyStopOrders=50;
 extern double BuyStopFirstLot=0.1;
  extern int DistanceFromCurrentPriceBS=0;
 extern int DistanceBetweenBuyS=20;
 extern int Distance_AddBuyS=0;
 extern int BuyStopTakeProfit=0;
 extern int BuyStopSL=0;
 extern string S2="BuyLimit Orders Settings";
 extern bool OpenBuyLimitOrders=true;
 extern int NumberOfBuyLimitOrders=50;
 extern double BuyLimitFirstLot=0.1;
  extern int DistanceFromCurrentPriceBL=0;
extern int DistanceBetweenBuyL=20;
 extern int Distance_AddBuyL=0;
 extern int BuyLimitTakeProfit=0;
 extern int BuyLimitSL=0;
 extern string S3="SellStop Orders Settings";
 extern bool OpenSellStopOrders=true;
 extern int NumberOfSellStopOrders=50;
 extern double SellStopFirstLot=0.1;
  extern int DistanceFromCurrentPriceSS=0;
 extern int DistanceBetweenSellS=20;
  extern int Distance_AddSellS=0;
 extern int SellStopTakeProfit=0;
 extern int SellStopSL=0;
 extern string S4="SellLimit Orders Settings";
 extern bool OpenSellLimitOrders=true;
 extern int NumberOfSellLimitOrders=50;
 extern double SellLimitFirstLot=0.1;
  extern int DistanceFromCurrentPriceSL=0;
 extern int DistanceBetweenSellL=20;
  extern int Distance_AddSellL=0;
 extern int SellLimitTakeProfit=0;
 extern int SellLimitSL=0;
extern string S5=" Lots Multiplier ";
 extern bool UseMultiplier=true;
 extern bool X_Multiplier=true;
 extern double Multiplier=2;

 extern string S6=" Order Open Time/Price Settings ";
  extern bool HighLowCandle=false;
 extern bool OpenAtChoosenHour=false;
 extern int Hour_=12;
 extern double StartPrice=0;
 extern int Gap=3;

 extern bool OnlyOnce=false;
 extern string S7=" Close and Delete Orders ";
 extern bool FridayOpenOrdersFilter=true;
 extern bool FridayDeleteOrders=false;
 extern bool FridayCloseOrders=false;
 extern int _Hour=20;
 extern bool CloseAfterPassMinutes=false;
 extern int MinutesPass=100;
 extern bool CloseOrdersAfterProfit=true;
 extern bool DeleteOrdersAfterProfit=true;
 extern int Profit=200;
  extern bool CloseOrdersAfterLoss=false;
 extern double Loss=-200;
extern string S8=" Order Management";

extern int TrailingStop=0;
extern int TrailingProfit=0;
extern int TrailingStep=0;

extern string S9="Time Filter";
extern bool FridayCloseEA=false;
extern int Friday_CloseHour=20;

 bool enter;
  double point;double Price;
 int digits;int i,Q,Qq;
 extern int MagicNumber=2533;

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

 void deinit() {
    Comment("");
  }

 int orderscnt(){
 int cnt=0;
   for(int i =0;i<OrdersTotal();i++){
     if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
       if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber){
         cnt++;
       }
     }
   }
    return(cnt);
  }
int ordersPen(){
 int cnt=0;
   for(int i =0;i<OrdersTotal();i++){
     if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
       if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber&&OrderType()>OP_SELL){
         cnt++;
       }
     }
   }
    return(cnt);
  }
  int orders(){
 int cnt=0;
   for(int i =0;i<OrdersTotal();i++){
     if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
       if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber&&OrderType()<=OP_SELL){
         cnt++;
       }
     }
   }
    return(cnt);
  }

 int start()
   {
      // код доступен только после оплаты
   }
    Comment("Programmed by MR.dollar"+"\n"+"????? ???????? ??????"+"\n"+"www.arabictrader.com/vb"+"\n"+
    "Number Of Pending Orders = "+ordersPen()+"\n"+"Number Of Market Orders = "+orders()+"\n"+
    "Account Free Margin = "+DoubleToStr(AccountFreeMargin(),2)+"\n"+"Profit Value = "+DoubleToStr(AccountProfit(),2));
       bool ss=true;
        if(Qq+Q==orderscnt()&&!((FromHourTrade < ToHourTrade && TimeHour(TimeCurrent()) >= FromHourTrade && TimeHour(TimeCurrent()) < ToHourTrade) || (FromHourTrade > ToHourTrade && TimeHour(TimeCurrent()) >= FromHourTrade ||
               TimeHour(TimeCurrent()) < ToHourTrade))&&UseHourTrade){
       DeletePendingOrders();
       }
       if (UseHourTrade){
        if(!((FromHourTrade < ToHourTrade && TimeHour(TimeCurrent()) >= FromHourTrade && TimeHour(TimeCurrent()) < ToHourTrade) || (FromHourTrade > ToHourTrade && TimeHour(TimeCurrent()) >= FromHourTrade ||
               TimeHour(TimeCurrent()) < ToHourTrade))){
           Comment("Non-Trading Hours!");
           ss=false;
         }
       }

        if(TrailingStop>0)MoveTrailingStop();
         if(FridayCloseEA&&Hour()>=Friday_CloseHour&&DayOfWeek()==5)
           return;

        if(AddOrdersAfterClose&&orderscnt()>0){
         OpenClosedOrders(OP_BUY);
         OpenClosedOrders(OP_SELL); 
        }
        int totalNumber=0;

        if(ss==true&&orderscnt()<1&&(OnlyOnce==false||enter==true)&&(FridayOpenOrdersFilter==false||DayOfWeek()!=5||Hour()<_Hour)&&(Hour()==Hour_||OpenAtChoosenHour==false)){
       double lastlot;double newlot;double TP,SL;
       lastlot=0;
        if(OpenHedgeFirstTime)
         {
          if(HedgeSL==0){SL=0;}else{SL=Ask-HedgeSL*point;}
          if(HedgeTP==0){TP=0;}else{TP=Ask+HedgeTP*point;}
          OrderSend(Symbol(),OP_BUY,HedgeLots,NormalizeDouble(Ask,Digits),3*Q,NormalizeDouble(SL,Digits),NormalizeDouble(TP,Digits),"MR.dollar EA",MagicNumber,0,Blue);
          if(HedgeSL==0){SL=0;}else{SL=Bid+HedgeSL*point;}
          if(HedgeTP==0){TP=0;}else{TP=Bid-HedgeTP*point;}
          OrderSend(Symbol(),OP_SELL,HedgeLots,NormalizeDouble(Bid,Digits),3*Q,NormalizeDouble(SL,Digits),NormalizeDouble(TP,Digits),"MR.dollar EA",MagicNumber,0,Red); 
         }
       if(OpenSellLimitOrders){
        for(i=1;i<=NumberOfSellLimitOrders;i++)
        {
         if(UseMultiplier){
          if(X_Multiplier){
           newlot=Multiplier*lastlot;
          }
          else{newlot=lastlot+SellLimitFirstLot;}
          }
         else{newlot=SellLimitFirstLot;}
        if(newlot==0){newlot=SellLimitFirstLot;}
         lastlot=newlot;

         if(StartPrice==0){Price=Bid+(DistanceFromCurrentPriceSL*point)+(i*DistanceBetweenSellL*point+i*Distance_AddSellL*point);}
         else{Price=StartPrice+(DistanceFromCurrentPriceSL*point)+(i*DistanceBetweenSellL*point);}
         if(HighLowCandle){Price=High[1]+(DistanceFromCurrentPriceSL*point)+(i*DistanceBetweenSellL*point);}
         if(SellLimitTakeProfit==0){TP=0;}else{TP=Price-SellLimitTakeProfit*point;}
         if(SellLimitSL==0){SL=0;}else{SL=Price+SellLimitSL*point;}

         if((StartPrice==0&&HighLowCandle==false)||(HighLowCandle==true&&Hour()==Hour_+1)||(Close[0]>=StartPrice-Gap*point&&Close[0]<=StartPrice+Gap*point)){  
            OrderSend(Symbol(),OP_SELLLIMIT,newlot,Price,3,SL,TP,"MR.dollar EA"+totalNumber,MagicNumber,0,Red);
             totalNumber++;
          }
         }
        }

       lastlot=0;
       if(OpenBuyLimitOrders){
        for(i=1;i<=NumberOfBuyLimitOrders;i++)
        {
         if(UseMultiplier){
        if(X_Multiplier){
         newlot=Multiplier*lastlot;
        }
        else{newlot=lastlot+BuyLimitFirstLot;}
       }
       else{newlot=BuyLimitFirstLot;}
         if(newlot=

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

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

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

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

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

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

Стоимость полного кода
1 320,80₽ ≈ $16.14