Více možností s kompilovanými konstantami

Pine Script umožňoval použít 3 typy konstant – literály, ne-literály a série. Nyní byl přidán typ další, ale podívejme se nejdříve na ty dosavadní.

Literál – obsahuje pevné hodnoty jako 15.5 nebo -2 (používáme desetinnou tečku).
Ne-literál – má stále stejnou hodnotu ve všech barech, ale není to číslo – např. ticker, interval nebo sin(1).
Série (konstantních hodnot) – reprezentuje čísla, které mají jinou hodnotu pro každý bar – např. open, close a time[1].

Některé funkce (input, color) přijímají do některých argumentů pouze literály.
TV pro větší pohodlnost přidalo nový typ konstant, které mohou být kalkulovány při kompilaci. Ten může obsahovat nejen literály, ale i matematické vzorce, které obsahují další literály nebo konstanty.

Jakýkoliv typ Pine Script literálu (integer, float, boolean, string) má definované parametry, kdežto série je obecného typu.
Kompilované konstanty leží někde mezi literály a ne-literály. Všechny funkce, které vyžadovaly jako argument pouze literály, budou nyní akceptovat i kompilované konstanty.

chrome_2017-05-17_13-37-43

Zde je několik příkladů volání funkcí:

pi = acos(-1)
r = input(pi)

mins = input(24*60)
la = barmerge.lookahead_on

daily = security(tickerid, 'D', close, lookahead=la)
daily_low = security(tickerid, 'D', low, lookahead=la)
in_sma='SMA', in_ema='EMA', in_mixed='1/2 SMA + 1/2 EMA'
smoothing = input(in_sma, options=[in_sma, in_ema, in_mixed])

smoothed = na
if smoothing == in_sma
     smoothed := sma(close, 7)

if smoothing == in_ema
     smoothed := ema(close, 7)

if smoothing == in_mixed
     smoothed := 0.5*sma(close, 7) + 0.5*ema(close, 7)

More possibilities with compile time constants

Komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *