¡aprender a ganar dinero aldeanos [Episodio 2] ! - página 234

 
Roman.:

:-)

Sí, más bien la señora que paga mi ayron... :-)


Creo que aún podrá hacerlo, pero hay que salir a tiempo y desgraciadamente no se puede adivinar cuándo.

 
7Konstantin7:

Aunque no tengo energía para buscarlo, he estado buscando mis ojos en una pila durante horas)


No te preocupes, Kostyan, ya tiene suficientes fugas, no te molestes en buscarlas... :-)
 
7Konstantin7:

Creo que todavía será capaz de cortarla, pero hay que bajar en el momento adecuado, no se puede adivinar cuándo.



Bueno, no te deja entrar a tiempo... :-)
 

KimIV tiene lo que necesita, pero sólo supervisa SL, y TP no.

El Asesor Experto cierra sólo aquellas posiciones en las que la pérdida en pips ha superado un determinado valor especificado. Las posiciones a cerrar, de compra o de venta, así como los instrumentos de negociación, pueden establecerse mediante parámetros externos del Asesor Experto:

 
Roman.:

No te deja entrar a tiempo... :-)

La verdad es que no he seguido todo eso, pero una cosa tengo clara, no importa qué tipo de pammers haya, no tiene sentido invertir en ningún sitio, de todas formas, no saldrá nada bueno) el mercado es malo)

 
7Konstantin7:

KimIV tiene lo que necesita, pero sólo supervisa SL, y TP no.

El Asesor Experto cierra sólo aquellas posiciones en las que la pérdida en pips ha superado un determinado valor especificado. Las posiciones a cerrar, de compra o de venta, y en qué instrumentos de negociación, pueden establecerse utilizando parámetros externos del Asesor Experto:


Añade a tu búho - yo lo he organizado así:


