Bonjour,
Il y a t-il un site, en français si possible, où il n'y aurait que des indicateurs ? Je cherche un bête indicateur avec signal sonore qui m'indique le croisement de 2 moyennes mobiles simples.
Merci d'avance.
Ou trouver un site avec des indicateurs ?
Modérateur : Administrateurs
-
- Membre assidu
- Messages : 333
- Inscription : 10 oct. 2011, 21:51
-
- Membre assidu
- Messages : 333
- Inscription : 10 oct. 2011, 21:51
Re: Ou trouver un site avec des indicateurs ?
Pour ceux qui cherchent l'indicateur : http://www.forexticket.net/fr/topic/263 ... on-ss-mt4/
Pour savoir sur quelle paire et quelle UT au moment de l' alerte, remplacer :
Alert("Croisement à la hausse") ;
par Alert("Croisement à la hausse ","\n",Symbol(),"Période ",Period()) ;
Alert("Croisement à la Baisse") ;
par Alert("Croisement à la Baisse","\n",Symbol(),"Période ",Period()) ;
Et vous souhaitez sur les moyennes mobiles exponentielles il faut remplacer MODE_SMA par MODE_EMA
Pas testé en réel, je ne sais pas si il sonne.
Code : Tout sélectionner
//+------------------------------------------------------------------+
//| croisement de moyenne mobile.mq4 |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Croisement moyenne mobile.mq4 |
//| By Zed |
//| |
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue
//---- input parameters
extern int fastperiod=12;
extern int slowperiod=36;
extern bool EnableAlert=true;
//---- buffers
double val1[];
double val2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicator line
IndicatorBuffers(2);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,234);
SetIndexBuffer(0,val1);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,233);
SetIndexBuffer(1,val2);
//----
return(0);
}
//+------------------------------------------------------------------+
//| ema cross |
//+------------------------------------------------------------------+
int start()
{
int i,shift,counted_bars=IndicatorCounted();
double fastEma, slowEma,fastEmaPrev, slowEmaPrev;
bool IsLong=false;
bool IsShort=false;
int tendance;
for (shift = counted_bars; shift>=0; shift--)
{
fastEma = iMA(NULL,0,fastperiod,0,MODE_SMA,PRICE_CLOSE,shift);
slowEma = iMA(NULL,0,slowperiod,0,MODE_SMA,PRICE_CLOSE,shift);
fastEmaPrev = iMA(NULL,0,fastperiod,0,MODE_SMA,PRICE_CLOSE,shift+1);
slowEmaPrev = iMA(NULL,0,slowperiod,0,MODE_SMA,PRICE_CLOSE,shift+1);
val1[shift]=0;
val2[shift]=0;
if ((fastEma>slowEma)&&(fastEmaPrev<slowEmaPrev))
{
val1[shift]=0;
val2[shift]=Low[shift]-10*Point;
if ((EnableAlert)&&(shift==0))
{
Alert("Croisement à la Hausse");
}
}
if ((fastEma<slowEma)&&(fastEmaPrev>slowEmaPrev))
{
val1[shift]=High[shift]+10*Point;
val2[shift]=0;
if ((EnableAlert)&&(shift==0))
{
Alert("Croisement à la baisse");
}
}
}
return(0);
}
//+------------------------------------------------------------------+
Alert("Croisement à la hausse") ;
par Alert("Croisement à la hausse ","\n",Symbol(),"Période ",Period()) ;
Alert("Croisement à la Baisse") ;
par Alert("Croisement à la Baisse","\n",Symbol(),"Période ",Period()) ;
Et vous souhaitez sur les moyennes mobiles exponentielles il faut remplacer MODE_SMA par MODE_EMA
Pas testé en réel, je ne sais pas si il sonne.