Dyno.sal
Dyno.sal
// Input Groups
VS = "Volume Analysis"
OS = "Oscillator Settings"
DS = "Display Settings"
TS = "Threshold Settings"
// Oscillator Settings
smoothing = input.int(5, "Smoothing Length", minval = 1, maxval = 50, group = OS)
sensitivity = input.float(1.0, "Sensitivity", minval = 0.1, maxval = 5.0, step =
0.1, group = OS)
mean_reversion = input.bool(true, "Mean Reversion Mode", group = OS,
tooltip="Measures deviation from volume-weighted mean price")
// Threshold Settings
use_adaptive_midline = input.bool(true, "Use Adaptive Midline", group = TS,
tooltip="Calculates a dynamic midline based on historical oscillator values")
midline_period = input.int(50, "Adaptive Midline Period", minval = 10, maxval =
200, group = TS)
zone_width = input.float(1.5, "Zone Width Multiplier", minval = 0.5, maxval = 3.0,
step = 0.1, group = TS)
// Display Settings
color_bars = input.bool(true, "Color Bars", group = DS)
[vwap, sum_dev]
else
[price_src, 0]
// Detect crossovers
crossover_up = ta.crossover(fast_signal, slow_signal)
crossover_down = ta.crossunder(fast_signal, slow_signal)
// Bar coloring
barcolor(color_bars ? (is_bullish ? bull_color : bear_color) : na)