methodology · results

What we measured and what did not work

We tested our own features against what happened afterwards. This page says how every figure is produced and also publishes the results that came out null or negative, with their table, sample and scope.

← Back to the methodology

How every figure is produced

The same rules for every screen. A figure that does not meet them is not shown.

01The sample, always
Every rate comes with its n: how many cases are behind it. A percentage without a sample says nothing.
0295% interval
Every proportion carries its 95% confidence interval (Wilson method). With few cases the interval is wide, and it shows. Where observations overlap or come in runs (multi-week returns, regimes that last), the interval is computed on the effective sample, which is smaller than the number of cases.
03The base rate beside it
A conditional figure is shown next to the unconditional rate of the same outcome. If the figure's interval contains the base, the screen flags it: it cannot be told apart from it.
04Out-of-sample check
The effectiveness tests estimate each figure with data up to 31 December 2021 and judge it on what happened from 1 January 2022. What only works in the stretch where it was estimated does not count. The reports that can be recomputed are also checked with a rolling origin: each year from 2016 is predicted only from the sessions before it, and a stamp says whether the figure was stable, unstable or carried no information.
05Distance-matched control and placebo
A level is compared with any price at the same distance; an entry rule, with random entries using the same stop and holding time. If the level or the rule does not beat its control, it adds nothing.
06Rate for the state and the time
A card that says 'active' at midday shows the rate of the cases that were in that state at that time, not the rate of all cases.
07Small-sample rule
With fewer than 10 cases the figure is not shown. With fewer than 30 it is shown flagged as a small sample. A badge says whether the rate was stable between two stretches of history.
08Multiple testing
When many rules or many markets are tested at once, some results look good by chance. We say so and correct for it before calling anything an edge. The screens that rank or compare many figures apply a false-discovery control at 10% over everything they scanned and say how many comparisons there were, how many survive and how many chance alone would give.
09Simulations, net of costs
Simulated results deduct commission and slippage and are hypothetical: they were not obtained by trading a real account.

What we measured and did not work

Each result with its table. The exact scope (markets, dates, definition) is in each table's note.

01

Seasonal windows that 'almost always rise' did not keep rising more than any other

We selected the calendar windows that had closed higher in the great majority of years and looked at the following years. Their hit rate fell until it was almost the same as that of any window of the same market and length; without counting overlapping windows, the difference disappears.

That is why the seasonality screen compares each pattern with every window of the same length and does not present its past rate as a future probability.

Seasonal windows 'positive in 70% of years or more': what happened in the following years

27 markets

Swipe to see the sample →

MeasurementSelected windowsAny window of the same market and lengthCases
Positive years up to 2021 (what the screen showed)76.2%58.5%14,654
Positive in 2022-2026, all selected windows54.0%52.1%68,918
Positive in 2022-2026, non-overlapping windows only49.9%49.7%1,489

n = 68,918 · 2010-06-07 to 2026-10-09 · exchange data

27 markets with at least 9 complete years of history up to 2021, prices adjusted at contract rolls. Selected window = a stretch of calendar dates that closed higher in 70% or more of the last 10 complete years up to 31-Dec-2021. Each window is then looked at in every year from 2022 to 2026 (2026 through 9 October): 'positive' = it closed higher again. The comparison column is the same count for every window of the same market and the same length, without selecting. The first row counts windows; the other two count window-year combinations. Selected windows overlap heavily (a window and the one starting a day later are almost the same), so the last row keeps only those that do not overlap: its 95% confidence interval is 47.4-52.4%. Raising the threshold to 80% or 90% of years does not change the conclusion. This is what happened, not a signal.

02

Passing the robustness screen did not anticipate that a strategy stayed profitable

Thousands of variants of mechanical strategies, evaluated with data up to 2021 and judged afterwards. Those that passed the screen were not profitable afterwards more often than those that had simply been profitable.

The screen is good for discarding what was not net profitable; it does not certify what happens next, and the lab now says so.

Does passing the robustness screen anticipate that a strategy stays profitable?

13 markets

Swipe to see the sample →

Strategies, by their result up to 2021Profitable in 2022-2026, net of costsStrategies
Pass the robustness screen38.3%188
Net profitable up to 2021, without passing the screen40.1%5,979
All strategies evaluated27.5%33,822

n = 33,822 · 2010-06-07 to 2026-10-09 · exchange data

