Stop Móvel

 

Bom dia Pessoal,

 

 Estou com um EA que faz o mesmo trabalho que o Trailing Stop só que com ordens agendadas.

Ele modificando o Stop móvel normalmente, mas o problema é que: suponhamos que foi executada uma ordem agendada de compra, se sobe 10 pips o stop móvel acompanha os 10 pips positivos do preço da ordem, até aí perfeito o problema é que se o preço começa a cair o stop móvel começa a voltar 10 pips negativos ao inves de se manter.

 Alguém sabe qual função eu posso usar pra travar o stop pra ele nao voltar?

 

Atte,

 

Lorran. 

 
lorran.dba:

Bom dia Pessoal,

 

 Estou com um EA que faz o mesmo trabalho que o Trailing Stop só que com ordens agendadas.

Ele modificando o Stop móvel normalmente, mas o problema é que: suponhamos que foi executada uma ordem agendada de compra, se sobe 10 pips o stop móvel acompanha os 10 pips positivos do preço da ordem, até aí perfeito o problema é que se o preço começa a cair o stop móvel começa a voltar 10 pips negativos ao inves de se manter.

 Alguém sabe qual função eu posso usar pra travar o stop pra ele nao voltar?

 

Atte,

 

Lorran. 

Lorran, basta você diferenciar por meio de um condicional uma situação da outra.

Se o preço sobe, o stop se move. Caso contrário, não faça nada.

Você provavelmente precisaria diferenciar se a ordem é um BUY ou SELL, para ai ver qual o comportamento desejado para cada situação.
 
bremora10:
Lorran, basta você diferenciar por meio de um condicional uma situação da outra.

Se o preço sobe, o stop se move. Caso contrário, não faça nada.

Você provavelmente precisaria diferenciar se a ordem é um BUY ou SELL, para ai ver qual o comportamento desejado para cada situação.

Eu tava pensando nessa condicional:

 

if(MarketInfo(Symbol(),MODE_BID)>Bid)
{
ordermodify ...;
}

 Mas nao sei se funcionaria pois eu teria que pegar o preço atual e verificar se ele é maior que o preço anterior.Caso sim ele modifica a ordem.Caso nao ele volta para o loop.

 
lorran.dba:

Eu tava pensando nessa condicional:

 

 Mas nao sei se funcionaria pois eu teria que pegar o preço atual e verificar se ele é maior que o preço anterior.Caso sim ele modifica a ordem.Caso nao ele volta para o loop.

Pode ser até mais simples: obtenha o preço de execução da ordem e o tipo de ordem, dai compare o atual bid/ask com ela. 

Entretanto, pessoalmente conheço pouco de MT4. Estava lhe respondendo levando em conta o MT5.