Discussão do artigo "Controlando o declive da curva de equilíbrio durante o trabalho de um Expert Advisor"

 

Novo artigo Controlando o declive da curva de equilíbrio durante o trabalho de um Expert Advisor foi publicado:

Encontrar regras para um sistema de negócio e programá-las em um Expert Advisor é metade do trabalho. De alguma forma, você precisa corrigir a operação do Expert Advisor conforme ele acumular os resultados da negociação. Este artigo descreve uma das abordagens, que permite melhorar a performance de um Expert Advisor pela criação de um feedback que mede o declive da curva de equilíbrio.

Princípio de operação do sistema que controla o declive da curva de equilíbrio

Autor: Dmitriy Skub

 

Algo sobre as ilustrações.

Não há ilustrações, apenas legendas.

 
Uma abordagem muito boa, na minha opinião
 
Mas, ao testar, por algum motivo ele travou, como se estivesse pausado.
 
arbuz:
Mas, ao testar, por algum motivo ele trava, como se você tivesse pressionado pausar.
Desculpe, houve uma pequena imprecisão no algoritmo de classificação. A biblioteca corrigida aparecerá agora.
 

"Esse é um tipo de complemento sobre o MM (gerenciamento de dinheiro) do EA, impedindo-o de ter perdas significativas na conta."


Expressão:

"// Limite de lote a partir de baixo:

if( lots < min_trade_volume )
{
lots = min_trade_volume;
}"
pode permitir.

Veja, por exemplo, https://www.mql5.com/ru/forum/124281/page2#283533

Поясните, пожалуйста, как получается просадка - MQL4 форум
  • www.mql5.com
Поясните, пожалуйста, как получается просадка - MQL4 форум
 

Você leu o artigo com atenção?

Um dos requisitos para essa versão da biblioteca é que o tamanho de um lote de trabalho normal deve ser significativamente (2 a 3 vezes, pelo menos) maior do que o tamanho mínimo permitido

O trecho que você retirou do contexto geralmente se refere à normalização do lote de trabalho, para que você não receba um erro devido a um tamanho incorreto.

 

Talvez você queira ler o link.

É um erro comum.

 
Ais:

E um link para você ler seria útil.

Esse é um erro comum.

Você está confundindo gerenciamento de risco com simplesmente trazer o lote de trabalho para um valor normalizado. Se o MM exigir que o tamanho do lote atual seja significativamente menor do que o mínimo permitido, a posição não deve ser aberta. Mas o que isso tem a ver com a normalização? (pergunta retórica)
 

Aqui, estou postando-o com uma correção, enquanto a versão antiga está no artigo.


O artigo também foi atualizado.

Arquivos anexados:
 

Quando o volume de uma negociação é alterado, para "normalização" ou para outros fins, o valor total do risco é alterado.

Essa é a atitude.

Além disso, afirma-se: "Este método retorna o valor do lote mais próximo do fundo ".

E no caso de

"// Limite de lote de baixo para cima:
if( lots < min_trade_volume )
{
lots = min_trade_volume;
}"

o valor mais próximo do topo é retornado, e ele pode diferir muitas e muitas vezes...

Um exemplo de um cálculo mais simples e confiável do volume de negociação pode ser encontrado em https://www.mql5.com/en/forum/112782.

Em particular:

"if ( SizeLimit >= MinLots )
{ int Steps = MathFloor ( ( ( SizeLimit - MinLots ) / LotStep ) ;
LotSize = MinLots + Steps * LotStep ; }
else LotSize = 0 ;

if ( LotSize >= MaxLots )
LotSize = MaxLots ;
"

Não é necessário usar a função NormalizeDouble().

Esse método funciona para quaisquer valores de volume mínimo, etapa e casas decimais.

Espero que seu método finalizado e corrigido também funcione.

Calculation on Leverage & MM together in Expert Advisors. - MQL4 forum
  • www.mql5.com
Calculation on Leverage & MM together in Expert Advisors. - MQL4 forum