Come codificare? - pagina 27

 

Gestione del denaro - Ryan Jones Codice a rapporto fisso

L'attuale codice Fixed Ratio funziona bene, ma vorrei consolidare il seguente codice attualmente è codificato per aggiungere 20 lotti.

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

Ciao a tutti,

Ho pagato quasi 2500 dollari per il suo EA, che fa schifo. Quando gli ho scritto, ha detto che funziona per lui. pieno di B*** S***, se ha venduto diciamo 100 EAs, la sua mossa è sicuramente in modalità rialzista.

blueocean

 

Non proprio la stessa cosa

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;

Avete ">=" solo sulla prima se

 

Qual è il codice per mettere stop a break even?

Qualcuno sa come posso aggiungere del codice al mio ea per avere lo stop impostato sul break even o addirittura avere il contesto quando si aggiunge a quanti ne voglio?

extern double BreakEven = 0;

Theres che bit, ma quale codice devo effettivamente mettere?

 

C'È UN MODO PER METTERE UN BREAK EVEN STOP LOSS!!!!!

 
C'È UN MODO PER METTERE UN BREAK EVEN STOP LOSS!!!!!

Accidenti. Calmati. Ecco il codice che uso per la maggior parte dei miei EA, semplificato per la tua richiesta.

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);

}

}

}

}

}
 

Grazie, ma questo non si adatta alla cosa del breakEven esterno.

L'ho messo in dice, Funzione "breakEvenManager" non è referenziato e sarà rimosso.

 
kjhfdgjfhdghdf:
Grazie, ma questo non si adatta alla cosa di extern breakeven. L'ho messo in dice, La funzione "breakEvenManager" non è referenziata e sarà rimossa.

Devi chiamare il modulo ad un certo punto del tuo codice.

 

ho bisogno di aiuto in codice semplice

Ciao a tutti

ho bisogno di qualcuno può aiutare in un codice semplice che invertire l'ordine quando ha perso e aprire lo stesso ordine se ha vinto, e il primo ordine verrà aperto manualmente, impostare qualsiasi takeprofit e stopand

grazie per l'aiuto

 

mmmmmmm