Educational Reference

The Wedge: The Same Shape Means Opposite Things

The wedge is the one common chart pattern taught to point the opposite way from its slope. A rising wedge is called bearish, a falling wedge bullish. The more interesting claim attached to it is that the same shape carries a different meaning depending on where it appears, exhaustion inside a trend and continuation against one. That is a claim about context, and claims about context are testable. This page writes the definition as code, detects every instance across 750,000 generated daily bars, and tests the context claim directly, including the part of the result that undid the first answer.

The finding, stated first. The counter-slope folklore held: 75.0% of rising wedges resolved downward and 75.9% of falling wedges resolved upward, on a tape built with no directional memory in it at all. The context claim also appeared to hold, strongly, until the comparison group was rebuilt so that it could not be drawn from the bars the pattern itself had selected. Then the entire context effect went to zero. All results on this page are illustrative and simulated.

A shape that is taught to point the other way

Most chart patterns are taught to mean roughly what they look like. An ascending structure is read as strength, a descending one as weakness, and whatever else is in dispute, the direction of the drawing and the direction of the forecast at least agree. The wedge is the exception. A rising wedge slopes up and is called bearish. A falling wedge slopes down and is called bullish. The label contradicts the picture, deliberately.

The reasoning behind that inversion is a story about effort. In a rising wedge each advance covers less ground than the one before it while the pullbacks keep getting shallower, so the range closes from below. Price is still making new highs, but it is working harder for each one. The story says the buying is running out, and that the new highs are the last thing to go. A falling wedge is the same story with the signs reversed: selling that is losing conviction while price still drifts down.

It is a good story, and unlike most pattern stories it makes a specific prediction that can be checked, because it says the resolution will go against the slope. The wider taxonomy of shapes and where each one sits is set out in the guide to chart patterns in Indian stocks. The work here goes underneath one entry in it.

There is a second claim attached to the wedge that is more interesting than the first, and it is the reason this page exists. The same rising wedge is said to mean different things in different places. Inside an established uptrend it is read as exhaustion, a warning that the advance is ending. Inside a downtrend the identical shape is read as a bear flag, a pause in a decline that is going to continue. One drawing, two readings, selected by what surrounds it.

That is a context claim, and context claims are the most defensible thing in pattern analysis and the least often tested. They are defensible because they are obviously partly true: a shape occurring in one setting really can carry different information from the same shape in another. They are rarely tested because testing one costs sample. Splitting a population by context divides it into cells, and each cell has to be large enough to say anything. Most published pattern statistics do not have the sample for one split, let alone a split crossed with a variant.

So the exercise below does three things in order. It writes a definition strict enough to run. It detects every occurrence on a large generated tape and measures what followed against a matched comparison group. Then it conditions every detection on the prior trend and asks the context question directly, with the count in every cell printed next to the result, because a context split quarters the sample and a reader is entitled to see what is left.

The definition is the triangle definition, with one clause turned around

There is no separate wedge definition to write. There is a definition of a converging range, and then there is a clause that sorts the result into two families. The sibling page on triangles wrote that definition out in full, gave every threshold a number, and then discarded a converging structure as a wedge 111,798 times, many times over the number of triangles it kept. This page picks up exactly what that page threw away, using the same code, the same generated tape and the same seed, so that the two sets of numbers can be laid side by side without an argument about method.

The sorting clause works on how far each boundary travelled over the life of the pattern, measured as a share of how wide the pattern was when it started. Call those two quantities the upper travel and the lower travel. A triangle requires the upper boundary not to rise and the lower boundary not to fall, which means the upper travel must sit below the level tolerance and the lower travel above the negative of it. Anything else that converges is a wedge.

Something falls out of that which is worth stating carefully, because it turns two definitions into one. Convergence means the gap between the boundaries shrinks, and the gap can only shrink if the upper boundary travels less than the lower one. So the upper travel is always below the lower travel, in every structure the detector can accept, with no exceptions in the 15,431 instances found. That single inequality does the rest of the work. If the upper travel is above the tolerance then the lower travel is above it too, so both boundaries are rising. If the lower travel is below the negative tolerance then so is the upper, so both are falling. The two wedge cases cannot both apply to the same structure, and together they cover everything the triangle clause excludes.

In other words, "both boundaries slope the same way" is not an extra condition anybody has to impose. It is what is left when the triangle condition fails, and the two are separated by one number that no published definition prints. That number, here, is 0.20 of the starting width. The full clause list is below, and every value in it is the value the triangle page used, unchanged, so that any difference in the results belongs to the sorting clause and not to the machinery.

The coded definition. Every threshold is identical to the one used on the triangle page; only the family clause differs. Illustrative simulated data throughout.
ClauseValue usedWhat it does, and what it costs
What is a swing pointA high with 3 lower highs on each sideThe most common fractal rule. It decides which points the boundaries are drawn through, and therefore where the boundaries are
Touches per boundaryAt least 2Two is the minimum that defines a line at all. A boundary drawn through one point is an assertion, not a measurement
Touches in totalAt least 5Forces one boundary to be tested three times. This clause rejected 6,549 window evaluations
ConvergenceThe gap must narrow by 40%What makes it a contraction rather than a drift. It is also what forces the upper boundary to travel less than the lower, which is what makes the two families complements
How close is a touchWithin 0.25 of the local widthA quarter of the gap between the boundaries. Tighter and almost nothing qualifies, looser and the boundary stops meaning anything
Containment85% of closes inside the envelopeStops a violently spiking series being called a tidy consolidation. The single largest filter here: it rejected 65,400 window evaluations
FamilyBoth boundaries travelling past 0.20 the same wayThe only clause that differs from the triangle page. It rejected 54,866 converging structures here for being triangles, which is the mirror image of what that page did to these
Window lengthShortest qualifying window up to 120 barsNobody states this one, and whatever cap is chosen becomes the length of the wedges found. The detector keeps the most compact structure satisfying every clause
What counts as a breakA close beyond the boundary by 0.10 of the average true rangeA bare close beyond a line is noise on a narrow range. Small enough not to miss real exits, large enough to ignore a one tick poke
Entry and holdingNext bar open, held 20 barsEntering on the bar that generated the signal would quietly grant the test information from the future, which is the most common silent error in pattern studies

Running the same file with the family clause pointed the other way is a check worth doing before trusting anything it says. Set it to the triangle family and it returns 20,654 candidates and 8,036 non-overlapping instances, split 2,909 ascending, 3,089 descending and 2,038 symmetrical, with 25,349 containment rejections and 5,473 touch rejections. Every one of those figures is the figure the triangle page published. The two pages are the same instrument pointed at two halves of one population.

Both rails leaning the same way, drawn from the generated bars Two detected instances. Solid marks are swing points close enough to the fitted rail to count as touches; hollow ones missed. Rising wedge both rails rise, the floor faster broke downward 56 bars, 84% narrower upper rail travel +0.45 of the starting width lower rail travel +1.28 of the starting width Falling wedge both rails fall, the ceiling faster broke upward 59 bars, 56% narrower upper rail travel −1.67 of the starting width lower rail travel −1.12 of the starting width What makes it a wedge rather than a triangle Both rails travel more than 0.20 of the starting width in the same direction. The triangle definition requires the opposite: an upper rail that does not rise and a lower rail that does not fall.
Two detected instances, drawn from the generated daily bars the detector actually ran on. Solid circles are swing points close enough to the fitted boundary to count as touches; hollow ones were inside the pattern but missed. Both were chosen for legibility, meaning clear slopes and a high touch count, and each resolved the way its variant resolved in about three cases out of four, so neither is an unusual outcome. In both, the two boundaries lean the same way, which is the entire difference from a triangle. Illustrative simulated data.

Where the line between the families actually falls

If one tolerance separates two families, the obvious question is how much of the population sits near the cut. The triangle page ran that test inside its own family and found the answer uncomfortable: hold one set of detected patterns fixed, move only the tolerance that decides which boundary counts as level, and just over half kept the name they had. A classification whose members change class when an undocumented number moves is not describing separate things.

The same test across the family line gives a different answer, and it is worth reporting precisely because it does not match the sibling result. Detecting with the family clause switched off produces 15,431 converging structures. Sorting them at each of five tolerances and asking how many stayed in the same family across the middle three, 13,823 of 15,431 did, which is 90%.

One tolerance decides whether it is a triangle or a wedge Every converging structure the detector found, plotted by how far each rail travelled as a share of the starting width. −1.5 −1.5 −1.0 −1.0 −0.5 −0.5 0.0 0.0 0.5 0.5 1.0 1.0 1.5 1.5 no structure can sit above this line upper rail travel lower rail travel upper rail rises past 0.20 lower rail falls past −0.20 THE THREE REGIONS, AT THE SETTING USED Triangle family 6,246 upper rail not rising, lower not falling Rising wedge 4,214 both rails rising, floor faster Falling wedge 4,971 both rails falling, ceiling faster The empty upper left is not missing data. Convergence forces the upper rail to travel less than the lower, so no point can sit above the diagonal. MOVE THE TOLERANCE, MOVE THE FAMILY 0.08 0.12 0.20 0.28 0.36 The families are not two species, they are two sides of one cut Across the middle three tolerances 13,823 of 15,431 structures, 90%, stayed in the same family. The rest changed species because one undocumented number moved.
Every converging structure the detector found, plotted by how far each boundary travelled as a share of the starting width. The dashed lines are the single tolerance that sorts them. The empty corner is not missing data: convergence makes it arithmetically unreachable. Illustrative simulated data.

