[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 590

 
alsu:

nada de mais.

Tente cometer /* */ código do simples Expert Advisor e substitua Total por Order_total - a variável que nós mesmos declaramos.

Comentei //Order accounting, substituí Total por orders_total - os pedidos não foram colocados de forma alguma.

P. S. Podemos abrir pedidos a um preço Stop no MetaTrader?

Podemos mudar o tipo de ordem na condição ou a própria condição (eu já tentei perguntar e licitar)?

   if (High[0] >= BT)                       // Если разница между
     {                                          // 
      Opn_B=true;                               // Критерий откр. Buy
      Cls_S=true;                               // Критерий закр. Sell
     }
   if (Low[0] <= ST)                       // Если разница между
     {                                          // 
      Opn_S=true;                               // Критерий откр. Sell
      Cls_B=true;                               // Критерий закр. Buy
     }
 
Craft:

Comentei // Contagem de pedidos, Total substituído por pedidos_total - os pedidos não são mais colocados de forma alguma.

P. S. Podemos abrir pedidos a um preço Stop no MetaTrader?

Posso mudar o tipo de pedido na condição ou a própria condição (eu já tentei Ask and Bid)?

Estou começando a ficar confuso. você pode postar o código EA inteiro?
 

Não há problema.

Observe que este código foi criado para fins de treinamento e você não deve procurar por lógica prática nesta forma.

Arquivos anexados:
12.mq4  14 kb
 

na linha

BT = Open[0] + Open[0]*iMAOnArray(MyATR[i],0,PerB,0,MODE_SMA,0);

índice [i] é redundante. Após a edição:


Arquivos anexados:
test.mq4  14 kb
 
alsu: Após a edição:


Como os pedidos são fechados antes da abertura de novos pedidos neste tick, a história dos pedidos fechados também deve ser analisada.

corrigido no anexo. Agora é lindo:)

Arquivos anexados:
test_1.mq4  14 kb
 

Por interesse, testei o teste_1 de 1 a 28 de maio deste ano e quero dizer que sem lógica, este especialista tem um desempenho muito melhor do que muitos especialistas que têm muita lógica =)))


 

Ajude-me a resolver um problema

Eu seleciono por todas as posições fechadas

para (int i=0; i<OrdersHistoryTotal(); i++)// em todas as ordens do terminal
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)===verdadeiro)

depois filtrar por número mágico

se (OrderMagicNumber()==12)

o filtro corresponde a 3 posições, mas só preciso da última fechada

Não consegue descobrir como deixar apenas o último?

Obrigado

 
Noterday:

Por interesse, testei o teste_1 de 1 a 28 de maio deste ano e quero dizer que sem lógica, este especialista tem um desempenho muito melhor do que muitos especialistas que têm YUMA de lógica =)))

)))) Obrigado Noterday.

Agradecimentos especiais, alsu.

 

Alguém já usou o Gannzilla?

Qual tem sido a taxa de sucesso?

 
alsu:

Uma vez que neste tique as ordens são fechadas antes que as novas sejam abertas, devemos também analisar a história das ordens fechadas.

corrigido em anexo. Isso é uma beleza:)

Há ainda mais uma questão, existem áreas onde apenas o fechamento de uma posição ocorre, não a inversão, embora as condições para uma parada e a abertura de uma nova posição sejam as mesmas.