Mira cómo descargar robots gratis
¡Búscanos en Telegram!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Librerías

Maximum Percentage of Equity Risk - librería para MetaTrader 5

Visualizaciones:
1203
Ranking:
(34)
Publicado:
2015.03.09 12:59
Actualizado:
2016.11.22 07:33
RPTrade.mqh (2.63 KB) ver
MQL5 Freelance ¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

Este código permite establecer el porcentaje máximo del riesgo de la equidad.

El código comprueba si los lotes de compra/venta solicitados se ajustan al riesgo. Si no es así, los lotes se corrigen automáticamente de tal manera que se queden ajustados al riesgo establecido.

Código:

bool UseMaximumPercentageRisk=true;
double MaximumPercentageRisk=25;

#include <Trade\SymbolInfo.mqh>
//+------------------------------------------------------------------+
//|  GetLotSize RPTrade                                              |
//+------------------------------------------------------------------+
double GetLotSize(double lotsize)
  {
//--- Gets pair specs  
   CSymbolInfo symInfo;
   int  digits_bn=symInfo.Digits();
   double  points_bn=symInfo.Point();
   string symbol_bn=_Symbol;
//--- adjust lot 
   int tmpdecimal=1;
   double old_lot=lotsize;
//---
   if((NormalizeDouble(AccountInfoDouble(ACCOUNT_FREEMARGIN)*(MaximumPercentageRisk/100)/1000.0,tmpdecimal)<lotsize) && UseMaximumPercentageRisk) //¿se ajusta el lote al riesgo?
     {
      lotsize=NormalizeDouble(AccountInfoDouble(ACCOUNT_FREEMARGIN)*(MaximumPercentageRisk/100)/1000.0,tmpdecimal);  //calcular nuevo tamaño del lote 

      if(lotsize<SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_MIN)) //¿se ajusta el tamaño del lote al tamaño mínimo del lote del broker?
        {
         lotsize=SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_MIN);   //¡No! Ajuste del tamaño del lote al tamaño mínimo del lote del broker
         Print(_Symbol," Lot adjusted from ",old_lot," para reducir el tamaño permitido por el servidor ",lotsize);
        }
      else
        {
         Print(_Symbol," Lot adjusted from ",old_lot," to ",lotsize," para la correspondencia a la condición del riesgo máximo. En cada operación se puede arriesgar sólo con ",MaximumPercentageRisk,"% del margen libre.");   //Да! 
         if(MathAbs(lotsize/SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_STEP)-MathRound(lotsize/SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_STEP)))>1.0E-10) //¿se ajusta el tamaño del lote al paso permitido por el broker?
           {
            lotsize=SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_STEP)*NormalizeDouble(lotsize/SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_STEP),0);   //¡NO! Recalcular el tamaño del lote.    
            Print("M-",_Symbol," Warning: Your calculated percentage at risk lot size of was not a multiple of minimal step",SymbolInfoDouble(symbol_bn,SYMBOL_VOLUME_STEP),". El tamaño del lote se ha cambiado a",lotsize);
           }
        }
     }
   return(lotsize);
  }

Traducción del inglés realizada por MetaQuotes Ltd.
Artículo original: https://www.mql5.com/en/code/2142

MultiBlauSMStochasticx7Signal MultiBlauSMStochasticx7Signal

El indicador MultiBlauSMStochasticx7Signal muestra la información sobre las tendencias actuales usando los valores de siete indicadores BlauSMStochastic de diferentes marcos temporales.

BackgroundCandle_BlauSMStochastic_HTF BackgroundCandle_BlauSMStochastic_HTF

El indicador dibuja las velas del período de tiempo mayor como rectángulos coloreados de acuerdo con la dirección del histograma del indicador BlauSMStochastic.

BackgroundCandle_T3_TRIX_HTF BackgroundCandle_T3_TRIX_HTF

El indicador dibuja las velas del período de tiempo mayor con rectángulos coloreados. Los rectángulos se rellenan de color de acuerdo con la dirección del histograma del indicador T3_TRIX.

Change Chart and Timeframe Change Chart and Timeframe

Se trata de los scripts modificados para el cambio rápido de los gráficos y períodos de tiempo en todos los gráficos mediante las teclas aceleradoras.