Comment coder ? - page 27

 

Money Mangement - Ryan Jones Code Fixed Ratio

Le code actuel du Fixed Ratio fonctionne très bien, mais je voudrais consolider le code suivant ; il est actuellement codé pour ajouter 20 lots.

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

Bonjour à tous,

J'ai payé presque 2500 dollars pour son EA, ce qui craint. Quand je lui ai écrit, il m'a dit que ça marchait pour lui. C'est du pipeau, s'il a vendu disons 100 EAs, son mouvement est très certainement en mode haussier.

blueocean

 

Pas tout à fait la même chose

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;

Vous avez ">=" seulement sur le premier si

 

Quel est le code pour mettre le stop sur break even ?

Est-ce que quelqu'un sait comment je peux ajouter un code à mon ea pour que le stop soit fixé au seuil de rentabilité ou même avoir un contexte lors de l'ajout de n'importe quel nombre que je veux ?

extern double BreakEven = 0 ;

Il y a cette partie mais quel code dois-je mettre ?

 

EXISTE-T-IL UN MOYEN DE METTRE UN SEUIL DE RENTABILITÉ EN CAS DE PERTE !!!!!

 
Y A-T-IL UN MOYEN DE METTRE UN SEUIL DE RENTABILITÉ À LA PERTE ? ! !!!!

Dang. Détendez-vous. Voici le code que j'utilise pour la plupart de mes EAs, simplifié pour votre demande.

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

}

}

}

}

}
 

Merci, mais ça ne correspond pas à l'aspect externe de Breakeven.

Je l'ai mis en disant, La fonction "breakEvenManager" n'est pas référencée et sera supprimée.

 
kjhfdgjfhdghdf:
Merci, mais cela ne correspond pas à l'externalité de breakeven. Je l'ai mis en disant, Function "breakEvenManager" n'est pas référencé et sera supprimé.

Vous devez appeler le module à un moment donné dans votre code.

 

J'ai besoin d'aide pour simplifier le code

Bonjour à tous

J'ai besoin de quelqu'un pour m'aider à créer un code simple qui inverse l'ordre lorsqu'il a perdu et ouvre le même ordre s'il a gagné, et le premier ordre sera ouvert manuellement, avec un takeprofit et un stopand.

merci pour votre aide

 

mmmmmmm