QA GATE · GOOD 18/18 automated ai-check.js · 18 readability, YMYL and image gates · mechanics verified against vike-indicators · live real-data chart embedded
Burstiness (sentence-length SD)11.0
Lexical diversity (MATTR-50)0.80
Consecutive similar sentences2
Repeated paragraph starts (≥3)0
AI-marker phrases0
Demonstrated experience2
Avg sentence length (words)17.8
Repeated 5-grams0
H2 section balance (50–500w)0 off
YMYL risk disclaimeryes
Mechanics verified vs codeyes
Primary keyword coverageyes
Internal links + CTA6
Content visuals11
Every figure has a caption11/11
Alt / caption text coverage100%
Distributed (≥1 per section)6/7 (86%)
Filenames sluggedn/a (inline)
Live interactive chart6 real
Learn · Trading Indicators · Structure

Pivot Points: The Exact Formulas, and What the Levels Contained

Pivot points are seven price levels derived from one previous bar. No smoothing, no window, no parameter to tune — three numbers go in and seven come out, and every platform that draws them is doing the same short piece of arithmetic.

Which short piece varies, though, and that is where the trouble starts. This page gives the exact formulas our trading indicators engine computes, sets them beside the three rival schemes, and measures what 346,928 real daily bars did against the levels they were handed.

What pivot points actually are

the prior barhighlowR3R2R1PS1S2S3fixed for the whole of the next bar
Three numbers in, seven out, and not one of them can move while the bar they describe is trading. That is what the module means by strictly causal.

Yesterday produced a high, a low and a close. The pivot is their mean, and the six levels around it are simple reflections of that mean through yesterday's extremes.

Our detector batch_pivot_points writes them as follows, where ph, pl and pc are the prior bar's high, low and close:

  • P = (ph + pl + pc) / 3
  • R1 = 2P − pl and S1 = 2P − ph
  • R2 = P + (ph − pl) and S2 = P − (ph − pl)
  • R3 = ph + 2(P − pl) and S3 = pl − 2(ph − P)

Bar zero emits nothing on all seven outputs, because there is no prior bar to read. Everything after it is fully defined, and the module carrying it is documented as strictly causal — no level on this page can see the bar it is drawn across.

The four schemes, and why the name is not enough

pivotclassic7.10% wide26.9%woodie7.10% wide27.5%fibonacci5.42% wide11.2%camarilla1.30% wide0.1%S1 to R1 under each scheme, same bars, same days
Four things called R1. The band widths differ by more than five to one, so a containment statistic measured under one scheme says nothing whatever about another.

Ask four platforms for "R1" and you can get four numbers. The set above is the classic or floor pivot, and it is the only one in the crate.

Woodie weights the close double: P = (ph + pl + 2pc) / 4, then the same reflections. Fibonacci keeps the classic pivot and places its levels at 0.382, 0.618 and 1.000 of the prior range. Camarilla abandons the pivot for its levels entirely, hanging them off the prior close at pc ± range × 1.1 / 12 and successively wider divisors.

Measured on the same 346,928 bars, those are not variations in taste. The classic S1–R1 band held a whole day on 26.9% of bars and Woodie's on 27.5%, which is near enough to call the same instrument. Fibonacci's narrower pair held 11.2%. Camarilla's, a median 1.30% of price wide against classic's 7.10%, contained just 0.1%. A rule tested against one and traded against another is not a rule.

The band is yesterday's range, moved

ph − plR1S1same heightmoved to 2P − the old centremax disagreement over 346,928 bars: 7.276e−12
The band everybody measures containment against is yesterday’s range wearing new labels. Re-centring it is worth 8.7 points over leaving it where it was.

Subtract S1 from R1 and the pivot cancels: (2P − pl) − (2P − ph) is ph − pl, precisely.

I checked it on every bar rather than trusting the algebra, and the largest disagreement across 346,928 days was 7.276e-12 — floating point, not arithmetic. So the band whose containment everybody quotes is the previous day's range, re-centred on twice the pivot. Woodie has the same width for the same reason, which explains why the two scored within 0.6 points of each other.

That reframes the headline number. Asking whether a day stays inside S1 and S1's mirror is close to asking whether a day fits inside its predecessor — the inside day question — and strict inside days ran 18.2% on these bars. The re-centring buys 8.7 points over a rule that lets the band sit exactly where yesterday's range sat.

How often the levels actually contain price

26.9%pivot band27.6%same width, on the openS1–R166.3%pivot band68.7%same width, on the openS2–R285.1%pivot band85.5%same width, on the openS3–R3346,928 days · the pivot band lost all three comparisons
Placement, isolated from width. Every pivot band contained tomorrow slightly less often than the same width hung on the price the bar actually opened at.
ETH/USDT daily — a real pivot session detected 2026-07-25, the day held inside S1 and R1 -> long 5.7% in 2 days.
BNB/USDT daily — a real pivot session detected 2026-06-26, the day held inside S1 and R1 and still went the other way -> long -5.4% in 5 days.

