Como codificar? - página 27

 

Manejo de dinheiro - Ryan Jones Fixed Ratio Code

O código atual da relação fixa funciona muito bem, mas eu gostaria de consolidar o seguinte código atualmente ele está codificado para adicionar 20 lotes.

void FixedRatioMM()

{

if (MM == True)

{

if (AccountEquity() >= InitialCapital && AccountEquity() < (InitialCapital+(1*Delta))) {MMLots=1*Lots;}

if (AccountEquity() > (InitialCapital + (1*Delta)) && AccountEquity() < (InitialCapital+(3*Delta))) {MMLots=2*Lots;}

if (AccountEquity() > (InitialCapital + (3*Delta)) && AccountEquity() < (InitialCapital+(6*Delta))) {MMLots=3*Lots;}

if (AccountEquity() > (InitialCapital + (6*Delta)) && AccountEquity() < (InitialCapital+(10*Delta))) {MMLots=4*Lots;}

if (AccountEquity() > (InitialCapital + (10*Delta)) && AccountEquity() < (InitialCapital+(15*Delta))) {MMLots=5*Lots;}

if (AccountEquity() > (InitialCapital + (15*Delta)) && AccountEquity() < (InitialCapital+(21*Delta))) {MMLots=6*Lots;}

if (AccountEquity() > (InitialCapital + (21*Delta)) && AccountEquity() < (InitialCapital+(28*Delta))) {MMLots=7*Lots;}

if (AccountEquity() > (InitialCapital + (28*Delta)) && AccountEquity() < (InitialCapital+(36*Delta))) {MMLots=8*Lots;}

if (AccountEquity() > (InitialCapital + (36*Delta)) && AccountEquity() < (InitialCapital+(45*Delta))) {MMLots=9*Lots;}

if (AccountEquity() > (InitialCapital + (45*Delta)) && AccountEquity() < (InitialCapital+(55*Delta))) {MMLots=10*Lots;}

if (AccountEquity() > (InitialCapital + (55*Delta)) && AccountEquity() < (InitialCapital+(66*Delta))) {MMLots=11*Lots;}

if (AccountEquity() > (InitialCapital + (66*Delta)) && AccountEquity() < (InitialCapital+(78*Delta))) {MMLots=12*Lots;}

if (AccountEquity() > (InitialCapital + (78*Delta)) && AccountEquity() < (InitialCapital+(91*Delta))) {MMLots=13*Lots;}

if (AccountEquity() > (InitialCapital + (91*Delta)) && AccountEquity() < (InitialCapital+(105*Delta))) {MMLots=14*Lots;}

if (AccountEquity() > (InitialCapital + (105*Delta)) && AccountEquity() < (InitialCapital+(125*Delta))) {MMLots=15*Lots;}

if (AccountEquity() > (InitialCapital + (125*Delta)) && AccountEquity() < (InitialCapital+(141*Delta))) {MMLots=16*Lots;}

if (AccountEquity() > (InitialCapital + (141*Delta)) && AccountEquity() < (InitialCapital+(158*Delta))) {MMLots=17*Lots;}

if (AccountEquity() > (InitialCapital + (158*Delta)) && AccountEquity() < (InitialCapital+(176*Delta))) {MMLots=18*Lots;}

if (AccountEquity() > (InitialCapital + (176*Delta)) && AccountEquity() < (InitialCapital+(195*Delta))) {MMLots=19*Lots;}

if (AccountEquity() > (InitialCapital + (195*Delta)) && AccountEquity() < (InitialCapital+(215*Delta))) {MMLots=20*Lots;}

}

else MMLots = Lots;

}

TimeFreedom

 

Ryan Jones

Olá,

Paguei quase 2500 dólares por sua EA, o que é uma droga. Quando lhe escrevi, ele disse que funcionava para ele. cheio de B*** S***, se ele vendeu, digamos 100 EAs, sua jogada certamente está em alta.

blueocean

 

Não é bem o mesmo

if (MM == True)

{

int i,n=0;

if (AccountEquity() >= InitialCapital)

{

for (i=1;i<=20;i++)

{

n += i;

if (AccountEquity() < (InitialCapital+(n*Delta)))

{

MMLots=i*Lots;

break;

}

}

}

}

else MMLots = Lots;

Você tem ">= " somente em primeiro lugar se

 

O que é o código para acabar com o problema do equilíbrio?

Alguém sabe como eu posso adicionar algum código à minha ea para ter parada definida para quebrar o equilíbrio ou mesmo ter contexto ao adicionar a quantos eu quiser?

breakEven duplo externo = 0;

Há esse bit, mas qual código eu realmente coloco?

 

ESTÁ LÁ EM ALGUM LUGAR PARA COLOCAR UM PONTO DE EQUILÍBRIO PARA PARAR A PERDA!!!!!

 
É QUE É QUE PASSAGEM PARA DESCONHECER DE UMA VERDADE STOP LOSS

Maldição. Acalme-se. Aqui está o código que eu uso para a maioria dos meus EAs, simplificado para o seu pedido.

void breakEvenManager()

{

for(int cnt=0;cnt<OrdersTotal();cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if (BreakEven>0 )

{

if (OrderType()==OP_BUY)

{

if (Bid-OrderOpenPrice()>=Point*BreakEven)

{

if (OrderStopLoss()<OrderOpenPrice() || OrderStopLoss()==0)

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

}

}

else if (OrderType()==OP_SELL)

{

if (OrderOpenPrice()-Ask>=Point*BreakEven)

{

if (OrderStopLoss()>OrderOpenPrice() || OrderStopLoss()==0)

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

}

}

}

}

}
 

Obrigado, mas isso não se encaixa com a coisa do breakeven externo.

Coloquei-o dizendo, a função "breakEvenManager" não é referenciada e será removida.

 
kjhfdgjfhdghdf:
Obrigado, mas isso não se encaixa com a coisa do breakeven externo. Coloquei-o dizendo, a função "breakEvenManager" não é referenciada e será removida.

Você tem que chamar o módulo em algum momento em seu código.

 

preciso de ajuda no código simpel

olá a todos

i neeed alguns podem ajudar em código simpel que inverte a ordem quando perdeu e abre a mesma ordem se ganhou, e a primeira ordem será aberta manualmente , definir qualquer takeeprofit e stopand

do que por ajuda

 

mmmmmmm