33,822 variants of mechanical session strategies on 13 markets (indexes, gold, silver, crude oil, natural gas, bonds, grains, currencies and bitcoin), each with at least 30 trades up to 31-Dec-2021 and 20 afterwards. The screen is calculated only with the trades up to 2021 and requires all of: positive net result, a sign test different from chance, and the same positive sign in two chronological splits of that period. 'Profitable in 2022-2026' = mean result per trade above zero from 1-Jan-2022 to 9-Oct-2026, after commission and one tick per side. The second row is the strategies that were net profitable up to 2021 but did not pass the rest of the screen: if passing the screen told us something, the first row should sit clearly above the second. Simulation on historical data: hypothetical results. This is what happened, not a signal.

03

Profile reference levels are reached about as often as any price at the same distance

The idea that a profile level 'attracts' price can be measured: compare it with any price equally far away. On ES the two columns are very close.

The levels remain useful as a reference for orientation; what we did not find is price heading for them more than it would for any other point at that distance.

Do profile levels attract price? Each level against any price at the same distance

ES

Swipe to see the sample →

Unvisited level% reached in the next sessionControl price at the same distanceCases
POC of an earlier session23.1%23.0%6,940
Edge of an earlier value area33.0%32.5%7,324
Unfilled single-print stretch18.3%17.6%3,898
Unfinished extreme (no tail)11.9%12.9%3,792
Earlier high or low26.1%26.0%7,489

n = 4,149 · 2010-06-07 to 2026-10-09 · exchange data

ES regular session (9:30-16:00 ET), 7-Jun-2010 to 9-Oct-2026, 30-minute period profile, prices adjusted on contract changes. At each session's close we take, for each type, the nearest unvisited level above the close and the nearest below it, among those left by the previous 250 sessions and no further than 4 ATR (20-session average true range): each session adds up to two cases per type. POC = the row with the most TPOs of a session; value-area edge = the upper or the lower limit of 70% of its TPOs; unvisited = no later session has traded that price. Single-print stretch = the longest inner run of two or more consecutive one-TPO rows; reached = the next session trades through all of it. Unfinished extreme = a high or low whose row holds two or more TPOs (no tail) and that no later session has exceeded; earlier high or low = the other highs and lows not yet exceeded. 'Reached' = the next session trades the level. The control is not a level: for each case it is the share of all the sessions before that date whose next session moved away from its own close, in the same direction, by at least that same distance measured in ATR; the column is its average. If the two columns look alike, the level does not attract price more than any other at that distance. The differences run from −1.0 to +0.7 points; over five sessions, from −0.7 to +2.0. It is what happened, not a signal.

Magnet or myth? Poor extremes and single prints against a control

ES

Swipe to see the sample →

Level · horizonExceeded or filledControlCases
Poor extreme · 1 session55.3%48.3%1,234
Poor extreme · 5 sessions79.1%73.6%1,234
Poor extreme · 10 sessions85.0%81.2%1,234
Single prints · 1 session45.1%43.8%776
Single prints · 5 sessions72.8%72.2%776
Single prints · 10 sessions81.8%79.4%775

n = 2,010 · 2010-06-07 to 2026-09-30 · exchange data

ES regular session, 7-Jun-2010 to 30-Sep-2026, 30-minute period profile. Poor extreme = the row of the session's high (or low) holds two or more TPOs, no tail. Exceeded = one of the next N sessions trades beyond that extreme. Control = the highs and lows that are not poor. Single prints = the longest stretch of two or more consecutive one-TPO rows inside the profile (tails do not count). Filled = a later session trades through the whole stretch. Control = a stretch of the same size mirrored on the other side of the close. If the level column and the control column look alike, the level does not attract price more than any other. Prices adjusted on contract changes.

04

Context anticipates the size of the next session's range, not its direction

Depending on how the market arrives at the close, the next session's range is clearly smaller or larger. The share of sessions that close higher, by contrast, barely changes.

That is why the portal's context readings are described as expected size, without the words bullish or bearish.

What a sequence of lows or highs says about the next session: its size, not its direction

ES

Swipe to see the sample →

At the session's closeNext session's range (mean)Difference from the restNext session closes higherSessions
After a sequence of rising lows0.75 ATR-0.24 ATR54.1%1,520
After a sequence of falling highs1.10 ATR0.26 ATR55.4%947
No sequence0.93 ATR0.05 ATR54.3%1,712
All sessions0.91 ATR--54.5%4,179

