Contador de Gain

 
Boa noite, estou com dificuldade pra criar um simples contador de gains, toda vez que a operação terminasse no takeprofit, adicionaria 1 na interger gains por exemplo.  
 
até onde chegou?
 
Eduardo Oliveira:
até onde chegou?
Não estou encontrando na documentação uma função que retorne o resultado financeiro do último negócio, então não consegui nem iniciar.
 
Romeu Masselai:
Não estou encontrando na documentação uma função que retorne o resultado financeiro do último negócio, então não consegui nem iniciar.

E não existe. Olhe o histórico e ou use a função OnTradeTransaction

 

Dá para mapear pelo OnTradeTransaction o tipo da operação. (TP ou SL) e aí utilizar para contabilizar as operações.


Importante nesse caso ter um controle de zeragem por dia, para não travar o seu setup

 
Meu 1º EA, problemas horário, estratégia
Meu 1º EA, problemas horário, estratégia
  • 2021.04.20
  • www.mql5.com
Olá amigos, estou com dificuldades no meu 1º EA, com a estratégia que compra a mercado quando a mínima anterior cruzou a bollinger inferior tendo t...
 
Romeu Masselai:
Não estou encontrando na documentação uma função que retorne o resultado financeiro do último negócio, então não consegui nem iniciar.

Seleciona a ordem e depois de seleciona use o HistoryDealGetDouble e lá vai ter a opção de profit, vc só vai ter que ver se é o ultimo ou não, mas aí é com vc

 
Romeu Masselai:
Boa noite, estou com dificuldade pra criar um simples contador de gains, toda vez que a operação terminasse no takeprofit, adicionaria 1 na interger gains por exemplo.  

Boa Tarde,

Não sei se é isso que você procura mas, através do ENUM_DEAL_REASON você consegue buscar  no histórico o acionamento de SL ou TP , sendo assim você consegue mensurar  dentro de um período de tempo a quantidade de takeprofit acionados  e Stops

tipo assim:

long reason                = (ENUM_DEAL_REASON)HistoryDealGetInteger(Variavel_Ticket,DEAL_REASON);

double Profit         = HistoryDealGetDouble(Variavel_Ticket,DEAL_PROFIT);

ai com o uso de if se o enum reason for igual a DEAL_REASON_TP você pode colocar um contador  ++takeprofit


Espero ter ajudado...

Razão: