Trailing Stops e Trailing Profit - página 4

 

Sim, eu entendi. Não é possível comparar, pois a cnt terá valor como 3,2,1 enquanto o número do bilhete é algo diferente.

if(OrdersTotal()>0){

        for(cnt=OrdersTotal()-1;cnt>=0;cnt--){

        

        if(!OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)) continue;

        if(OrderSymbol() == Symbol() && OrderMagicNumber() ==  MagicNumber){



                sl     = OrderStopLoss(); // Stop Loss. 

                tStopLoss = NormalizeDouble(OrderStopLoss(), Digits); // Stop Loss. 

                Order Ticket=OrderTicket(); 

                

                if(OrderType()==OP_SLL){ 

                if( Order Ticket== Sell_Order_Ticket_1){ Do the Normal Trailing Stop}

                if( Order Ticket== Sell_Order_Ticket_2){ Do the Normal Trailing Stop}

                if( Order Ticket== Sell_Order_Ticket_3){ Don't move the Stop Loss} 

Posso comparar o Ticket Number desta forma?

Cumprimentos

 
Arav007:

Sim, eu entendi. Não é possível comparar, pois a cnt terá valor como 3,2,1 enquanto o número do bilhete é algo diferente.

Posso comparar o Ticket Number desta forma?

Cumprimentos

não
se seu pc tiver que reiniciar então o valor Sell_Order_Ticket_1 (2 e 3 também) é perdido

verificar preço de pedido aberto e lucro de pedido

 
deVries:

não
se seu PC tiver que reiniciar, então o valor Sell_Order_Ticket_1 (2 e 3 também) é perdido

verificar preço de pedido aberto e lucro de pedido


Não entendi porque o valor de Sell_Order_Ticket_1 será perdido após o reinício do Terminal?

É uma variável e não está sendo superada a menos que uma nova ordem de venda seja aberta.

Isto é o que eu entendo, mas há lógica por trás de seu comentário. Então, por favor, explique um pouco.

E eu olhei as funções OrderOpenPrice e OrderTakeProfit. O que fazer com elas?

 
Arav007:


Não entendi porque o valor de Sell_Order_Ticket_1 será perdido depois de reiniciar o Terminal?

É uma variável e não está sendo superada a menos que uma nova ordem de venda seja aberta.

Isto é o que eu entendo, mas há lógica por trás de seu comentário. Então, por favor, explique um pouco.

E eu olhei as funções OrderOpenPrice e OrderTakeProfit. O que fazer com elas?


Todas as variáveis são perdidas ao reiniciar o terminal.

Somente as Variáveis Globais do terminal do cliente podem ser recuperadas.

 
Arav007:


Não entendi porque o valor de Sell_Order_Ticket_1 será perdido após o reinício do Terminal?

É uma variável e não está sendo superada a menos que uma Nova Ordem de Venda esteja abrindo.

Isto é o que eu entendo, mas há lógica por trás de seu comentário. Então, por favor, explique um pouco.

E eu olhei as funções OrderOpenPrice e OrderTakeProfit. O que fazer com elas?


faça mais alguns testes criando seus arquivos

abrir as 3 negociações

anote os números que você recebe

então feche seu metatrader4 e reinicie-o novamente verifique o valor de Sell_Order_Ticket_1, Sell_Order_Ticket_2 e Sell_Order_Ticket_3

eles são os mesmos ?? se não qual o valor que você recebe ??

 

OK, entendi. Esta informação sobre a 'Variável' também será útil para o futuro.

if(OrdersTotal()>0){

        for(cnt=3;cnt>0;cnt--){

        if(!OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)) continue;

        if(OrderSymbol() == Symbol() && OrderMagicNumber() ==  MagicNumber){



                sl     = OrderStopLoss(); // Stop Loss. 

                tStopLoss = NormalizeDouble(OrderStopLoss(), Digits); // Stop Loss. 

if(OrderType()==OP_BUY){ 

if (cnt==3) { Do the Normal Trailing Stop}

if (cnt==2) { Do the Normal Trailing Stop}

if (cnt==1) { Don't move the Stop Loss}

}

}

} 

E quanto a isto?

 
Arav007:

OK, entendi. Esta informação sobre a 'Variável' também será útil para o futuro.

E quanto a isto?


podemos olhar primeiro para o seu código de abertura de negócios novamente ??

verifique o stoploss e o takeprofit dessas profissões ainda há algo errado, você vê ??

 
deVries:


podemos olhar primeiro para seu código de abertura de negócios novamente ??

verifique o stoploss e o takeprofit desses ofícios ainda há algo errado, você vê ??


ohh, é para código errado. Depois de corrigir as falhas, a parte Take Profit é Fine Now, mas Stop Loss é o problema.

Lógica:

se (Fast_EMA>SMA_Slow_SMA)

{

if (MA_Difference_1>=Value_Diff && iOpenOrders_Buy ==0)

{

Compre

}

}

 
Arav007:


ohh, é para código errado. Depois de corrigir as falhas, a parte Take Profit é Fine Now, mas Stop Loss é o problema.

que stoploss você queria ?? para esses ofícios ??
 
deVries:
que stoploss você queria ?? para essas negociações ??


Como aqui para as negociações de USDJPY:

1º Comércio (aqui o último devido à disposição inversa do Tempo) tem TP= 103.636

TP do 2º Comércio = 103.736

3º Comércio TP= 108.536 [ Coloco este TP a tal distância, assim funcionará como se não existisse TP]

Agora, conforme minha exigência, quando o preço seria de 7 pip [103,603] em lucro, o Stop Loss de

O 1º e 2º comércio se tornarão, digamos, 1 pip de lucro [103.543] e o Stop Loss do 3º comércio permanecerá em 103.386.

Como aqui na imagem abaixo:

A 1ª ordem GBPUSD foi fechada a 10 pips de lucro.

A 2ª ordem ainda está funcionando e o SL foi movido.

Para a 3ª ordem o SL foi movido também, o que eu não quero.