Merhaba,
Matriks'te de olan Relative Momentum Index indikatörünü IQ'ya uyarlamaya çalışıyorum. Fakat kendimi de geliiştirmek adına bir kaç sorum olacak. Yardımlarınızı rica edebilir miyim?
1. Öncelikle Aşağıdaki Kod doğru RMI sonucunu veren bir kod. Fakat içerisinde "rma" adında ayrıca bir fonksiyon var.
up = rma(max(change(src, momentumLength), 0), length)
down = rma(-min(change(src, momentumLength), 0), length)
rmi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
2. RMA fonksiyonuna baktığımızda aşağıdaki gibi açıklanmış.
Moving average used in RSI. It is the exponentially weighted moving average with alpha = 1 / length.
pine_rma(src, length) =>
alpha = length
sum = 0.0
sum := na(sum[1]) ? sma(src, length) : (src + (alpha - 1) * nz(sum[1])) / alpha
plot(pine_rma(close, 15))
3. Bu kodu aşağıdaki şekilde IQ'ya uygulamaya çalıştım fakat sum değerinin bir önceki bardaki değerini getiremedim. Yardımlarınızı rica ederim.
decimal rma(int length)
{
var alpha = length;
var src = inputValue;
var sum = checknan(sum.Value[currentBar-1]) ? 2 : (src + (alpha - 1) * replacenan(sum.Value[currentBar -1])) / alpha;
return sum;
}
Teşekkürler