
Originally Posted by
ozmen
TW KODU:
len =10
len2=20
src = close,
len = input(20, minval=1, title="RSI Length")
len2 = input(10, minval=1, title="EMA of RSI Length")
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
emaRSI = ema(rsi,len2)
tradingview den formül devşirecek arkadaşlara PİNE SCRİPT DİLİ BAŞVURU KLAVUZU nun faydalı olabileceğini düşünüyorum. Daha önceden yazılmadıysa.
Bence bu Tradingview formülünü iDeal diline çevrilmiş hali böyle olur.
Kod:
var len = 20;
var len2 = 10;
var src = Sistem.GrafikFiyatSec("Kapanis");
var x = Sistem.Liste(0);
var y = Sistem.Liste(0);
var up = Sistem.Liste(1);
var down = Sistem.Liste(1);
var rsi = Sistem.Liste(1);
for (int i=1; i < Sistem.BarSayisi; i++)
{
x[i] = Math.Max((src[i] - src[i-1]),0);
up[i] = up[i-1] != 0 ? (x[i] + (len - 1) * up[i-1]) / len : 0;
y[i] = -Math.Min((src[i] - src[i-1]),0);
down[i] = down[i-1] != 0 ? (y[i] + (len - 1) * down[i-1]) / len : 0;
rsi[i] = down[i] == 0 ? 100 : up[i] == 0 ? 0 : 100 - (100 / (1 + up[i] / down[i]));
}
var emaRSI = Sistem.MA(rsi,"Exp" , len2);
Sistem.Cizgiler[0].Deger = rsi;
Sistem.Cizgiler[1].Deger = emaRSI;
Sistem.Cizgiler[2].Deger = Sistem.Liste(80);//Upper Line / band1
Sistem.Cizgiler[3].Deger = Sistem.Liste(20);//Lower Line / band0
Yer İmleri