Alıntı Originally Posted by stradivarius Yazıyı Oku
daha once rsi icin, soyle bir formulverilmisti,
bunun gibi,
bir gun onceki "gunun" atr degerini "bes dakikalik" grafikte kullanmak istiyorum, repaint yapmadan nasil yazilabilir acaba.

--
var V = Sistem.GrafikVerileri;
var PrevGunC = new List<float>();
var GunTarih = new List<string>();
for (int i = 1; i < V.Count; i++)
{
if (V[i].Date.Day != V[i - 1].Date.Day)
{
PrevGunC.Add(V[i - 1].Close);
GunTarih.Add(V[i].Date.ToString("yyyyMMdd"));
}
}
var PrevGunRSI = Sistem.RSI(PrevGunC, 20);

var RSI = Sistem.Liste(0);
var StartPos = 0;
for (int i = 1; i < V.Count; i++)
{
for (int j = StartPos; j < PrevGunRSI.Count; j++)
{
if (V[i].Date.ToString("yyyyMMdd") == GunTarih[j])
{
RSI[i] = PrevGunRSI[j];
StartPos = j;
break;
}
}
}

// RSI listesi önceki günün değeridir.
//intraday grafiklerde repaint olmadan döngü içinde kullanılabilir.

Sistem.Cizgiler[0].Deger = RSI;
sorunuzun cevabı formülün içerisinde yazıyor.
repaint engellemenin en kolay ve temel yolu "önceki barı" kullanmaktır.