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
TepeFinans
Voilà
Je voudrais juste expliquer pourquoi le nom est "générique" : je n'ai pas utilisé l'indicateur "par défaut" qui est fourni par metatrader mais j'utilise une version qui permet de lisser les valeurs et les signaux sur différentes périodes. Le lissage utilisé à la fois pour les valeurs et le signal est la moyenne mobile triangulaire (la moyenne mobile triangulaire "normale", pas celle centrée, donc il n'y a pas de recalcul) et est réglé par défaut pour être le même que l'indicateur intégré mais vous permet également d'expérimenter avec différentes longueurs de lissage.
Je joins un indicateur simple ainsi qu'une version avec mtf, alertes et lignes de divergence également. Joindre la "version simple" afin que cette version soit simplement comparable à l'indicateur intégré par défaut. Aussi, lors de la recherche de divergences, il pourrait être une bonne idée de désactiver le lissage des rvi (mettre la période de lissage à 1) car de cette façon le décalage de la valeur "raw rvi" est minimal et de cette façon l'identification des pics est beaucoup plus précise qu'en mode lissé, mais attention, il s'agit alors d'un "raw rvi" et non d'un rvi (voici une comparaison des divergences d'un rvi normal (en haut) et d'un "raw rvi" (en bas) - comme on peut le voir, le raw fait le travail de manière plus précise en ce qui concerne la divergence et de cette manière, la version "générique" devient un peu plus utile)
Salutations
Mladen
Bonjour Mladen
Indice de Vigueur Relative
Divergence
? ??Bonjour Mladen
Merci
TepeFinans
Voilà
Je voudrais juste expliquer pourquoi le nom est "générique" : je n'ai pas utilisé l'indicateur "par défaut" qui est fourni par metatrader mais j'utilise une version qui permet le lissage des valeurs et des signaux sur différentes périodes. Le lissage utilisé à la fois pour les valeurs et le signal est la moyenne mobile triangulaire (la moyenne mobile triangulaire "normale", pas celle centrée, donc il n'y a pas de recalcul) et est réglé par défaut pour être le même que l'indicateur intégré mais vous permet également d'expérimenter avec différentes longueurs de lissage.
Je joins un indicateur simple ainsi qu'une version avec mtf, alertes et lignes de divergence également. Joindre la "version simple" afin que cette version soit simplement comparable à l'indicateur intégré par défaut. Aussi, lors de la recherche de divergences, il pourrait être une bonne idée de désactiver le lissage des rvi (mettre la période de lissage à 1) car de cette façon le décalage de la valeur "raw rvi" est minimal et de cette façon l'identification des pics est beaucoup plus précise qu'en mode lissé, mais attention, il s'agit alors d'un "raw rvi" et non d'un rvi (voici une comparaison des divergences d'un rvi normal (en haut) et d'un "raw rvi" (en bas) - comme on peut le voir, le raw fait le travail de manière plus précise en ce qui concerne la divergence et de cette manière, la version "générique" devient un peu plus utile)
salutations
MladenQQE avancé
Ceci est une tentative de rendre un indicateur déjà utile un peu plus utile
Choses ajoutées à QQE : possibilité de choisir et de lisser (filtrer) le prix avant d'être utilisé dans le calcul et possibilité d'utiliser autre chose que le rsi intégré de metatrader. Le rsi intégré à metatrader diffère du rsi original de Welles Wilder et j'ai décidé de définir le type de rsi par défaut utilisé dans le calcul du QQE : le rsi de Wilder, pour plus d'une raison. Comme d'habitude, les méthodes rsi peuvent être
Mladen, Demande de renseignements
cher Mladen,
Pourrais-tu convertir l'indicateur qqe en barre colorée ? Comme le précédent.C
Merci d'avance
A vous,
khaliddxd
TepeFinans
Voilà
Je voudrais juste expliquer pourquoi le nom est "générique" : je n'ai pas utilisé l'indicateur "par défaut" qui est fourni par metatrader mais j'utilise une version qui permet de lisser les valeurs et les signaux sur différentes périodes. Le lissage utilisé à la fois pour les valeurs et le signal est la moyenne mobile triangulaire (la moyenne mobile triangulaire "normale", pas celle centrée, donc il n'y a pas de recalcul) et est réglé par défaut pour être le même que l'indicateur intégré mais vous permet également d'expérimenter avec différentes longueurs de lissage.
Je joins un indicateur simple ainsi qu'une version avec mtf, alertes et lignes de divergence également. Joindre la "version simple" afin que cette version soit simplement comparable à l'indicateur intégré par défaut. Aussi, lors de la recherche de divergences, il pourrait être une bonne idée de désactiver le lissage des rvi (mettre la période de lissage à 1) car de cette façon le décalage de la valeur "raw rvi" est minimal et de cette façon l'identification des pics est beaucoup plus précise qu'en mode lissé, mais attention, il s'agit alors d'un "raw rvi" et non d'un rvi (voici une comparaison des divergences d'un rvi normal (en haut) et d'un "raw rvi" (en bas) - comme on peut le voir, le raw fait le travail de manière plus précise en ce qui concerne la divergence et de cette manière, la version "générique" devient un peu plus utile)
salutations
Mladenflèches, s'il vous plaît ? (idem pour le nouveau QQE de Mladen s'il vous plaît)
Demande d'un autre nouvel indice
Mladen,
Voici une demande pour un autre nouvel indicateur appelé Mogalef bands.
Ce code a été rendu public en mai de cette année lors d'une réunion de traders.
Il existe maintenant différentes versions sur les forums : Ninja, PRT, GraphAT (voir documents joints)etc.
mais la version GrapAT semble correcte
Pourriez-vous faire une traduction Mql4 de ce code, je pense que tout le monde l'appréciera...
N'hésitez pas à faire vos propres modifications si nécessaire.
Merci
devinci
//=======================
// Mogalef Bands - GrapAT
//=======================
//1---- Weighted prices "Mogalef"
//
CP(0)=(High+Low+Open+2*Close)/5
//2---- linear regression Weighted prices P1 periods
//
If RangHisto>=P1 Then
somx = 0
somy = 0
somxx = 0
somxy = 0
For P1 Prices
somx = somx+RangPour
somy = somy+CP
somxx = somxx+RangPour*RangPour
somxy = somxy+RangPour*CP
EndFor
a = (P1*somxy-somx*somy)/(P1*somxx-somx*somx)
b = (somy-a*somx)/P1
MogRegLin = b + a*P1
EndIf
//3---Standard deviation of linear regression on P2 periods
//
If RangHisto>= P1+P2-1 Then
StanDev(0)=StandarDeviation(MogRegLin,P2)
EndIf
//4---- "Mogalef" Bands
//
If RangHisto>=P1+P2 Then
If MogRegLinMogB(1) // NO LAG if Lin Reg is within inside bands
Then
StanDev=StanDev(1)
MogM=MogM(1)
MogH=MogH(1)
MogB=MogB(1)
IfNot // shift/lag when computing new band values
MogM=MogRegLin
MogH=MogRegLin+P3*StanDev
MogB=MogRegLin-P3*StanDev
EndIf
EndIf
//end of code
**************************************************************************
other version:
{*********************************************************
Mogalef Bands easy language Multicharts
**********************************************************}
variables: var0(0), var1(0), HighBand(0), LowBand(0), Mediane(0);
var0 = LinearRegValue((Open+High+Low+(2*Close))/5,3,0);
var1 = StandardDev(var0,7,1);
if currentbar=8 then
begin
HighBand = var0 + 2*var1;
LowBand = var0 - 2*var1;
Mediane = var0;
end
else
if var0 HighBand then
begin
HighBand = var0 + 2*var1;
LowBand = var0 - 2*var1;
Mediane = var0;
end;
Plot1(HighBand,"HighBand");
Plot2(LowBand,"LowBand");
Plot3(Mediane,"Mediane");
*********************************************************
other version:
**************************
Mogalef Bands Ninja trader
**************************
#region Using declarations
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Xml.Serialization;
using NinjaTrader.Cbi;
using NinjaTrader.Data;
using NinjaTrader.Gui.Chart;
#endregion
// This namespace holds all indicators and is required. Do not change it.
namespace NinjaTrader.Indicator
{
///
/// Enter the description of your new custom indicator here
///
[Description("Enter the description of your new custom indicator here")]
public class MogalefBands : Indicator
{
#region Variables
// Wizard generated variables
// User defined variables (add any user defined variables below)
private DataSeries CPSerie, ESerie, FSerie;
private double nMedian = 0, nHigh = 0, nLow = 0;
private int LinRegPeriode = 3, StdDevPeriode = 7;
#endregion
///
/// This method is used to configure the indicator and is called once before any bar data is loaded.
///
protected override void Initialize()
{
Add(new Plot(Color.FromKnownColor(KnownColor.Orange), PlotStyle.Line, "MMedian"));
Add(new Plot(Color.FromKnownColor(KnownColor.Gray), PlotStyle.Line, "MHigh"));
Add(new Plot(Color.FromKnownColor(KnownColor.Gray), PlotStyle.Line, "MLow"));
Overlay = true;
CPSerie = new DataSeries( this );
ESerie = new DataSeries( this );
FSerie = new DataSeries( this );
}
///
/// Called on each bar update event (incoming tick)
///
protected override void OnBarUpdate()
{
// Use this method for calculating your indicator values. Assign a value to each
// plot below by replacing 'Close[0]' with your own formula.
if (CurrentBar < 8)
{
CPSerie.Set((Open[0] + High[0] + Low[0] + (2*Close[0]))/5);
nMedian = CPSerie[0];
nHigh = 0;
nLow = 0;
return;
}
CPSerie.Set((Open[0] + High[0] + Low[0] + (2*Close[0]))/5);
if (CurrentBar > 8 + StdDevPeriode)
{
FSerie.Set(LinReg(CPSerie,LinRegPeriode)[0]);
ESerie.Set(StdDev(FSerie,StdDevPeriode)[0]);
}
else
{
FSerie.Set(CPSerie[0]);
ESerie.Set(0);
}
if (FSerie[0] nHigh)
{
nMedian = FSerie[0];
nHigh = nMedian + (2*ESerie[0]);
nLow = nMedian - (2*ESerie[0]);
}
MMedian.Set(nMedian);
MHigh.Set(nHigh);
MLow.Set(nLow);
}
#region Properties
// this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries MMedian
{
get { return Values[0]; }
}
// this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries MHigh
{
get { return Values[1]; }
}
// this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries MLow
{
get { return Values[2]; }
}
[Description("")]
[Category("Parameters")]
[Gui.Design.DisplayName("LinReg periode")]
public int LinRegPERIODE
{
get { return LinRegPeriode; }
set { LinRegPeriode = Math.Max(1, value); }
}
[Description("")]
[Category("Parameters")]
[Gui.Design.DisplayName("StdDev periode")]
public int StdDevPERIODE
{
get { return StdDevPeriode; }
set { StdDevPeriode = Math.Max(1, value); }
}
#endregion
}
}
******************************************************************
******************************************************************devinci
Voilà J'ai utilisé les paramètres par défaut qu'ils utilisent et ajouté le prix qu'ils utilisent (le (High+Low+Open+2*Close)/5 qui n'existe pas dans metatrader) Utilisez 8 dans le paramètre BandsPrice pour obtenir ce prix.
PS : J'ai édité votre post afin de le rendre "visuellement plus court". Rien d'autre n'a été modifié. J'espère que cela ne vous dérange pas
Salutations
Mladen
Mladen,
Voici une demande pour un autre nouvel indicateur appelé bandes Mogalef.
Ce code a été rendu public en mai de cette année lors d'une réunion de traders.
Il y a différentes versions sur les forums pour cet indicateur maintenant : Ninja, PRT, GraphAT (voir documents joints)etc.
mais la version GrapAT semble correcte
Pourriez-vous faire une traduction Mql4 de ce code, je pense que tout le monde l'appréciera...
N'hésitez pas à faire vos propres modifications si nécessaire.
Merci
devinci
//=======================
// Mogalef Bands - GrapAT
//=======================
//1---- Weighted prices "Mogalef"
//
CP(0)=(High+Low+Open+2*Close)/5
//2---- linear regression Weighted prices P1 periods
//
If RangHisto>=P1 Then
somx = 0
somy = 0
somxx = 0
somxy = 0
For P1 Prices
somx = somx+RangPour
somy = somy+CP
somxx = somxx+RangPour*RangPour
somxy = somxy+RangPour*CP
EndFor
a = (P1*somxy-somx*somy)/(P1*somxx-somx*somx)
b = (somy-a*somx)/P1
MogRegLin = b + a*P1
EndIf
//3---Standard deviation of linear regression on P2 periods
//
If RangHisto>= P1+P2-1 Then
StanDev(0)=StandarDeviation(MogRegLin,P2)
EndIf
//4---- "Mogalef" Bands
//
If RangHisto>=P1+P2 Then
If MogRegLinMogB(1) // NO LAG if Lin Reg is within inside bands
Then
StanDev=StanDev(1)
MogM=MogM(1)
MogH=MogH(1)
MogB=MogB(1)
IfNot // shift/lag when computing new band values
MogM=MogRegLin
MogH=MogRegLin+P3*StanDev
MogB=MogRegLin-P3*StanDev
EndIf
EndIf
//end of code
**************************************************************************
other version:
{*********************************************************
Mogalef Bands easy language Multicharts
**********************************************************}
variables: var0(0), var1(0), HighBand(0), LowBand(0), Mediane(0);
var0 = LinearRegValue((Open+High+Low+(2*Close))/5,3,0);
var1 = StandardDev(var0,7,1);
if currentbar=8 then
begin
HighBand = var0 + 2*var1;
LowBand = var0 - 2*var1;
Mediane = var0;
end
else
if var0 HighBand then
begin
HighBand = var0 + 2*var1;
LowBand = var0 - 2*var1;
Mediane = var0;
end;
Plot1(HighBand,"HighBand");
Plot2(LowBand,"LowBand");
Plot3(Mediane,"Mediane");
*********************************************************
other version:
**************************
Mogalef Bands Ninja trader
**************************
#region Using declarations
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Xml.Serialization;
using NinjaTrader.Cbi;
using NinjaTrader.Data;
using NinjaTrader.Gui.Chart;
#endregion
// This namespace holds all indicators and is required. Do not change it.
namespace NinjaTrader.Indicator
{
///
/// Enter the description of your new custom indicator here
///
[Description("Enter the description of your new custom indicator here")]
public class MogalefBands : Indicator
{
#region Variables
// Wizard generated variables
// User defined variables (add any user defined variables below)
private DataSeries CPSerie, ESerie, FSerie;
private double nMedian = 0, nHigh = 0, nLow = 0;
private int LinRegPeriode = 3, StdDevPeriode = 7;
#endregion
///
/// This method is used to configure the indicator and is called once before any bar data is loaded.
///
protected override void Initialize()
{
Add(new Plot(Color.FromKnownColor(KnownColor.Orange), PlotStyle.Line, "MMedian"));
Add(new Plot(Color.FromKnownColor(KnownColor.Gray), PlotStyle.Line, "MHigh"));
Add(new Plot(Color.FromKnownColor(KnownColor.Gray), PlotStyle.Line, "MLow"));
Overlay = true;
CPSerie = new DataSeries( this );
ESerie = new DataSeries( this );
FSerie = new DataSeries( this );
}
///
/// Called on each bar update event (incoming tick)
///
protected override void OnBarUpdate()
{
// Use this method for calculating your indicator values. Assign a value to each
// plot below by replacing 'Close[0]' with your own formula.
if (CurrentBar < 8)
{
CPSerie.Set((Open[0] + High[0] + Low[0] + (2*Close[0]))/5);
nMedian = CPSerie[0];
nHigh = 0;
nLow = 0;
return;
}
CPSerie.Set((Open[0] + High[0] + Low[0] + (2*Close[0]))/5);
if (CurrentBar > 8 + StdDevPeriode)
{
FSerie.Set(LinReg(CPSerie,LinRegPeriode)[0]);
ESerie.Set(StdDev(FSerie,StdDevPeriode)[0]);
}
else
{
FSerie.Set(CPSerie[0]);
ESerie.Set(0);
}
if (FSerie[0] nHigh)
{
nMedian = FSerie[0];
nHigh = nMedian + (2*ESerie[0]);
nLow = nMedian - (2*ESerie[0]);
}
MMedian.Set(nMedian);
MHigh.Set(nHigh);
MLow.Set(nLow);
}
#region Properties
// this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries MMedian
{
get { return Values[0]; }
}
// this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries MHigh
{
get { return Values[1]; }
}
// this line prevents the data series from being displayed in the indicator properties dialog, do not remove
[XmlIgnore()] // this line ensures that the indicator can be saved/recovered as part of a chart template, do not remove
public DataSeries MLow
{
get { return Values[2]; }
}
[Description("")]
[Category("Parameters")]
[Gui.Design.DisplayName("LinReg periode")]
public int LinRegPERIODE
{
get { return LinRegPeriode; }
set { LinRegPeriode = Math.Max(1, value); }
}
[Description("")]
[Category("Parameters")]
[Gui.Design.DisplayName("StdDev periode")]
public int StdDevPERIODE
{
get { return StdDevPeriode; }
set { StdDevPeriode = Math.Max(1, value); }
}
#endregion
}
}
******************************************************************
******************************************************************Bandes Mogalef
Mladen,
Merci beaucoup, c'est parfait.
Bonne journée à tous
devinci
Et maintenant un histo si possible s'il vous plaît
Bonjour Mladen,
Pouvez-vous s'il vous plaît faire à partir de 2 QQE avancés dans différents cadres temporels le même histogramme que vous avez fait auparavant avec le QQE simple (avec des barres rouges, vertes et grises).
Merci d'avance
Bandes Mogalef
BTW Belle description des Mogalef Bands et de leur utilisation ici http://www.whselfinvest.com/en/trading_strategies_26_Mogalef_Bands.php Enjoy.