Besoin d'aide pour ameliorer EA scalping

Présentation, Développement, Améliorations et Ressources pour les Stratégies de Trading Automatique.

Modérateur : Administrateurs

Message
Auteur
muratime
Membre actif
Messages : 17
Inscription : 26 août 2012, 15:29

Re: Besoin d aide pour ameliorer EA scalping

#26 Message par muratime »

muratime a écrit :La par exemple il vient de me faire un ordre d'achat sur euro usd a 1.25463 on va voir car c'est un peu volatile là il devrais aller chercher les 1.25573
Voilà mission accompli lo j'adore qu'un plan se déroule sans accroc MDRRR en faite j'ai tenue compte des 3 pips du slippage mais en achat apparemment il y en a pas il c'est bien arrêté au 1.25573 d'ailleur je comprend pas tous avec ce slippage ça sert a quoi ?

Avatar de l’utilisateur
AUTOFOREX
Membre actif et régulier
Messages : 97
Inscription : 05 janv. 2012, 14:04

Re: Besoin d'aide pour améliorer EA scalping

#27 Message par AUTOFOREX »

Le slippage c'est la différence en pips acceptable pour la prise d'ordre entre le moment de la prise d'ordre et le cours du marché au moment de l’exécution. C'est quelque-chose de très important en scalping tu t'en doutes :)
[url]http://www.autoforex.fr/[/url]
[img]http://www.autoforex.fr/wp-content/uploads/2013/10/logo-new-site-50percent.gif[/img]
[url=http://www.myfxbook.com/members/babs][img]http://widgets.myfxbook.com/widget?id=528537&type=2&color=red[/img][/url]
[url=http://www.myfxbook.com/members/babs][img]http://widgets.myfxbook.com/widget?id=698375&type=2&color=red[/img][/url]

GlobalFx
Membre actif
Messages : 35
Inscription : 18 mars 2012, 18:56

Re: Besoin d'aide pour améliorer EA scalping

#28 Message par GlobalFx »

Bonjour

Question à AUTOFOREX: est il possible de modifier le code de Scalping pour qu'au lieu de passer les ordres et faire des modifs ensuite, il fasse cela en local sous mt4 et n'ouvre le trade qu'une fois les conditions remplis?

muratime
Membre actif
Messages : 17
Inscription : 26 août 2012, 15:29

Re: Besoin d'aide pour ameliorer EA scalping

#29 Message par muratime »

Oui je me suis vu en démo perdre des positions pour a peine 1 pips je voulais savoir je dois avoir un problème de retourn qui relance pas le programme a mon avis quand il a pris sa position et a fait le benef il reste inactif doit y avoir un retourn qui est pas bon je met la fin du code pour savoir si retourn (Ticket); c'est bon ou faut mettre autre chose

int EnterShrt( string FinalSymbol, double FinalLots, string EA_Comment )
{
int Ticket = -1; int err = 0; bool OrderLoop = False; int TryCount = 0;

while( !OrderLoop )
{
while( IsTradeContextBusy() ) { Sleep( 10 ); }

RefreshRates();
double SymAsk = NormalizeDouble( MarketInfo( FinalSymbol, MODE_ASK ), SymDigits );
double SymBid = NormalizeDouble( MarketInfo( FinalSymbol, MODE_BID ), SymDigits );
double point=MarketInfo(Symbol(),MODE_POINT);

// Ticket = OrderSend( FinalSymbol, OP_SELL, FinalLots, SymBid, 0, 0.0,0.0, EA_Comment, MagicNumber, 0, CLR_NONE );
Ticket=OrderSend(FinalSymbol,OP_SELLSTOP,FinalLots,SymBid-100*point,0,StopShrt(SymAsk-100*point,StopLoss, SymPoints,SymDigits),TakeShrt(SymBid,ProfitTarget, SymPoints,SymDigits),"Scalping ea mg",MagicNumberD,0,CLR_NONE);
// ticket=OrderSend(Symbol(),OP_SELLSTOP,0.1,price-70*point,0,price+100*point,price-200*point,"some comment",mgnD,0,CLR_NONE);

int Err=GetLastError();

switch (Err)
{
//---- Success
// case ERR_NO_ERROR: OrderLoop = true;
// if( OrderSelect( Ticket, SELECT_BY_TICKET ) )
// { OrderModify( Ticket, OrderOpenPrice(), StopShrt(SymAsk,StopLoss, SymPoints,SymDigits), TakeShrt(SymBid,ProfitTarget, SymPoints,SymDigits), 0, CLR_NONE ); }
// break;

//---- Retry Error
case ERR_SERVER_BUSY:
case ERR_NO_CONNECTION:
case ERR_INVALID_PRICE:
case ERR_OFF_QUOTES:
case ERR_BROKER_BUSY:
case ERR_TRADE_CONTEXT_BUSY: TryCount++; break;

case ERR_PRICE_CHANGED:
case ERR_REQUOTE: continue;

//---- Fatal known Error
case ERR_INVALID_STOPS: OrderLoop = true; Print( "Invalid Stops" ); break;
case ERR_INVALID_TRADE_VOLUME: OrderLoop = true; Print( "Invalid Lots" ); break;
case ERR_MARKET_CLOSED: OrderLoop = true; Print( "Market Close" ); break;
case ERR_TRADE_DISABLED: OrderLoop = true; Print( "Trades Disabled" ); break;
case ERR_NOT_ENOUGH_MONEY: OrderLoop = true; Print( "Not Enough Money" ); break;
case ERR_TRADE_TOO_MANY_ORDERS: OrderLoop = true; Print( "Too Many Orders" ); break;

//---- Fatal Unknown Error
case ERR_NO_RESULT:
default: OrderLoop = true; Print( "Unknown Error - " + Err ); break;
//----
}
// end switch
if( TryCount > 10) { OrderLoop = true; }
}
//----
return(Ticket);
}
//+------------------------------------------------------------------+

Répondre