VALIDAÇÃO AUTOMATICA (MARKET) - ERRO INCORRIGÍVEL ([Volume limit reached])

 

Srs,


Estou a uma semana tentando passar pela validação automática do MQL5 , quero postar um EA no mercado entretanto mesmo utilizando as funções para contornar a mensagem de erro não está sendo possível concluir a validação.


Alguma dica de como resolver o ERRO.


ERRO:

test on EURUSD,H1 (hedging)

 2020.04.02 14:00:00   failed instant sell 4 EURUSD at 1.09199 sl: 1.09799 tp: 1.08799 [Volume limit reached]

 2020.05.01 12:00:00   failed instant buy 4 EURUSD at 1.09762 sl: 1.09162 tp: 1.10162 [Volume limit reached]

strategy tester report 4 total trades


Funções utilizadas para contornar o erro no código em anexo. 


Arquivos anexados:
CODE.mq5  20 kb
 
Renan De Souza Quinelato:

...

Não posso afirmar com toda certeza, mas vc não deve especificar os ativos, uma vez que o teste é feito de forma aleatória.

tente não deixar assim, e sim de uma forma genérica.


 
Jonathan Pereira:

Não posso

Jonathan Pereira:

Não posso afirmar com toda certeza, mas vc não deve especificar os ativos, uma vez que o teste é feito de forma aleatória.

tente não deixar assim, e sim de uma forma genérica.


@Jonathan Pereira ,

Deu certo criei um manipulador para desconsiderar os ativos pré-fixados e a validação foi um sucesso, não tinha nada haver com as funções de gerenciamento de volume.

Minha solução

//--- MODIFICANDO INPUTS

   double saldoconta = AccountInfoDouble(ACCOUNT_BALANCE);

   PROFITPTS = 1;

   if((MODOINPUT == MANUAL && ENTRADA == estrategia2) || (MODOINPUT == MANUAL && ENTRADA == estrategia1))

     {

      LOTE = Lot;

      SL1 = STP_;

      TK1 = TP_;

      InpGatilhoTS_ = InpGatilhoTS ;

      InpDistanciaTS_ = InpDistanciaTS;

      InpStepTS_ = InpStepTS ;

      METAGAIN = MetaGain ;

      METAGAIN1 = MetaGain1;

      METAGAIN2 = MetaGain2;

      if(correlation == true)

        {

         Ativo2 = ATIVO2;

         Ativo3 = ATIVO3;

         Ativo4 = ATIVO4;

        }

      else

        {

         Ativo2 = NULL;

         Ativo3 = NULL;

         Ativo4 = NULL;

        }

     }