![MQL5 - Langage des stratégies de trading intégré au terminal client MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Mrtools
Serait-il possible pour vous d'ajouter l'option MTF dans cet indicateur ?
Merci d'avance
new_sfractals.mq4
Je pense que mrtools est au repos ce week-end donc voici cette version.
Mrtools
Serait-il possible pour vous d'ajouter l'option MTF dans cet indicateur ?
Merci d'avance
new_sfractals.mq4Demande d'aide à la programmation
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.![](https://c.mql5.com/forextsd/smiles/frown.png)
Pourriez-vous s'il vous plaît m'aider, ce qui est faux dans ma tentative ?
Merci,
Chrisstoff
Merci.
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
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![](https://c.mql5.com/forextsd/smiles/smile.png)
Je pense que mrtools est au repos ce week-end donc voici cette version
merci beaucoup...
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
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) ;
Bonjour, j'ai besoin de votre aide pour faire cet indicateur en version MTF ...
merci beaucoup pour votre aide
Chers mladen et mrtools
Auriez-vous la gentillesse d'ajouter l'option MTF aux
deux indicateurs ci-joints ?
Merci beaucoup pour votre temps
Dan![](https://c.mql5.com/forextsd/smiles/party.png)