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)10.1
Lexical diversity (MATTR-50)0.81
Consecutive similar sentences2
Repeated paragraph starts (≥3)0
AI-marker phrases0
Demonstrated experience2
Avg sentence length (words)17.9
Repeated 5-grams0
H2 section balance (50–500w)0 off
YMYL risk disclaimeryes
Mechanics verified vs codeyes
Primary keyword coverageyes
Internal links + CTA24
Content visuals8
Every figure has a caption8/8
Alt / caption text coverage100%
Distributed (≥1 per section)7/8 (88%)
Filenames sluggedn/a (inline)
Groups derived from crate source63 kernels
Learn · Candlestick Patterns · Foundations

Types of Candlesticks: The Groups the Engine Puts Them In

Most published lists of the types of candlesticks are somebody's filing cabinet — bullish over here, bearish over there, a drawer for stars. This one is not typed by hand at all. Vike's engine carries 63 candlestick kernels in a single Rust file, a script reads that file, and the groups below fall straight out of what it finds.

Three properties do all the separating, and each one is a fact about the code: how far back a rule reaches, which of the four prices it binds, and which sign it can write out. Learn those three and you can place a pattern you have never heard named.

What separates one candlestick type from another

How many bars18 · 18 · 19 · 8the loop’s own floorWhich prices25 full OHLC, 21 open+closethe columns it bindsWhich sign23 up, 15 down, 25 either+100 / −100 / 0every group below is read out of patterns.rs
Three properties, all of them facts about the source rather than about tradition. A pattern you have never met still lands in one cell of each column.

A candlestick is four numbers. Open, high, low, close — that is the whole input, repeated once per session, and every named type is some predicate over a short run of them.

So the useful question is not "what does this pattern mean" but "what does its rule get to look at". batch_hammer reads one bar and compares its body against its range. batch_engulfing reads two and compares four prices across them. batch_hikkake reaches back three bars and never binds the open column at all — it works purely off highs, lows and one close.

Nothing in the file reaches further than four bars back. The longest memory any kernel has is a ten-bar average body, and what that average remembers is how large recent bodies were, not which way price went. Every group on this page is built from those three axes and nothing else.

Types by bar count: 18, 18, 19 and 8

18one bar18two bars19three bars8four or five
Counted from each kernel’s for i in K..n floor, not from a textbook. The four-and-five-bar group is the only one with no page here yet.

Each kernel opens with a loop, and that loop starts at the first bar the rule can possibly be satisfied on. Count the floors across the file and the tally comes out at 18 one-bar kernels, 18 two-bar, 19 three-bar, and 8 that stretch to four or five.

Textbooks split candlesticks the same way, which is reassuring — but the numbers here were counted, not inherited. Our scanner writes them to content/data/detector_inventory.json, and a stale file fails its own check rather than quietly publishing last month's tally.

Reach is the honest proxy for how much evidence a signal carries. A one-bar type describes a single session. A three-bar type insists that three consecutive sessions arrange themselves in a specific order, which is a far larger coincidence to demand, and correspondingly rarer.

The one-bar candlesticks

BTC/USDT daily — a real pattern detected 2026-02-24, confirmed → +6.1% within 5 days.

Eighteen kernels judge a bar entirely on its own proportions, and ten of them have a full page here.

Rejection shapes make up the biggest sub-family: hammer and hanging man share one geometry, inverted hammer and shooting star share the mirror of it. Then the doji group, where the body collapses to a line: the plain doji, the dragonfly with its shadow underneath, the gravestone with its shadow above, and the long-legged doji with legs on both sides. Two more round the set off — the spinning top, whose small body sits between two longer shadows, and the marubozu, which is all body and almost no shadow.

Notice what unites them. Every one is a statement about proportion inside a single session, so none can be wrong about history, and none can know any.

Two-bar and three-bar candlesticks

BTC/USDT daily — a real pattern detected 2026-03-09, confirmed → +8.0% within 5 days.
XRP/USDT daily — a real pattern detected 2024-11-30, continued → +49.1% within 5 days.

Add a bar and the vocabulary changes: a rule can now compare this session against the last one.

Six two-bar types have pages here. Engulfing is one function covering both the bullish and bearish readings, comparing four body prices and no shadows whatsoever. The inside day asks for containment instead of coverage. Piercing and dark cloud cover both want a gap past the previous bar's wick, then a close deep inside its body.

