Back to López de Prado

Research review · López de Prado · study 01

Information-Driven Bars

Sampling on an activity clock Gaussianizes returns across crypto, US equities, and forex

Standard practice samples the market on a fixed time clock, one-minute, one-hour, daily bars. López de Prado argues this is the worst choice: markets process information at a time-varying rate, so time bars over-sample quiet stretches and under-sample bursts, leaving returns with fat tails, skew, and serial correlation. His fix is to sample on an activity clock instead, a new bar every so many ticks, units traded, or dollars of notional. This study reproduces that claim on real data in three markets, and reports two practical caveats the original text under-states. The piece below lets you turn the dials yourself.

source

Advances in Financial ML, Ch. 2

López de Prado (2018) · “The Volume Clock” (2012)

Code & tables

lopez-de-prado-work-review · 01_information_driven_bars

the claim

What López de Prado says

  • Sampling the market on a fixed time clock is the worst choice: markets process information at a time-varying rate, so time bars over-sample quiet periods and under-sample bursts, leaving returns with excess kurtosis, skew and serial correlation that violate the near-IID-Gaussian assumptions estimators rely on.
  • Sample instead on an information clock, a new bar every X ticks, units traded, or dollars of notional, which subordinates price to an activity clock. He argues dollar bars are the most robust (invariant to price level and share-count), predicting information bars should show lower excess kurtosis, lower |skew| and weaker serial correlation than time bars.

our result

What we found

  • Confirmed in all three markets: information-driven bars Gaussianize returns, cutting median excess kurtosis (crypto 5.29 → ~1.5, equities-RTH 9.95 → 3.4–5.6, forex 2.98 → 1.06) and roughly halving |skew|, the central claim holds.
  • Two practical caveats he under-states: the advantage is granularity-dependent (it erodes when built from coarse bricks, crypto dollar-bar kurtosis 1.13 at 1-min base vs ~2.06 at 60-min), and equities require session-aware handling (naive all-hours bars look like a failure until you compute within-session returns).
  • A nuance: on pure return normality volume bars edge out dollar bars (crypto 1.48, equities-RTH 3.35), and reproduction is fragile to data quality. This is a clean statistical-property study, no edge claim is attached.

The result in three lines

three markets

The principle holds

Tick, volume, and dollar bars cut the excess kurtosis of returns versus time bars in every market: crypto 5.29 → ~1.5, US equities (RTH) 9.95 → 3.4, forex 2.98 → 1.06.

caveat one

Equities need the session

Naively, information bars look worse than time bars, an artifact of the overnight gap. Restrict to regular hours and compute within-session returns, and the dollar bar collapses from 34.4 to 5.6.

caveat two

The base data matters

The advantage is granularity-dependent: dollar-bar excess kurtosis rises from 1.13 on a 1-minute base to ~2.06 on a 60-minute base. The method wants fine bricks.

Overview

The testable prediction is clean: at matched frequency, bars emitted on an information clock should have lower excess kurtosis, lower absolute skew, and weaker serial correlation than time bars. To test it without confounds, we build each bar type from the same one-minute base and target the same average bar count, so the only thing that varies between four series of the same instrument is the clock. Everything is measured on the return distribution itself; there is no strategy and nothing fit to the future.

Fig. 1:The multi-market summary: in every market, information-driven bars sit well below time bars on excess kurtosis. The advantage is largest in crypto and smallest, but still present, in equities.

The headline, in every market

Information-driven bars Gaussianize returns across all three markets. On the one-minute base, median excess kurtosis falls from 5.29 to roughly 1.5 in crypto, from 9.95 to 3.4 in regular-hours equities, and from 2.98 to 1.06 in forex. Absolute skew falls in step, crypto 0.37 → 0.10, forex 0.20 → 0.13. The effect is directional and consistent, and it is strongest where the base data is finest.

bar clockcrypto (27 perps)equities (9 ETFs, RTH)forex (8 majors)
time5.299.952.98
tick1.613.971.06
volume1.483.35,
dollar1.545.58,

Median excess kurtosis of bar returns, one-minute base (0 = Gaussian; lower is closer to normal). Spot FX has no consolidated volume, so volume and dollar bars are not defined there.

Turn the dials

The explorer below reads the study's real numbers. Pick a market and watch the four bars: the time bar (grey) is the baseline; the information bars (accent) are the activity-clock alternatives, with the lightest-tailed one highlighted. For crypto you can change the base granularity; for equities you can toggle the session handling that is the crux of the second caveat.

Demo: Bar-clock explorer

Excess kurtosis of bar returns by sampling clock, per market. Lower is closer to Gaussian; information-driven bars pull the tails in versus time bars.

Real study values
Market
Base granularity

Finer base data → better Gaussianisation. The dollar-bar advantage erodes as the base brick coarsens.

time-bar excess kurtosis
3.56
best info bar (dollar)
1.13
tail reduction vs time
3.2× lighter
27-perp cross-section · base resolution = 1-min0.01.02.03.04.00 = Gaussian3.56|skew| 0.37Time1.79|skew| 0.28Tick1.94|skew| 0.26Volume1.13|skew| 0.10Dollarbar height = excess kurtosis (lower = closer to normal)

At a 1-minute base, the lightest information bar carries excess kurtosis 1.13 against 3.56 for the time bar, about 3.2× lighter tails. Coarsen the base brick and the dollar-bar edge fades; the method wants fine base data.

Crypto, clean confirmation

On 27 perpetual futures sampled from clean one-minute dumps, all three information bars are roughly 3.4× less tail-heavy than time bars (5.29 down to 1.61 / 1.48 / 1.54 for tick / volume / dollar), and absolute skew drops from 0.37 toward 0.10. The Q–Q plot for BTC straightens out markedly under the activity clock.

Fig. 2:Crypto cross-section, clean one-minute base: every information bar lands far below the time bar, with volume bars marginally the lightest.
Fig. 3:BTCUSDT Q–Q against the normal: time-bar returns bend away in the tails, while the information-bar returns track the diagonal much more closely.

One cautionary note from the build: the comparison is a sensitive instrument. An early run on a legacy third-party 30-minute dataset produced the opposite conclusion (dollar bars worse than time bars), driven by contaminated early prints that dollar sampling concentrates into a handful of fat-tail bars, BTC dollar-bar excess kurtosis of 32.7 on the legacy tape versus 1.05 on clean dumps at the same frequency. Validate the tape before trusting the bar comparison.

The advantage is granularity-dependent

Building information bars from coarser bricks erodes the benefit. Dollar-bar excess kurtosis rises from 1.13 on a one-minute base to about 2.06 by a 60-minute base. The directional win over time bars survives at every resolution, but the method clearly wants fine base data, a practitioner accumulating dollar bars from 30-minute bricks leaves most of the benefit on the table.

Fig. 4:Excess kurtosis versus base granularity: information bars degrade toward the time-bar line as the base brick coarsens, with the dollar bar most exposed.
Fig. 5:The dollar-minus-time gap (negative = dollar bars better) is widest on a fine base and narrows as the base coarsens, the granularity penalty, isolated.
Fig. 6:The session effect for equities: naive sampling inflates information-bar tails above time bars; within-session sampling drives them well below.

Equities, only with session-aware handling

Sampled naively across all hours, with returns taken over the overnight gap, the result looks like a failure: dollar bars (34.4) and tick bars (19.5) come out worse than time bars (18.3). That is an artifact of session structure, not of the method, the overnight gap and the open/close-auction volume spikes get bundled into single information bars, manufacturing fat tails. Restrict to regular hours and compute within-session returns and the picture flips entirely.

bar clocknaive (all hrs + overnight)RTH + within-session
time18.319.95
tick19.473.97
volume12.903.35
dollar34.425.58

Median excess kurtosis over 9 ETFs. Handle the session and every information bar beats the time bar, the dollar bar collapses from 34.4 to 5.6. The concrete operating rule: never let a bar span the close→open gap.

