Indicateurs multitemporels - page 558

 

Je vais certainement y aller et vérifier. Merci !

mrtools:
Wccmcd, juste pour ajouter que le MegaTrend est une moyenne mobile de Hull ; il existe une version 4 tf postée ici https://www.mql5.com/en/forum/181187/page6; elle est colorée en fonction de la pente de Hull également.
 

Bonjour à tous mes amis

Je voudrais mettre la mq4 suivante à MTF.

Je voudrais que vous le réécriviez.

RVI mq4

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

//| Relativ Vigor Index.mq4 |

//| Copyright ゥ 2005, MetaQuotes Software Corp. |

//| Plate-forme de trading MetaTrader 5 / MetaQuotes Software Corp. |

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

#property copyright "Copyright ゥ 2005, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net/"

//---- paramètres de l'indicateur

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Green

#property indicator_color2 Red

//---- paramètres de l'indicateur

extern int ExtRVIPeriod=10 ;

//---- tampons de l'indicateur

double ExtRVIBuffer[] ;

double ExtRVISignalBuffer[] ;

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

//| Fonction d'initialisation de l'indicateur personnalisée |

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

int init()

{

//---- mappage des tampons d'indicateurs

SetIndexBuffer(0,ExtRVIBuffer) ;

SetIndexBuffer(1,ExtRVISignalBuffer) ;

//---- ligne d'indicateur

SetIndexStyle(0,DRAW_LINE) ;

SetIndexStyle(1,DRAW_LINE) ;

//---- paramètres de dessin

SetIndexDrawBegin(0,ExtRVIPeriod+3) ;

SetIndexDrawBegin(1,ExtRVIPeriod+7) ;

//---- nom pour l'étiquette de la DataWindow et de la sous-fenêtre de l'indicateur

IndicatorShortName("RVI("+ExtRVIPeriod+")") ;

SetIndexLabel(0, "RVI") ;

SetIndexLabel(1, "RVIS") ;

//---- initialisation terminée

retour(0) ;

}

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

//| Relativ Vigor Index |

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

int start()

{

int i,j,nLimit,nCountedBars ;

double dValueUp,dValueDown,dNum,dDeNum ;

//----

if(Bars<=ExtRVIPeriod+8) return(0) ;

//----

nCountedBars=IndicatorCounted() ;

//---- vérifier les erreurs éventuelles

if(nCountedBars<0) return(-1) ;

//---- dernière barre comptée sera recomptée

nLimit=Bars-ExtRVIPeriod-4 ;

si(nCountedBars>ExtRVIPeriod+4)

nLimit=Bars-nCountedBars ;

//---- RVI comptées dans le 1er tampon

for(i=0 ; i<=nLimit ; i++)

{

dNum=0.0 ;

dDeNum=0.0 ;

for(j=i ; j<i+ExtRVIPeriod ; j++)

{

dValueUp=((Close[j]-Open[j])+2*(Close[j+1]-Open[j+1])+2*(Close[j+2]-Open[j+2])+(Close[j+3]-Open[j+3]))/6;

dValueDown=((High[j]-Low[j])+2*(High[j+1]-Low[j+1])+2*(High[j+2]-Low[j+2])+(High[j+3]-Low[j+3]))/6;

dNum+=dValueUp ;

dDeNum+=dValueDown ;

}

si(dDeNum!=0.0)

ExtRVIBuffer=dNum/dDeNum ;

sinon

ExtRVIBuffer=dNum ;

}

//---- ligne de signal comptée dans le 2-ème tampon

nLimit=Bars-ExtRVIPeriod-7 ;

si(nCountedBars>ExtRVIPeriod+8)

nLimit=Bars-nCountedBars+1 ;

for(i=0 ; i<=nLimit ; i++)

ExtRVISignalBuffer=(ExtRVIBuffer+2*ExtRVIBuffer+2*ExtRVIBuffer+ExtRVIBuffer)/6 ;

//----

return(0) ;

}

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

 
yhkbtdy:
Salut à tous mes amis

Je voudrais mettre la mq4 suivante en MTF.

Je veux que vous le réécriviez.

RVI mq4

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

//| Relativ Vigor Index.mq4 |

//| Copyright ゥ 2005, MetaQuotes Software Corp. |

//| Plate-forme de trading MetaTrader 5 / MetaQuotes Software Corp. |

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

#property copyright "Copyright ゥ 2005, MetaQuotes Software Corp."

#property link "http://www.metaquotes.net/"

//---- paramètres de l'indicateur

#property indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Green

#property indicator_color2 Red

//---- paramètres de l'indicateur

extern int ExtRVIPeriod=10 ;

//---- tampons de l'indicateur

double ExtRVIBuffer[] ;

double ExtRVISignalBuffer[] ;

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

//| Fonction d'initialisation de l'indicateur personnalisée |

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

int init()

{

//---- mappage des tampons d'indicateurs

SetIndexBuffer(0,ExtRVIBuffer) ;

SetIndexBuffer(1,ExtRVISignalBuffer) ;

//---- ligne d'indicateur

SetIndexStyle(0,DRAW_LINE) ;

SetIndexStyle(1,DRAW_LINE) ;

//---- paramètres de dessin

SetIndexDrawBegin(0,ExtRVIPeriod+3) ;

SetIndexDrawBegin(1,ExtRVIPeriod+7) ;

//---- nom pour l'étiquette de la DataWindow et de la sous-fenêtre de l'indicateur

IndicatorShortName("RVI("+ExtRVIPeriod+")") ;

SetIndexLabel(0, "RVI") ;

SetIndexLabel(1, "RVIS") ;

//---- initialisation terminée

retour(0) ;

}

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

//| Relativ Vigor Index |

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

int start()

{

int i,j,nLimit,nCountedBars ;

double dValueUp,dValueDown,dNum,dDeNum ;

//----

if(Bars<=ExtRVIPeriod+8) return(0) ;

//----

nCountedBars=IndicatorCounted() ;

//---- vérifier les erreurs éventuelles

if(nCountedBars<0) return(-1) ;

//---- dernière barre comptée sera recomptée

nLimit=Bars-ExtRVIPeriod-4 ;

si(nCountedBars>ExtRVIPeriod+4)

nLimit=Bars-nCountedBars ;

//---- RVI comptées dans le 1er tampon

for(i=0 ; i<=nLimit ; i++)

{

dNum=0.0 ;

dDeNum=0.0 ;

for(j=i ; j<i+ExtRVIPeriod ; j++)

{

dValueUp=((Close[j]-Open[j])+2*(Close[j+1]-Open[j+1])+2*(Close[j+2]-Open[j+2])+(Close[j+3]-Open[j+3]))/6;

dValueDown=((High[j]-Low[j])+2*(High[j+1]-Low[j+1])+2*(High[j+2]-Low[j+2])+(High[j+3]-Low[j+3]))/6;

dNum+=dValueUp ;

dDeNum+=dValueDown ;

}

si(dDeNum!=0.0)

ExtRVIBuffer=dNum/dDeNum ;

sinon

ExtRVIBuffer=dNum ;

}

//---- ligne de signal comptée dans le 2-ème tampon

nLimit=Bars-ExtRVIPeriod-7 ;

si(nCountedBars>ExtRVIPeriod+8)

nLimit=Bars-nCountedBars+1 ;

for(i=0 ; i<=nLimit ; i++)

ExtRVISignalBuffer=(ExtRVIBuffer+2*ExtRVIBuffer+2*ExtRVIBuffer+ExtRVIBuffer)/6 ;

//----

return(0) ;

}

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

Salut Yhkbtdy,

Fait le rvi mtf..

Dossiers :
rvi__mtf.mq4  5 kb
rvi_mtf.png  52 kb
 
mrtools:
Salut Yhkbtdy, j'ai fait le rvi mtf...

C'est rapide !

Merci ! !

 
mrtools:
Salut Niqcom, j'ai ajouté le mtf.

Merci beaucoup

 

Bonjour MLaden & mrTools,

Pourriez-vous ajouter des flèches qui apparaissent sur l'écran des graphiques ? L'indien est joint.

THX beaucoup Marco

Dossiers :
 

Salut mrtools,

Enveloppes mtf ? ??

 

Hallo Mladen...

Pourriez-vous m'aider à ajouter le paramètre mtf ainsi que les alertes de cet indicateur ? Merci beaucoup pour votre excellent travail.

Dossiers :
 
casaliss:
Bonjour mrtools, Enveloppes mtf ? ??

Salut Casaliss,

J'ai ajouté le mtf aux enveloppes.

Dossiers :
 
koplak:
Hallo Mladen... Pourriez-vous m'aider à ajouter le paramètre mtf ainsi que les alertes de cet indicateur ? Merci beaucoup pour votre excellent travail.

koplak

Voici cette version. Certains problèmes possibles ont été résolus dans celle-ci et maintenant vous pouvez avoir des valeurs pour tout l'historique sans surcharger le CPU.

________________

PS : je n'ai pas remarqué l'ajout des "alertes". Cet indicateur est un multi time frame mais il n'a pas encore d'alertes (d'après la façon dont il fonctionne, ce n'est pas très clair ce que devrait être l'alerte exactement - nous pouvons imaginer avoir une faible et une forte baisse et une hausse des niveaux de rupture, mais alors il devrait être recodé en ce qui concerne les couleurs aussi).

Dossiers :