-
https://tr.tradingview.com/script/4L...-nearest-rank/
PHP Code:
//@version=4
study("Yüzdelik Sıralama + Long/Short", overlay=true)
// === Ayarlar ===
length = input(50, title="Bakılacak Bar Sayısı")
percentileLevel = input(50, title="Orta Referans (%)") // örn: 50 medyan çizgisi
longLevel = input(10, title="Long Alt Sınır (%)") // %10 altı long
shortLevel = input(90, title="Short Üst Sınır (%)") // %90 üstü short
// === Kaynak verisi
src = close
// === En düşük ve en yüksek değerleri bul
lowestVal = lowest(src, length)
highestVal = highest(src, length)
// === Normalize et (0-1 arası)
range = highestVal - lowestVal
percentileNorm = range != 0 ? (src - lowestVal) / range : 0.5
percentilePct = percentileNorm * 100
// === Long / Short koşulları
longSignal = percentilePct < longLevel
shortSignal = percentilePct > shortLevel
// === Sinyal okları
plotshape(longSignal, location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small, title="Long")
plotshape(shortSignal, location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small, title="Short")
// === Yüzdelik çizgi
plot(percentilePct, title="Fiyat Yüzdelik (%)", color=color.blue, linewidth=2)
hline(percentileLevel, color=color.gray, title="Referans", linestyle=hline.style_dotted)
hline(longLevel, color=color.green, title="Long Seviyesi", linestyle=hline.style_dotted)
hline(shortLevel, color=color.red, title="Short Seviyesi", linestyle=hline.style_dotted)
// === Alarm koşulları
alertcondition(longSignal, title="AL Fırsatı", message="Yüzdelik konum: Long bölgesinde")
alertcondition(shortSignal, title="SAT Fırsatı", message="Yüzdelik konum: Short bölgesinde")
-
https://tr.tradingview.com/script/N8...nrose-Diagram/
sadeleme yapılıp hftalık kullanılırsa görüntü https://www.tradingview.com/x/G6mKXqG0/
PHP Code:
//@version=4
study("Penrose Diagram Basit v4", overlay=true)
// === Ayarlar ===
period = input(20, title="Dönem (gün/bar)")
extendLen = input(5, title="Uzunluk Yayılımı (bar)")
// === Oturum başlangıcı kontrolü
isNewSession = change(time("D")) != 0
// === Her yeni oturumda hesaplanan yüksek/düşük
var float sessHigh = na
var float sessLow = na
if isNewSession
sessHigh := highest(high, period)
sessLow := lowest(low, period)
// === Çizim uzatmaları
line.new(bar_index, sessHigh, bar_index + extendLen, sessHigh, color=color.blue, width=1, extend=extend.none)
line.new(bar_index, sessLow, bar_index + extendLen, sessLow, color=color.red, width=1, extend=extend.none)
-
https://tr.tradingview.com/script/Ct...d-Resistances/
PHP Code:
//@version=4
study("Extrapolated Pivot S/R (v4)", overlay=true)
// === Ayarlar ===
leftBars = input(5, title="Pivot Left Bars")
rightBars = input(5, title="Pivot Right Bars")
projBars = input(20, title="Proj. Bars to the Right")
// === Pivot Noktaları ===
ph = pivothigh(leftBars, rightBars)
pl = pivotlow(leftBars, rightBars)
// === Destek/Direnç çizgileri oluştur ===
if not na(ph)
line.new(bar_index - rightBars, ph, bar_index + projBars, ph, color=color.red, style=line.style_solid, width=1)
if not na(pl)
line.new(bar_index - rightBars, pl, bar_index + projBars, pl, color=color.green, style=line.style_solid, width=1)
// === Görsel Sinyal Noktaları ===
plotshape(not na(ph), title="Pivot High", location=location.abovebar, style=shape.triangledown, color=color.red, size=size.small)
plotshape(not na(pl), title="Pivot Low", location=location.belowbar, style=shape.triangleup, color=color.green, size=size.small)
https://www.tradingview.com/x/3O9DFS27/
-
https://tr.tradingview.com/script/zVhoDQME/
PHP Code:
//@version=4
study("OTT Trend Basit v4", overlay=true)
// === Parametreler ===
length = input(20, title="OTT Periyodu")
percent = input(1.4, title="OTT Percent (%)")
// === Temel Ortalama: EMA veya Seçilebilir MA
mma = ema(close, length)
// === OTT Stop Loss hesaplama (fiyat tepesi + percent)
offset = mma * percent / 100
longStop = mma - offset
shortStop = mma + offset
// === OTT çizgisi (stop line)
ott = close > mma ? longStop : shortStop
// === Trend Yönü ve Renk
inUpTrend = close > ott
inDownTrend = close < ott
ottColor = inUpTrend ? color.green : color.red
plot(ott, title="OTT Stop Line", color=ottColor, linewidth=2)
// === Sinyal Okları ===
plotshape(crossover(close, ott), title="Trend Yükseliyor", location=location.belowbar,
style=shape.triangleup, color=color.green, size=size.small)
plotshape(crossunder(close, ott), title="Trend Düşüyor", location=location.abovebar,
style=shape.triangledown, color=color.red, size=size.small)
// === Alarm Koşulları ===
alertcondition(crossover(close, ott), title="OTT LONG", message="Fiyat OTT çizgisini yukarı kırdı → Trend Yükselişi")
alertcondition(crossunder(close, ott), title="OTT SHORT", message="Fiyat OTT çizgisini aşağı kırdı → Trend Düşüşü")
https://www.tradingview.com/x/ksIPESRu/
-
yapay zeka ile kod yazdırma...sadeleme....strateji uygulayıp...test etme örnekleri vermiş olduk.....
-
-
PHP Code:
//@version=4
indicator('3 SAR 60dk Üçü Eşit - 1dk Zemin Renklendirme', overlay = true)
// --- 60 DK SAR hesaplama ---
// Parametreler
sar1_step = input.float(0.02, 'SAR1 Step')
sar1_max = input.float(0.2, 'SAR1 Max')
sar2_step = input.float(0.04, 'SAR2 Step')
sar2_max = input.float(0.2, 'SAR2 Max')
sar3_step = input.float(0.06, 'SAR3 Step')
sar3_max = input.float(0.2, 'SAR3 Max')
// Tolerans (örnek: 0.1% -> 0.001)
tolerans = input.float(0.1, 'SAR Eşitlik Toleransı %') * 0.01
// 60dk timeframe
tf = '60'
// 60dk grafikte SAR hesaplama fonksiyonu
f_sar(_step, _max) =>
ta.sar(_step, _step, _max)
// 60dk grafikten 3 SAR serisi al
sar1_60 = request.security(syminfo.tickerid, tf, f_sar(sar1_step, sar1_max))
sar2_60 = request.security(syminfo.tickerid, tf, f_sar(sar2_step, sar2_max))
sar3_60 = request.security(syminfo.tickerid, tf, f_sar(sar3_step, sar3_max))
// 3 SAR birbirine yakın mı? (tolerans dahilinde)
sar12_close = math.abs(sar1_60 - sar2_60) <= close * tolerans
sar23_close = math.abs(sar2_60 - sar3_60) <= close * tolerans
sar13_close = math.abs(sar1_60 - sar3_60) <= close * tolerans
// Üçü de eşit olursa sinyal TRUE
sinyal_60 = sar12_close and sar23_close and sar13_close
// --- 1 DK GRAFİKTE ZEMİN RENKLENDİRME ---
bgcolor(sinyal_60 ? color.new(color.lime, 80) : na)
// --- İsteğe bağlı 1dk grafikte sinyal gösterimi ---
plotshape(sinyal_60, title = '60dk SAR 3 Eşit Sinyal', location = location.top, color = color.lime, style = shape.triangleup, size = size.small)
-
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)
///////////////////////