Ajuda na codificação - página 410

 

obrigado mladen. funciona perfeito. eu sou codificador agora!!!

 
sunshineh:
Como vejo que não há possibilidade real de desenhar um retângulo atrás de um botão e definir, que clicando no botão é o Evento e não o retângulo...

Mas eu tenho outra pergunta:

Como posso traçar uma linha horizontal com um comprimento definido? Eu tentei com OBJ_TREND, mas um dos lados da linha é infinito ou Zero. Portanto, não posso desenhar uma linha horizontal de Bid-10 a Bid+10.

Você agora é uma solução?

sunshineh

Coloque a propriedade RAY (OBJPROP_RAY) da linha de tendência em falso e então ela não se estenderá ao infinito

 

Olá a todos, se eu quiser atribuir um número mágico diferente para cada pedido que é aberto por uma EA, posso usar o seguinte :

número mágico externo int MagicNumber = 1000000;

if(Condições)

{

SendOrder(OP_BUY,MagicNumber);

MagicNumber = MagicNumber+1;

}

Prefiro usar o número mágico como um identificador, em vez de um comentário. O número é mais fácil de manipular do que as cordas imo...

Obrigado.

 
airquest:
Olá a todos, se eu quiser atribuir um número mágico diferente para cada pedido que é aberto por uma EA, posso usar o seguinte :

número interno externo MagicNumber = 1000000;

if(Condições)

{

SendOrder(OP_BUY,MagicNumber);

MagicNumber = MagicNumber+1;

}

Prefiro usar o número mágico como um identificador, em vez de um comentário. O número é mais fácil de manipular do que as cordas imo...

Obrigado.

Experimentei-o. Funciona bem

 
airquest:
Olá a todos, se eu quiser atribuir um número mágico diferente para cada pedido que é aberto por um EA, posso usar o seguinte..:

número interno externo MagicNumber = 1000000;

if(Condições)

{

SendOrder(OP_BUY,MagicNumber);

MagicNumber = MagicNumber+1;

}

Prefiro usar o número mágico como um identificador, em vez de um comentário. O número é mais fácil de manipular do que as cordas imo...

Obrigado.

Tudo bem, mas como identificar o número mágico exato que você deseja processar uma vez quando o pedido é aberto?

 
mladen:
Tudo bem, mas como você está identificando o número mágico exato que deseja processar uma vez quando o pedido for aberto?

Bem, um pouco complicado. No OnInit, eu armazenei o número mágico original (1000000) em uma variável int (OriginalMagic), e então ao chamar OrderSelect, filtrei pelo único MagicNumber e armazenei as variáveis (OrderOpenPrice, OrderLots, etc.) em um array, então para cada pedido o índice será : MagicNumber - OriginalMagic (então primeiro um é 0, depois 1, etc.). O objetivo é fazer duas coisas: 1) apenas para abrir um número limitado de pedidos (ArrayRange é um número constante (externo no MaxOpenTradesToManage) e o ciclo de abertura de pedidos não será executado se MagicNumber for < OriginalMagic + MaxOpenTradesToManage - 1); 2) definir regras específicas (e diferentes) de gerenciamento de pedidos para cada pedido aberto (que é a razão para ter um MagicNr único).

Mladen, tenho outra pergunta para você, vi em uma de suas EA (Ichimoku 5.3.5, talvez seja a do Sr. Tools, não tenho certeza), que você abre pedidos com o seguinte :

int buyTicket = OrderSend(symbol,OP_BUY,lots,price,slippage,0,0,comment,magic,0,color);

if (buyTicket >= 0)

bool buyOrderMod = OrderModify(buyTicket,OrderOpenPrice(),STOPLOSS,TAKEPROFIT,0,color);

[/CODE]

Does it change something from just putting the OrderSend function with already defines SL and TP ? Is it better to open with 0,0 and then use OrderModify to set SL and TP ? :

[CODE]

OrderSend(symbol,OP_BUY,lots,price,slippage,STOPLOSS,TAKEPROFIT,comment,magic,0,color);

Obrigado por sua resposta. Cumprimentos e um Feliz Natal.

 
airquest:
Bem, um pouco complicado. No OnInit, eu armazenei o número mágico original (1000000) em uma variável int (OriginalMagic), e então ao chamar OrderSelect, filtrei pelo único MagicNumber e armazenei as variáveis (OrderOpenPrice, OrderLots, etc.) em um array, então para cada pedido o índice será : MagicNumber - OriginalMagic (então primeiro um é 0, depois 1, etc.). O objetivo é fazer duas coisas: 1) apenas para abrir um número limitado de pedidos (ArrayRange é um número constante (externo no MaxOpenTradesToManage) e o ciclo de abertura de pedidos não será executado se MagicNumber for < OriginalMagic + MaxOpenTradesToManage - 1); 2) definir regras específicas (e diferentes) de gerenciamento de pedidos para cada pedido aberto (que é a razão para ter um MagicNr único).

Mladen, tenho outra pergunta para você, vi em uma de suas EA (Ichimoku 5.3.5, talvez seja a do Sr. Tools, não tenho certeza), que você abre pedidos com o seguinte :

int buyTicket = OrderSend(symbol,OP_BUY,lots,price,slippage,0,0,comment,magic,0,color);

if (buyTicket >= 0)

bool buyOrderMod = OrderModify(buyTicket,OrderOpenPrice(),STOPLOSS,TAKEPROFIT,0,color);

[/CODE]

Does it change something from just putting the OrderSend function with already defines SL and TP ? Is it better to open with 0,0 and then use OrderModify to set SL and TP ? :

[CODE]

OrderSend(symbol,OP_BUY,lots,price,slippage,STOPLOSS,TAKEPROFIT,comment,magic,0,color);

Obrigado por sua resposta. Saudações e um Feliz Natal.

airquest

Não muda. Mas ...

Deve ser feito dessa forma para os corretores do tipo ECN/STP. Eles não permitem a colocação de stop loss e/ou lucros quando o pedido é aberto e então deve ser feito dessa forma em duas etapas

 
mladen:
airquest Não muda. Mas ...Deve ser feito dessa forma para os corretores do tipo ECN/STP. Eles não permitem a colocação de stop loss e/ou lucros quando o pedido é aberto e então deve ser feito dessa forma em duas etapas

Ok, muito obrigado pela dica. Para pedidos pendentes também ?

 
airquest:
Ok, muito obrigado pela dica. Para pedidos pendentes também ?

Sim, para aqueles também

 

Ajuda na codificação

Olá Mladen

Este indicador não funciona na segunda-feira

"Google Translate"

Obrigado

Arquivos anexados:
Razão: