T3 - page 15

 
SVGuss:
Salut les gars,

Je ne sais pas du tout coder, mais j'ai réussi à combiner ces deux indicateurs que j'aime (l'un fait par fxbs, l'autre je ne sais pas), donc en gros vous avez un T3MA qui change de couleur, pas quand son angle change (comme dans All_Averages_V2.2), mais quand il est pénétré par le prix.

L'indie RoundPrice est nécessaire pour que Ma_RoundPrice fonctionne.

Profitez-en.

Cher SVGuss

L'indicateur ne fonctionne pas, j'ai essayé de le compiler sur l'éditeur mt4 mais j'ai un message d'erreur comme ceci : variable "breakBars" non définie.

Une idée de la façon dont il peut être corrigé ?

Salutations

Dan

 
dansmol:
Cher SVGuss

L'indicateur ne fonctionne pas, j'ai essayé de le compiler sur l'éditeur de mt4 mais j'ai un message d'erreur comme celui-ci : variable "breakBars" non définie.

Une idée sur la façon de le corriger ?

Salutations

Dan

Bonjour dansmol,

Voici la correction ; Vous devez aussi avoir `RoundPriceNE_big_mod[5dig]` dans le dossier de l'indicateur. (Désolé, je n'ai pas le fichier mq4).

Bon WE

Tomcat

 
mladen:
Boxter

Je sais ce qui est arrivé à l'indicateur du post (il a été supprimé quand j'étais "trop content" un jour avec le beau travail de tro, et il a été supprimé par moi) mais maintenant je ne peux pas trouver cette version sur mon PC (c'était il y a longtemps, longtemps ...)

Quoi qu'il en soit, dans l'intervalle, metatrader a réussi à corriger le bug qu'ils avaient avec la fonction iStdDevOnArray(), de sorte que l'indicateur original peut être utilisé maintenant puisqu'il n'y a plus besoin d'une fonction iStdDevOnArray() personnalisée distincte

Salutations

Mladen

Salut,

Celui-là ?

KAMA dans le dossier indicator

PriceSeries dans le dossier include.

J'espère que cela vous aidera.

Bon WE.

Tomcat

Dossiers :
kama.mq4  7 kb
 

Tomcat

Ce n'est pas le bon (mon indicateur avait un calcul de déviation personnalisé qui remplaçait la fonction intégrée "on array") mais merci quand même.

Comme je l'ai dit, le besoin d'un calcul de déviation personnalisé n'existe plus depuis que cette erreur dans metatrader a été corrigée dans une des mises à jour, donc le besoin de cette version de l'indicateur de moyenne mobile adaptative de Kaufman n'existe plus non plus.

Salutations

Mladen

Tomcat98:
Salut,

Celui-là ?

KAMA dans le dossier indicator

PriceSeries dans le dossier include.

J'espère que cela vous aidera.

Bon WE à vous.

Tomcat
 
Tomcat98:
Salut dansmol,

Voici la correction ; Vous devez aussi avoir `RoundPriceNE_big_mod[5dig]` dans le dossier de l'indicateur. ( Désolé , je n'ai pas le fichier mq4)

Bon WE

Tomcat

MERCI BEAUCOUP TOMCAT98

REGARDS

Dan

 

Calculer t3_clean à partir de l'EA, et non de l'indicateur

Bonjour à tous ! Je voudrais pouvoir calculer différentes valeurs de t3_clean à partir de l'EA et non de l'indicateur. Ainsi je peux manipuler le dernier prix utilisé pour calculer l'indicateur. J'utilise : t3_clean de mladen à https://www.mql5.com/en/forum/173058/page4.

Toute aide serait fantastique.

 

donc dans le code t3_clean nous avons ce bloc de code :

double CalculateT3(int limit,int period,int priceType)

{

Print("This is the data in the T3"+"\t "+limit+"\t "+period+"\t "+priceType);

Print("Info Indicator from the Indicator "+IndicatorCounted() );

if (t3.period != period)

{

t3.period = period;

b2 = b*b;

b3 = b2*b;

c1 = -b3;

c2 = (3*(b2+b3));

c3 = -3*(2*b2+b+b3);

c4 = (1+3*b+b3+3*b2);

w1 = 2 / (2 + 0.5*(MathMax(1,period)-1));

w2 = 1 - w1;

}

//

//

//

//

//

for(int i=limit; i>=0; i--)

{

if(i == index_posi)

{

//v_manipul=

double price = v_manipul;

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

}else{

price = iMA(NULL,0,1,0,MODE_SMA,priceType,i);

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

}

}

}[/CODE]

