Saber valor atual do Stop Loss

 

Olá pessoal, tudo bem?

Tenho um EA que dispara as ordens de compra (buy) e stop loss quando inicia um novo candle (baseado no fechamento do ultimo candle), até aí tudo bem.

Só que quando na formação deste novo candle o valor atual de mercado tocar primeiro a linha do stop loss (ou seja, indo em direção contrária do que tinha montado minhas ordens) gostaria que ambas ordens (de compra e stop loss fossem removidas).

Obs: Como remover as duas ordens eu já sei, só quero ler o valor atual do stop loss para que eu compare com o valor de mercado (em tempo real) e dispare a função de cancelamento das ordens, fui claro?

Mais uma vez, gostaria de saber o valor do stop loss atual do trade.

Procurei muito e acho que por ser muito simples a informação talvez seja mais escondida... kkkk


Obrigado!!

 
jcortezf:

Olá pessoal, tudo bem?

Tenho um EA que dispara as ordens de compra (buy) e stop loss quando inicia um novo candle (baseado no fechamento do ultimo candle), até aí tudo bem.

Só que quando na formação deste novo candle o valor atual de mercado tocar primeiro a linha do stop loss (ou seja, indo em direção contrária do que tinha montado minhas ordens) gostaria que ambas ordens (de compra e stop loss fossem removidas).

Obs: Como remover as duas ordens eu já sei, só quero ler o valor atual do stop loss para que eu compare com o valor de mercado (em tempo real) e dispare a função de cancelamento das ordens, fui claro?

Mais uma vez, gostaria de saber o valor do stop loss atual do trade.

Procurei muito e acho que por ser muito simples a informação talvez seja mais escondida... kkkk


Obrigado!!


Olá Cortez,

é preciso esclarecer o seguinte:  O STOP-LOSS e o TAKE-PROFIT não são objetos e sim dados dos objetos posição/ordem.  Sei que você já tem um código, mas assim mesmo segue um código para obter os dados STOP_LOSS e TAKE_PROFIT do objeto da classe CPositionInfo.

Também é preciso esclarecer que existe  a possibilidade de você obter Hline(s) do STOP-LOSS / TAKE-PROFIT mas não vou atrás.


#include <trade\trade.mqh>
CPositionInfo     m_positioninfo;


   for(l=0;l<PositionsTotal();l++)
     {
      if(m_positioninfo.SelectByIndex(l)==false) break;
      double sl=m_positioninfo.StopLoss();
      double tp=m_positioninfo.TakeProfit();
...
...
...
     }
Razão: