◆ New — Strategy Validator, Code Fixer & Prop Compliance Checker are live. Try one free →
Home / Indicators / Pivot Points
Support/Resistance indicator

Pivot Points

Price-derived horizontal levels that mark a central pivot plus support and resistance bands for the current period.

Illustrative diagram — not live market data.

What it is

Pivot Points are a set of horizontal price levels calculated from the previous period's high, low, and close (commonly the prior day for intraday charts, or the prior week/month for higher timeframes). The set centers on a single "pivot" level, with several support levels below it (S1, S2, S3) and resistance levels above it (R1, R2, R3). Because they are computed once per period and stay fixed until the next period begins, traders often use them as reference points for the session rather than as a continuously updating line. They originated with floor traders who wanted quick, objective levels to watch during the day.

How it works

The most common ("Classic" or "Floor") version starts with the central pivot: P = (High + Low + Close) / 3, using the previous period's values. Resistance and support are then derived from P and the prior range. For example, R1 = 2P - Low and S1 = 2P - High, while R2 = P + (High - Low) and S2 = P - (High - Low). The third levels extend the same logic: R3 = High + 2 * (P - Low) and S3 = Low - 2 * (High - P). There are several variants (Woodie's, Camarilla, Fibonacci, DeMark) that change the weighting or the arithmetic, but they all share the idea of projecting fixed reference levels from the previous period's price action. The levels do not adapt to intra-period price movement; they are drawn and held until the next period resets them.

How traders read it

Common settings

Anchor timeframe: Daily is the most common for intraday charts; Weekly and Monthly are used on higher-timeframe charts. Calculation method: Classic/Floor is the typical default, with Camarilla, Woodie's, Fibonacci, and DeMark as alternatives. Number of levels shown: commonly the pivot plus R1-R3 and S1-S3.

Strengths

Pitfalls to watch

Pine v6 example

//@version=6
indicator("Classic Pivot Points (Daily)", overlay = true)

// Pull the PREVIOUS daily high, low, close as a confirmed tuple.
// [1] takes the prior daily bar; lookahead_on is the standard no-repaint idiom here.
[ph, pl, pc] = request.security(syminfo.tickerid, "1D", [high[1], low[1], close[1]], lookahead = barmerge.lookahead_on)

p  = (ph + pl + pc) / 3
r1 = 2 * p - pl
s1 = 2 * p - ph
r2 = p + (ph - pl)
s2 = p - (ph - pl)

plot(p,  "P",  color = color.orange, linewidth = 2)
plot(r1, "R1", color = color.red)
plot(s1, "S1", color = color.green)
plot(r2, "R2", color = color.red)
plot(s2, "S2", color = color.green)

Pro tip: Match the pivot's anchor timeframe to how you actually view the chart: daily pivots for intraday charts, weekly or monthly for swing-style charts. And treat the levels as reference zones rather than exact prices: many traders watch how price behaves around a level instead of expecting it to turn on the tick. No indicator is predictive, and all trading carries risk of loss.

Built an indicator from this? Run it through the Validator to catch look-ahead bias and repainting, or convert a strategy to Pine Script.

Educational only — not financial advice, not a recommendation to trade. No indicator is predictive; trading involves substantial risk of loss.

Catch the bug that compiles.Run auditGet Pro