I am trying to adapt it inside an Expert so it can be call to calculate any t3_clean value on demand, by changing the last bar value. e.g, the t3 for the bar 83.8167 is 85.9751; what if the bar was 81 and not 83 ? ect..., so so far, this is my code :

[CODE]

double CalculateT3(int limit,int period,int priceType,int index_posi, double v_manipul, int index_i)

{

double t3Array[];

double ae1[];

double ae2[];

double ae3[];

double ae4[];

double ae5[];

double ae6[];

ArrayResize( t3Array, limit);

ArrayResize( ae1, limit);

ArrayResize( ae2, limit);

ArrayResize( ae3, limit);

ArrayResize( ae4, limit);

ArrayResize( ae5, limit);

ArrayResize( ae6, limit);

Print("This is the data in the T3 FROM THE EA >>>>>> "+"\t "+limit+"\t "+period+"\t "+priceType);

Print("Info Indicator from the Indicator FROM THE EA <<<<<<<< "+IndicatorCounted() );

if (t3.period != period)

{

t3.period = period;

b2 = b*b;

b3 = b2*b;

c1 = -b3;

c2 = (3*(b2+b3));

c3 = -3*(2*b2+b+b3);

c4 = (1+3*b+b3+3*b2);

w1 = 2 / (2 + 0.5*(MathMax(1,period)-1));

w2 = 1 - w1;

}

Print("Voici w in the EA A VOIT XXXXXXXXX>>>XXXX<<>>"+w2+" "+w1);

//

//

//

//

//

for(int i=limit; i>=0; i--)

{

if(i == index_posi)

{

//v_manipul=

double price = v_manipul;

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

Print("PREMIERE ETAPE DATA DANS LARRAY ]]]]]]]]]]]]]]}}}}} "+t3Array);

}else{

price = iMA(NULL,0,1,0,MODE_SMA,priceType,i);

e1 = w1*price + w2*ae1;

e2 = w1*e1 + w2*ae2;

e3 = w1*e2 + w2*ae3;

e4 = w1*e3 + w2*ae4;

e5 = w1*e4 + w2*ae5;

e6 = w1*e5 + w2*ae6;

t3Array=c1*e6 + c2*e5 + c3*e4 + c4*e3;

ae1 = e1;

ae2 = e2;

ae3 = e3;

ae4 = e4;

ae5 = e5;

ae6 = e6;

double op = c1*e6 + c2*e5 + c3*e4 + c4*e3;

Print("DEUXIEME ETAPE DATA DANS LARRAY ]]]]]]]]]]]]]]}}}}} "+op);

Print("SHOW ME PRICE "+ ae1[0]);

}

}

return (t3Array);

}

et cela ne fonctionne pas du tout...quelqu'un peut aider ?

 

Oscillateur T3 ...

J'ai d'abord pensé faire une version de l'awesome oscillator en utilisant T3, mais ensuite, quand je l'ai essayé, il s'est avéré qu'avec l'awesome oscillator calculant les longueurs (5,14) c'est trop rapide. J'ai donc décidé d'ouvrir les longueurs en tant que paramètres et d'utiliser d'autres longueurs de calcul par défaut.

Voici à quoi cela ressemble avec les paramètres par défaut maintenant :

Dossiers :
 
mladen:
J'ai d'abord pensé à faire une version de l'oscillateur génial en utilisant T3, mais ensuite, quand je l'ai essayé, il s'est avéré qu'avec l'oscillateur génial calculant les longueurs (5,14) c'est trop rapide. J'ai donc décidé d'ouvrir les longueurs en tant que paramètres et d'utiliser d'autres longueurs de calcul par défaut.

Voici à quoi cela ressemble avec les paramètres par défaut maintenant :

Avec les paramètres fast/slow : 6/12 sur un graphique renko c'est magnifique, ça pourrait être une stratégie "simple".

Merci mladen !

 

Et une autre version T3 : T3 GMMA

Pour la partie courte (périodes plus courtes - plus rapides), réglez le paramètre ShowLongGmma sur false. Pour la partie longue (périodes plus longues - plus lentes), réglez-le sur true et, en combinant les 2, vous pouvez obtenir quelque chose comme ceci :

Dossiers :
t3_gmma.gif  29 kb
t3_gmma.mq4  5 kb
Raison: