PHP Code:
//@version=4
indicator('..', overlay = true)
// Ayarlar
tol = input(0.0001, title = 'Eşitlik toleransı')
// 1dk en yakın SAR hesaplama fonksiyonu
f_nearestSar() =>
s1 = ta.sar(0.01, 0.02, 0.2)
s2 = ta.sar(0.02, 0.02, 0.2)
s3 = ta.sar(0.03, 0.02, 0.2)
s4 = ta.sar(0.04, 0.02, 0.2)
s5 = ta.sar(0.05, 0.02, 0.2)
d1 = math.abs(close - s1)
d2 = math.abs(close - s2)
d3 = math.abs(close - s3)
d4 = math.abs(close - s4)
d5 = math.abs(close - s5)
m = math.min(d1, math.min(d2, math.min(d3, math.min(d4, d5))))
nearest_1m = d1 == m ? s1 : d2 == m ? s2 : d3 == m ? s3 : d4 == m ? s4 : s5
nearest_1m
// 15dk sinyal hesaplama fonksiyonu
f_15m_signal() =>
nearest_1m_15 = f_nearestSar()
sar_5m_15 = request.security(syminfo.tickerid, '5', nearest_1m_15)
sar_15m_15 = request.security(syminfo.tickerid, '15', nearest_1m_15)
sar_avg_15 = (nearest_1m_15 + sar_5m_15 + sar_15m_15) / 3
longSig = ta.crossover(close, sar_avg_15)
shortSig = ta.crossunder(close, sar_avg_15)
[longSig, shortSig]
// 15dk sinyalleri 1dk grafikte al
[longSignal, shortSignal] = request.security(syminfo.tickerid, '15', f_15m_signal())
// 15dk sinyal bar indexlerini tutmak için değişkenler (persistent)
var int lastLongBarIndex = na
var int lastShortBarIndex = na
// 15dk sinyal oluştuğunda bar index güncelle
if longSignal
lastLongBarIndex := bar_index
lastLongBarIndex
if shortSignal
lastShortBarIndex := bar_index
lastShortBarIndex
// Son iki sinyalin bar indexlerini bul
// Burada örnek olarak lastLongBarIndex ve lastShortBarIndex'i karşılaştırıp renk vereceğiz
// Ama sen istediğin mantığa göre bunu değiştirebilirsin
// Eğer ikisi de var ise ve farklıysa zemin boya
bgcolor(not na(lastLongBarIndex) and not na(lastShortBarIndex) and bar_index >= math.min(lastLongBarIndex, lastShortBarIndex) and bar_index <= math.max(lastLongBarIndex, lastShortBarIndex) ? color.new(color.yellow, 80) : na)
// 1dk grafikte sinyalleri çiz (isteğe bağlı)
plotshape(longSignal, title = '15dk AL', style = shape.triangleup, location = location.belowbar, color = color.new(color.lime, 0), size = size.tiny)
plotshape(shortSignal, title = '15dk SAT', style = shape.triangledown, location = location.abovebar, color = color.new(color.red, 0), size = size.tiny)
///////////////////////
Yer İmleri