Stefano Serafini was leading the 2017 World Cup Championship of Futures Trading when this episode was recorded. His edge is not a single magic strategy. It is a disciplined approach to building intraday strategies around time windows, filtering entries with higher timeframe data, and assembling a portfolio of uncorrelated systems that do not draw down at the same time. This episode covers the specifics of how he does it.
Stefano trades futures intraday, using position hold times under 24 hours as a risk management rule. He runs a portfolio of around 100 strategies across markets including copper, gold, live cattle, gasoline, and mini S&P, selecting 5 or 6 for active trading based on recent performance and correlation criteria.
Watch the full episode below, then read on for the complete breakdown.
Why intraday over daily timeframes
Stefano’s shift to intraday systems came from a specific observation about overnight risk. Markets change significantly day to day. News events, economic announcements, gap opens, all of these can move a futures position far beyond any reasonable stop if held overnight without limit.
The statistical argument for intraday systems is equally straightforward. A daily system on a 10-year backtest might produce 250 trades. An intraday system over the same period can produce 1,000 trades or more. More data means more reliable statistics. The tradeoff is that average trade sizes are smaller, because each trade captures a fraction of a daily move. The solution to that problem is filters.
Higher timeframe filters for intraday entry quality
Stefano loads a second data series into his strategies, typically a 1,440-minute (equivalent to daily) bar. He avoids using the exchange-defined daily bar for some futures markets because the close is set by a settlement price that does not match the end-of-session trade price. The 1,440-minute bar avoids this issue.
He uses this daily-equivalent data to define compression levels: the prior day’s range and structure. Intraday entries are then filtered based on where price is relative to those daily reference points. A breakout strategy that triggers during the Asian or European session might be filtered by whether price is above or below the prior day’s midpoint, for example.
This prevents the intraday system from taking trades at random relative to the broader context. It is the same principle as using a 200-day moving average to filter a short-term mean reversion setup, just applied across timeframes within the intraday window.
Time windows: the three sessions and their different behaviors
Stefano divides the trading day into three windows: Asian, European, and American. Each session has its own characteristic movement patterns. He backtests each window separately to identify which hours have statistically reliable directional biases in each market.
His approach is data-driven. He does not start with a hypothesis about why a certain hour should work. He tests every hour, identifies the hours that show consistent movement, then groups them by session logic to validate the pattern. For commodities, the Asian session window (roughly 2am to 8am European time) often produces tradable moves related to Chinese market activity. For index futures, the European open frequently creates a different pattern than the US cash session open.
Implementation is straightforward. Rather than creating custom session-length bars, he writes code that filters entries and exits by specific time conditions. For example: only enter if time is between hour X and hour Y. This avoids the backtest artifacts that can appear when custom sessions cause stops and targets to reference prices that do not reflect actual tradable conditions at those hours.
Exit timing follows the same logic. He often closes positions before the European session opens if they were entered during the American night session, because European open moves can be large and unpredictable relative to the signal that initiated the trade. The position was opened to capture a specific window’s behavior. Holding through a different window changes the risk profile of the trade.
Portfolio construction: selecting strategies by live performance and real-money correlation
From a library of approximately 100 strategies, Stefano selects 5 or 6 for active trading. His selection process has two steps:
- Recent live performance: He only considers strategies that have performed well in real-money trading over the past year. Backtest performance is not the primary filter because backtests can contain overfitting that inflates the apparent edge. Live results, even over a relatively short window, are more reliable as a selection criterion.
- Real-money correlation: He then analyzes the correlation between the shortlisted strategies based on their live trading equity curves, not their backtest equity curves. Two strategies on the same market (gold, for example) can be uncorrelated if their trade logic is completely different, because they will enter and exit at different times and respond differently to the same price moves.
The goal is to avoid simultaneous drawdowns. In a competition with a small account, four strategies drawing down at the same time creates margin pressure. In live trading, the same situation creates the psychological pressure that leads to poor decisions. By selecting strategies with different equity curve patterns, the overall portfolio equity curve becomes smoother even if individual strategy drawdowns are significant.
Portfolio maintenance: every two months, remove laggards and scale winners
Stefano reviews his live portfolio roughly every two months. Strategies that have moved into drawdown are turned off. Strategies that are in an upswing are kept on, and he uses fixed ratio position sizing to add contracts to the ones performing well.
This is the same concept Marsten Parker described with his equity curve filter, applied at the portfolio level rather than the individual strategy level. There is an inertia quality to strategy equity curves: strategies in a run-up tend to continue performing, and strategies in a drawdown tend to continue drawing down, at least in the short term. Stefano has validated this with data, not just intuition.
The correlation mistake to avoid
Stefano flags a common error: measuring correlation between strategies based on the markets they trade rather than the correlation between their actual trade outcomes. Two strategies on gold are not necessarily correlated if one is a morning breakout system and the other is an Asian session mean reversion system. They may trade the same instrument but trigger at completely different times and in completely different conditions.
Equally, two strategies on different markets (gold and crude oil) might be more correlated than expected if both have directional long biases that fire simultaneously during broad risk-on or risk-off moves. Market-level correlation is a proxy. Equity curve correlation in live money is the real signal.
Reversal strategies: why Stefano avoids them
One of the lessons Stefano learned early: reversal systems (stop-and-reverse or counter-trend strategies) have high win rates but the losing trades are large and occasionally catastrophic. He recalled August 2015, when the DAX opened down 10% and the mini S&P opened down 6% due to Chinese growth data. A reversal strategy with a position held overnight into that open would have been stopped out far beyond any modeled stop level.
His preference is breakout strategies because they align with momentum: trend is your friend. When a breakout strategy is wrong, the exit is relatively clean. The position moves against you, the stop fires, and the loss is bounded. A reversal strategy against a gap move has no natural exit point until the market eventually reverses, and markets can gap and gap again before that happens.
Robustness testing: validate on correlated markets
Stefano’s robustness approach supplements standard walk-forward testing with cross-market validation. If a strategy works on gold, it should also work on platinum, which has high correlation with gold. If the edge disappears on platinum, the gold results may be curve-fitted to gold-specific noise rather than a generalizable market behavior.
This is a powerful, underused test. It does not require finding independent out-of-sample data chronologically. Instead, it uses a structurally similar but different market as a proxy for out-of-sample testing at any point in the data.
Related episodes
- How to find statistical edges in trading with Scott Andrews
- Overcoming broken strategies with Marsten Parker
- Uncovering hidden market reaction zones with Fabio Ruggeri
Get the show notes & transcript
Want to build better intraday trading systems?
Subscribe to the Better System Trader podcast for weekly interviews with the world’s top systematic traders and quantitative researchers.

