Moyenne mobile à Lissage multiple
Forums › ProRealTime forum Français › Support ProBuilder › Moyenne mobile à Lissage multiple
- This topic has 8 replies, 2 voices, and was last updated 4 years ago by mlouys.
-
-
04/23/2020 at 1:44 PM #12760004/23/2020 at 2:12 PM #127614
La moyenne mobile à lissage multiple utilise une moyenne mobile lissée par une autre moyenne mobile (lissage double) ou par deux autres moyennes mobiles (lissage triple). Pour chaque moyenne mobile, vous pouvez régler la période et la méthode de calcul (simple, exponentielle, pondérée …).
Donc ça devrait ressembler à ce code :
Multiple smoothing moving average12345678910111213141516//Multiple smoothing moving average// MA type (0=SMA,1=EMA,2=WMA,3=Wilder,4=Triangular,5=End point,6=Time series,7 = Hull (PRT v11 only),8 = ZeroLag (PRT v11 only))period1=14type1 = 0period2=10type2 = 0period3=9type3 = 0src = customcloseavg = average[period1,type1](average[period2,type2](average[period3,type3](src)))return avg04/23/2020 at 2:58 PM #12762204/23/2020 at 3:03 PM #12762404/23/2020 at 3:15 PM #127628Genre comme ceci peut être ( je vais tester )
1234567891011121314151617181920212223//Multiple smoothing moving average//Calcul de la moyenne mobile courte sans retardEMA1 = ExponentialAverage[4](close)EMA2 = ExponentialAverage[4](EMA1)diff = EMA1 - EMA2ind1 = EMA1 + diff//Calcul de la moyenne mobile longue sans retardEMA3 = ExponentialAverage[8](close)EMA4 = ExponentialAverage[8](EMA3)diff1 = EMA3 - EMA4ind2 = EMA3 + diff1src = customcloseavg = average[ind1](average[ind2](src))return avg04/23/2020 at 3:17 PM #12762904/23/2020 at 3:33 PM #12763612345678910111213141516171819202122//Multiple smoothing moving average//ZeroLag MA:PeriodF = 4DataF = CloselagF = ROUND((PeriodF-1)/2)dF = (DataF+(DataF-DataF[lagF]))MF = exponentialaverage[periodF](dF)//ZeroLag MA:PeriodG = 8DataG = CloselagG = ROUND((PeriodG-1)/2)dG = (DataG+(DataG-DataG[lagG]))MG = exponentialaverage[periodG](dG)src = customcloseavg = average[MF](average[MG](src))return avgEt comme ceci non plus tjs le même message d erreur avec une valeur négative …
04/23/2020 at 3:45 PM #127638Comme ceci ça doit mieux fonctionner :
12345678910111213141516171819//Double smooth Zerolag EMA//ZeroLag MA:PeriodF = 4DataF = customcloselagF = ROUND((PeriodF-1)/2)dF = (DataF+(DataF-DataF[lagF]))MF = exponentialaverage[periodF](dF)//ZeroLag MA:PeriodG = 8DataG = MFlagG = ROUND((PeriodG-1)/2)dG = (DataG+(DataG-DataG[lagG]))MG = exponentialaverage[periodG](dG)avg = MGreturn avg04/23/2020 at 4:11 PM #127644Ok merci je viens d essayer mais je n ai pas la même courbe que selon le code PRT ( je t embête parce que j aimerais faire un indicateur pour pouvoir en faire un screener mais je n arrive pas a la prendre en cération simpfliée alors j essaie d en écrire le code pour en faire un indicateur
Tiens en orange celle de PRT en mauve ta version
une idée ? D avance merci
-
AuthorPosts
Find exclusive trading pro-tools on