Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1370

 
Сергей Дыбленко:

Это не работает вообще! Бред какой то!

Скажи как ты хочешь изменять лот, относительно чего?

Посмотри эту библиотеку

 
MakarFX:

Скажи как ты хочешь изменять лот, относительно чего?

Посмотри эту библиотеку

относительно своего депо! 

пытаюсь делать Грааль который не сливает а все время дает прибыль!

 
Сергей Дыбленко:

относительно своего депо! 

пытаюсь делать Грааль который не сливает а все время дает прибыль!

Держи

//+--------------------------------------------------------------------------------------------------------------------+
//|  Расчет лота относительно маржи                                                                                    |
//+--------------------------------------------------------------------------------------------------------------------+
double MarginLot()
  {
   double Free    = AccountFreeMargin();
   double Prots   = Risk/100;
   double Lot     = MarketInfo(Symbol(), MODE_MARGINREQUIRED);
   double Step    = MarketInfo(Symbol(), MODE_LOTSTEP);
   double result  = MathFloor(Free * Prots / Lot / Step) * Step;

   if (result > MaxLot) result = MaxLot;
   else 
   if (result < MinLot) result = MinLot;
   return(result);
  }
 
Сергей Дыбленко:

Это не работает вообще! Бред какой то!

эта функция увеличивает лот 

до 120 ваших средств будет открываться с лотом 0.2

как ваши средства увеличатся выше от 120 - 200 будет открывать позиции с лотом 0.3 

 
МАКАР и САШКА - вам ребята спасибо!!!!!!!!!!!!! Кое что у же начало прорисовываться у меня!!!!
 
 https://www.mql5.com/ru/code/26798  я пытался сделать как в этом муляже круто величиваюся лоты! НО это сильно заумно для меня!
 

Всем добрый день. Получилось победить открытие ордеров. Но при тесте по тикам советник выдаёт ошибку 2021.01.30 17:31:29.755        2014.03.21 11:50:03  TREND+ _V_REAL-DEMO EURUSD,H1: OrderModify error 1

Модификация ордера прописана в одном месте- в трале по параболику. Вот код трала


//--ТРАЛ ПО ПАРАбОЛИКУ
void Tral_parabolik()
{ // НАЧАЛО ТРАЛ ПО ПАРАБОЛИК
//+------------------------------------------------------------------+
   int    Tral = tral;
   double Sar  = iCustom(_Symbol,PeriodForWork_tral_parabolik,"Parabolic",step_tral_parabolik,max_tral_parabolik,1);
//+------------------------------------------------------------------+
   for(int pos=0;pos<OrdersTotal();pos++)
     { if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES))
      if(OrderSymbol()==_Symbol)
        {
         if(OrderType()==OP_SELL)
           {
            if(OrderOpenPrice()>Ask+Tral*Point&&OrderStopLoss()!= Sar)
            if(OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Sar,Digits),OrderTakeProfit(),0,clrBlack))
            {Print("Order SELL Modify");
            if (GetLastError()==141){Alert(GetLastError()); ExpertRemove();}// ПРОВЕРКА ОТ ДОЛБАНИЯ СЕРВЕРА И БАНА СЧЁТА
            }
           }
         if(OrderType()==OP_BUY)
           {
            if(OrderOpenPrice()<Bid-Tral*Point&&OrderStopLoss()!= Sar)
            if(OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Sar,Digits),OrderTakeProfit(),0,clrGreen))
            {
            Print("Order BUY Modify");
            if (GetLastError()==141){Alert(GetLastError()); ExpertRemove();}// ПРОВЕРКА ОТ ДОЛБАНИЯ СЕРВЕРА И БАНА СЧЁТА
            
            }
           }
        }

}
} // КОНЕЦ ТРАЛ ПО ПАРАБОЛИК

Что это в функции трала надо поправить чтобы избежать этой ошибки?

 

DanilaMactep:

Что это в функции трала надо поправить чтобы избежать этой ошибки?

Попробуй так

//--ТРАЛ ПО ПАРАбОЛИКУ
void Tral_parabolik()
{ // НАЧАЛО ТРАЛ ПО ПАРАБОЛИК
//+------------------------------------------------------------------+
   int    Tral = tral;
   double Sar  = iCustom(_Symbol,PeriodForWork_tral_parabolik,"Parabolic",step_tral_parabolik,max_tral_parabolik,1);
//+------------------------------------------------------------------+
   for(int pos=0;pos<OrdersTotal();pos++)
     {
      if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES))
      if(OrderSymbol()==_Symbol)
        {
         if(OrderType()==OP_SELL)
           {
            if(OrderOpenPrice()>Ask+Tral*Point&&OrderOpenPrice()>Sar)
              {
               if(OrderStopLoss()!= Sar)
                 {
                  if(OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Sar,Digits),OrderTakeProfit(),0,clrBlack))
                    {
                     Print("Order SELL Modify",GetLastError());
                     if (GetLastError()==141){Alert(GetLastError()); ExpertRemove();}// ПРОВЕРКА ОТ ДОЛБАНИЯ СЕРВЕРА И БАНА СЧЁТА
                    }
                 }
              }
           }
         if(OrderType()==OP_BUY)
           {
            if(OrderOpenPrice()<Bid-Tral*Point&&OrderOpenPrice()<Sar)
              {
               if(OrderStopLoss()!= Sar)
                 {
                  if(OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Sar,Digits),OrderTakeProfit(),0,clrGreen))
                    {
                     Print("Order BUY Modify",GetLastError());
                     if (GetLastError()==141){Alert(GetLastError()); ExpertRemove();}// ПРОВЕРКА ОТ ДОЛБАНИЯ СЕРВЕРА И БАНА СЧЁТА
                    }
                 }
              }
           }
        }
     }
} // КОНЕЦ ТРАЛ ПО ПАРАБОЛИК  
 
MakarFX:

Держи

Спасиб щас втыкну куданить код! Знать бы еще куда его тыкать....

 
Сергей Дыбленко:

Спасиб щас втыкну куданить код! Знать бы еще куда его тыкать....

В самый низ советника

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