Three bars buys ordering. Morning star and evening star demand a long bar, an isolated small one, then a long bar closing back past the first body's midpoint. Three white soldiers and three black crows want three same-coloured bodies in a strict staircase.

Beyond three bars the coverage stops. Eight kernels need four or five sessions — the hikkake pair, the three-line strike, mat hold and the rest — and not one of them has a page yet. I would rather say that plainly than pad this page with eight thin entries.

Types by the prices the rule reads

OHLC25sees everythingOC21bodies only, shadows invisibleOLC9polices the shadow belowOHC6polices the shadow aboveHLC2never binds the openbar length = how many kernels bind that set
The line where a kernel destructures its columns is also the list of things it cannot check. Two kernels never bind the open at all.

Here is the grouping no textbook prints, because it is only visible in source. Every kernel destructures the price columns it needs, and that line tells you exactly what the rule is blind to.

Twenty-five bind the full open, high, low and close. Twenty-one bind only open and close, so shadows are invisible to them — the engulfing family lives here. Nine bind open, low and close; six bind open, high and close; and two bind high, low and close with no open at all.

That last split is the sharp one. batch_three_white_soldiers binds high, so it can cap the wick above each rising body, while batch_three_black_crows binds low and caps the wick below instead. Each member therefore cannot see the shadow on the far side of its own pattern, however long that shadow grows. Fifteen kernels are half-blind in this mirrored way, and it is a design choice rather than an oversight: a rule only polices the wick that would argue against it.

Types by the sign a kernel can emit

+100 only23direction fixed in code−100 only15direction fixed in code+100 or −10025colour decides at runtime
A single-sign kernel cannot change its mind about direction, whatever the chart does. Only the third group reads the bar to decide.

Direction is the third axis, simplest to state and easiest to misread. A kernel writes +100 for bullish, -100 for bearish, 0 for nothing found — and many kernels can only ever write one of the two.

Counted across the file: 23 emit +100 only, 15 emit -100 only, and 25 can emit either. A single-sign kernel has its direction baked in before any data arrives, which is why bullish candlestick patterns and bearish candlestick patterns can each get a category page without the two overlapping much.

The both-signs group is where the interesting duplication hides. batch_engulfing is one loop whose sign comes from which colour arrived first, and batch_marubozu takes its sign from the bar's own colour. Neither is two patterns. Each is one rule with a colour test bolted to the end.

Where the grouping stops helping

XRP/USDT daily — a real pattern detected 2024-07-07, momentum faded → rose +7.1% over 4 days instead.

A taxonomy tells you what a rule inspects. It cannot tell you whether the inspection was worth doing, and I have watched people slide from one to the other without noticing.

The XRP chart above is a clean marubozu — 93.9% body, both shadows well under the 5% ceiling, textbook by every clause batch_marubozu checks. Momentum then faded and price went the other way. Nothing in the type was wrong; the type simply never made the promise that was read into it.

Rarity is the other place this breaks down. A three-bar type is harder to satisfy, so it fires less often, and people take that scarcity as strength. Sometimes it is. On 24/7 crypto tape it is often just an artefact of the venue, because bars open exactly on the prior close and the strict inequalities these rules use are then almost impossible to clear.

Frequently asked questions

How many types of candlesticks are there? Named types run into the dozens, and our engine implements 63 of them. Grouped by the bars each rule reads, that is 18 one-bar, 18 two-bar, 19 three-bar and 8 needing four or five.

What are the four basic candlestick types? By shape rather than by name: a long body with little shadow, a small body sitting above or below one long shadow, a small body flanked by shadows on both sides, and a body so slight it prints as a line. Almost every named pattern is one of those four, or a short sequence of them.

Which candlestick type is best for beginners? Start with one-bar types, since their rules involve a single session and you can verify each clause by eye. The candlestick patterns hub has the full cheat sheet with every rule beside its detector.

Do candlestick types work the same on every timeframe? Their rules do — a kernel has no idea what a bar represents. What changes is how often a rule is satisfiable, and gap-dependent types nearly vanish on continuous markets whatever the interval.

Is there a difference between a candlestick type and a candlestick pattern? In practice, no. When I use "type" I mean the family a rule belongs to, and "pattern" the individual named rule, but nothing in the code draws that line.

This is educational material, not financial advice. A pattern type describes what a rule inspected, never what price will do next, and every real trade carries real risk — size positions so a wrong read costs little.

See which of these types claim a reversal