Eu pedi o código que encontra o preço mais alto em aberto. Será que isto? Será que isso acontece na presença de um deslize?
O que você acha que isto significa?
Eu lhe pedi para mostrar o código que testa se o Bid está 10 pips acima da última abertura. Por que você está abrindo uma venda quando o mercado está 10 pontos acima de qualquer ordem (não a mais alta).
e também verifique esta condição adicionei se estou certo..............
double highest_open_price=0;
int highest_Ticket=-1;
for(int pos=OrdersTotal()-1; pos>=0; pos--)
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES) // Only my orders w/
&& OrderMagicNumber()==0// my magic number
&& OrderSymbol()==Symbol() // and my pair.
&& OrderOpenPrice()>=highest_open_price)
{
highest_open_price=OrderOpenPrice();
highest_Ticket=OrderTicket();
}
RefreshRates();
if (Bid>=highest_open_price+10*Point)
highest_Ticket=OrderSend(Symbol(),OP_SELL,mylot(),Bid,0,0,0,"My Comment",0,0,Red);
}
Por favor, não poste código com um vadio }
é confuso
Experimente seu EA no testador de estratégia e você verá se você está certo ou não
agora veja como eu calculei meus pips desde que fiquei alto estou certo..........
double highest_open_price=0;
int highest_Ticket=-1;
for(int pos=OrdersTotal()-1; pos>=0; pos--)
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES) // Only my orders w/
&& OrderMagicNumber()==0// my magic number
&& OrderSymbol()==Symbol() // and my pair.
&& OrderOpenPrice()>=highest_open_price)
{
highest_open_price=OrderOpenPrice();
highest_Ticket=OrderTicket();
}
int look_pips=0;
for(pos=OrdersTotal()-1; pos>=0; pos--)
highest_open_price=MathAbs(High[pos]-Low[pos])/Point; //pips levels of the barif (Bid>=highest_open_price && look_pips >=my_pips)
Print("The last price movement more than ",my_pips);
RefreshRates();
highest_Ticket=OrderSend(Symbol(),OP_SELL,mylot(),Bid,0,0,0,"My Comment",0,0,Red);
lembre-se que minhas_pips são adicionadas no duplo externo my_pips =10; e também não calcularam para caber corretores de 5 dígitos vou adicionar este último.
Eu não tenho idéia do que você está tentando fazer
Você obtém o valor para opreço_aberto_mais alto no primeiro loop
Em seguida, você faz um loop através das ordens novamente e lhe dá um valor diferente
por?????
desculpe-me por um erro que eu estava prestes a reescrevê-lo antes de ver seu post. apenas trabalhei mais nele para mudá-lo para o tick value......
agora eu uso o valor do tick para calcular pips.....
double highest_open_price=0;
int highest_Ticket=-1;
for(int pos=OrdersTotal()-1; pos>=0; pos--)
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES) // Only my orders w/
&& OrderMagicNumber()==0// my magic number
&& OrderSymbol()==Symbol() // and my pair.
&& OrderOpenPrice()>=highest_open_price)
{
highest_open_price=OrderOpenPrice();
highest_Ticket=OrderTicket();
}
double tickvalue = (MarketInfo(Symbol(),MODE_TICKVALUE));
if(Digits == 5 || Digits == 3){
tickvalue = tickvalue*10;
}
if (Bid>=highest_open_price + tickvalue*10)
Print("The last price movement more than ",tickvalue);
RefreshRates();
highest_Ticket=OrderSend(Symbol(),OP_SELL,mylot(),Bid,0,0,0,"My Comment",0,0,Red);
now to add my comment on this tick value. one thing i know is -----10pips is a movement of price upward or down to definite number point stored while 10tick
is count of moving price without storing number
else 10tick can complete in 1 candle far below pips. while 10pips can complete in more than 20bars/candle or even 1bar/candle.
conclusion i dont think i got it right?
please point me through
in addition double MYPIP= MarketInfo(Symbol(), MODE_DIGITS); can it work on this case to get pip
agora eu juntei o código mais alto é obtido pips é obtido...
então eu o testei novamente, mas o resultado não correspondeu ao código por quê? estou perdendo alguma coisa está havendo alguma condição
ainda preciso acrescentar ao código ou é porque o mercado eu fechei... obrigado
ou deve duplicar PipDecimal = (MarketInfo(Symbol(),MODE_DIGITS)); ser considerado .
double highest_open_price=0;
int highest_Ticket=-1;
for(int pos=OrdersTotal()-1; pos>=0; pos--)
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES) // Only my orders w/
&& OrderMagicNumber()==0// my magic number
&& OrderSymbol()==Symbol() // and my pair.
&& OrderOpenPrice()>=highest_open_price)
{
highest_open_price=OrderOpenPrice();
highest_Ticket=OrderTicket();
}
double PipDecimal=Point;
if(Digits == 5 || Digits == 3)
PipDecimal = PipDecimal*10;
if (Bid>=highest_open_price + PipDecimal *10)
Print("The last price movement more than ",PipDecimal);
RefreshRates();
highest_Ticket=OrderSend(Symbol(),OP_SELL,mylot(),Bid,0,0,0,"My Comment",0,0,Red);
if (Bid>=highest_open_price + PipDecimal *10)
{
Print("The last price movement more than ",PipDecimal);
RefreshRates();
highest_Ticket=OrderSend(Symbol(),OP_SELL,mylot(),Bid,0,0,0,"My Comment",0,0,Red);
}
Sem o aparelho encaracolado, um novo comércio será aberto a cada tique
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Sim, eu quero 10 pips.
e também verifique esta condição adicionei se estou certo..............
Por favor, não poste código com um vadio }
é confuso
Experimente seu EA no testador de estratégia e você verá se você está certo ou não
} -- WHRoeder apontou-o e eu o corrigi, obrigado por notar.
Eu acho que WHRoeder: está certo em seu ponto sobre ponto e pips, agora está alto, acho que pips devem ser considerados
agora veja como eu calculei meus pips desde que fiquei alto estou certo..........
lembre-se que minhas_pips são adicionadas no duplo externo my_pips =10; e também não calcularam para caber corretores de 5 dígitos vou adicionar este último.Eu não tenho idéia do que você está tentando fazer
Você obtém o valor para opreço_aberto_mais alto no primeiro loop
Em seguida, você faz um loop através das ordens novamente e lhe dá um valor diferente
por?????
Eu não tenho idéia do que você está tentando fazer
Você obtém o valor para opreço_aberto_mais alto no primeiro loop
Em seguida, você faz um loop através das ordens novamente e lhe dá um valor diferente
por?????
desculpe-me por um erro que eu estava prestes a reescrevê-lo antes de ver seu post. apenas trabalhei mais nele para mudá-lo para o tick value......
agora eu uso o valor do tick para calcular pips.....
obrigado por suas correções, agradeço.
agora eu juntei o código mais alto é obtido pips é obtido...
então eu o testei novamente, mas o resultado não correspondeu ao código por quê? estou perdendo alguma coisa está havendo alguma condição
ainda preciso acrescentar ao código ou é porque o mercado eu fechei... obrigado
ou deve duplicar PipDecimal = (MarketInfo(Symbol(),MODE_DIGITS)); ser considerado .
Sem o aparelho encaracolado, um novo comércio será aberto a cada tique
isso é ótimo! funcionou bem... perfeitamente manchado.
mas o único problema é que durante a segunda ordem ele continua abrindo várias ordens novamente após a primeira ordem bem sucedida ter aberto bem...
por favor, existe alguma coisa que eu tenha feito de errado.