ORB 15m Breakout with Fibonacci Levels

A systematic approach to trading opening range breakouts using Fibonacci retracement levels.

Key Components

1. Opening Range

First 15 minutes of trading defines the range. Wait for a clear break above/below.

2. Fibonacci Levels

0.382, 0.5, 0.618, and 0.786 retracements of the opening range.

3. Volume Confirmation

Break should occur on above-average volume (1.5x 5-day average).

Entry Rules

Long Setup

  • Price breaks above opening range high
  • Volume surge confirms breakout
  • Enter on first pullback to Fib level

Short Setup

  • Price breaks below opening range low
  • Volume surge confirms breakdown
  • Enter on first pullback to Fib level

Risk Management

Stop Loss

Place stop beyond the nearest Fibonacci level (usually 0.786)

Position Size

Risk 1% of account per trade based on stop distance

Profit Targets

1:2 and 1:3 risk/reward ratios, scale out in portions

Example Setup

Pine Script Indicator

Use this Pine Script to plot the ORB levels and Fibonacci retracements:

//@version=5
indicator("ORB with Fib Levels", overlay=true)

// Inputs
orbPeriod = input.int(15, "ORB Period (minutes)")

// Get opening range
t = time("", "0930-0945:23456")
isNewDay = na(t[1]) and not na(t)
var float orbHigh = na
var float orbLow = na

if isNewDay
    orbHigh := high
    orbLow := low
else
    if not na(t)
        orbHigh := math.max(orbHigh, high)
        orbLow := math.min(orbLow, low)

// Plot levels
plot(orbHigh, "ORB High", color=color.lime)
plot(orbLow, "ORB Low", color=color.red)

// Plot Fib levels
range = orbHigh - orbLow
plot(orbHigh - range * 0.382, "0.382", color=color.yellow)
plot(orbHigh - range * 0.5, "0.5", color=color.yellow)
plot(orbHigh - range * 0.618, "0.618", color=color.yellow)
plot(orbHigh - range * 0.786, "0.786", color=color.yellow)
          

Disclaimer: This strategy is for educational purposes only. Always backtest and paper trade before using real money.