Fig. 7:Forex majors: tick bars carry lighter tails than time bars across the board, confirming the activity-clock principle where volume is unavailable.

Forex, the tick clock is the information bar

Spot FX has no consolidated volume, the HistData volume field is literally zero, so volume and dollar bars are not meaningful. The available information clock is tick count, the quote-update intensity. Gap-aware tick bars (weekend and rollover gaps dropped) Gaussianize FX returns on all eight majors: median excess kurtosis 2.98 → 1.06, absolute skew 0.20 → 0.13. The principle holds for FX, instantiated as the tick bar.

Fig. 8a:Advanced bars do not thin the tails. The imbalance and run bars land above the plain tick, volume, and dollar bars on excess kurtosis.

Advanced bars: imbalance and run bars do not help

López de Prado also proposes a second family that goes beyond counting activity: imbalance bars and run bars, which emit a new bar when the signed order flow accumulates past a threshold: when buys outweigh sells (or vice versa) by enough, or when a one-sided run of trades persists. The natural hope is that these flow-aware clocks Gaussianize returns even further than the plain tick, volume, and dollar bars. They do not. Rebuilt on three crypto perps from the same one-minute base at matched daily frequency, the advanced bars make the tails worse, not better: tick-imbalance bars carry a median excess kurtosis of about 11.3, against roughly 1.07 for the plain dollar and tick bars at the same frequency. The reason is structural. A trigger that fires on directional flow tends to close a bar right as a one-sided move is running, so each bar spans a directional swing and the return inherits exactly the fat tail the activity clock was supposed to remove. The simple dollar or volume bar remains the right sampling clock; imbalance and run bars belong in the toolbox as features that describe order-flow pressure, not as the clock you sample the price on.

Median excess kurtosis over three crypto perps, one-minute base, matched daily frequency (0 = Gaussian; lower is closer to normal). The four advanced bars are flagged in accent; every one of them is heavier-tailed than the plain dollar bar.

Fig. 8b:The BTCUSDT normal Q-Q overlay shows the imbalance-bar returns bending away from the diagonal in the tails, while the plain activity bars hug it.
bar clockmedian excess kurtosis
time3.56
tick1.07
volume1.94
dollar1.07
tick-imbalance11.32
volume-imbalance6.46
tick-run3.88
volume-run2.90

How to read it

Volume bars, not dollar bars, are the most robust Gaussianizer in this data , marginally best in crypto (1.48) and clearly best in regular-hours equities (3.35 against the dollar bar's 5.58). López de Prado prefers dollar bars for their invariance to price level and share-count changes, which is a robustness argument rather than a tail argument; on pure return normality the volume bar edges them out. As a single cross-market default we would reach for volume bars, keeping dollar bars where cross-instrument or long-horizon comparability matters. Residual equity tails also stay fatter than crypto's even after activity-clocking (3.4–5.6 versus ~1.5), a reminder that intraday equity jumps are not fully tamed by sampling alone.

Method

  • Real base data, one-minute resolution: 27 Binance USD-M perps (clean dumps), 9 Algoseek ETFs, and 8 HistData FX majors. No synthetic series.
  • From each one-minute base, build time / tick / volume / dollar bars all targeting the same average daily frequency, so the only thing that changes is the clock, not the bar count, the apples-to-apples comparison.
  • Score each bar series on its return distribution: excess kurtosis (0 = Gaussian), absolute skew, first-order autocorrelation, Jarque–Bera.
  • Report the full cross-section by medians, never a single hand-picked instrument, because the underlying returns are heavy-tailed.
  • Causal and cost-free by construction: this is a statistical-property study of the sampling scheme, with no strategy, no parameters fit on the future, and no look-ahead.

Reproducibility

The analysis scripts, the per-market tables, and the figures shown here are collected in the companion repository folder 01_information_driven_bars. The explorer on this page is self-contained and reads the same numbers as the published tables, so the comparison reproduces exactly on every load.

Cite

References

See also

This is the opening study of a broader review program; the other studies are listed on Research.

Information-Driven Bars | Daru Finance