Bibliotecas: Percentual máximo de Risco de Capital

 

Percentual máximo de Risco de Capital:

Este código permite que você defina um percentual máximo de risco de capital.

Autor: Remi PASSANELLO

 
Por favor, não tem a versão MQL4?
 
Roszey:
Por favor, não tem a versão MQL4?
bool UseMaximumPercentageatRisk = true;
double MaximumPercentageatRisk =1;
bool IsMicroAccount = true ; //for accounts allowing 0.01 lots
double GetLots(double lotsize_bn)
  {

   int tmpdecimal=1;
   if(IsMicroAccount)
     {
      tmpdecimal=2;
     }
   double old_lot=lotsize_bn;
   if((NormalizeDouble(AccountFreeMargin()*(MaximumPercentageatRisk/100)/1000.0,tmpdecimal)<lotsize_bn) && UseMaximumPercentageatRisk)
     {
      lotsize_bn=NormalizeDouble(AccountFreeMargin()*(MaximumPercentageatRisk/100)/1000.0,tmpdecimal);
      if(lotsize_bn<MarketInfo(Symbol(),MODE_MINLOT))
        {
         lotsize_bn=MarketInfo(Symbol(),MODE_MINLOT);
         Print("RPTrade-Lot adjusted from ",old_lot," to minimum size allowed by the server of ",lotsize_bn," but it DOES NOT comply with Maximum Risk condition. User interaction is required!");
        }
      else
        {
         Print("RPTrade-Lot adjusted from ",old_lot," to ",lotsize_bn," to comply with Maximum Risk condition. Each trade can risk only ",MaximumPercentageatRisk,"% of free margin.");
        }
     }
   return (lotsize_bn);
  }

Deveria ser algo assim ;-)

R.

 
Você pode me dizer como anexá-lo ao EA?
 

I was looking at your code in MQL5 for "Maximum Percentage of Equity Risk". 
I have some doubts regarding to how to use it. I have the mqh file in the include file and use #include <RPTrade.mqh> at the expert that I want to use. 
Can you elaborate more on how to use this code in a expert advisor please? I'm new to coding. I have made expert advisors, but I don't know how to call a class or function in another file.

Preciso chamar a função GetLots (lotsize), certo? E em minha solicitação de pedido preciso usar o valor "lotsize" para os lotes?

Muito obrigado!

 
patagonia2015:

Olá, Patagônia2015,

Primeiro, você deve adicionar as duas entradas ao seu EA:

bool 	 UseMaximumPercentageRisk=true;
double 	 MaximumPercentageRisk=25;

Em seguida, você deve chamar a função GetLots() e definir o tamanho do lote que deseja entre parênteses, por exemplo, call:

double  MyLotSize;
MyLotSize = GetLots (100);

E, de acordo com o que você inseriu como MaximumPercentageRisk e o patrimônio líquido da sua conta, você obterá o tamanho correto.

Por exemplo, se MaximumPercentageRisk = 1; e seu patrimônio líquido = US$ 1.000,00, a função retornará 0,01 lote.

Negocie com baixo risco, pois os mercados são realmente selvagens ;-)

 

Olá, obrigado por compartilhar essas informações.

Sou novato, mas gostaria de ter uma maneira de ser consistente com o tamanho do meu lote e gostaria de saber como posso usar seu código para fazer isso?

Desde já, obrigado

 
Remi Passanello patrimônio líquido da sua conta, você obterá o tamanho correto.

Por exemplo, se MaximumPercentageRisk = 1; e seu patrimônio líquido = 1000$, a função retornará 0,01 lote.

Negocie com baixo risco, pois os mercados são realmente selvagens ;-)

Desculpe, você me confundiu quando disse"you must call the function GetLots() and set the lotsize you wish into the brackets" (você deve chamar a função GetLots() e definir o tamanho do lote que deseja entre parênteses)

Pensei que o objetivo era obter os lotes apropriados com base no risco escolhido e no saldo atual da conta.

Agradecemos que você esclareça melhor. Obrigado.
 
Muhammad Shamsuddeen Muhammad #:
Desculpe, mas você me confundiu quando disse"você deve chamar a função GetLots() e definir o tamanho do lote desejado entre parênteses"

Pensei que o objetivo era obter os lotes apropriados com base no risco escolhido e no saldo atual da conta.

Agradeceria muito se houvesse um pouco de clareza. Obrigado
Eu estava pensando exatamente no mesmo