...
 // ------------------------------------------------Ищем наш ордер---------------------------------
   int orderType;
   for (int orderIndex = (OrdersTotal() - 1); orderIndex >= 0; orderIndex--)
   {
      if (!OrderSelect(orderIndex, SELECT_BY_POS))     continue; // если ордер не выбран, то идем на следующий открытый
      if(OrderCloseTime()!=0) continue;                    // если тикет принадлежит закрытому ордеру, то берем следующий открытый
      if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber)) continue;
      orderType = OrderType();
      if ((orderType != OP_BUY) && (orderType != OP_SELL)) continue;
          ticket = OrderTicket( );                         // Номер ордера
          orderLots = OrderLots();                         // Lots   
          orderProfit = OrderProfit() + OrderSwap();       // Profit
          Price = OrderOpenPrice();                        // Цена открытия рыночного ордера
          SL =  OrderStopLoss();                           // Значение StopLoss ордера
          TP = OrderTakeProfit();                          // Значение TakeProfit ордера          
          if (ticket>0)                                    // Если позиция открылась
              {
                while(OrderSelect(ticket,SELECT_BY_TICKET)==false)       // Если ордер выбран
                Sleep(100);                                 
                double OpenPrice=OrderOpenPrice();
       // Print("OrderTicket()=",OrderTicket(),  "OrderOpenTime()=",OrderOpenTime()); 
       // Print("TimeLocal()=",TimeLocal());                                                                    
                     //---------------------Запоминаем значения сл и тп ордера                     
                if (orderType == OP_BUY) 
                   {                
                     V_StopLossPips = NormalizeDouble(OpenPrice  - (StopLossPips * Point), Digits);
                     V_TakeProfitPips = NormalizeDouble(OpenPrice + (TakeProfitPips * Point), Digits);
                   }
            
                if (orderType == OP_SELL) 
                   {        
                     V_StopLossPips = NormalizeDouble(OpenPrice  + (StopLossPips * Point), Digits);
                     V_TakeProfitPips = NormalizeDouble(OpenPrice - (TakeProfitPips * Point), Digits);
                   }   
                            
              }
             
     // Проверка на предельную просадку      
      double loss = - ((orderProfit * 100.0) / AccountBalance());
      if (loss > MaxLoss)
      {
         Print ("MaxLoss");
         CloseAllOrders(MagicNumber);
         IsExpertFailed = true;
         return (0);
      }
    
       // Проверка закрытия открытой позиции (ордера) по стоп-лоссу           
      if ( V_StopLossPips != 0 )
        {
          if (OrderType() == OP_BUY && Bid <=  V_StopLossPips)  { CloseAllOrders(MagicNumber); Print (" Buy закрываем по сл, V_StopLossPips = ", V_StopLossPips); }             
          if (OrderType()== OP_SELL && Ask >=  V_StopLossPips)  { CloseAllOrders(MagicNumber); Print (" Sell закрываем по сл, V_StopLossPips = ", V_StopLossPips);}  
        }         
        
        // Проверка закрытия открытой позиции (ордера) по тейку        
        if ( V_TakeProfitPips != 0 && MathAbs(orderProfit) > MathAbs (Sum_Loss))
        {
          if (OrderType() == OP_BUY && Bid >=  V_TakeProfitPips)  { CloseAllOrders(MagicNumber); Print ("Buy закрываем по ТР, V_TakeProfitPips = ", V_TakeProfitPips); }             
          if (OrderType()== OP_SELL && Ask <=  V_TakeProfitPips)  { CloseAllOrders(MagicNumber); Print ("Sell закрываем по ТР,V_TakeProfitPips = ", V_TakeProfitPips); }  
        }        
      
      
      // Если тралить, то с соответствующего номера итерации при выполнении НЕОБХОДИМОГО УСЛОВИЯ соответствующим 
      // выбранному видом трала      
      
      if (UseTrailing==1) if ((Iteration >= k)&& (MathAbs(orderProfit) > (MathAbs (Sum_Loss))))
         switch(type)
          {
           case 0:  // простой трал по аналогии учебнику - в зависимости от параметра trlinloss (тралить ли в зоне лоссов)
                   if (orderType == OP_BUY)  SampleTrailing_texbook (0, V_StopLossPips, V_TakeProfitPips); // если бай
                   if (orderType == OP_SELL) SampleTrailing_texbook (1, V_StopLossPips, V_TakeProfitPips); // если селл
                   break;
           //трал по фракталам + отступ (Indent)
           case 1: TrailingByFractals_LAVINA(ticket,s_signal_period,Sum_Loss,Lots_New,V_StopLossPips,trlinloss); break; 
            //трал по теням N свечей + отступ (Indent)       
           case 2: TrailingByShadows  (ticket,s_signal_period,Sum_Loss,Lots_New,V_StopLossPips,trlinloss);  break;   
          }           
       
   //-----------------------------------ВЫВОДИМ ТЕКУЩУЮ ИНФОРМАЦИЮ О ТОРГАХ НА ЭКРАН------------------------------------------------------------ 
     
      string messageLoss = "";
      if (orderProfit < 0.0)  messageLoss = "Просадка = " + DoubleToStr(loss, 1) + "% (макс. " + MaxLoss + "%)";
   
      // Вывод текущего состояния
      Comment("Прибыль = ", DoubleToStr(orderProfit, 1), " (лот ", orderLots, ")  ", messageLoss, " Iteration= ", Iteration, "  Sum_Loss = ", MathAbs (Sum_Loss), " Ширина канала = ", StopLossPips, " TakeProfitPips  = ",TakeProfitPips,  " V_TakeProfitPips = ", V_TakeProfitPips, "  V_StopLossPips = ",  V_StopLossPips, " channel  = ", channel);      
      return (0);
   }
   
   Comment ("");   
...
 
7Konstantin7:

No he llevado la cuenta de todo eso, pero de una cosa estoy seguro, no importa el tipo de pammers no tiene sentido invertir en ningún sitio, de todas formas, no saldrá nada bueno) el mercado es malo)


¡¡¡¡No me digas, Kostyan - Paukas, IMHO - reglas!!!!

Le cobraré la pasta muy pronto...

 
Roman.:

Añade a tu búho - Lo he organizado de esta manera:

Gracias, pero tengo semidescompilado, lo que sea) ya se me ocurrirá algo.

cuando tengo un movimiento fuerte (ya sucedió), el precio va más allá del SL o TP y nada lo modifica

he probado esto a principios de este año y todavía estoy usando min lotes

Hasta ahora 2 días de trabajo

 
Roman.:

¡¡¡¡No me digas, Kostyan - Paukas, IMHO - reglas!!!!

Le cobraré la pasta muy pronto...

Aha vio) Bueno, puede ser, es que para conseguir algo hay que invertir un poco, y si se invierte mucha pasta, lo mismo da miedo) sobre todo si hubo malas inversiones, ya que no es muy divertido confiar.

 
7Konstantin7:

Hola a todos)

Los compañeros aconsejan, buscaron durante horas todo en vano, el mar similar, pero todo no que(

¿Tienes un asesor experto? No sé si existe un EA que siga cada orden por separado para todos los pares.


Mira esto, https://www.mql5.com/ru/code/10914, para que funcione para todos los pares hay que eliminar líneas
if(OrderSymbol()==Symbol())