Como codificar? - página 3

 

sobre código de mql4

quero colocar o preço alto e baixo no gráfico atual .

mas não sei como escrever o código no meu indicador pela MQL4.

muito obrigado!

 

Código para mudar de local de parada?

Olá a todos,

Estou postando meu código aqui, se alguém pudesse apontar o que estou fazendo de errado, eu apreciaria muito

Esta é a parte do código que abre uma posição de LONGO PRAZO:

{

if(//long entry criteria met)

{

if (priorbartime == Time[0])

return(0);

priorbartime = Time[0];

Alert("Long Signal");

ObjectCreate(arrowlong, OBJ_ARROW, 0, Time[0], Open[0], 0, 0, 0, 0);

ObjectSet(arrowlong, OBJPROP_ARROWCODE, 233);

ObjectSet(arrowlong, OBJPROP_COLOR, Aqua);

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,0,Ask-StopLoss*Point,Ask+TakeProfit*Point,"am crossing",16677,0,Green); // HDB CHANGED Close TO Ask and SlipPage to 0

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());

}

else Print("Error opening BUY order : ",GetLastError());

return(0);

}

}

[/PHP]

then once the trade is open I want to manage it by moving stop to -5 when the trade is +15, and by moving stop to b/e when trade is +20. this is the code i have come up with so far but it doesnt seem to be working:

[PHP]

total=OrdersTotal();

if(total>0)

{

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderSymbol()==Symbol())

{

if(Bid-OrderOpenPrice()==Point*15)

{

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-Point*5,OrderTakeProfit(),0,Blue);

return(0);

}

if(Bid-OrderOpenPrice()==Point*20)

{

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,Blue);

return(0);

}

}

}

}

Como mencionado, tudo isto é para posições LONG.

Obrigado por qualquer ajuda!

divergence_trader

 

Muitas pessoas já perguntaram sobre isso muitas vezes.

Portanto, leia:

- este post,

- este e

- este fio Codersguru.

 

graças a newdigital, eu procurei muitos tópicos na SBFX, metaquotes e aqui mas consegui não encontrar o que eu estava procurando, espero que isso ajude!

 

Tente isto:

total=OrdersTotal();

if(total>0){

for(cnt=0;cnt<total;cnt++){

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()==OP_BUY && OrderSymbol()==Symbol()){

if(Bid-OrderOpenPrice()>=Point*15 && Bid-OrderOpenPrice()<Point*20 && OrderStopLoss()< OrderOpenPrice()-5*Point){

OrderModify(OrderTicket(),OrderOpenPrice()-Point*5,OrderTakeProfit(),Blue);

}

if(Bid-OrderOpenPrice()>=Point*20 && OrderStopLoss()< OrderOpenPrice()){

OrderModify(OrderTicket(),OrderOpenPrice(),OrderTakeProfit(),Blue);

}

}

}

}
 

como estes

 

código de níveis de MA

oi

tento escrever um código de níveis de MA, mas não está funcionando ...

qualquer um pode me dizer como eu posso fazer plz.

obrigado

Arquivos anexados:
levels.png  20 kb
 
mas:
oi

tento escrever um código de níveis de MA, mas não está funcionando ...

qualquer um pode me dizer como eu posso fazer plz.

obrigado

Você pode usar o indicador do Vegas Currancy Daily como um guia. Veja o anexo.

Keris

Arquivos anexados:
 
Nicholishen:
Experimente isto:

Graças Nicholishen, seu código funciona perfeitamente. Não tive a oportunidade de testá-lo em um mercado vivo até agora, mas tudo funciona bem. obrigado novamente!

 

Solicitação: Código EA para dobrar o tamanho do lote após uma troca perdida.

Quero saber se há alguma maneira de dizer a um EA para aumentar o tamanho do lote se a última operação fechar com prejuízo (sistema martingale), e usar o tamanho normal do lote se a última operação fechar com lucro. Ele precisa ser capaz de usar micro lotes. Existe alguma maneira de fazer isso?