n = 4,179 · 2010-06-07 to 2026-10-09 · exchange data

ES regular session (9:30-16:00 ET), 7-Jun-2010 to 9-Oct-2026, prices adjusted on contract changes. Sequence of rising lows: it starts on the session that trades above the high of the range in force without losing its low and with a higher low than the previous session's (that day already counts as the second: the minimum length is 2 sessions), goes on while no session trades below the previous session's low and ends on the session that does. Falling highs: the same in reverse. No sequence = the rest; the range in force starts with the two sessions of the day the last sequence ended and widens with each session until one leaves it on one side only. Range = the next session's high minus its low, divided by the ATR (average true range of the 20 sessions ending at the close it is measured from). Difference = the row's mean minus the mean of all other sessions. 95% confidence intervals (standard error over blocks of 10 consecutive sessions): rising lows −0.24 [−0.28 to −0.20]; falling highs +0.26 [+0.20 to +0.31]; no sequence +0.05 [+0.01 to +0.09]. With the sessions from 2022 on only: −0.22 [−0.29 to −0.15] (n = 437) and +0.23 [+0.14 to +0.31] (n = 306). It predicts size, not direction: 'closes higher' = the next session's close ends above this close, and it runs from 54.1 to 55.4% across rows (from 2022 on: 51.9% after rising lows and 54.2% after falling highs, against 52.8% for all sessions). It is what happened, not a signal.

05

Positioning extremes with a confirmation rule were not distinguishable from random entries

Across all markets we tested an extreme reading of the weekly positioning report followed by a price confirmation. In no market was the result better than random entries with the same stop; in most there were too few cases to conclude anything.

The second table looks at the same question another way on ES: what happened thirteen weeks after an extreme reading, against all weeks.

Positioning extremes with a confirmation rule, against random entries

29 futures

Swipe to see the sample →

Result for the marketMarketsTrades
Better than random entries00
Not distinguishable from random entries10238
Too few cases to conclude (fewer than 10)1968

n = 306 · 2010-06-07 to 2026-10-09 · exchange data

CFTC weekly Legacy report (futures only) and daily prices of 29 futures, through 9-Oct-2026 (from June 2010 for most; crypto from later). Extreme = the commercials' net position in the top 5% of its own recent range and that of large and small speculators in the bottom 5%, or the reverse (in equity indexes, commercials only). While the extreme is in force an entry is taken with a price confirmation rule fixed in advance, with a defined stop and exit. The result is compared with 1,000 draws of entries with the same rule, the same stop and the same holding time on dates without an extreme. 'Better than random' = positive mean result and fewer than 5% of the draws match it. 'Trades' = sum of the trades of the markets in that row. With a wider band (20%-80%) one market passes the threshold, which is expected by chance when this many markets are tested. This is what happened, not a signal.

Does a positioning extreme announce the turn? ES 13 weeks later

ES

Swipe to see the sample →

Weekly report readingHigher 13 weeks laterWeeks
Speculators at a long extreme (26 episodes)61.1%113
Speculators at a short extreme (20 episodes)73.1%108
No extreme78.8%619
All weeks75.7%840

n = 840 · 2010-06-07 to 2026-10-06 · exchange data

