September 9, 2020
Kilka funkcji Pine obsługuje teraz argumenty o dynamicznej długości

Programiści Pine mogą teraz używać dynamicznie obliczanych długości w następujących funkcjach:

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

Długość serii ułatwi tworzenie adaptacyjnych wskaźników Pine korzystających z obliczeń opartych na różnych okresach. Zobacz na poniższym przykładzie, jak wykorzystujemy zmienność, aby skrócić lub wydłużyć okres ALMA na grubej linii i porównać go ze statycznym ALMA wskazanym przez cienką linię:

//@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", "")

Chociaż używanie liczb zmiennoprzecinkowych do dynamicznego obliczania długości może być przydatne, pamiętaj, aby uruchomić je na „int” przed użyciem ich w wywołaniach funkcji, tak jak robimy to w naszym przykładzie. Pamiętaj również, że jak zwykle, funkcje te wymagają obliczeń na każdym słupku, więc powinny być używane poza pętlami `for` oraz blokami `if`, które nie są wykonywane na każdym słupku.

Mamy nadzieję, że ta nowa funkcja, o którą prosiliście, okaże się przydatna. Przesyłajcie nam swoje opinie i sugestie. Tworzymy TradingView dla Was i uwielbiamy słyszeć, co myślicie o aktualizacjach naszej platformy.

The fastest way to follow markets

Launch Chart