OPEN-SOURCE SCRIPT

Order Block Finder

187
//version=5
indicator("Order Block Finder", overlay=true)

// Input settings
blockLookback = input(20, title="Lookback Period")
minBlockSize = input(5, title="Minimum Block Size (Pips)") * syminfo.mintick
maxBlockAge = input(50, title="Maximum Block Age (Bars)")
combineCloseBlocks = input(true, title="Combine Close Blocks")

topSwingHigh = ta.highest(high, blockLookback)
topSwingLow = ta.lowest(low, blockLookback)

// Identifying Order Blocks
bullishBlock = ta.crossover(close, topSwingLow)
bearishBlock = ta.crossunder(close, topSwingHigh)

var float blockHigh = na
var float blockLow = na
var int blockAge = 0

if bullishBlock
blockHigh := high
blockLow := low
blockAge := 0

if bearishBlock
blockHigh := high
blockLow := low
blockAge := 0

blockAge := blockAge + 1
validBlock = blockAge < maxBlockAge

// Display Order Blocks
blockColor = bullishBlock ? color.green : bearishBlock ? color.red : na
if validBlock and not na(blockHigh) and not na(blockLow)
bgColor = color.new(blockColor, 80)
box.new(left=bar_index, right=bar_index + maxBlockAge, top=blockHigh, bottom=blockLow, border_color=blockColor, bgcolor=bgColor)

// Display Block Information Label
if validBlock
label.new(x=bar_index, y=blockHigh, text="Order Block", color=blockColor, textcolor=color.white, style=label.style_label_down)

Clause de non-responsabilité

Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.