Le système de trading Murrey Math - page 165

 

J'aime beaucoup ces cercles de conflit et j'aimerais l'appliquer sur mes graphiques MT4. Existe-t-il une version qui fonctionne ? Xard777 en avait fait une il y a des années mais la bibliothèque de timeframe contient des tableaux qui sont illisibles pour le MetaEditor de ces jours. J'ai essayé, mais je n'arrive pas à le faire fonctionner.

 
krelian99:
J'aime beaucoup ces cercles de conflit et j'aimerais l'appliquer sur mes graphiques MT4. Existe-t-il une version qui fonctionne ? Xard777 en avait fait une il y a des années mais la bibliothèque timeframe contient des tableaux qui sont illisibles pour le MetaEditor de ces jours. J'ai essayé, mais je n'arrive pas à le faire fonctionner.

krelian99

De quel code exact parlez-vous ?

 

J'ai écrit un MP à Xard777 sur un autre forum et ici, mais il ne s'est pas manifesté jusqu'à maintenant. J'ai eu du temps et maintenant je lis l'en-tête. Honte à moi (j'aurais pu vous demander plus tôt). The Murray Math files(http://www.forexfactory.com/showthre...73#post4071573) est un co( ?)-work de vous, mladen, Xard777, igor et al.

Sur la page suivante du forum lié se trouve la vilaine bibliothèque : TimeFrameLib-v0.3.ex4

Je suppose qu'elle vient de la même équipe que les fichiers MM. Pouvez-vous faire quelque chose, mladen ?

 

Bonjour, j'essaie d'en savoir plus sur la programmation MQL4, principalement en modifiant les indicateurs existants, c'est-à-dire en ajoutant des alertes, des signaux supplémentaires, en changeant les couleurs et la forme.

signaux supplémentaires, changer les couleurs et la forme.

Je suis sûr que la question suivante doit être facile pour la plupart d'entre vous, mais j'ai déjà essayé la moitié de la journée, et je vous assure que j'ai essayé de trouver la solution par moi-même...

de trouver la solution par moi-même...

---

Comment "réinitialiser" un indicateur comme la ligne Murrey Math ?

---

et une autre grande question

---

Quand l'indicateur doit-il être "ré-initialisé" après plusieurs périodes (16, 32, 64, 96) ?

Mais que se passe-t-il si le graphique sort totalement de la plage Murrey (dans la période de temps) ?

Comment faire face à cela ?

---

Voici quelques idées que j'ai essayées, et qui n'ont pas fonctionné.

Aperçu-Version(indicateur complet joint)

-----------------------------

extern int FirstBar = 0 ;

extern int periodtotake = 16 ;

extern int SomeVar = 0 ;

int bn_v1 = 0,

bn_v2 = 0,

shift = 0,

i2 = 0, //qu'est-ce que c'est ?

WorkTime = 0, // <---

CurPeriods = 0 ; // <---

//NewPeriod = 0 ; //Neutraliser les essais inutiles

int init()

{

//WorkTime = Time[0] ; //mauvaise position

//CurPeriods = Period() ; //wrongPosition

//NewPeriod = periodtotake ; //ignore un essai inutile

//----

return(0) ;

}

//+------------------------------------------------------------------+

//| Fonction de désinitialisation de l'indicateur de garde |

//+------------------------------------------------------------------+

int deinit()

{

//---- TODO : ajoutez votre code ici

ObjectsDeleteAll(0, OBJ_HLINE) ;

ObjectsDeleteAll(0, OBJ_VLINE) ; //VLINE ajoutée

ObjectDelete(VLine_0) ;

ObjectDelete(VLine_1) ;

ObjectDelete(VLine_2) ;

int count=ArraySize(textArray) ;

for(int ch=0;ch<count;ch++) {

ObjectDelete(textArray[ch]) ;

ObjectDelete(lineArray[ch]) ;

}

//ObjectsDeleteAll(0, OBJ_TEXT) ;

//----

return(0) ;

}

//+------------------------------------------------------------------+

//| Fonction d'itération de l'indicateur personnalisé |

//+------------------------------------------------------------------+

int start()

{

if( (WorkTime != Time[0]) || (CurPeriods != Period()) ) // <--- !!!

{

//prix

bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar ) ;

bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar ) ;

v1 = Bas ;

v2 = Haut ;

//+------------------------------------------------------------------+

// Tous les calculs

//+------------------------------------------------------------------+

// FIN - ici je fais tout de travers

WorkTime = Time[0] ;

CurPeriods = Période() ;

}

//if( Time[periodtotake] >= periodtotake )

//if( CurPeriods>= periodtotake )

//{

// WindowRedraw() ;

//}

//seulement

//{

// WindowRedraw() ;

//}

//----

return(0) ;

}

Si vous avez le temps, écrivez quelques mots d'explication (pourquoi ça marche et pourquoi ça ne marche pas, ou quelques mots-clés pour indiquer la partie de la référence à laquelle je devrais m'intéresser).

référence que je devrais examiner de plus près),

Oh, si je veux seulement avoir un Murrey rafraîchissant qui fonctionne, j'utiliserais Murrey_Math_Line_X, mais il s'agit aussi d'apprendre...

L'indicateur complet (en cours de réalisation) est joint.

Merci beaucoup pour votre temps, j'essaierai de "donner quelque chose en retour" dès que mes connaissances vaudront la peine d'être partagées ;-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4

 
hallo5534:
Bonjour, J'essaie d'en savoir plus sur la programmation de MQL4, principalement en modifiant des indicateurs existants, c'est-à-dire en ajoutant des alertes, des éléments supplémentaires, etc.

des signaux, changeant de couleur et de forme.

Je suis sûr que la prochaine question doit être facile pour la plupart d'entre vous, mais j'ai déjà essayé la moitié de la journée, et je vous assure que j'ai essayé de trouver la solution par moi-même...

de trouver la solution par moi-même...

---

Comment "réinitialiser" un indicateur comme la ligne Murrey Math ?

---

et une autre grande question

---

Quand l'indicateur doit-il être "ré-initialisé" après plusieurs périodes (16, 32, 64, 96) ?

Mais que se passe-t-il si le graphique sort totalement de la plage Murrey (dans la période de temps) ?

Comment faire face à cela ?

---

Voici quelques idées que j'ai essayées, et qui n'ont pas fonctionné.

Aperçu-Version(indicateur complet joint)

-----------------------------

extern int FirstBar = 0 ;

extern int periodtotake = 16 ;

extern int SomeVar = 0 ;

int bn_v1 = 0,

bn_v2 = 0,

shift = 0,

i2 = 0, //qu'est-ce que c'est ?

WorkTime = 0, // <---

CurPeriods = 0 ; // <---

//NewPeriod = 0 ; //Neutraliser les essais inutiles

int init()

{

//WorkTime = Time[0] ; //mauvaise position

//CurPeriods = Period() ; //wrongPosition

//NewPeriod = periodtotake ; //ignore un essai inutile

//----

return(0) ;

}

//+------------------------------------------------------------------+

//| Fonction de désinitialisation de l'indicateur de garde |

//+------------------------------------------------------------------+

int deinit()

{

//---- TODO : ajoutez votre code ici

ObjectsDeleteAll(0, OBJ_HLINE) ;

ObjectsDeleteAll(0, OBJ_VLINE) ; //VLINE ajoutée

ObjectDelete(VLine_0) ;

ObjectDelete(VLine_1) ;

ObjectDelete(VLine_2) ;

int count=ArraySize(textArray) ;

for(int ch=0;ch<count;ch++) {

ObjectDelete(textArray[ch]) ;

ObjectDelete(lineArray[ch]) ;

}

//ObjectsDeleteAll(0, OBJ_TEXT) ;

//----

return(0) ;

}

//+------------------------------------------------------------------+

//| Fonction d'itération de l'indicateur personnalisé |

//+------------------------------------------------------------------+

int start()

{

if( (WorkTime != Time[0]) || (CurPeriods != Period()) ) // <--- !!!

{

//prix

bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar ) ;

bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar ) ;

v1 = Bas ;

v2 = Haut ;

//+------------------------------------------------------------------+

// Tous les calculs

//+------------------------------------------------------------------+

// FIN - ici je fais tout de travers

WorkTime = Time[0] ;

CurPeriods = Période() ;

}

//if( Time[periodtotake] >= periodtotake )

//if( CurPeriods>= periodtotake )

//{

// WindowRedraw() ;

//}

//seulement

//{

// WindowRedraw() ;

//}

//----

return(0) ;

}

Si vous avez le temps, écrivez quelques mots d'explication (pourquoi ça marche et pourquoi ça ne marche pas, ou quelques mots-clés pour indiquer la partie de la référence à laquelle je devrais m'intéresser).

référence que je devrais examiner de plus près),

Oh, si je veux seulement avoir un Murrey rafraîchissant qui fonctionne, j'utiliserais Murrey_Math_Line_X, mais il s'agit aussi d'apprendre...

L'indicateur complet (en cours de réalisation) est joint.

Merci beaucoup pour votre temps, j'essaierai de "rendre la pareille" dès que mes connaissances seront dignes d'être partagées ;-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4

Vous ne pouvez pas réinitialiser un code mql si vous ne changez pas les paramètres, le symbole ou le cadre temporel.

 
hallo5534:
Bonjour, j'essaie d'en savoir plus sur la programmation de MQL4, principalement en modifiant des indicateurs existants, par exemple en ajoutant des alertes, des indicateurs supplémentaires, etc.