So the boundary between triangle and wedge is a good deal sharper than the boundary between one triangle name and another, and the reason is visible in the picture. The three triangle names are decided by whether a travel figure sits inside a narrow band around zero, and that band is exactly where instances are densest, so nudging its edge reassigns a great many of them. The family line separates two well populated lobes with a thinner strip between them. The names inside the triangle family are a filing convention. The line between the families is closer to a real distinction, and a page arguing the fashionable position that all pattern taxonomy dissolves under measurement would have to leave this result out.

What the picture also shows is how the sorting clause behaves at the extremes. At the strictest tolerance tried, the triangle family holds 4,915 of the structures and the two wedge families hold the rest. At the loosest it holds 7,728. The direction of that drift is the one a reader should expect, because a looser definition of level lets more boundaries qualify as flat, and every boundary that qualifies as flat moves its structure out of the wedge family. Anybody quoting a ratio of wedges to triangles is quoting their own tolerance.

How many there are, which is more than the literature implies

Across 750,000 daily bars, being 250 independently generated instruments of 3,000 bars each and roughly three thousand instrument years, the definition produced 29,793 candidate wedges. Discarding overlaps, so that no two measured outcomes share a holding period on the same instrument, 11,493 independent instances remained. That is about 3.8 per instrument per year, split 5,371 rising and 6,122 falling.

Set that against the 8,036 triangles the same code found on the same bars. The wedge is the larger family, by about half again, and it is the one that most pattern guides treat as an appendix to the triangle entry. That inversion is not a quirk of this tape. It follows from the definition: the triangle clause is the narrow one, requiring a boundary to sit inside a tolerance band, while the wedge clause takes everything outside it on either side.

The rejection census makes the same point from the other direction. Evaluating every window without stopping at the first acceptance, 134,614 window evaluations passed the convergence test. Of those, 89,250 were wedge shaped and 45,364 were triangle shaped. Those are counts of window evaluations rather than distinct chart formations, since several window lengths are tried at each point, but the ratio is the message, and it is the same ratio the triangle page recorded when it counted its own discards.

The instances themselves are shorter than the textbook impression suggests. The median ran 53 bars from the first touch to detection, with a quarter under 38 bars and a quarter over 74. The break came quickly once the pattern was complete, on average 3.3 bars later, and only 354 of 29,793 candidates failed to break at all inside the thirty bars allowed. A converging range does not sit still, which is the one thing the shape reliably tells you and the one thing nobody disputes.

What followed a break, measured against something

A pattern statistic on its own means very little. If a break is followed by a gain in six cases out of ten, the question is what fraction of arbitrary moments on the same data are followed by a gain, because the answer might also be six in ten. The comparison group is the part most pattern statistics omit, and omitting it is usually what makes the statistic look impressive.

The group used here is built to be unfair to the pattern in every respect except the one being tested. For each detected break, two hundred random entry points are drawn from the same instrument, within 250 bars of the event so that market conditions are comparable, taking a position in the same direction as the break and holding it for the same 20 bars. The only difference between the two arms is that one entered because a wedge broke and the other entered for no reason at all. Hold on to the phrase "within 250 bars of the event", because it turns out to be the most consequential decision on this page.

What followed a wedge break, against the base rate Twenty bars after entry, direction matched to the break. The base rate is random entry on the same tape, same direction, same holding period. wedge breaks matched random entries −15% −10% −5% 0% 5% 10% 15% Tape with no directional memory 11,493 wedge breaks against 2,298,600 matched random entries difference +0.09 points, t = 1.57 −15% −10% −5% 0% 5% 10% 15% The same detector on a tape that does contain an effect 10,746 wedge breaks against 2,149,200 matched random entries difference +0.38 points, t = 5.82 The lower panel is the control. It proves the detector and the measurement can see an effect when one is present, which is what makes the upper panel worth reading.
Both arms of the test, on two different tapes. In the upper panel nothing in the data makes direction predictable and the two distributions sit on top of each other. In the lower panel a real effect was deliberately inserted and the detector finds it. The lower panel is the control that makes the upper panel worth believing. Illustrative simulated data.

On the tape with no directional memory the two distributions are the same distribution. The wedge arm finished 0.09 percentage points ahead of the matched random arm over 20 bars, which is 1.57 standard errors from zero, with a ninety-five percent interval running from −0.02 points to 0.20. The proportion of positive outcomes was 49.5% against 49.0%. The measured move, meaning the height of the wedge projected from the break, was reached within the holding period in 16.6 percent of cases against 17.8 percent for the controls, and given sixty bars instead of twenty, 39.1 percent against 39.1 percent. There is no part of the distribution where the pattern arm is distinguishable from entering at random.

That result would be worthless on its own, because a detector that finds nothing might simply be broken. So the identical detector, the identical comparison machinery and the identical thresholds were run over a second tape, built the same way but with one genuine effect inserted: after the recent trading range had been unusually narrow, a close outside that range was followed by extra drift in the direction of the break. The effect is written in terms of a simple price channel and never in terms of wedge geometry, so the detector had to find it unaided. It did. On that tape the pattern arm beat matched random entries by 0.38 percentage points with a t statistic of 5.82, across 10,746 instances. The machinery can see an effect. On the tape where there was nothing to see, it saw nothing.

False breaks are the exception to all of this, in the sense that the number is large and stable rather than large and interesting. Counting a close back inside the projected boundary within 5 bars, 37.4 percent of breaks were false. On the tape with a real effect the rate was still 34.9 percent. Roughly three breaks in eight reverse quickly whether or not anything is happening, which is simply what a boundary drawn through noisy extremes does once the range has narrowed. The mechanics of why an obvious level attracts price and then rejects it are covered in the guide to breakouts; the arithmetic here only says how often it happened under a fixed definition.

The context claim, and the answer that did not survive

Now the experiment the page was built for. Every detection carries the prior sixty-bar move at the point where the pattern began, so each one can be filed as occurring in an uptrend, in a downtrend, or in neither. Crossing that with the two variants gives six cells, and the count in each is printed with the result because a context split quarters the sample and a reader should be able to see what is left.

Measured the way everything above was measured, the context claim looked strongly confirmed. A rising wedge in an uptrend beat its matched comparison group by 0.55 percentage points across 1,568 instances, 3.56 standard errors from zero. The same shape in a downtrend did nothing at all, −0.13 points across 1,688 instances. The gap between those two cells is 0.68 percentage points with a t statistic of 3.24. The falling wedge mirrored it: 0.42 points in a downtrend and −0.14 in an uptrend, a gap of −0.57 points at −2.86 standard errors. Six cells, none smaller than 1,568, and a clean symmetric pattern: each variant did best in the trend that matched its own slope.

That is a publishable-looking result, and it is wrong. What follows is how it came apart, because the way it came apart is more useful than the finding would have been.

The first thing worth doing to a result like that is to strip out anything it did not need. The measurement above conditions on the break, and the break direction of a wedge is heavily determined by geometry, as the next section shows. So the same six cells were measured again with the break removed entirely: enter long on the bar after the pattern completes, regardless of which way it later broke, hold the same 20 bars, and compare against random long entries drawn the same way. That asks the exhaustion question in its bluntest form. Does a rising wedge precede a fall?

The context claim: what moved was the control, not the pattern Twenty-bar return after each detected wedge, entered long the bar after the pattern completes, so no break direction enters the measurement. Rising wedge in an uptrend read as exhaustion, 1,667 instances Rising wedge, no prior trend read as neutral, 2,211 instances Rising wedge in a downtrend read as a bear flag, 1,777 instances Falling wedge in an uptrend read as a bull flag, 1,964 instances Falling wedge, no prior trend read as neutral, 2,557 instances Falling wedge in a downtrend read as exhaustion, 1,961 instances Control drawn 250 bars either side the window used everywhere else here −1.3% −0.7% 0.0% 0.7% 1.3% −0.94% t −6.6 −0.22% t −1.9 +0.01% t +0.0 −0.39% t −2.9 +0.33% t +2.9 +0.74% t +5.4 Control drawn only from bars after same events, control window moved −1.3% −0.7% 0.0% 0.7% 1.3% +0.06% t +0.4 +0.11% t +0.9 −0.11% t −0.8 −0.22% t −1.6 −0.09% t −0.8 −0.10% t −0.7 the wedges matched random entries The same six cells, one change to where the control came from On the left the green dots barely move while the gold ones fan out across 1.9 percentage points. A rising wedge is by definition a stretch in which both rails rose, so a control drawn from the surrounding bars is drawn partly from that rise. Move it to bars the wedge could not have selected and the uptrend against downtrend gap falls from 0.95 points to 0.17.
The six context cells, measured twice. On the left the comparison group is drawn from 250 bars either side of each pattern, which is the convention used everywhere else on this page and on the sibling page. On the right the only change is that the comparison group may be drawn only from bars after the pattern. The pattern arm barely moves in either panel; it is the comparison group that fans out and then collapses. Illustrative simulated data.

