Abrir nova posição apenas num novo Candle

tito.vinicius
265
tito.vinicius  

Fala pessoal;

Gostaria de uma ajuda. Como faço para abrir uma nova posição apenas quando um novo candle se formar?

O meu EA da um sinal de compra ou venda, atinge meu alvo mas continua abrindo a posição no mesmo candle por causa do sinal.

Obrigado desde já.




Rogerio Figurelli
Moderador
61097
Rogerio Figurelli  
tito.vinicius:

Fala pessoal;

Gostaria de uma ajuda. Como faço para abrir uma nova posição apenas quando um novo candle se formar?

O meu EA da um sinal de compra ou venda, atinge meu alvo mas continua abrindo a posição no mesmo candle por causa do sinal.

Obrigado desde já.




Olá  tito.vinicius, essa é uma das perguntas clássicas desse fórum, e ler o artigo abaixo é minha recomendação para encontrares a melhor solução para isso.

https://www.mql5.com/pt/articles/159

Sds.,
Rogério Figurelli

Handler de evento "nova barra"
Handler de evento "nova barra"
  • www.mql5.com
Os autores dos indicadores e especialistas sempre estiveram interessados em escrever o código compacto em termos de tempo de execução. Você pode resolver este problema a partir de diferentes ângulos. A partir deste amplo tópico neste artigo, cobriremos o problema, que aparentemente foi solucionado: verifique por uma nova barra. Este é um meio...
tito.vinicius
265
tito.vinicius  
Rogerio Figurelli:

Olá  tito.vinicius, essa é uma das perguntas clássicas desse fórum, e ler o artigo abaixo é minha recomendação para encontrares a melhor solução para isso.

https://www.mql5.com/pt/articles/159

Sds.,
Rogério Figurelli

Coloquei no meu código e ainda está comprando várias vezes.

Será que estou fazendo algo errado?

  if((WorkingHour() && !current_chart.isNewBar(new_time)) && ma34[2] < ma20[2] && currentMA34 > currentMA20)
     {OrderEntry(0);}

   if((WorkingHour() && !current_chart.isNewBar(new_time)) && ma34[2] > ma17[2] && currentMA34 < currentMA17)
     {OrderEntry(1);}
Rogerio Figurelli
Moderador
61097
Rogerio Figurelli  
tito.vinicius:

Coloquei no meu código e ainda está comprando várias vezes.

Será que estou fazendo algo errado?

Olá  tito.vinicius, examinando seu código e o retorno do método isNewBar() no referido documento, me parece que você está com a lógica invertida.

Ou seja, ao invés de ...

!current_chart.isNewBar(new_time)

deveria ser ...

current_chart.isNewBar(new_time)

ou ainda (conforme o método usado, retornando um inteiro ao invés de um booleano) ...

current_chart.isNewBar()>0


Sds.,
Rogério Figurelli

Edilson Domingos
3763
Edilson Domingos  
tito.vinicius:

Fala pessoal;

Gostaria de uma ajuda. Como faço para abrir uma nova posição apenas quando um novo candle se formar?

O meu EA da um sinal de compra ou venda, atinge meu alvo mas continua abrindo a posição no mesmo candle por causa do sinal.

Obrigado desde já.




cara vc pode pegar o preço do candle e comparar quando o preço for diferente, ou pegar o índice do candle e comparar quando o índice for diferente, existem várias formas
Rogerio Figurelli
Moderador
61097
Rogerio Figurelli  
Edilson Domingos:
cara vc pode pegar o preço do candle e comparar quando o preço for diferente, ou pegar o índice do candle e comparar quando o índice for diferente, existem várias formas

Olá  Edilson Domingos, pela sua lógica, o que garante que o preço do novo candle irá ser diferente?
Sds.,
Rogério Figurelli

Edilson Domingos
3763
Edilson Domingos  
Rogerio Figurelli:

Olá  Edilson Domingos, pela sua lógica, o que garante que o preço do novo candle irá ser diferente?
Sds.,
Rogério Figurelli

O tempo dele, obter o time do candle
AzATantra 2015
18
AzATantra 2015  

Hi, I know it's an old post, but if someone shows up here, I leave the simple method I use for this problem.

I don't like to complicate things too much.

iBars

iBars

Returns the number of bars on the specified chart.

If the number of bars has increased, then you have changed bars. Timeframe independent.

lol

Strong hug

Rogerio Giannetti Torres
3848
Rogerio Giannetti Torres  
AzATantra 2015:

Hi, I know it's an old post, but if someone shows up here, I leave the simple method I use for this problem.

I don't like to complicate things too much.

iBars

iBars

Returns the number of bars on the specified chart.

If the number of bars has increased, then you have changed bars. Timeframe independent.

lol

Strong hug

Olá, este fórum é em Português, por que está postando em Inglês?