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)

إخلاء المسؤولية

لا يُقصد بالمعلومات والمنشورات أن تكون، أو تشكل، أي نصيحة مالية أو استثمارية أو تجارية أو أنواع أخرى من النصائح أو التوصيات المقدمة أو المعتمدة من TradingView. اقرأ المزيد في شروط الاستخدام.