Eksik veri ve na
Eksik fiyatı sıfırdan ayırın; sıfıra bölme ve boş metni doğru ele alın.
na sıfır değildir
Geçmiş yetmediğinde, veri alanı bulunmadığında, mali dönem eksik olduğunda veya sonuç geçersiz olduğunda na oluşabilir. is_na(value) kullanın; value == na ve value != na kabul edilmez.
Eksik fiyatı 0’a çevirmek sahte getiriler ve kesişimler üretebilir. Eksik hacim, hiç işlem yapılmadığını kanıtlamaz. Eksik finansal metrik de şirketin o kalemde sıfır raporladığı anlamına gelmez.
Güvenli oran
//@selscript=1
indicator("Guarded return", overlay=false)
prior = close[1]
ready = not is_na(close) and not is_na(prior) and prior != 0
value = ready ? (close - prior) / math.abs(prior) * 100 : na
plot.histogram(value)İlk mumda sonuç boş; sonraki geçerli mumlarda yüzde değişimdir. Sıfıra bölme, negatif sayının karekökü ve sonlu olmayan sayısal sonuçlar na üretir; ilgili çalışma uyarısı da oluşabilir. math.min/max eksik argümanı atlamaz.
Metin ve tablolar
str.tostring(na) kullanılabilir bir sayı metni üretmez. Önce is_na(value) ? "—" : str.tostring(value, 2) seçin. Böylece panel boş kalmak yerine açıkça eksik veriyi gösterir.
Ne zaman 0 kullanılabilir?
Yalnız alanınızda 0’ın anlamlı bir karşılığı varsa: örneğin geçerli fiyatlardan hesaplanan bir koşul sağlanmadığında 0 puan. Verinin hazır olup olmadığı ayrıca izlenmeli; eksik veriden hesaplanan 0 puanı geçerli NEGATİF sonuç gibi sunmayın. Finansal Sağlık bunun için ayrı veri hazır koşulu kullanır.