des signaux, changeant de couleur et de forme.

Je suis sûr que la prochaine question doit être facile pour la plupart d'entre vous, mais j'ai déjà essayé la moitié de la journée, et je vous assure que j'ai essayé de trouver la solution par moi-même...

de trouver la solution par moi-même...

---

Comment "réinitialiser" un indicateur comme la ligne Murrey Math ?

---

et une autre grande question

---

Quand l'indicateur doit-il être "ré-initialisé" après plusieurs périodes (16, 32, 64, 96) ?

Mais que se passe-t-il si le graphique sort totalement de la plage Murrey (dans la période de temps) ?

Comment faire face à cela ?

---

Voici quelques idées que j'ai essayées, et qui n'ont pas fonctionné.

Aperçu-Version(indicateur complet joint)

-----------------------------

extern int FirstBar = 0 ;

extern int periodtotake = 16 ;

extern int SomeVar = 0 ;

int bn_v1 = 0,

bn_v2 = 0,

shift = 0,

i2 = 0, //qu'est-ce que c'est ?

WorkTime = 0, // <---

CurPeriods = 0 ; // <---

//NewPeriod = 0 ; //Neutraliser les essais inutiles

int init()

{

//WorkTime = Time[0] ; //mauvaise position

//CurPeriods = Period() ; //wrongPosition

//NewPeriod = periodtotake ; //ignore un essai inutile

//----

return(0) ;

}

//+------------------------------------------------------------------+

//| Fonction de désinitialisation de l'indicateur de garde |

//+------------------------------------------------------------------+

int deinit()

{

//---- TODO : ajoutez votre code ici

ObjectsDeleteAll(0, OBJ_HLINE) ;

ObjectsDeleteAll(0, OBJ_VLINE) ; //VLINE ajoutée

ObjectDelete(VLine_0) ;

ObjectDelete(VLine_1) ;

ObjectDelete(VLine_2) ;

int count=ArraySize(textArray) ;

for(int ch=0;ch<count;ch++) {

ObjectDelete(textArray[ch]) ;

ObjectDelete(lineArray[ch]) ;

}

//ObjectsDeleteAll(0, OBJ_TEXT) ;

//----

return(0) ;

}

//+------------------------------------------------------------------+

//| Fonction d'itération de l'indicateur personnalisé |

//+------------------------------------------------------------------+

int start()

{

if( (WorkTime != Time[0]) || (CurPeriods != Period()) ) // <--- !!!

{

//prix

bn_v1 = Lowest( NULL, 0, MODE_LOW, periodtotake+SomeVar, FirstBar ) ;

bn_v2 = Highest( NULL, 0, MODE_HIGH, periodtotake+SomeVar, FirstBar ) ;

v1 = Bas ;

v2 = Haut ;

//+------------------------------------------------------------------+

// Tous les calculs

//+------------------------------------------------------------------+

// FIN - ici je fais tout de travers

WorkTime = Time[0] ;

CurPeriods = Période() ;

}

//if( Time[periodtotake] >= periodtotake )

//if( CurPeriods>= periodtotake )

//{

// WindowRedraw() ;

//}

//seulement

//{

// WindowRedraw() ;

//}

//----

return(0) ;

}

Si vous avez le temps, écrivez quelques mots d'explication (pourquoi ça marche et pourquoi ça ne marche pas, ou quelques mots-clés pour indiquer la partie de la référence à laquelle je devrais m'intéresser).

référence que je devrais examiner de plus près),

Oh, si je veux seulement avoir un Murrey rafraîchissant qui fonctionne, j'utiliserais Murrey_Math_Line_X, mais il s'agit aussi d'apprendre...

L'indicateur complet (en cours de réalisation) est joint.

Merci beaucoup pour votre temps, j'essaierai de "rendre la pareille" dès que mes connaissances seront dignes d'être partagées ;-)murrey2-z---murreymath-timeframe-colorless5d-fresh.mq4

Morro a raison : la réinitialisation n'est pas une option.

Mais aussi, vous n'avez pas besoin d'un WindowRedraw() riht avant la sortie de la procédure de démarrage - il sera redessiné indépendamment de la fonction. Vous avez besoin de WindowRedraw() seulement si le traitement prend du temps ou si vous gardez quelque chose dans une boucle morte.

 
poster:
Indicateur M-MATH v3 m-math_v3.rar

Avez-vous cet indicateur qui fonctionne avec la nouvelle version ? Je ne parviens pas à le charger sur mon graphique.

 

Pour la nouvelle version : m-math_v3.mq4

Dossiers :
m-math_v3.mq4  23 kb
 

merci, excellent système

 

Niveaux de rebondissement de Murrey

emurreyreboundlevels.ex4

Dossiers :
Raison: