OPEN-SOURCE SCRIPT

Swing Break Indicator

99
//version=5
indicator("Swing Break Indicator", overlay=true)

// Input for swing length
swingLength = input(5, title="Swing Length")

// Identify swing high and swing low
swingHigh = ta.highest(high, swingLength)
swingLow = ta.lowest(low, swingLength)

// Store previous swing values
var float prevSwingHigh = na
var float prevSwingLow = na
var float lastSwingHigh = na
var float lastSwingLow = na

if high == swingHigh
prevSwingHigh := lastSwingHigh
lastSwingHigh := swingHigh

if low == swingLow
prevSwingLow := lastSwingLow
lastSwingLow := swingLow

// Conditions for Buy and Sell signals
buySignal = low < prevSwingHigh and ta.crossover(low, prevSwingHigh)
sellSignal = high > prevSwingLow and ta.crossunder(high, prevSwingLow)

// Plot Buy and Sell labels
labelPosition = 20 // Offset for label placement
if buySignal
label.new(bar_index, low - labelPosition * syminfo.mintick, "BUY", color=color.green, textcolor=color.white, style=label.style_label_down)
if sellSignal
label.new(bar_index, high + labelPosition * syminfo.mintick, "SELL", color=color.red, textcolor=color.white, style=label.style_label_up)

Declinazione di responsabilità

Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.