CFTC weekly Legacy report (futures only) for the E-mini S&P 500, prices from 7-Jun-2010 and reports to 6-Oct-2026. Reading = large speculators' (non-commercials') net position as a share of open interest, placed inside its own range of the last 156 reports (3 years): 80 or more is a long extreme, 20 or less a short extreme. 'Higher' = the close 13 weeks later is above the first close on or after the Monday following publication (the report comes out on Friday with Tuesday's data), on the continuous series adjusted on contract changes. Weeks overlap: an extreme reading lasts many weeks in a row, which is why the number of separate episodes is given; that is the real count of independent cases. 95% confidence interval for the long extreme: 51.8-69.5%. It is what happened, not a signal.

06

Thirteen mechanical rules on four indexes did not pass a multiple-testing correction

We turned the platform's most prominent figures into mechanical rules written in advance and ran them with costs. The frequencies the platform shows are true, but trading them directly left no profit distinguishable from chance.

What they are good for, then: sizing the position, the stop distance, how far it is reasonable to ask for a target, and when to stop waiting for an event.

Thirteen mechanical rules on four indexes, after costs

ES, NQ, RTY, YM

Swipe to see the sample →

Net result, 2022-2026SeriesExpected by chanceSeries tested
Positive and distinguishable from zero on its own21.252
Negative and distinguishable from zero on its own41.252
Passes the multiple-testing correction0--52

n = 52 · 2022-01-03 to 2026-10-09 · exchange data

13 mechanical rules written before looking at the period, each built from one of the platform's most prominent figures (gap fill, break of the initial range and of the opening range, return to yesterday's value, the day's objective, expected range, day of the week), applied to 4 index futures: 52 series. Regular session (9:30-16:00 ET), 3-Jan-2022 to 9-Oct-2026, on 1-minute candles; when stop and target fall in the same candle the stop is counted; costs of one tick per side plus commission. 'Distinguishable from zero on its own' = weekly t-statistic above 2 (or below -2) looking at that series alone. When this many series are tested at once, some pass that threshold by chance: the middle column says how many. The multiple-testing correction resamples 4-week blocks with the four indexes together and asks whether the best series beats what chance would give: it does not (p = 0.18). Thirteen rules do not exhaust what can be built; they say that reading these figures directly left no profit after costs. Simulation on historical data: hypothetical results. This is what happened, not a signal.

07

The day type is only known near the close

The day type explains much of what happened in the session, but at midday the class in progress matches the final one in only about half the cases. And knowing today's day type does not anticipate tomorrow's direction.

In the portal, the day type and the profile shape during the session are labelled 'developing'.

When is the day type known? The class in progress against the class at the close

ES, NQ, RTY, YM

Swipe to see the sample →

IndexAt 12:00 it already matches the closeAt 14:00 it already matchesSessions
ES50.6%71.9%4,199
NQ56.2%76.2%4,199
RTY60.8%79.7%2,387
YM53.7%74.8%4,203

n = 14,988 · 2010-06-07 to 2026-10-09 · exchange data

Regular session (9:30-16:00 ET) of the four index futures, 7-Jun-2010 to 9-Oct-2026 (RTY from 10-Jul-2017). The day type (Normal, Normal variation, Trend, Neutral) is calculated with the report's own definition on the session cut at 12:00 and at 14:00 ET, and compared with the type the session had at the close. 'Matches' = the class in progress at that time is the same as the final one. Always naming the most frequent class would be right about half the time, so at 12:00 the class in progress says little about how the day will end. This is what happened, not a signal.

Day types on the regular session and what the next session does

ES

Swipe to see the sample →

Day typeFrequencyNext session in the same directionSessions
Normal2.5%40.8%103
Normal variation50.7%49.6%2,127
Trend19.4%50.4%814
Neutral27.5%50.6%1,155

n = 4,199 · 2010-06-07 to 2026-10-09 · exchange data

ES regular session (9:30-16:00 ET). The day type compares the session's high, low and close with the range of its first hour: Normal = it stays inside that range; Normal variation = it exceeds it on one side; Trend = it exceeds it on one side by more than the size of that range and closes in the outer third of the session; Neutral = it exceeds it on both sides. 'Same direction' = the next session closes against its open in the same direction as this one. 95% confidence interval of the trend row: 46.9-53.8%. The type is only known at the close: at mid-session the class in progress matched the final one in about half of the sessions. An earlier version of this table classified the near-24-hour day, where neutral takes about three quarters; this one measures the regular session. It is what happened, not a signal.

08

The '80% rule' does not reach 80%

Measured with its usual definition, the rule holds well short of what its name promises, and in part of the cases the opposite edge had already traded when the condition completed. It does beat its control, so we show it with its real figure.

The '80% rule' measured: back into yesterday's value and across to the other edge

ES

Swipe to see the sample →

CaseReaches the opposite edge in the same sessionSessions
All acceptances61.4%950
Acceptance within the first two hours67.2%509
The opposite edge had not been touched yet47.8%703
Opens above value: all64.9%507
Opens above value: opposite edge untouched47.8%341
Opens below value: all57.3%443
Opens below value: opposite edge untouched47.8%362

n = 950 · 2010-06-07 to 2026-09-30 · exchange data

ES regular session (9:30-16:00 ET), 7-Jun-2010 to 30-Sep-2026. Value area = 70% of the TPOs of the previous regular session, 30-minute period profile. Acceptance = the session opens outside that area and two consecutive 30-minute periods close inside it. 'Reaches' = it trades the opposite edge of the area before the close. 'First two hours' = the acceptance completes by the fourth period at the latest. 'The opposite edge had not been touched yet' leaves out the sessions that had already traded it when the acceptance completed: in those the rule is met by definition and there is nothing left to gain. Previous-day levels adjusted to the day's contract on contract changes. It is what happened, not a signal.

09

On macro data days the size of the reaction holds, not the direction

The hour of the release is much wider than a normal hour, and that held out of sample. Direction is another matter: with a few dozen releases per data point, the 'first reaction holds' percentages have wide intervals, and in the out-of-sample test they were not distinguishable from their control on days without a release.

Macro data days in ES: how much the first hour widens and whether the first reaction holds

ES

Swipe to see the sample →

Release (ET time)First-hour range (× normal)First 5-minute reaction holds at the close (%)Releases
CPI (inflation)4.0 ×65.5%59
NFP (payrolls)3.1 ×55.4%57
FOMC (Fed decision)3.5 ×60.0%40
PPI (producer prices)1.8 ×55.2%58
Retail sales1.6 ×49.2%59

n = 273 · 2021-10-08 to 2026-09-16 · exchange data

Releases from 1-Oct-2021 to 30-Sep-2026. Prior price = close of the minute before the release (8:30 ET; FOMC 14:00 ET). First-hour range = high minus low from the release minute to 59 minutes after it. Normal range = median of that same hour over the 20 previous sessions without any of the 7 releases (CPI, NFP, PPI, retail sales, GDP, PCE, FOMC); the cell is the median of range / normal range. First reaction = direction from the prior price to the close of the 5th minute; it holds if the 16:00 ET close is on the same side of the prior price (flat reactions excluded). ES front contract, CME 1-minute bars, no costs.

10

Weekday cells predict worse than the all-days rate

In direction and continuation reports, the 'on Thursdays' cell described what happened next worse than the rate of all days together: each cell has a fifth of the sample and its difference from the rest is usually noise.

That is why the all-days rate leads in those reports. The weekday breakdown stays in range and structure reports, where it did add information. The table measures it year by year, with each year predicted only from the sessions before it.

Does a weekday cell predict better than the all-days rate? Out of sample

24 futures

Swipe to see the sample →

Type of reportSquared error of the weekday cell (× 1,000)Squared error of the all-days rate (× 1,000)Difference (cell − all days)95% CI: from95% CI: toMarkets where the cell was worse (of 24)Cases
Direction and continuation reports242.82420.90.71.124961,648
Range and structure reports188.7190-1.3-1.8-0.832,807,614

n = 3,769,262 · 2010-06-07 to 2026-10-09 · exchange data

24 futures, sessions from 7-Jun-2010 to 9-Oct-2026; rolling origin, years 2016 to 2026. For every report with a Monday-to-Friday breakdown two forecasts made only from the sessions before the year are compared: the rate of that weekday's cell and the rate of all days together. Both are scored on the same cases of the year with the mean squared error, multiplied by 1,000: lower is better. A positive difference = the weekday cell predicted worse than the all-days rate. Cells with at least 30 cases before and 10 in the year are included: 33,908 comparisons in the direction and continuation reports and 73,030 in the range and structure reports. The 95% interval treats each year (11 years, all markets together) as a single independent observation, because the sessions of a year share a regime and markets move together. The last column before the cases counts the markets where the cell had the larger error. 'Cases' = cell evaluations per session. It is what happened, not a signal.

11

Calibration note: stated against observed, by report family

Every report that can be recomputed is checked year by year: it is computed on the sessions before a year and compared with what happened in that year. The table sums up, by family, how many statements were checked, stated against observed, and in how many report-and-market combinations the figure was stable, carried no information over its base rate or was unstable. It is a dated snapshot; the next note will be a new table.

Stated against observed, by report family: out-of-sample check with a rolling origin

24 futures

Swipe to see the sample →

Report familyStatedObservedMean errorStableNo informationUnstableStatements
IB: one side or both?37.7%38.0%3.7 pts766145,794
Gap: does it fill?57.0%55.1%6.0 pts1130314,462
Day range versus its average46.4%46.3%2.4 pts68044,084
Which session makes the day's high and low?20.0%20.0%2.9 pts24002,560
Which day makes the week's high and low?20.0%20.0%4.8 pts24002,560
Does the next session break the previous one's range?33.3%33.3%3.6 pts490232,304
Macro release day: intraday detail25.0%25.0%6.6 pts22021,832
IB: does the day follow the break?49.6%50.2%3.7 pts303481,536
Does the day follow the first move?54.9%55.4%3.7 pts442081,536
Does yesterday's colour say anything about today?47.8%48.0%4.3 pts38731,280
IB: how far does it extend?49.8%50.4%4.9 pts18061,234
Prior week's range and Monday+Tuesday's25.2%25.1%5.2 pts24001,051
Yesterday's range: is the high or low taken?66.0%66.7%3.7 pts48001,024
Day type (Market Profile)48.9%49.9%4.7 pts1365879
Daily candles: engulfing, inside and outside50.4%49.9%8.6 pts1681859
Where does it open versus yesterday's range?34.4%34.4%2.1 pts2202744
Inside day: does it break yesterday's range?50.0%50.0%2.9 pts2004512
London and New York: same colour?50.2%50.2%3.9 pts11103512
Does NY touch the overnight midpoint?70.7%67.7%5.6 pts14010512
Pivot points41.3%40.6%4.2 pts2301512
Calendar: weekday, month and day of month49.3%49.5%3.0 pts2202512
Fair value gaps: are they mitigated?78.9%77.5%8.0 pts2004508
Price versus the 50-day average52.6%52.6%3.5 pts2004508
Open interest versus price25.0%25.0%3.5 pts901424
Retracement to a reference open68.8%66.5%7.4 pts5024350
Continuation after a volume expansion48.4%48.5%4.3 pts1383256
Last hour: a new extreme?88.1%88.6%2.4 pts600116
All families41.4%41.4%3.6 pts7929916338,461

n = 38,461 · 2010-06-07 to 2026-10-09 · exchange data

24 futures, sessions from 7-Jun-2010 to 9-Oct-2026. Rolling origin: each calendar year from 2016 to 2026 is taken as the test period; every report is computed on all the sessions before that year (stated) and on the sessions of the year (observed), with the product's own functions. A statement = one rate of the report, pooled over all weekdays, in one year, with at least 30 cases before and 10 in the year. Stated and observed = case-weighted means; in the families whose figures are a split (which session, which day, which side) the two match by construction and the informative column is the mean error: the absolute difference between stated and observed per statement, in percentage points. The next three columns count report-and-market combinations: 'stable' = the figure held within 5 points year after year; 'no information' = it states an edge of 2 points or more over its base rate and out of sample it did not predict better than the base; 'unstable' = the base rate predicted better, or the error exceeds what sampling explains. Of the 1,054 combinations with enough sample: 75.1% stable, 9.4% no information and 15.5% unstable; another 39 did not have enough sample. Only the reports that can be recomputed from the day-by-day series are included. Each test year loses a few warm-up sessions in the statistics that need previous days. It is what happened, not a signal.

What did hold

Frequencies and sizes: how much a market moves, how often a range breaks, how far it usually travels from the open, and when an event that has not happened yet stops being likely. Out of sample, those figures stayed close to what was stated.

What did not hold is almost everything that sounds like direction or edge. That is the line between the two halves of this page.

What we corrected this week and why

The tests also found defects of our own. We fixed them and they are on record with their date.

  • The London → New York report measured two windows that shared hours; London is now measured up to the session open.
  • The day-type report classified the near-24-hour day instead of the session; the guide's old table was withdrawn.
  • Active setup cards printed the rate of all cases even when showing a specific state; they now show the rate for their state and time.
  • The 'trade plan' card was switched off: it showed no advantage after costs.
  • The supply and demand zones report was withdrawn: its result did not hold against any day.
  • Three simulators filled orders at an impossible price when the session opened beyond the level; the favourable result came from that defect.
  • The positioning index was calculated from a single year of reports instead of the three the page stated.
See the full changelog and corrections →

Limits of these tests

  • The out-of-sample stretch (2022 onwards) is a single market period. A figure that fails there may reflect a change in market behaviour rather than a calculation error; for whoever uses it, the effect is the same.
  • Markets move together: four indexes are not four independent confirmations.
  • A null result says we did not find the effect with this data and this definition; it does not prove it does not exist under another.
  • None of this is a recommendation. These are historical frequencies and hypothetical results.