September 9, 2020
Plusieurs fonctions de Pine supportent désormais des arguments de longueur dynamiques

Les codeurs Pine peuvent maintenant utiliser des longueurs calculées dynamiquement dans les fonctions suivantes :

alma()
change()
highest()
highestbars()
linreg()
lowest()
lowestbars()
mom()
sma()
sum()
vwma()
wma()

La longueur des séries facilitera la création d’indicateurs adaptatifs de Pine en utilisant des calculs basés sur des périodes variables. Voir ici, par exemple, comment nous utilisons la volatilité pour raccourcir ou allonger la période ALMA sur la ligne épaisse et la comparer à l’ALMA statique indiquée par la ligne fine :

//@version=4
study("Adaptive ALMA", "AALMA", true)
i_minLen    = input(10, minval = 1)
i_maxLen    = input(60, minval = 1)
i_adaptPct  = input(3., minval = 0, maxval = 100) / 100.0

startingLen = avg(i_minLen, i_maxLen)
var float dynamicLen = startingLen
highVolatility = atr(10) > atr(40)
if highVolatility
    dynamicLen := max(i_minLen, dynamicLen * (1 - i_adaptPct))
else
    dynamicLen := min(i_maxLen, dynamicLen * (1 + i_adaptPct))
dynamicAlma = alma(close, int(dynamicLen),  0.85, 6)
staticAlma  = alma(close, int(startingLen), 0.85, 6)

maColor(_ma) => close > _ma ? highVolatility ? #40FF00ff : #40FF0060 : highVolatility ? #FF0080ff : #FF008060
plot(dynamicAlma, "Dynamic Alma", maColor(dynamicAlma), 3)
plot(staticAlma,  "Static Alma",  maColor(staticAlma),  1)
// Follow the calculated Length in the Data Window.
plotchar(dynamicLen, "dynamicLength", "")

Bien qu’il puisse être pratique d’utiliser des flotteurs pour calculer des longueurs de façon dynamique, n’oubliez pas de les lancer sur un « int » avant de les utiliser dans les appels de fonction, comme nous le faisons dans notre exemple. Gardez également à l’esprit que, comme d’habitude, ces fonctions nécessitent une évaluation sur chaque barre, et doivent donc être utilisées en dehors des boucles « for » et des blocs « if » qui ne sont pas exécutés sur chaque barre.

Nous espérons que cette nouvelle fonctionnalité que vous avez demandée est utile. Veuillez continuer à nous envoyer vos commentaires pour l’améliorer. Nous construisons TradingView pour vous et nous aimons entendre ce que vous pensez de ces mises à jour très demandées de notre plateforme.

The fastest way to follow markets

Launch Chart