Why intra-bar features matter
How to enrich higher-timeframe bars with lower-timeframe information without changing your full research workflow.
When we work with hourly or daily bars, we usually keep only OHLCV.
But two hourly bars with the same OHLCV can hide very different internal behaviors.
One may trend smoothly.
Another may be noisy, mean-reverting, or highly asymmetric inside the bar.
That is exactly where intra-bar features become useful.
Instead of treating each bar as a simple summary, we can rebuild it from a lower timeframe and compute additional metrics inside the bar, such as slope, skewness, kurtosis, or other microstructural statistics. Quantreo’s bar metrics are designed for that workflow through the `additional_metrics` mechanism, which adds custom columns computed from the data inside each bar.
1. The Core Idea
The idea is simple.
If you trade on a higher timeframe, for example 1H, you can use a lower timeframe, for example 1 minute, to reconstruct each hourly bar and compute what happened inside it.
This gives you extra information that standard OHLCV cannot capture.
In Quantreo, these bar-level metrics are meant to enrich traditional bars with statistical and microstructural information extracted from the data inside each bar.
The documentation explicitly mentions examples such as skewness, kurtosis, Hurst exponent, volume-profile-type features, and other custom indicators.
2. Why This Matters
A bar is a compression of information.
And sometimes, that compression removes exactly the behavior you care about.
With intra-bar metrics, you can start distinguishing:
- smooth vs noisy bars
- directional vs unstable bars
- balanced vs asymmetric internal price action
- ordinary bars vs bars with unusual internal structure
This is often where extra signal can appear, especially when many strategies rely only on the final OHLCV snapshot.
3. Examples Of Useful Intra-Bar Features
Some useful examples are:
- linear slope inside the bar
- skewness
- kurtosis
- volume concentration features
- custom metrics derived from price or price-volume distributions
Quantreo already documents built-in bar metrics such as `skewness`, `kurtosis`, `volume_profile_features`, and `max_traded_volume`, and also allows fully custom metrics through `additional_metrics`.
4. The Practical Workflow
A clean workflow looks like this:
- choose your trading timeframe, for example 1H
- take a lower timeframe or raw tick data
- rebuild the higher-timeframe bars
- compute intra-bar metrics during aggregation
- use these new columns as additional features in your research pipeline
In Quantreo, each metric is attached through an `additional_metrics` tuple that specifies the function, the input source (`price`, `volume`, or `price_volume`), and the output column names.
5. Why I Like This Approach
I like this approach because it adds information without forcing you to redesign your whole pipeline.
You still work with bars.
You still keep a structured dataframe.
But your bars become much richer.
So instead of changing the whole strategy framework, you improve the quality of the representation.
6. Performance Matters Too
This kind of idea is only useful if it remains practical at scale.
Quantreo recommends using Numba for custom metrics because bar building can involve millions of ticks, and the documentation notes that pure Python or Pandas implementations can be 20x to 100x slower than Numba-compiled functions.
7. Who This Is For
This is especially useful for people who:
- already use bar-based workflows
- want more signal without jumping directly to raw tick models
- care about microstructure, but still want a clean research pipeline
- want to enrich higher-timeframe features with lower-timeframe behavior
OHLCV is often a good starting point, but it is still a compression.
And sometimes, alpha lives inside what that compression removes.
That is why intra-bar features are so interesting.
They let you keep the simplicity of bar-based research while injecting part of the information hidden inside each bar.
👉 Want to learn from A to Z how to build and use intra-bar features in a real quantitative research workflow? That’s exactly what the ML4Trading Program is designed for.


