StochLOB's tail-window gain comes from under four days of Coinbase BTC, with heavily overlapping windows. The paper gives enough detail to rebuild the score-matching machinery, down to its Monte Carlo sample size. Its evidence is harder to rebuild: each top-decile cell contains about 3,185 to 3,194 windows.
Ten seconds of order flow
Abolghasemi, Tavakoli, Habibnia and coauthors predict whether the smoothed BTC mid-price falls, stays flat or rises over the next 100 to 1,000 seconds. A window contains 60 snapshots, each taken 10 seconds apart. Each snapshot has 20 levels of order-flow imbalance (OFI, signed changes in bid and ask queue volume at each book level) and 11 trade and spread features. The labels use the DeepLOB smoothed-mid rule. The flat band comes from the training-set 1/3 quantile of absolute returns, equal to 0.000093 at k=10.
Training is where StochLOB differs. A corrupted copy of each window goes through a score head, which shares the classifier's GRU-and-attention trunk. Cross-entropy is combined with 1.0 times the score-matching loss. The corruption is Gaussian noise with a random variance W. For jump-Poisson, W adds a compound-Poisson sum of gamma jumps to a baseline variance. For alpha-stable, it multiplies the baseline by a positive stable variable, clipped at its 0.999 quantile.
The authors prove that h_t, the score target's weighting factor, is the posterior expected precision of the corruption conditional on residual size. With plain Gaussian noise, it stays at 1/σ². When the scale is random, the factor declines as the residual grows: the model assigns a large residual to a larger latent shock and gives it less restoring weight. The score head is discarded at inference; the deployed trunk has about 0.53M parameters. The data offer a reason to try this training loss. A Hill fit on the top 5% of pooled OFI magnitudes yields a tail index of 1.62, while the normal ranks only 11th among roughly 83 candidate laws for BTC mid-price increments.
The crypto sample spans 18 June to 13 July 2026, or 26 calendar days, with roughly 213k snapshots per symbol and a 70/15/15 time split. The BTC test period begins on 10 July at 05:24 UTC.
We could not test this ourselves. Our data consist of OHLCV bars, with one minute as the finest interval. OFI needs bid and ask volumes at 20 book levels, including their changes between snapshots. The paper uses 10-second snapshots, six to a minute; one-minute bars cannot reconstruct a 60-snapshot window.
What remains open for an implementer?
Many settings are explicit. The jump-Poisson score tables use 512 radii and 20,000 draws; alpha-stable uses 256 and 8,192. Training runs AdamW at 1e-4, weight decay 3e-4 and batch 64, with a cap of 80 epochs and patience 15. The jump-Poisson schedule sets T_max to 1000. Normalization uses a 2000-bin trailing z-score.
Two choices remain open in the text. We did not find the Poisson rate Λ_t, which sets how often jumps enter corrupted windows and thus affects the jump-Poisson tail weight. The appendix describes the score head as convolutional; Figure 2 calls it an MLP. We did not find layer sizes for it.
A replicator should take both choices from the released configs rather than tune them afresh.
Full-test accuracy barely moves
Across the full BTC test set, heavy-tailed noise gains at most +0.0055 macro-F1 where it leads and trails by -0.0026 at k=100. At k=10, jump-Poisson scores 0.6866±0.0031 against OFSATNet's 0.6811±0.0026. Alpha-stable leads at k=20, reaching 0.6275±0.0028 against Linear VAR's 0.6231±0.0015. Jump-Poisson reaches 0.6044±0.0140 at k=50, ahead of Linear VAR's 0.5998±0.0020, though its seed spread exceeds the gap. Linear VAR leads at k=100 with 0.5689 against alpha-stable's 0.5663±0.0134.
The authors describe the ranking as mixed and make no claim that their variants win the leaderboard across horizons. DeepLOB's BTC showing deserves attention: it trails logistic regression at every horizon, including 0.5133 against 0.5538 at k=100. That suggests DeepLOB, at least, was under-tuned on BTC.
The turbulent tenth
The paper's stronger claim concerns turbulent BTC windows. It ranks test windows by three scores calculated from their own inputs: the largest one-step move over volatility, realized variance, and a jump residual adjusted for variance. It then scores the top 10%. In the k=100 jump-residual decile, comprising 3,185 windows, alpha-stable achieves 0.637 macro-F1. Gaussian StochLOB gets 0.567; the best supervised model, LinVAR, gets 0.597.
The +0.039 over LinVAR is the useful comparison. The +0.070 over Gaussian owes something to that variant's weakness: in these same windows, it falls below a linear model. Each row selects the better of the two heavy-tailed variants for comparison with a single Gaussian variant. The caption discloses the choice, which favors the heavy-tailed side in every row.
The authors print all 12 cells, including losses. Among the 24 gains in the full grid, 5 are negative: two against Gaussian at k=20, reaching -0.008, and three against the best supervised model, reaching -0.005. Their claim covers "several" realized tail-window diagnostics. The grid supports that wording, with 7 of the 12 rows beating both comparators.
Those seven rows still come from under four days of Coinbase BTC. Overlap matters more than the raw window count: a 10-second stride and 600-second look-back leave the 3,185 tail windows far short of 3,185 independent observations. The headline figure has circular block-bootstrap bands, but we did not find intervals for the 12-cell grid. It also shows a trunk trained on cross-entropy alone at k=100, the paper's cleanest ablation. A replicator should run that baseline in every cell.
Feishu and its fixed cutoffs
On 2,306 Chinese A-shares over a one-year out-of-sample period, jump-Poisson earns 38.78% CAGR and Sharpe 1.04, with a -23.20% maximum drawdown and 36.64% volatility. The authors' figures are net of 1e-4 commission, 5e-4 stamp duty on sells, 100-share lots and T+1. LogReg earns 28.03% at Sharpe 0.69, DeepLOB earns 31.72% at 0.68, and LinVAR loses 38.66%. The trading rule buys when P(up) exceeds 0.75, sells the full position when P(down) exceeds 0.85, and halves it on a flat call.
Other models are omitted, the paper says, "because they mostly predict the flat class." The comparison therefore rests on fixed cutoffs; the authors list validation-tuned thresholds as future work. Alpha-stable is absent from the table, and they acknowledge that its signal may need recalibration. We did not find calendar dates for the out-of-sample year. Average holding is reported as 1861.0 without units.
A second, separate month of BTC showing the k=100 jump-residual gain over LinVAR would move us.