OPEN-SOURCE SCRIPT

ice tea

90
//version=6
indicator("ICT + ICC Combined Strategy", overlay=true)
// === INPUTS ===
bosSensitivity = input.int(3, "BOS Sensitivity", minval=1)
showDashboard = input.bool(true, "Show Dashboard")
dashCorner = input.string("top_right", "Dashboard Corner", options=["top_left", "top_right", "bottom_left", "bottom_right"])
// === COLORS ===
bosColorBull = color.new(color.green, 0)
bosColorBear = color.new(color.red, 0)
// === STRUCTURE & BOS LOGIC (example) ===
var bool bullishBOS = false
var bool bearishBOS = false
// Extract function calls for consistency
highestClose = ta.highest(close, bosSensitivity)
lowestClose = ta.lowest(close, bosSensitivity)
// Dummy BOS detection (replace with your actual logic)
if close > highestClose
bullishBOS := true
bearishBOS := false
else if close < lowestClose
bearishBOS := true
bullishBOS := false
else
bullishBOS := false
bearishBOS := false
// === BOS PLOTTING ===
if bullishBOS
line.new(bar_index - bosSensitivity, low[bosSensitivity], bar_index, low, color=bosColorBull, style=line.style_dotted)
label.new(bar_index, low, "BOS ↑", style=label.style_label_up, color=bosColorBull, textcolor=color.white)
if bearishBOS
line.new(bar_index - bosSensitivity, high[bosSensitivity], bar_index, high, color=bosColorBear, style=line.style_dotted)
label.new(bar_index, high, "BOS ↓", style=label.style_label_down, color=bosColorBear, textcolor=color.white)
// === ICC / SHORT-TERM DEALING RANGE LOGIC (simplified example) ===
var float stHigh = na
var float stLow = na
if bullishBOS
stLow := low
stHigh := high
else if bearishBOS
stLow := low
stHigh := high
plot(stHigh, title="ST High", color=color.orange, linewidth=1)
plot(stLow, title="ST Low", color=color.orange, linewidth=1)
// === DASHBOARD PANEL ===
if showDashboard
// choose table position
dashPosition = switch dashCorner
"top_left" => position.top_left
"bottom_left" => position.bottom_left
"bottom_right" => position.bottom_right
=> position.top_right
var table dash = table.new(dashPosition, 2, 2, bgcolor=color.new(color.black, 85), frame_color=color.new(color.white, 70))
// Higher time frame bias placeholder (replace with actual HTF logic)
htfBias = bullishBOS ? "bullish" : bearishBOS ? "bearish" : "neutral"
htfTxtColor = htfBias == "bullish" ? color.new(color.green, 0) : htfBias == "bearish" ? color.new(color.red, 0) : color.new(color.yellow, 0)
sigTxtColor = bullishBOS ? color.new(color.green, 0) : bearishBOS ? color.new(color.red, 0) : color.new(color.yellow, 0)
table.cell(dash, 0, 0, "1H Bias:", text_color=color.white, text_size=size.small)
table.cell(dash, 1, 0, str.upper(htfBias), text_color=htfTxtColor, text_size=size.small)
table.cell(dash, 0, 1, "15M Signal:", text_color=color.white, text_size=size.small)
table.cell(dash, 1, 1, sigTxtColor == color.new(color.green, 0) ? "Buy Setup" : sigTxtColor == color.new(color.red, 0) ? "Sell Setup" : "Waiting", text_color=sigTxtColor, text_size=size.small)

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.