Untitled

 avatar
unknown
plain_text
22 days ago
2.6 kB
5
Indexable
//@version=5
indicator("Dynamic and Scaled Midline with RSI (Input Parameters)", overlay=false)

// Kullanıcı tarafından ayarlanabilir parametreler
length = input.int(14, title="RSI Length", minval=1)
overbought = input.int(67, title="Overbought Level", minval=1)
oversold = input.int(33, title="Oversold Level", minval=1)
midline_level = input.int(50, title="Midline Level", minval=1)
line_width = input.int(2, title="Line Width", minval=1)

// Dinamik Midline için input parametreleri
dynamic_length = input.int(14, title="Dynamic Midline Length", minval=1, group="Dynamic Midline Settings")
dynamic_src = input.source(close, title="Dynamic Midline Source", group="Dynamic Midline Settings")
dynamic_multiplier = input.float(1.0, title="Dynamic Midline Multiplier", minval=0.1, step=0.1, group="Dynamic Midline Settings")

// RSI hesaplama
rsi = ta.rsi(close, length)

// RSI'yi Midline'a göre ölçeklendirme
scaled_rsi = (rsi - midline_level) / midline_level * 100 // Midline'a göre normalize et

// Ölçeklendirilmiş RSI çizimi (Renkli)
plot(scaled_rsi, title="Scaled RSI", color=color.new(color.white, 0), linewidth=line_width)

// Orijinal Midline hesaplama
src = close
ep = 2 * length - 1
auc = ta.ema(math.max(src - src[1], 0), ep)
adc = ta.ema(math.max(src[1] - src, 0), ep)

x7 = (length - 1) * (adc * midline_level / (100 - midline_level) - auc)
ub4 = x7 >= 0 ? src + x7 : src + x7 * (100 - midline_level) / midline_level

// Orijinal Midline çizimi (Beyaz renkte)
plot(ub4, title='Original Midline', color=color.new(color.blue, 0), linewidth=line_width)

// Dinamik Midline hesaplama (Kullanıcı tarafından ayarlanabilir parametrelerle)
src_dynamic = dynamic_src // Kullanıcı tarafından seçilen kaynak
ep_dynamic = 2 * dynamic_length - 1
auc_dynamic = ta.ema(math.max(src_dynamic - src_dynamic[1], 0), ep_dynamic)
adc_dynamic = ta.ema(math.max(src_dynamic[1] - src_dynamic, 0), ep_dynamic)

x7_dynamic = (dynamic_length - 1) * (adc_dynamic * midline_level / (100 - midline_level) - auc_dynamic)
ub4_dynamic = x7_dynamic >= 0 ? src_dynamic + x7_dynamic * dynamic_multiplier : src_dynamic + x7_dynamic * (100 - midline_level) / midline_level * dynamic_multiplier

// Dinamik Midline çizimi (Sarı renkte)
plot(ub4_dynamic, title='Dynamic Midline', color=color.new(color.yellow, 0), linewidth=line_width)

// Yatay çizgiler (Overbought, Oversold ve Midline)
hline(overbought, "Overbought", color=color.new(color.green, 50))
hline(oversold, "Oversold", color=color.new(color.red, 50))
hline(midline_level, "Midline", color=color.new(color.blue, 50))
Leave a Comment