Originally Posted by
ykoc
Sezai bey ; İdealTrade ya da diğer arkadaşlardan bir kod ricam olacaktı , biliyorum Barsince komutları biraz gıcık ve ben ceviremedim. Beğendiğim bir indikatör Connor RSI. Yardımcı olabilirseniz sevinirim.
Kod:
data:=CLOSE;
lenRSI:=3;
lenStreak:=2;
lenPctRank:=100;
WildersRSI:=RSI(data, lenRSI);
UpDays:=BarsSince(C<=Ref(C,-1));
DownDays:=BarsSince(C>=Ref(C,-1));
Streak:=If(upDays>0,upDays,If(downDays>0,-downDays,0));
StreakRSI:=RSI(Streak,lenStreak);
larger:=Sum(data>LastValue(data+PREV*0),lenPctRank);
PctRank:=100 * larger / lenPctRank; {edited code}
ConnorsRSI:=(WildersRSI + StreakRSI + PctRank) / 3;
ConnorsRSI;
Dostum..
Metastock CONNORSRSI formulu bendeki "OSRConnors.dll" kullanılarak yazılmış ve formulu aşağıda..
Kod:
RSILength:=Input("Please enter a value for <RSI Length>",2,1000,3);
RSILengthStreak:=Input("Please enter a value for <RSI Length of Streak>",2,1000,2);
Ranklookback:=Input("Please enter a value for <Rank lookback>",21,500,100);
upDays:=BarsSince(C<=Ref(C,-1));
downDays:=BarsSince(C>=Ref(C,-1));
upDownDays:=If(upDays>0,upDays,If(downDays>0,-downDays,0));
Rankx:=ExtFml("OSRConnors.PercentRankx", ROC(C,1,PERCENT), Ranklookback);
UpDnRSI:=RSI(upDownDays, RSILengthStreak);
RSI3:=RSI(CLOSE, RSILength);
ConnorsRSI:=( Rankx +UpDnRSI + RSI3)/3;
ConnorsRSI;
İkisinini karşılaştırdım çıktılar farklı..Zamanında "dll"siz yazmak için bayağı ugraşmışdım...
Bence refarans aldığınız formul hatalı...