Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Quelques indicateurs - modifiés
Salut,
a_ZZ et a_ZZInd - "High_Low v2 (ZigZag)" et autres(dont je ne me souviens plus maintenant,&))
aDin - "ang_PR (Din)-v2".
Qu'est-ce que vous en pensez ?
A la vôtre.
CroixMACD
Bonjour à tous,
J'ai une idée d'EA utilisant MACD 13,32,48 et PSAR Step 0.005 Max.0.05 ou 0.006 et 0.06 H1 TF.
Point d'entrée lorsque MACD Cross (Close Bar) et sortie PSAR ou trailing stop optionnel.
Salutations
MFX
Meilleure stratégie quotidienne...
Salut les gars,
Je suis heureux d'être à nouveau parmi vous. J'ai été absent pendant quelques jours. Quoi qu'il en soit, je voudrais vous demander quelles sont les meilleures stratégies quotidiennes et sur 4 heures que vous avez trouvées, utilisées peut-être...
Merci.
REGARDS
codersguru : Pourriez-vous changer EMA pour triple exponential moving average ?
dans EMACROSS EA.
C'est mieux que l'EMA.
Merci.
Meilleur système pour les paires croisées
Bonjour
J'ai trouvé un très bon système qui est très bon pour trader les paires croisées.
Il est très simple et basé sur les SMA et EMA, mais très efficace. Si quelqu'un peut développer un EA pour cela nous pouvons le tester.
2 types de Moyenne Mobile de la barre précédente seront utilisés
6 ema, 12 sma
La tendance est à la baisse si 6ema<12ma
et la tendance est à la hausse si 6ema>12ma
Signal d'achat ou de vente
Vente : si la tendance est à la baisse et que la vente (bid) H
Ou
Acheter : si la tendance est à la hausse et acheter(ask) L[Lowest(6,0)]
sortie :
si la tendance est à la baisse, short, L[Lowest(6,0)]
si la tendance est à la hausse, long, H
inverser :
si la tendance est à la hausse, short, L[Lowest(6,0)]
si la tendance est à la baisse, long, H
------------------------------------------
Si un programmeur peut créer un indicateur ou un EA pour ce système, nous pouvons tous voir son potentiel.
Je suis désolé, mais je n'ai pas compris les règles. Pouvez-vous élaborer ou éventuellement utiliser des valeurs numériques pour expliquer ?
Merci,
Maji
Breakout EA
Salut les experts,
Je voudrais attirer votre attention sur le fil de discussion suivant, en particulier celui de fxengines. Voici le lien : http://www.strategybuilderfx.com/forums/showthread.php?t=11530&page=4&pp
Le plus important est qu'il a mentionné deux systèmes dans ses discussions, que je copie et colle ici.
Exemple 1 : Le signal d'entrée est un breakout de 60 minutes de 15 sur le haut de la dernière période, sortie limite de 30. La probabilité dans le rapport pour le déclenchement du GBP 60 MIN 15 est de 85,7%. Ce test a donné un rendement de 84%, et a fait de l'argent.
"Ce moteur a eu une performance nette de 1298 pips avec un taux de réussite de 84%. Si toutes les transactions avaient été sorties au plus haut, le moteur aurait valu 2521 pips. Cependant, une moyenne de 1,97 pips par transaction a été "rendue" entre le sommet et le point où vous avez quitté. Le drawdown maximum pour ce moteur était de 454 pips, avec 3 trades perdants pendant la pire série de pertes et 46 gagnants pendant la meilleure série de gains."
EXEMPLE 2 : Le signal d'entrée est un breakout de 60 minutes de 25 au-dessus du haut de la dernière période, sortie limite de 30. La probabilité dans le rapport pour le déclenchement du GBP 60 MIN 25 est de 95,2%. Ce test a donné un rendement de 84%, et a fait de l'argent.
"Ce moteur a eu une performance nette de 941 pips avec un taux de réussite de 84%. Si tous les trades avaient été sortis au plus haut, le moteur aurait valu 1832 pips. Cependant, une moyenne de 2,02 pips par transaction a été "rendue" entre le sommet et le point où vous avez quitté. Le drawdown maximum pour ce moteur était de 452 pips, avec 3 trades perdants pendant la pire série de pertes et 25 gagnants pendant la meilleure série de gains."
Quelqu'un a-t-il écrit un EA pour backtester et vérifier cette affirmation ? J'ai essayé, mais je n'ai pas pu dupliquer leurs résultats ou même m'en approcher, mais je ne suis pas un expert. J'espère que l'un des gourous ici présent pourra le faire.
Merci,
Maji
Besoin d'aide pour coder l'EA
Bonjour, j'ai téléchargé l'EA suivant et il semble fonctionner assez bien. Cependant, il n'applique pas de Trailingstop, takeprofit et stoploss. Quelqu'un pourrait-il corriger le code ? Toute aide est très appréciée. Merci beaucoup
//+------------------------------------------------------------------+
//| SMC Autotrader Momentum.mq4 |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
extern double Lots = 1 ;
extern double InitialStop = 30 ;
extern double TrailingStop = 20 ;
extern bool TakeProfitMode = True ;
extern int TakeProfit = 10 ;
extern bool StopLossMode = True ;
extern int StopLoss = 25 ;
datetime BarTime ;
//################################################## ###################
int init()
{
//----
//----
return(0) ;
}
//################################################## ###################
int start()
{
int cnt,total,ticket,MinDist,tmp ;
double Spread ;
//################################################## ##########################
if(Bars<100){
Print("barres inférieures à 100") ;
return(0) ;
}
//sortir si pas de nouvelle barre
if(BarTime == Time[0]) {return(0);}
//nouvelle barre, mise à jour de l'heure
BarTime = Time[0] ;
//################################################## #######################################
//~~~~~~~~~~~~~~~~Formalités diverses de configuration~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~
MinDist=MarketInfo(Symbol(),MODE_STOPLEVEL) ;
Spread=(Ask-Bid) ;
//################################################## #######################################
double SMAP1,SMAP2,MMAP1,MMAP2,LMAP1,LMAP2 ;
SMAP1=iMA(NULL,0,4,0,MODE_EMA,PRICE_CLOSE,1) ;
SMAP2=iMA(NULL,0,4,0,MODE_EMA,PRICE_CLOSE,2) ;
MMAP1=iMA(NULL,0,9,0,MODE_EMA,PRICE_CLOSE,1) ;
MMAP2=iMA(NULL,0,9,0,MODE_EMA,PRICE_CLOSE,2) ;
LMAP1=iMA(NULL,0,100,0,MODE_EMA,PRICE_CLOSE,1) ;
LMAP2=iMA(NULL,0,100,0,MODE_EMA,PRICE_CLOSE,2) ;
//################################################## ######################################
//################## FERMETURE DE L'ORDRE ################################################## #
// Si les ordres sont en vigueur, vérifiez la fermeture par rapport aux techniques LONG et SHORT.
//Clôture des entrées LONG
total=OrdersTotal() ;
si(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ;
if(OrderType()==OP_BUY && OrderSymbol()==Symbol())
{
if(SMAP2 > MMAP2 && SMAP1 < MMAP2)
{
OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet) ; // clôture de la position LONGUE
}}
//CLÔTURER LES ENTRÉES COURTES :
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ;
if(OrderType()==OP_SELL && OrderSymbol()==Symbol()) // vérification du symbole
{
if(SMAP2 MMAP2)
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet) ; // clôture de la position SHORT
}}
} // retour pour la boucle
} // fermer le 1er if
//################################################## ############################
//################## ORDER TRAILING STOP Ajustement #######################
//ARRÊT DE TRAÎNAGE : LONG
if(0==1) //Ceci est utilisé pour activer et désactiver le trailing stop
{
total=OrdersTotal() ;
si(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ;
if(OrderType()==OP_BUY && OrderSymbol()==Symbol()
&&
Bid-OrderOpenPrice()> (Point*TrailingStop)
&&
OrderStopLoss()<Bid-(Point*TrailingStop)
)
{OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),1,White) ;
return(0);}
}}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//TRAILING STOP : SHORT
total=OrdersTotal() ;
si(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ;
if(OrderType()==OP_SELL && OrderSymbol()==Symbol()
&&
OrderOpenPrice()-Ask > (Point*TrailingStop)
&&
OrderStopLoss() > Ask+(Point*TrailingStop)
)
{OrderModify(OrderTicket(),OrderOpenPrice(),Ask+(P oint*TrailingStop),OrderTakeProfit(),0,Yellow) ;
return(0);}
}}
} // support d'extrémité pour l'interrupteur marche/arrêt
//################################################## ########################################
//~~~~~~~~~~~ END OF ORDER Routines de fermeture et changements de Stoploss ~~~~~~~~~~~~~~~~~~~~~~~~~~~
//################################################## ########################################
//~~~~~~~~~~~~START of NEW ORDERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//######################### NOUVELLES POSITIONS ? ######################################
//Possiblement ajouter une minuterie pour arrêter les entrées multiples dans la période.
// Vérifier la marge disponible
// UN SEUL ORDRE par SYMBOLE
// Boucle autour des ordres pour vérifier que le symbole n'apparaît pas plus d'une fois.
// Vérifiez le temps écoulé depuis la dernière entrée pour arrêter les entrées multiples sur la même barre.
if (0==1) // Interrupteur pour activer/désactiver la vérification de l'historique.
{
total=HistoryTotal() ;
si(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_HISTORY) ; //Il faut que ce soit le jour suivant et non le jour suivant.
if(OrderSymbol()==Symbol()&& CurTime()- OrderCloseTime() < (Period() * 60 )
)
{
return(0) ;
}}}}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
total=OrdersTotal() ;
si(total>0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) ;
if(OrderSymbol()==Symbol()) return(0) ;
}
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if(AccountFreeMargin()<(1000*Lots))
{Print("Nous n'avons pas d'argent. Marge libre = ", AccountFreeMargin()) ;
return(0);}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//################################################## #######################################
//RÈGLES D'ENTRÉE : LONGUEUR
if(SMAP2 MMAP2)
{
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0, "M axMin Long",16384,0,Orange) ; //Offre-(Point*(MinDist+2))
if(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES )) Print("Ordre BUY ouvert : ",OrderOpenPrice()) ;
}
else Print("Erreur lors de l'ouverture de l'ordre BUY : ",GetLastError()) ;
return(0) ;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//RÈGLES D'ENTRÉE : COURT //################################
if(SMAP2 > MMAP2 && SMAP1 < MMAP2)
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,0," MaxMin Short",16384,0,Red) ;
si(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES )) Print("Ordre SELL ouvert : ",OrderOpenPrice()) ;
}
else Print("Erreur lors de l'ouverture de l'ordre VENTE : ",GetLastError()) ;
return(0) ;
}
//################################################## ##################################
//############ Fin du programme #########################
return(0) ;
}