Look at which arm is moving. Across the six cells the wedges themselves returned between −0.09 and 0.26 percentage points over twenty bars, which is to say approximately nothing, which is what a tape with no directional memory should produce. The comparison group ranged from 1.08 percentage points in the rising-wedge-in-an-uptrend cell down to −0.77 in the falling-wedge-in-a-downtrend cell. The entire context effect was in the control.

Once that is visible the cause is not hard to name. A rising wedge is, by definition, a stretch of bars in which both boundaries rose. The comparison group is drawn from 250 bars either side of the event, and the earlier half of that window contains the very rise that qualified the structure as a rising wedge. The average detected wedge spans 56 bars, roughly 23 percent of the backward window, and those are not neutral bars: they were selected for having gone up. A random entry drawn from them inherits that rise. So the control is inflated for rising wedges and deflated for falling ones, and subtracting an inflated control from a flat pattern manufactures a bearish signal out of nothing.

That is a hypothesis with an obvious test. If the contamination comes from the backward half of the window, then restricting the control to the backward half should make the effect larger, widening the window should dilute it, and restricting it to bars after the event should remove it. All three were run, and all three did what the hypothesis predicted.

Restricting the control to the 250 bars before each pattern roughly doubled the effect, to −0.77 percentage points for rising wedges at −10.20 standard errors and 0.65 points for falling ones at 8.91. Widening the window to a thousand bars either side diluted it to −0.10 and −0.01 points, neither distinguishable from zero. Drawing the control only from bars after the pattern removed it altogether: 0.02 points at 0.31 standard errors for rising wedges, and −0.14 at −1.89 for falling ones. Three predictions, three confirmations, and the folklore gone.

One more check was needed before any of that could be believed, and it is the check that most sensitivity analyses skip. A comparison group that reports zero for everything is not a strict control, it is a broken instrument, so the forward-only window had to be shown capable of finding something before its zero meant anything. Run on the tape with a real effect planted in it, the four windows report 0.55, 0.36, 0.28 and 0.21 percentage points respectively, the forward-only one at 3.22 standard errors. It is the most conservative of the four, and it should be, since the planted effect is itself a forward drift and the forward window therefore contains part of what it is being asked to detect. It keeps enough power to matter. Against the wedge it finds nothing.

With the control drawn only from bars the pattern could not have selected, all six context cells collapse. No cell now reaches two standard errors, the largest in absolute size being −1.72. The uptrend-versus-downtrend gap for rising wedges falls from 0.68 percentage points to 0.23, no longer distinguishable from zero at 1.11 standard errors, and for falling wedges from −0.57 to −0.08. The context claim, tested as directly as this data allows, is not supported. What was being measured was where the comparison group came from.

Results by variant and by context cell, with the count in every cell. The last two columns are the same events measured against a comparison group drawn only from bars after the pattern. Illustrative simulated results.
Variant and settingFoundBroke upwardAgainst a surrounding controlAgainst a forward-only control
Rising wedge, all5,37125.0%0.08 points, t 1.04−0.02 points, t −0.22
Rising, prior uptrend1,56825.4%0.55 points, t 3.560.21 points, t 1.38
Rising, no prior trend2,11525.5%−0.09 points, t −0.72−0.22 points, t −1.72
Rising, prior downtrend1,68823.9%−0.13 points, t −0.92−0.02 points, t −0.14
Falling wedge, all6,12275.9%0.08 points, t 1.10−0.05 points, t −0.69
Falling, prior uptrend1,86677.1%−0.14 points, t −1.06−0.03 points, t −0.20
Falling, no prior trend2,39075.4%0.01 points, t 0.10−0.15 points, t −1.23
Falling, prior downtrend1,86675.3%0.42 points, t 2.930.05 points, t 0.35

