Ajuda na codificação - página 471

 
systemfault:
Olá a todos,

eu preciso de ajuda... eu tenho uma ea simples, mas programada para 4 dígitos. (Por exemplo: EUR/USD: 1.1234)

Como posso usar meus 5 dígitos de ea? (Por exemplo: EUR/USD: 1.12345)

Obrigado:)

simpleea.mq4

Você pode acrescentar isto :

*MathPow(10,_Digits%2)

onde quer que você use _Point e então ele funcionará em pips igualmente em corretores de 4 e 5 dígitos

____________________

 

Oi mladen,

Obrigado pelo correio.

Eu faço isto.

int CheckForOpen()

{

duplo L = baixo;

duplo H = alto;

duplo Lots = MathRound(AccountBalance()/100)/1000;

if((H-Bid>Limit*Point))

{OrderSend(Symbol(),OP_BUY,Lots,Ask,1,0,0,",MAGICMA,0,CLR_NONE);

for(int i=1; i<5; i++){OrderSend(Symbol(),OP_BUYLIMIT,MathPow(2,i)*Lots,Ask-i*Grid*Point*MathPow(10,_Digits%2),1,0,0,"",MAGICMA,0,CLR_NONE);}

}

if((Bid-L>Limit*Point))

{OrderSend(Symbol(),OP_SELL,Lots,Bid,1,0,0,",MAGICMA,0,CLR_NONE);

for(int j=1; j<5; j++){OrderSend(Symbol(),OP_SELLLLIMIT,MathPow(2,j)*Lots,Bid+j*Grid*Point*MathPow(10,_Digits%2),1,0,0,"",MAGICMA,0,CLR_NONE);}

}

}

é verdade?

 
systemfault:
Oi mladen,

Obrigado pelo correio.

Eu faço isto.

int CheckForOpen()

{

duplo L = baixo;

duplo H = alto;

duplo Lots = MathRound(AccountBalance()/100)/1000;

if((H-Bid>Limit*Point))

{OrderSend(Symbol(),OP_BUY,Lots,Ask,1,0,0,",MAGICMA,0,CLR_NONE);

for(int i=1; i<5; i++){OrderSend(Symbol(),OP_BUYLIMIT,MathPow(2,i)*Lots,Ask-i*Grid*Point*MathPow(10,_Digits%2),1,0,0,"",MAGICMA,0,CLR_NONE);}

}

if((Bid-L>Limit*Point))

{OrderSend(Symbol(),OP_SELL,Lots,Bid,1,0,0,",MAGICMA,0,CLR_NONE);

for(int j=1; j<5; j++){OrderSend(Symbol(),OP_SELLLLIMIT,MathPow(2,j)*Lots,Bid+j*Grid*Point*MathPow(10,_Digits%2),1,0,0,"",MAGICMA,0,CLR_NONE);}

}

}

é verdade?

Sim

Mas então também mudar o parâmetro Grid de 1500 para 150 ou então tentará definir o preço de 1500 pips longe do Bid ou Ask

 

Estou usando essa configuração;

Externo int PeriodX = 60;

limite int externo = 50;

Grelha int externa = 14;

Valor da int externa = 1;

Exterior int LockDown = 20;

Como é essa configuração?

 
systemfault:
Estou usando essa configuração;

Exterior int PeríodoX = 60;

limite int externo = 50;

Grade int externa = 14;

Valor da int externa = 1;

Exterior int LockDown = 20;

Como é essa configuração?

Abrirá limites de compra e venda a 14 pips de distância de pedido e licitação.

Experimente

 
mladen:
Abrirá limites de compra e venda a 14 pips de pedir e licitar

eu tento... parece isto...

Arquivos anexados:
adsz.png  35 kb
 
systemfault:
eu tento... parece que isto...

Até onde eu vejo, está fazendo o que se destina a fazer

 
mladen:
Até onde eu vejo, está fazendo o que se destina a fazer

Sim, mladen...

Mas eu não quero fechar os pedidos sem lucro e perder 14 pips

 
systemfault:
Sim, mladen... Mas eu não quero fechar os pedidos sem lucro e perder 14 pips

Depois, acrescente também tirar lucro e parar as perdas

 
mladen:
Então acrescente também tirar lucro e acabar com as perdas

im acrescentou este código;

int CheckForClose()

{

if(getProfit()>=Amount){CloseAll();}

if(LockDown>0)

{

for(int TradeNumber = OrderTotal(); TradeNumber >= 0; TradeNumber--)

{

if (OrderSelect(TradeNumber, SELECT_BY_POS, MODE_TRADES)&&(LockDown>0))

{ int Pos=OrderType();

if((Pos===OP_BUY)&&(Bid-OrderOpenPrice()>Point*MathPow(10,_Digits%2)*LockDown)&&(OrderStopLoss() == 0))

{OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+Point,OrderTakeProfit(),0,CLR_NONE);}

if((Pos==OP_SELLL)&&(OrderOpenPrice()-Ask>Ponto*MathPow(10,_Digits%2)*LockDown)&&(OrderStopLoss() == 0))

{OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice() -Point,OrderTakeProfit(),0,CLR_NONE);}

}

}

}

}

Por exemplo; preço de pedido EUR/USD 1,12345 sl/tp 1,12346

quero sl/tp 1.12355

não estou entendendo o que está dando errado?

Razão: