AQAI QuantAI research lab for systematic strategies

Automated analysis

This analysis was drafted by our research engine and has not been checked by a human editor. It may contain errors. It separates the paper’s own results from our tests, and any figures called ours come from our own backtest.

Our automated analysisOur backtest

RTCARE beats GARCH on IBM, ties realized CARE

Sasaki and Omori leave implementation choices open; our six-month IBM sizing run settles little.

2026-10-12 · 7 min read · Tail-risk forecasting and position sizing · U.S. stocks (IBM)

Reviewing: Realized Tail-Risk Conditional Autoregressive Expectile Models: Accurate and Stable Forecasting Performance · Keisuke Sasaki and Yasuhiro Omori · Read it on arxiv

Our backtest of this idea

Our automated quick test, not the paper's

IBM RTCARE-RES Tail Forecasts and ES-Budget Position Sizing

Backtest period 2020-01-01 to 2024-07-01 · hypothetical, net of modelled costs

Why these figures are not the paper's (1)

Our own audit found this run does not follow the paper faithfully (3)

  • Paper's IBM Tick Data, LLC tick observations, 4 January 2005–31 December 2024, versus database IBM daily_prices and minute_prices.: Use available IBM adjusted daily and minute closes, with a 2020-01-01–2024-07-01 evaluation and earlier available warm-up. (invalidates: Direct numerical replication of Tables 11–16 and Figure 4; the paper's 3,513-forecast count)
  • Paper does not specify numerical τ-grid endpoints, MCMC run length, burn-in or RTCARE-RES extension priors.: Prespecify the stated τ candidates, MCMC lengths and proper RES-extension priors as implementation choices. (invalidates: Exact replication of paper posterior draws and Tables 11–16)
  • Paper forecasts daily tail risk but supplies no ES-budget trade, trading fill or transaction-cost model.: Add prespecified ES-budget sizing, a next-available-open fill and costs on exposure changes. (invalidates: Any attribution of trading returns, turnover or drawdowns to the paper)

These are our findings about our own implementation, not criticisms of the paper. Read the figures below as a description of what we ran.

Jan 2020Total 9.2%Jul 2024
Sharpe
1.82
Total Return
9.2%
Max Drawdown
-6.2%
CAGR
20.0%
Volatility
10.5%
Beta vs SPY
0.44
Trades
123

What the paper reports for its own strategy

  • RTCARE out-of-sample mean FZ0 loss (IBM, 3513 rolling one-day forecasts within 2005-2024): 1.100 (5%), 1.379 (2.5%), 1.781 (1%), 2.057 (0.5%); risk forecasting, no trading/costs
  • RTCARE NO INT out-of-sample mean FZ0 loss: 1.097 (5%), 1.372 (2.5%), 1.769 (1%), 2.057 (0.5%)
  • RTCARE-RES out-of-sample mean FZ0 loss: 1.101 (5%), 1.382 (2.5%), 1.782 (1%), 2.054 (0.5%)
  • RTCARE out-of-sample VaR violation rates: 4.782% / 2.420% / 1.082% / 0.626% vs nominal 5/2.5/1/0.5%
  • RTCARE out-of-sample D diagnostic: 0.110 (5%), 0.214 (2.5%), 0.500 (1%), 0.853 (0.5%)
  • RTCARE overall out-of-sample average rank 2.58 (best of 13 models)

RTCARE gives a trader a better IBM tail forecast than GARCH, but its edge over simpler realized CARE is thin. At 5%, the best variant records an out-of-sample FZ0 loss of 1.097, against 1.216 for GARCH. CARE RV-RQ, which uses the same intraday quantile without a measurement equation, scores 1.108. The model confidence set retains CARE RV-RQ alongside all three RTCARE variants at every level. RTCARE also beats a HAR model of realized quantiles.

The forecast RTCARE makes

Sasaki and Omori build on Taylor's conditional autoregressive expectile (CARE). They match an expectile at level τ to the VaR quantile level α. With the conditional mean set to zero, as they require, ES equals that expectile multiplied by κ = 1 + τ/((1-2τ)α). RTCARE makes the daily expectile an AR(1) of its own lag and yesterday's realized quantile (RQ). RQ comes from the lower quantile of intraday returns sampled in business time, then scaled by the square root of the interval count. The paper's additional step is a measurement equation: RQ_t = α_q + β_q µ_t + u_t. It treats today's RQ as a noisy reading of today's expectile.

The authors estimate the model by MCMC using an asymmetric normal pseudo-likelihood. Its kernel matches expectile loss; they use it as an estimation device and make no claim that returns follow an asymmetric normal distribution. RTCARE NO INT fixes α_q = 0. RTCARE-RES puts lagged realized ES (RES) into the recursion and adds a measurement equation for RES.

The sample contains 5013 days of IBM ticks, from 4 January 2005 to 31 December 2024. RQ and RES use 3-minute business-time returns. Rolling 1500-day fits produce 3513 one-day forecasts at α levels of 5%, 2.5%, 1% and 0.5%. Each forecast for day n+1 uses β0 + β1µn + β2RQn, quantities known at day n's close.

How far does the edge extend?

The gap against volatility models is substantial. At 0.5%, out-of-sample FZ0 loss is 2.054 for RTCARE-RES, 2.147 for Realized GARCH-t, 2.821 for GARCH and 2.884 for HAR-RQ-RES. The comparison tightens sharply among CARE models: Realized CARE-SAV scores 2.058 and CARE RV 2.075. CARE RV-RQ, with RQ entered as a plain lag, scores 2.274.

The model confidence set draws an imperfect boundary. CARE RV and Realized CARE-SAV leave the set at 5% and 2.5%; Realized GARCH-t stays in at 1% and 0.5%. At every tail level, the 75% set retains all three RTCARE variants and CARE RV-RQ. It excludes GARCH, Realized GARCH and HAR-RQ-RES throughout. We did not find pairwise Diebold-Mariano tests. The IBM evidence favors realized-tail CARE over normal GARCH, Realized GARCH and HAR at every level, and over the t models only at 5% and 2.5%. It does not isolate the value of the measurement equation from the value of RQ as a plain lag. Across FZ0, D and coverage, RTCARE's average rank is 2.58, the best of 13 models.

The simulation lends the structural case some support, chiefly through the no-intercept variant. Treating RQ and RES solely as regressors gives worse, less stable extreme-tail forecasts. At 0.5%, CARE RV-RQ-RES scores 2.438 (SD 1.701), versus 2.005 (SD 0.276) for plain CARE RV. RTCARE NO INT has the lowest simulated FZ0 at all four levels, including 1.962 at 0.5%. Baseline RTCARE scores 2.013 there, behind Realized GARCH-t at 1.967 and plain CARE RV at 2.005. GARCH-t also posts the lowest VaR RMSE at 1% (0.908) and 0.5% (1.113). The simulation uses Gaussian intraday returns recentered to sum to the daily return. Its RQ therefore has no intraday seasonality, jumps or microstructure noise.

The authors call performance "competitive and often superior". The tables support that phrasing.

A thin far tail

At 0.5%, 3513 forecasts imply about 17.6 expected breaches and a binomial standard deviation near 4. RTCARE records 0.626%, or about 22 breaches. Realized CARE-SAV and CARE RV also record 0.626%. CARE RV-RQ reaches 0.740%, about 26 breaches. GARCH reaches 1.423%, about 50, and HAR-RQ-RES reaches 1.765%, about 62.

Within the CARE family, the coverage difference amounts to one standard deviation. GARCH's 50 breaches exceed RTCARE's 22 by 28, nearly seven standard deviations.

The input gets sparse in this tail too. A 0.5% type-7 quantile from 130 intraday returns lies between the smallest and second-smallest observations. In the full-sample fit, posterior mean RQ measurement-error variance climbs from 0.318 at 5% to 15.300 at 0.5%. Over the same range, the posterior mean loading on lagged RQ drops from 0.377 to 0.097, while the expectile's own-lag loading rises from 0.525 to 0.846. At 0.5%, the recursion relies more on its own lag (0.846) than on RQ (0.097). The authors identify RQ and RES noise and bias as further work.

Coverage partly reflects how τ is selected. A grid search picks the value whose fitted expectile has an in-sample violation rate closest to α, directly targeting that rate. Any out-of-sample benefit depends on the calibration holding beyond the window. The paper leaves open whether τ is re-selected in each window.

Where must an implementer choose?

The equations and benchmark specifications are complete. Other settings require decisions:

Variant selection calls for judgment as well. RTCARE NO INT has the best out-of-sample FZ0 at three levels, yet its D diagnostic at 5% is 0.247, against 0.110 for RTCARE. Removing the intercept appears to exchange ES level for VaR fit.

Our IBM sizing run

Sasaki and Omori report forecasts, with no trading results. The sizing rule here is ours. We fitted RTCARE-RES at α = 2.5% using IBM minute closes in place of Tick Data ticks. Within each 1500-day window, we chose τ from a grid of 0.005 to 0.04 and ran 4,000 MCMC iterations with 2,000 burn-in. The long-only exposure rule is min(1, 0.02 / |ES|). We set it after the close and fill at the next open. Since ES is κ times the expectile, this amounts to inverse-VaR sizing with a constant; RES affects the position through the expectile alone.

Our measured period runs from 2024-01-05 to mid-2024. Across 123 trades, the run returned 9.21%, with a Sharpe of 1.82, volatility of 10.46% and maximum drawdown of -6.20%. We charged commissions of $0.004 a share on every fill. Open-price fills leave market impact from rebalancing unmodelled. The paper reports an FZ0 loss of 1.382 and a violation rate of 2.448% for RTCARE-RES at 2.5%, across 3513 forecasts. Our run measured return and risk, with no forecast loss. Its 1.82 Sharpe and the authors' 1.382 FZ0 measure different things and cannot be ranked.

Forecast ES deeper than 2% reduces the position below full size. We ran no fixed-exposure IBM comparison. The run's beta to SPY is 0.44, so market exposure accounts for part of the 9.21%; we cannot divide the remainder between IBM's drift and the sizing rule. Over roughly six months, 123 trades mean a near-daily rescale. This single automated pass on one stock says almost nothing in either direction about whether the forecasts improve sizing, and it is no verdict on the authors' work.

Risk limits have the stronger evidence

Sasaki and Omori test forecast loss, coverage, ES calibration and model confidence sets. By those measures, RTCARE makes a sound daily risk limit for IBM. Out-of-sample, no Bayer-Dimitriadis ES backtest rejects it at any level at the 5% significance level; all three reject HAR-RQ-RES at every level. Realized CARE mostly passes too. CARE RV and Realized CARE-SAV pass every test. Only CARE RV-RQ and CARE RV-RQ-RES fail some tests, at 5% and 2.5%, leaving these backtests unable to separate RTCARE from realized CARE.

We did not find an economic-value or capital test, and the paper's horizon remains one day throughout. The authors leave return-oriented sizing untested; our test barely reaches it. A fixed-exposure comparison across the paper's own 3513-day forecast period would change our view if the forecast gap carried through to P&L. That period spans March 2020 and contains the 22 versus 50 breaches at the 0.5% level.

Our backtest stops at 2024-07-01, and everything after that date is deliberately left untouched so the same strategy can be checked out of sample later.

How our backtest worked

The steps the code we ran actually executed, from its strategy card. Ours, not the paper's — it is one automated implementation of the idea, not the authors' own.

At each completed IBM session:
  Build business-time returns from minute closes using the tripower-variation
  profile and its monotone spline inverse; calculate that session’s RQ and RES.
  Require 1,500 valid, aligned daily returns and RQ/RES observations.
  Fit RTCARE-RES separately for each candidate expectile τ using rolling MCMC;
  reject draws violating the model’s stability restriction.
  Choose τ whose in-window posterior-median VaR violation rate is closest to
  α = 2.5%; break ties toward the lower τ.
  Using only completed-session features, forecast next-day VaR and ES as
  posterior medians. If ES ≤ VaR < 0, set target exposure to
  min(1, 0.02 / max(−ES / 100, 0.0001)); otherwise target zero.
  Submit the target for the next available IBM daily open. If the required
  window or execution open is missing, do not invent a signal or fill.
  Hold exposure until the following available open.

Returns, model inputs, VaR and ES use percent log-return units; ES is divided by 100 only for sizing. A separately fitted baseline RTCARE model is a forecast diagnostic, not the position signal.