Two further things should be said, and the second one is uncomfortable. The first is that the break-direction share barely moved across context cells at all. A rising wedge in an uptrend resolved downward 74.6 percent of the time and in a downtrend 76.1 percent, a difference of 1.6 points at −1.04 standard errors. Whatever context does, it does not change which way the shape resolves.

The second is that this page inherited the contaminated control from the sibling page rather than inventing it, which means the sibling result built on it deserves the same treatment. The triangle page reported that triangles taken with the prior trend underperformed their comparison group by 0.42 percentage points at 4.48 standard errors, and read that as evidence against the standard advice to trade a triangle with the trend. Reproducing that split from this file gives −0.42 points at −4.51 standard errors across 3,987 instances, which is the same finding. Measured against a forward-only control it becomes −0.06 points at −0.59, and the against-trend group falls from 0.23 points to −0.02. The same artefact, on the neighbouring family. Both sibling pages have since withdrawn that finding and rebuilt their comparison groups the same way, so the three sets of numbers now describe the same bars under the same control. Their original agreement with each other was never evidence, since all three shared this machinery.

One prediction made before running that check was wrong, and reporting it is the point of making predictions in writing. The expectation was that a wedge would be contaminated more heavily than a triangle, because a wedge selects on the direction of the recent path by construction while a triangle requires a near-level boundary. Measured, the two families select on prior direction almost identically: the mean absolute sixty-bar move before a wedge was 8.7 percent against 8.8 percent before a triangle. The contamination does not come from the prior trend. It comes from the pattern's own bars sitting inside the control window, and that applies to any pattern defined by the path price has just taken, which is very nearly all of them.

The counter-slope folklore, which is right for the wrong reason

None of the above touches the claim the wedge is best known for, which is about direction rather than profit. It holds, and it holds emphatically.

The folklore is right about the direction, for the wrong reason Every value below comes from the tape with no directional memory in it, so nothing here can be a fact about markets. 0% 25% 50% 75% 100% A rising wedge resolves downward taught as bearish because the advance is exhausting 5,371 instances 75.0% an even split A falling wedge resolves upward taught as bullish because the decline is exhausting 6,122 instances 75.9% an even split The measured move is reached in time the height of the wedge, projected from the break 11,493 instances 16.6% matched random entries measured on generated data the reference the claim has to beat The one claim that survives 37.4% of all breaks closed back inside within 5 bars. On the tape with a real effect planted in it the rate was still 34.9%. WHY THREE IN FOUR, WITH NO SELLERS PRESENT price Both rails rise. The floor rises faster, so a flat price is met by the floor first.
Each claim as a pair: the value the definition produced on generated data, and the reference that claim has to beat. The two direction claims land far on the folklore side of an even split, on a tape where nothing is happening at all. Illustrative simulated data.

Of 5,371 rising wedges, 75.0 percent resolved downward, against the standard error of 0.59 points that a sample that size carries. Of 6,122 falling wedges, 75.9 percent resolved upward. Those are 36.7 and 40.5 standard errors from an even split. Three in four, in both directions, exactly as taught.

And the tape they were measured on contains no buyers, no sellers, no news and no memory of direction whatsoever. Nothing in it can exhaust. So the story attached to the statistic is not what produced the statistic, and the real cause is a fact about lines. In a rising wedge both boundaries travel upward and the floor travels faster, because that is what closes the gap. A price doing nothing in particular therefore has the floor coming up to meet it while the ceiling stays comfortably above, and over the life of the pattern the floor is reached first far more often. The falling wedge is the mirror. The shape has a built-in direction, and the direction is against the slope, which is precisely what the folklore says. It says it for a reason that does not exist.

This matters more than a debunking would, because it changes what a real-data statistic can mean. If a study of Indian equities reported that rising wedges resolved downward around three times in four, that figure would agree with what was measured here on data containing nothing at all. The figure would not be evidence of exhaustion, of distribution, or of anything a market participant did. Before a directional statistic about a wedge can be attributed to market behaviour, this geometric share has to be subtracted from it, and the residual is what is left to explain. Very few published direction figures have had that subtraction done, and asking whether one has is a fast way to find out how a number was produced.

The same logic disposes of the measured move. Projecting the height of the wedge from the break gave a target reached within twenty bars 16.6 percent of the time against 17.8 percent for random entries with the same target distance, direction and window, and over sixty bars 39.1 percent against 39.1 percent. Reached often enough to be remembered, and no more often than chance. The deadline is the undeclared parameter: quote no time limit at all and the hit rate approaches certainty, because a wandering price eventually reaches most levels.

What this supports and what it does not

A simulation settles some things and cannot settle others, and being precise about which is which is the difference between a study and an opinion with numbers attached.

The boundary of what this exercise establishes. Illustrative simulated data throughout.
ClaimDoes this page support it?
A rising wedge resolves downward more often than notYes, at 75.0 percent of 5,371 instances. It is a property of two converging lines and it appears at full strength where no market mechanism exists to cause it
That resolution reflects buying exhausting itselfNo. The identical share appears on a tape with no participants. Whatever exhaustion contributes on real charts, it has to be measured as the amount above this geometric share, not as the whole of it
The same wedge means different things in an uptrend and a downtrendNot on this data. The difference was large and significant against a surrounding control and vanished against a forward-only one, in all six cells and both variants
Wedge and triangle are two genuinely separate familiesLargely yes, and this is the one place the finding is kinder than expected. 90% of structures kept their family across the tolerance range tried, against just over half that kept their name inside the triangle family
Roughly three breaks in eight come straight backYes, under this definition, on both tapes. It is the most robust number here and the largest practical cost of trading the shape
A time-local comparison group is a safe control for a chart patternNo, and that is the transferable result. For any pattern defined by the recent path, the bars just before it were selected by the pattern and cannot serve as neutral ground
Wedges carry no edge in Indian equitiesNo. This page tested generated data, not any exchange. It establishes what the shape does when nothing is behind it, which is the baseline a real study needs before it can claim anything
Any of this is a reason to take a positionNo. Nothing here is a trade trigger, a recommendation or a forecast, and the outcome distributions are wide enough that no single instance is predictable

The largest limitation is the obvious one. Generated data has no earnings, no policy announcements, no index rebalancing and no order book, so it cannot say what happens when a real range compresses ahead of a real event. What it can do, and what real data cannot, is provide a case where the true answer is known before the measurement starts. That is what allowed a strong, symmetric, well-powered context result to be identified as an artefact rather than written up.

What to do with a wedge instead

None of this makes a narrowing, tilted range useless to look at. It relocates what is worth looking at, and it changes what a reader should demand of anyone quoting a number about one.

Treat the direction as arithmetic, not as information. Three in four is a large number and it is genuinely there, so the resolution of a wedge is predictable in a weak sense. It is predictable the way it is predictable that a line drawn upward through a chart will eventually meet a flat price. Acting on it requires the move after the break to be worth something, and that is the part that measured nothing here.

Interrogate the comparison group before the pattern. This is the lesson worth carrying to every other pattern. When a study reports that some shape beat a benchmark, ask where the benchmark entries came from. If they were drawn from the neighbourhood of the pattern, and the pattern is defined by the path price has just taken, the benchmark has been contaminated by the pattern. On this page that single choice produced an effect of nearly a percentage point with a t statistic above six, out of data containing nothing.

Draw the boundaries before you name the shape. Every quantity in the definition table depends on where two lines are drawn, and where the lines are drawn is a decision rather than an observation. Doing the exercise once, deliberately, on a trendline is worth more than reading ten descriptions of a wedge, because it makes visible how much of the pattern was supplied by the analyst.

Budget for the false break before the target. Three breaks in eight came straight back on data where nothing was happening. That rate is not a market pathology to be outsmarted, it is the arithmetic of drawing a boundary through noisy extremes and then asking whether price crossed it. Any plan built on a narrowing range has to survive that rate as its normal case.

Write the prediction down before the test. One prediction on this page was written down in advance and turned out to be wrong, which is why it appears above instead of being quietly dropped. That habit is the whole difference between measuring something and decorating a conclusion, and if it is more interesting to you than the taxonomy it replaces, it is the method we teach.

FAQ

Frequently asked questions

Only which way the two boundaries lean. In a rising wedge both the ceiling and the floor slope upward, with the floor rising faster so the gap closes. In a falling wedge both slope downward, with the ceiling falling faster. That is the whole distinction. Under the definition coded on this page the two are mutually exclusive and together they account for every converging structure that is not a triangle.

The usual explanation is exhaustion: each advance covers less ground than the last, so buying is said to be running out even as price makes new highs. It is the one common pattern whose taught direction is the opposite of its slope, which is what makes it interesting to test. On the generated data used here the downward resolution did show up, in three cases out of four, but it showed up on a tape with no buyers, no sellers and no memory of direction, so exhaustion cannot be the cause.

In this test, yes, and by a wide margin. Of 5,371 rising wedges detected on a tape built with no directional memory, 75.0 percent resolved downward. Falling wedges resolved upward 75.9 percent of the time. Both are far too large to be chance at these sample sizes. The cause is geometric: both boundaries travel in the same direction and the trailing one travels faster, so a price that is going nowhere is met by the trailing boundary first.

