Ajuda Codigo /help

 

Tenho um EA para OB onde ele abre ordem apos o preço bater em determinado regiao no indicador (TS_VALUECHART) ele abre uma ordem imediatamente para expiração que eu determinei.

Porem quero mudar ele, para abrir a ordem somente proxima Vela.  ou seja, a condição bateu, ele espera a vela fechar, ai abre a ordem.

 

(Se minha condição bate-se, ele ja abria a ordem.) (If my condition knocks, he would open the order.)


   if(tsVal<=VCOverSold && trade==1){

   int send = OrderSend(_Symbol,OP_SELL,lot,Ask,slippage,0,0,expirycmd,MagicNumber);

   trade=0;



 I have an EA for OB where it opens order after the price hits in certain region on the indicator (TS_VALUECHART) it opens an order immediately for expiration that I have determined.

But I want to change it, to open the order only next Sailing. that is, the condition hit, he waits for the candle to close, then the order opens.

 
Julio Silva:

Tenho um EA para OB onde ele abre ordem apos o preço bater em determinado regiao no indicador (TS_VALUECHART) ele abre uma ordem imediatamente para expiração que eu determinei.

Porem quero mudar ele, para abrir a ordem somente proxima Vela.  ou seja, a condição bateu, ele espera a vela fechar, ai abre a ordem.

 

(Se minha condição bate-se, ele ja abria a ordem.) (If my condition knocks, he would open the order.)


   if(tsVal<=VCOverSold && trade==1){

   int send = OrderSend(_Symbol,OP_SELL,lot,Ask,slippage,0,0,expirycmd,MagicNumber);

   trade=0;



 I have an EA for OB where it opens order after the price hits in certain region on the indicator (TS_VALUECHART) it opens an order immediately for expiration that I have determined.

But I want to change it, to open the order only next Sailing. that is, the condition hit, he waits for the candle to close, then the order opens.

De duas, uma: ou tsVal NÃO é  <=VCOverSold ou trade NÃO é == 1... isto é um fato.

;)

 
Minions Labs:

De duas, uma: ou tsVal NÃO é  <=VCOverSold ou trade NÃO é == 1... isto é um fato.

;)

Ele abre ordem Normal. Esta correto codigo. Questao e que ele abre assim que da o sinal. Se a condição bater, ele abre a ordem imediatamente.

Mas eu quero é se a condição bater, ele abre a ordem no fechamento da vela, ou inicio da proximo vela. entendeu?

 
Julio Silva:

Ele abre ordem Normal. Esta correto codigo. Questao e que ele abre assim que da o sinal. Se a condição bater, ele abre a ordem imediatamente.

Mas eu quero é se a condição bater, ele abre a ordem no fechamento da vela, ou inicio da proximo vela. entendeu?

Você pode usar o iTime() para controlar a mudança de vela. Disparada a condição atual, guarde o iTime corrente, e coloque o disparo da ordem em mais um IF checando se o iTime mudou (ficou maior).
 

Crie uma função que faça executar o código do seu EA somente quando a barra fechar, assim ele não fica validando o mercado o tempo inteiro.

Você também pode usar o shift = 1 nos seus indicadores, para que eles validem somente o mercado no momento da barra anterior, que seria o mesmo efeito...

Razão: