Indicateurs multitemporels - page 414

 

Mrtools

Serait-il possible pour vous d'ajouter l'option MTF dans cet indicateur ?

Merci d'avance

new_sfractals.mq4

Dossiers :
 

Je pense que mrtools est au repos ce week-end donc voici cette version.

affandiz:
Mrtools

Serait-il possible pour vous d'ajouter l'option MTF dans cet indicateur ?

Merci d'avance

new_sfractals.mq4
Dossiers :
 

Demande d'aide à la programmation

mladen:
Version multi-temporelle de l'indicateur Stochastic of T3 (celui qui a été posté à l'origine ici : Stochastic Oscillator ) avec quelques explications sur ce qu'il est exactement et comment il fonctionne.

Bonjour Mladen,

J'ai voulu ajouter des flèches et des alertes lorsque la ligne principale croise la ligne de signal de cet indicateur en utilisant les routines correspondantes de vos autres codes d'indicateurs mais je n'ai pas réussi à le faire fonctionner.

Pourriez-vous s'il vous plaît m'aider, ce qui est faux dans ma tentative ?

Merci,

Chrisstoff

 

Merci.

mrtools:
Bonjour Chrisstoff, Vous étiez proche, voici une version corrigée. Vous le verrez probablement dans le code mieux que je ne l'explique, mon explication n'est pas très bonne parfois.

Bonjour MrTools,

Merci pour votre aide, elle est très appréciée. Bon, j'ai déjà regardé le code et vu certaines de mes erreurs...

Salutations,

Chrisstoff

 
mrtools:
Bonjour Chrisstoff, Vous étiez proche, voici une version corrigée. Vous le verrez probablement dans le code mieux que je ne l'explique, mes explications ne sont pas très bonnes parfois.

merci pour cela

 
mladen:
Je pense que mrtools est au repos ce week-end donc voici cette version

merci beaucoup...

 
mladen:
Je pense que mrtools se repose ce week-end alors voici cette version

Salut mladen, est-il possible de faire en sorte que l'indicateur montre plus de flèches comme dans la deuxième image ?

j'ai essayé de créer un indicateur mtf en utilisant icustom comme ci-joint mais mon ordinateur portable est bloqué.

merci d'avance

mtf_sfractals_alert.mq4

Dossiers :
 

Multipaire Multitimeframe

MLaden, MrTools et tous les autres ?

J'ai un indicateur personnalisé multi-paires multi-trames que j'ai écrit. Je stocke mes paires dans un tableau de paires et les cadres temporels dans un tableau de sessions. Ce que je veux faire, c'est calculer initialement la première douzaine de barres, de 0 à 12, d'un appel iCustom à un MACD spécial que j'ai écrit, puis déterminer les croisements MACD zéro et les croisements MACD signal pendant cette période. Par la suite, je n'ai besoin d'effectuer les appels iCustom que pour les barres non comptées.

Donc, je calcule les barres comptées et la limite de la manière standard et ensuite je fais un MathMin sur la limite et 12. Ensuite, 3 boucles sont configurées, une pour la paire, une pour l'intervalle de temps et une pour les barres à calculer.

Ce que je constate, c'est que la limite initiale de 12 est appelée 4 fois pour une paire (pas toujours la même paire et pas la paire graphique), puis la paire graphique est appelée une fois pour la même barre, puis les calculs sont réinitialisés et la limite de l'intervalle de temps passe de 12 à 2. Après cela, les diagnostics d'impression montrent généralement que les paires montent par leur indice. Cependant, il y a de nombreux cas où il y a un écart d'indice ou une réinitialisation de l'indice ou même parfois une seule ligne du diagnostic.

Quelqu'un peut-il expliquer ce qui se passe ? Ce problème est-il causé par des ticks entrants, soit dans la fenêtre graphique, soit dans les deux appels iCustom ? Que se passe-t-il lorsqu'un indicateur est au milieu de ses calculs et qu'un autre tic arrive ? Je pensais que l'indicateur avait terminé et que ce tick était ignoré lorsque le suivant arrivait.

L'autre possibilité que j'ai envisagée était qu'il y avait un dépassement de tampon sur l'onglet Experts en raison de la lenteur relative de la sortie imprimée. Cependant, l'examen de l'indice montre que cela est hautement improbable.

Enfin, est-il possible d'appeler la fonction de calcul une fois à partir de la fonction init() et d'éliminer le besoin du cas spécial dans la fonction start().

Voici le code en question

Si quelqu'un a des suggestions, j'aimerais les connaître, soit sur ce fil de discussion, soit par message privé. Vos idées et suggestions seront appréciées car j'ai passé un temps considérable à essayer d'identifier et de résoudre ce problème.

void Calculate_MAsAndMACDs(int index, int session, int bar,int limit, int counted_bars)

{

string pair ;

paire=Symbols.Pair ;

int previous=bar+1 ;

macd= iCustom(paire,Session.Period[session],File.MACD, 3,4,3,8,13,false,1,bar) ;

signal=iCustom(pair,Session.Period[session],File.MACD, 3,4,3,8,13,false,0,bar) ;

Print(Symbols," Counted Bars-b ",index," ",bar," ",Bars," ",IndicatorCounted()," ",limit," ",counted_bars) ;

MACD.Trend=1 ;

si(macd<signal) MACD.Trend=-1 ;

if(macd > signal && macd[previous] < signal[previous]) {MACD.CrossOverTime=Time ; MACD.CrossOverTimeValue=1;}

if(macd signal[previous]) {MACD.CrossOverTime=Time ; MACD.CrossOverTimeValue=-1;}

if(MACD.CrossOverTime == 0) MACD.CrossOverTime=Time[ActiveCrossOverBars+1] ;

if(macd >0. && macd[previous] <0.) {MACD.CrossedTime=Time ; MACD.CrossedTimeValue=1 ; }// Print("crossed up ",bar," ",MACD.CrossedTimeValue);}

if(macd 0.) {MACD.CrossedTime=Time ; MACD.CrossedTimeValue=-1;}// Print("crossed dn ",bar," ",MACD.CrossedTimeValue);}

//if(Symboles == "XAUUSD")

Print(Symbols," Counted Bars-b ",index," ",bar," ",Bars," ",IndicatorCounted()," ",limit," ",counted_bars," ",DoubleToStr(macd,7)," ",DoubleToStr(macd[previous],7)," ",TimeToStr(MACD.CrossedTime,TIME_MINUTES)," ",TimeToStr(Time,TIME_MINUTES)," ",MACD.CrossedTimeValue) ;

if(MACD.CrossedTime == 0) MACD.CrossedTime=Time[ActiveCrossOverBars+1] ;

if(macd >= macd[previous]) MACD.Slope=1 ; sinon MACD.Slope=-1 ;

MACD.Signal.Trend=1 ;

si(signal<signal[previous]) MACD.Signal.Trend=-1 ;

}

int start()

{

int Y.Height,session,index,xpos,counted_bars=IndicatorCounted(), elements=ActiveCrossOverBars+2 ;

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

if(counted_bars>0) counted_bars-- ;

int limit = MathMin(Bars-counted_bars,Bars-1) ;

limite = MathMin(limite,éléments) ;

for(int i=0;i<Session.Order.Number;i++)

{

session=Session.Order ;

for(index=0;index<Symbols.Number;index++)

{

Print(Symbols," Counted Bars-a ",index," ",-1," ",Bars," ",IndicatorCounted()," ",counted_bars," ",limit) ;

ArrayResize(macd,elements) ; ArrayResize(signal,elements) ;

for(int k=limit;k>=0;k--) Calculate_MAsAndMACDs(index, session, k, limit, counted_bars) ;

}

}

return(0) ;

Dossiers :
diagnostics.jpg  216 kb
 

Bonjour, j'ai besoin de votre aide pour faire cet indicateur en version MTF ...

merci beaucoup pour votre aide

Dossiers :
ut_fast.mq4  26 kb
 

Chers mladen et mrtools

Auriez-vous la gentillesse d'ajouter l'option MTF aux

deux indicateurs ci-joints ?

Merci beaucoup pour votre temps

Dan