Containment is the claim, so containment is what I scored, against a null designed to isolate placement from width.

For each level pair I asked whether the day's whole range stayed inside it, then asked the same of a band of identical width centred on the previous close — which, on a venue that never closes, is exactly where the bar opens. The pivot's placement has to beat that or it is contributing nothing.

  • S1 to R1 kept price inside it on 26.9% of bars, where the width-matched control managed 27.6%
  • S2 to R2 scored 66.3% against a control reading of 68.7%
  • S3 to R3 reached 85.1%, narrowly under the 85.5% its null returned

All three came in below the naive band. Not dramatically — 0.7, 2.4 and 0.4 points — but consistently, on a third of a million days, and in the direction nobody advertises. Shifting the previous range by twice the pivot makes it slightly worse at containing tomorrow than leaving it centred on the open.

Does price touch the pivot at all?

R38.1%R217.8%R141.1%P79.6%S141.8%S216.9%S36.8%prior close98.9%a level a market opens ON is reached almost always — that is the scale to read the rest against
Reach rates for every level in the ladder. The bottom bar is the control: on a venue that never closes, touching the price you opened at is nearly automatic.
BTC/USDT daily — a real pivot session detected 2026-08-10, price reached R1 and closed back under it -> short -1.4% in 5 days.

It does, on 79.6% of days, and that number is worth far less than it looks.

Here is the comparison that deflates it. On the same bars, price touched the previous close on 98.9% of days — which is nearly a tautology, since a 24/7 market opens where it closed. The pivot sits a median 1.04% of price away from that open, so reaching it is mostly a statement about daily range, not about the level attracting anything.

The outer levels behave the way arithmetic says they should: R1 was reached on 41.1% of days and S1 on 41.8%, R2 and S2 on about 17%, R3 and S3 on roughly 7%. Read that as a distribution of daily ranges expressed in units of yesterday's range. It is a decent volatility ruler. Nothing in it says price stopped there.

Where pivot points fail

INJ/USDT daily — a real pivot session detected 2026-04-25, price broke R1 and stayed above it -> long 18.3% in 1 day.
SEI/USDT daily — a real pivot session detected 2026-04-29, price broke S1 -> short 1.4% in 5 days.
BCH/USDT daily — a real pivot session detected 2026-04-22, price ran clean through R3, the level nothing is supposed to reach -> long -2.3% in 5 days.
Three real days, none of which the ladder described. INJ opened, cleared R1 and never came back, closing 18.3% higher inside a day. SEI broke S1 on the way to nowhere in particular. BCH went through R3 — the level that, on this sample, is reached on 8.1% of days and is routinely described as an extreme.

Reversal is the claim that dies hardest, so I tested it directly.

Take every day that reached R1. Did it close back below? On 142,938 such days, 54.6% did. That sounds like resistance working. Now put a line the same distance above the open, derived from no pivot at all, and ask the same question: 54.6%, on 147,902 days. The two agree to the decimal. R1 rejects advances at exactly the rate any line that far from the open rejects them.

The bias reading fares no better. Days closing above the pivot resolved 45.7% long on a symmetric 5% bracket over five days; days closing below resolved 45.9%; every eligible bar resolved 45.8%. Three numbers, one tenth of a point apart, on 320,035 observations. The sample's sub-50% base rate is the crypto drawdown of this period showing through, and it is exactly why an unconditional comparison belongs next to every win rate — without it, 45.7% reads like a losing signal instead of an inert one.

I've kept them on my own charts anyway, for one reason that survives all of the above: a pivot ladder is a shared coordinate system. When I need to describe where price sat to somebody looking at a different chart, "just under R2" is precise and free.

Frequently asked questions

How are pivot points calculated? The classic set uses only the prior bar. P = (ph + pl + pc) / 3, then R1 = 2P − pl, S1 = 2P − ph, R2 = P + (ph − pl), S2 = P − (ph − pl), R3 = ph + 2(P − pl), S3 = pl − 2(ph − P).

Which pivot point type is best? None of them separated from a width-matched null here, and they differ enormously from each other — Camarilla's inner band contained 0.1% of days against classic's 26.9%. Pick one and never quote a statistic measured on another.

Do pivot points work? As support and resistance, not on this evidence: R1 turned price back at the same rate as an arbitrary line the same distance from the open. As a volatility scale and a shared vocabulary, they are genuinely useful.

What timeframe should pivot points use? Whatever bar you compute them from is the session they describe. Daily bars give daily levels, which is the standard and what was measured here; a VWAP has the same boundary problem from the other direction.

Are pivot points better than moving averages? They fail differently, which is the only useful comparison. Pivots read one bar and lag by nothing; a moving average cross reads hundreds and lags accordingly, and a candlestick pattern reads shape rather than level.

This is educational material, not financial advice. Every figure here was measured on past bars, past behavior generalizes poorly to future bars, and trading carries real risk of loss — size any position so that being wrong stays survivable.

Read the VWAP breakdown