Mercado: sem operações comerciais - página 5

 
Alexey Viktorov:

Eu perdi ou ninguém especificou o que você quer dizer com EA em várias moedas?

É possível chamar um EA que só pode negociar no par de moedas que é colocado em múltiplas moedas, mesmo que possa negociar em pares diferentes?

Como podemos falar de multimoedas no testador MT4?

Bem, eu tenho uma EA com várias moedas que é colocada em um gráfico e comercializa vários símbolos, o código é o mesmo para ambas as plataformas. Mas se eu executar no testador mt4, ele troca um par e se eu executar on-line, ele troca todos os pares. As condições estão escritas ali.

 
Vitaly Muzichenko:

Bem, minha multimoeda é a coisa que é colocada em um gráfico e comercializa vários símbolos, o código é o mesmo para ambas as plataformas. Mas se você o executa no testador mt4, ele negocia um par, e se você o executa on-line, ele negocia todos os pares. As condições são prescritas ali.


Portanto, não deve haver problemas com isso.

Não tenho nenhum problema com isso, é a mesma multimoeda, ela passa no teste.

E nenhuma atividade comercial pode estar no humor do testador :-) - Não sei se ele está de bom humor (ou seja, refrescante, dormindo, tendo um dia de folga) e nenhuma operação.

Basta tentar um spread diferente ou esperar um dia e tudo volta a saltar no clima.

 
Vladislav Andruschenko:


Bem, então não deve haver problema com isso.

a mesma multimoeda, passa no teste.

E nenhuma operação comercial pode ser do humor do testador :-) - Não sei se ele está de mau humor (isto é, refrescante, dormindo, tendo um dia de folga) e não faz nenhuma troca.

Eu tento outra propagação ou esperar um dia e isso salta tudo de novo no clima.

Fazendo minha 10ª tentativa, reduzindo os cheques no código. Até agora sem resultados, é claro que há muitos controles - acho que os desabilitei todos

 
Vitaly Muzichenko:

Esta é a 10ª tentativa, reduzindo as verificações no código. Até agora, sem resultados, é claro que há muitos cheques - acho que os desliguei todos

Você já tentou mudar o spread e o par?

cheques do artigo no site?
 
Vladislav Andruschenko:

Você já tentou mudar o spread e o par?

Como posso verificar os cheques do artigo no site?

Até agora, nada mais, prescrevi o lote diretamente na OrderSend(...)

Farei um arquivo separado com funcionalidade mínima e tentarei adicioná-lo, assim encontrarei a área problemática, caso contrário quebrarei uma EA funcional cortando peças)

 
Vitaly Muzichenko:

Por enquanto é tudo, nada funcionou, escrevi o lote diretamente na OrderSend(...)

Farei um arquivo separado com funcionalidade mínima e tentarei adicioná-lo, assim encontrarei a área problemática, caso contrário quebrarei uma EA funcional cortando peças)

Aqui. Aqui. Eu já fiz a mesma coisa antes. Cortar peças. Quebrei-o e esqueci o que tinha feito. E acabou se revelando que o testador não estava com disposição. )))
 
Vitaly Muzichenko:

Bem, minha multimoeda é a coisa que é colocada em um gráfico e comercializa vários símbolos, o código é o mesmo para ambas as plataformas. Mas se você o executa no testador mt4, ele negocia um par, e se você o executa on-line, ele negocia todos os pares. As condições são prescritas ali.

Eu estava perguntando sobre a EA do Maxim.

Penso que, num futuro próximo, esta pergunta deve ser feita sempre que houver a palavra "multimoeda". Porque muitas pessoas acham que a EA com múltiplas moedas pode ser colocada em qualquer par de moedas e ela será negociada...

 
Evgeny Belyaev:

Se o lote for menor do que o mínimo permitido, então nós igualaremos o lote ao mínimo permitido. Respectivamente, se for maior, a EA negociará com um lote maior.

Não são necessárias verificações de testadores.

E não se esqueça de todas as outras verificações. Margem, normalização...

Vitaliy apontou seu erro há muito tempo, mas em vez de encontrar o erro, você está apenas discutindo.

Se você pegar a simples EA na abertura da posição, ela pode dar um tapa em cada tic-tac. Você não precisa de nenhuma outra lógica comercial. Verifique todas as suas funções de verificação. Se ele passar a verificação, tudo está bem, se falhar, verifique cada linha de código. Deve ser entendido que o validador pode definir qualquer lote nas configurações como 0 ou negativo, neste caso, se houver margem suficiente, o bot deve realizar operações durante os testes.

PS É aconselhável verificar no servidor MQ, já que o validador verifica nesse servidor.
bool CheckVolumeValue(double volume)
{
   double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);
   if(volume<min_volume)
   {
      Print("Volume is less than the minimum");
      return(false);
   }

   double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX);
   if(volume>max_volume)
   {
      Print("Volume is greater than the maximum");
      return(false);
   }

   double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);

   int ratio=(int)MathRound(volume/volume_step);
   if(MathAbs(ratio*volume_step-volume)>0.0000001)
   {
      Print("Wrong lot size");
      return(false);
   }
     
   if(volume*MarketInfo(Symbol(),MODE_MARGINREQUIRED)>AccountEquity())
   {
      Print("Trade stop is not enough free margin to begin");
      Comment("Trade stop is not enough free margin to begin");
      return(false);
   }
   if(volume<MarketInfo(Symbol(),MODE_MINLOT))
   {
      Print("Trade stop invalid lot size");
      Comment("Trade stop invalid lot size"); 
      return(false);
   }
   return(true);
}
if(!CheckVolumeValue(lt))return;   
   if(!OrderSend(Symbol(),cmd,NormalizeDouble(lt,2),NormalizeDouble(priceStep,Digits()),Slippage,0,0,"",magic,0))

Você provavelmente não notou, eu costumava mostrar o validador - não passou no teste...

adicionado

 if(IsTesting())lоt=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);

Entendi:

Testes automatizados de produtos concluídos com sucesso:

O teste de versão foi aprovado com sucesso. Agora você pode submetê-lo para verificação do moderador.

Então, do que você estava falando?

 
Alexey Viktorov:

Eu estava perguntando sobre a EA do Maxim.

Penso que, num futuro próximo, esta pergunta deve ser feita sempre que houver a palavra "multimoeda". Porque muitas pessoas acham que a EA com múltiplas moedas pode ser colocada em qualquer par de moedas e será negociada...

Eu tenho um netizen, nunca uma multimoeda, eu não escrevi tal coisa...

 
Maksim Neimerik:

Sou um netista, nunca um mumtivista, não escrevi tal coisa...

Isso é ótimo. Eu também não li isso. Então é uma trama imperialista))))