They are two halves of one definition. A triangle requires an upper boundary that does not rise and a lower boundary that does not fall. A wedge is everything else that converges. Because convergence forces the upper boundary to travel less than the lower, those two conditions are exact complements, separated by a single tolerance for what counts as level. Move that tolerance and instances change family. About nine in ten kept their family across the settings tried here, which makes the line between the families sharper than the line between the three triangle names.

That is the claim this page was built to test, and the answer here is no. Split by the prior sixty-bar move, the first measurement showed a large and statistically strong difference between the two cells, which looked like confirmation. Then the comparison group was moved so that it could only be drawn from bars after the pattern rather than from bars around it, and the entire difference disappeared. What had been measured was the control, not the pattern.

Under this definition, 11,493 non-overlapping instances across 750,000 daily bars, which is about 3.8 per instrument per year. That makes them more common than triangles, which the same code found 8,036 of on the identical data. The family most pattern guides treat as a footnote to the triangle is the larger of the two, and the reason it looks rarer in practice is that it is usually defined only in passing.

Counting a close back inside the projected boundary within five bars, 37.4 percent of breaks were false. On the tape with a real effect deliberately planted in it the rate was still 34.9 percent. Roughly three breaks in eight reverse quickly whether or not anything is happening, which is what a boundary drawn through noisy extremes does when the range has narrowed. It is the most robust number on this page and the one with the clearest practical cost.

Because a wedge is defined by the path price has just taken, so the bars just before it are not neutral ground. Drawing random control entries from the window around each pattern means drawing part of them from the run that created the pattern. On this data that single choice manufactured the whole of the wedge folklore and the whole of the context effect, and reversing it made both vanish. Any study that compares a path-defined pattern against nearby random entries needs to check this before reporting anything.

Because a generated tape can be built with a known answer inside it and real data cannot. Two tapes were used: one with no mechanism that could make direction predictable, where any measured edge has to be an artefact, and one with a real effect deliberately inserted, which proves the detector can see an effect when there is one to see. That pairing is what let the control-window problem be identified rather than published. It cannot tell you what wedges do on any particular exchange, and nothing here should be read as saying it can.

Yes, and the most useful part is the order of operations. Write the definition as code before looking at any result, including every threshold you would rather leave vague. Detect every occurrence rather than the ones you remember. Then build the comparison group and attack it harder than you attack the pattern, because on this page the comparison group was where the entire finding lived. If a result moves when you change how the control is drawn, you have measured your method.

Method note

How the numbers on this page were produced

Every figure comes from one deterministic simulation, seeded so that it reproduces identically on each run. Two tapes were generated, each of 250 independent instruments of 3,000 daily bars, 750,000 bars in total. The generator, the seed and all ten detection thresholds are the ones used on the triangle page, so the two sets of results describe the same bars. Volatility clusters and drift regimes switch on both tapes, so quiet coiling stretches occur naturally and are never inserted by hand; the three drift states are symmetric and equally likely, so the unconditional drift of the tape is zero. The first tape contains no mechanism that could make direction predictable. The second adds one effect, defined entirely in terms of a simple price channel and never in terms of wedge geometry, and exists to prove the detector can find an effect when one is present.

Detection runs on the open, high, low and close of the generated bars. Signals are taken on the close and positions opened at the next bar's open, so no result uses information that was not available at the time. Outcomes are measured over 20 bars. Overlapping detections are discarded so that no two measured outcomes share a holding period. The comparison group draws two hundred entries per event from the same instrument, matched for direction and holding period; the window it draws from is varied deliberately and every variant is reported, because that variation turned out to be the substance of the result. The arithmetic claim that convergence forces one boundary to travel less than the other was checked over 15,431 detected instances and separately against a deliberately broken classifier, which the check correctly failed.

Returns are shown before costs. An illustrative allowance of twelve basis points per round trip would apply equally to both arms and would not change the difference between them, though it would sit well above every difference that was measured. All results are illustrative and simulated. They are not a track record, they are not a forecast, and they are not an indication of what any pattern would produce in a live account or on any Indian security or index. The purpose of the exercise is to establish which properties of a wedge are consequences of its definition and of the way it is measured, which are questions about method rather than about any particular market.

Related

Continue reading

Next step

Find your starting stage. Everything else follows from there.

Educational reference only. No buy, sell or hold recommendations. All results shown are illustrative and simulated.