Feed a Rachev-ratio optimizer TimeGAN scenarios that understate losses, and it selects portfolios whose synthetic downside rounds to zero. This occurred in 53.23% of replacement decisions in Yifan He's study. Hybrids retaining historical rows avoided it entirely. A later full-period replay with 756 generated rows put the median replacement objective at 5.74×10^4. Some TimeGAN configurations report higher mean returns, but those figures offer no tradeable edge either: every interval against history includes zero, and variation across seeds exceeds the gains. The author largely acknowledges this.
Can synthetic tails improve a Rachev-ratio allocation?
The Rachev ratio divides expected excess return in the best 5% of scenarios by expected excess loss in the worst 5%. An optimizer maximizing it seeks a large right tail and a small left one. With a 756-day historical window, each 5% tail contains roughly 38 days. Thirty-eight observations give a tail estimate little to work with. A generative model promises to populate those tails with additional plausible scenarios. Better ratio estimates should, in turn, select portfolios that deliver more realized upside per unit of downside.
The test uses 12 ETFs covering US and international equity, Treasuries, corporate credit and commodities. Daily adjusted closes run from April 2007 to December 2025. The out-of-sample period, April 14, 2010 to December 31, 2025, contains 3,955 daily returns and 198 rebalances. Decisions draw on a trailing 756-day window, with 20 trading days between rebalances. Execution follows a day later. Trading costs are 10 bp per unit of value traded.
Each window gets a freshly fitted PyTorch TimeGAN, a recurrent GAN that generates sequences, under five seeds. The implementation uses single-layer GRUs with hidden dimension 32 and 50 epochs per training stage. Generated output is then combined with history: historical rows receive total probability 1−η, and generated rows receive η. AI-RRP, the paper's replacement approach, sets η=1. Hybrid-RRP supplements history at η of 1/2 or 2/3. The author varies the generated row count M (756 or 1,512) independently of η. Separating those choices is the strongest part of the design.
Net annual returns for the historical optimizer were 3.48%, with a Sharpe of 0.26. The η=2/3 hybrids returned 4.25% and 3.99%; the η=1/2 hybrids returned about 2.80%. Replacement delivered 3.53% and 4.03%. The abstract reports larger average net returns for higher-mass hybrids in some configurations. It also says every conditional generated-versus-historical return interval includes zero at the reference block length, and presents the exercise as an illustration of model risk. I accept that framing. The trading question is whether any positive result could hold up in a live book.
The denominator creates an opening
The implementation uses max(|lower-tail mean|, 1e-8) as its denominator. Taking the absolute value gives a lower tail of +0.0001% the same score as one of −0.0001%. The floor limits the ratio to the upper tail times 10^8. Neither feature affects historical or hybrid selections: the paper records zero incidence of near-zero lower tails in those portfolios.
Generated scenarios behave differently. Daily volatility is understated by about 0.50 pp, and 5% marginal tail losses by about 1.50 pp. Mean absolute correlation error is about 0.571. For the representative models, first-lag return autocorrelation reaches 0.900, versus −0.018 in history.
Given those scenarios, the long-only optimizer can select mixes whose worst 5% average almost nothing. A lower-tail mean within 1e-6 of zero appears in 53.23% of selected replacement portfolios; 28.38% strictly bind the floor. Historical and hybrid selections have zero incidence. Of 1,980 replacement decisions, 1,045 fall within 1.0001 times the floor. SLSQP reports successful termination in 42.6% of replacement calls, compared with roughly 99.9 to 100.0% for the other approaches.
The author reads this correctly: "These are features of the implemented objective, not evidence of exceptional investment opportunities." Replacement's 4.03% cannot be attributed to tail estimation on this evidence. The interval against history includes zero. Nor does the floor analysis identify a causal channel.
Extra training improves one diagnostic while worsening another. Across two windows, increasing training from 50 to 200 epochs reduced reconstruction MSE from 0.293 to 0.039 and from 0.319 to 0.031. Correlation error increased from 0.775 to 0.778 and from 0.550 to 0.657. As the paper acknowledges, these two windows leave open the possibility of gains from further training. It never measured floor incidence at 200 epochs.
From 756 to 1,512 rows, the seed spread remains
The paper describes the draw-count distinction well: additional rows change "Monte Carlo resolution, not the weight of the generator or the amount of independent market information." Raising the count from 756 to 1,512 improves replacement returns under all five seeds. Yet the η=2/3 hybrid falls from 4.25% to 3.99%. For hybrids, count effects go both ways.
The best hybrid beats history by 0.77 pp, within a seed range of 2.84 pp. At 756 rows, η=2/3 hybrid returns run from 2.42 to 5.26%. Replacement returns range from 1.55 to 6.14% at 756 rows and from 2.20 to 6.19% at 1,512 rows. At either count, only two of five replacement seeds outperform history. The author notes that these are alternative fits to a shared history. Even this range therefore understates the underlying uncertainty.
The timing offers little comfort to a trader expecting persistence. Gains for the generated configurations cluster in two later episodes. Replacement returned about 5.2 to 5.3% in 2020 to 2021, when history lost 2.01%. During 2022 to 2025, the η=2/3 hybrids earned 6.98% and 5.69%, versus 1.24%. Two windows within a single realized path make a weak foundation for an edge.
What remains after trading costs?
Annual replacement turnover is roughly 840 to 850%, or roughly 67% of the book at each decision. Historical turnover is 234%, equivalent to 18.6% per decision. Repricing the same fixed targets exposes the cost: at 756 rows, replacement drops from 5.31% gross to 1.79% at 20 bp. History declines only from 3.97% to 3.00%.
The model charges a flat fee and allows no market impact. With roughly 840 to 850% annual turnover, fees dominate.
Risk provides no compensation. Replacement at 756 rows has volatility of 13.17%, versus 9.42% for history. Daily 5% loss-CVaR is 2.10%, against 1.45%. Concentration is high as well: held-weight HHI reaches 0.618, and the largest position averages about 71%.
Passive books outperform all 30 generated policies on point estimates. Equal-weight rebalancing earns 6.41% with a Sharpe of 0.50; buy-and-hold earns 8.41% with a Sharpe of 0.62. Even here, historical-minus-equal-weight return intervals include zero at all three block lengths. History records a realized tail ratio of 0.96, compared with 0.91 for buy-and-hold. Its point estimate leads on its own metric, although neither RR contrast with the passive books excludes zero. The author treats this carefully too. At 20-day blocks, the historical-minus-buy-and-hold return interval has an upper endpoint of about −0.000376 pp. At 10-day blocks, it includes zero.
The resampling controls contain the paper's most interesting number. TimeGAN at η=2/3 averages 4.25%, compared with 2.45% for IID resampling of real rows and 2.43% for moving blocks. Against IID, the difference is +1.80 pp [−0.48, 4.28].
A badly calibrated generator outperformed honest resampling of real data on mean return.
That interval still crosses zero. And replacement's CVaR of 2.10% exceeds the 1.50% and 1.46% recorded by the two resampling schemes.
Change the floor before trusting the score
The strongest test in the paper replaces the 1e-8 floor with max(1e-6, 0.1 × historical expected tail loss of the equal-weight portfolio). Each trailing window fixes the floor before returns are observed. Historical and hybrid allocations remain unchanged. Replacement shifts 35.21% of its target weight, while its median objective collapses from 5.74×10^4 to 1.74.
Net return increases by +0.76 pp [−0.75, 2.39]. Daily CVaR climbs from 2.10% to 2.29%. The seed range expands from 1.67 to 6.01% out to 0.88 to 8.89%.
A change to a single scalar in the denominator moves 35.21% of replacement's target weight. The return difference is indistinguishable from zero, and loss-CVaR rises from 2.10% to 2.29%.
The design leaves another gap. The optimizer selects weights before costs are charged, so turnover plays no part in its decision. The paper also acknowledges that its results do not establish invariance to either the 756-day training window or the 20-day decision interval. The design was not preregistered. There is no untouched evaluation sample.
Our ETF adaptation stayed near equal weight under a 10% cap
Bond ETFs (IEF, TLT, LQD, HYG) sit alongside equity and commodity funds in the paper's book. Our multi-asset ETF adaptation used 12 US-listed multi-asset ETFs over January 1, 2020 to July 1, 2024. We charged $0.004 a share, subject to a $1 minimum, and executed at the close auction.
We imposed a 10% cap on every target weight. With 12 funds, the cap requires at least ten holdings and confines every weight to between zero and 10%. Consequently, all arms, historical, hybrid and replacement, stayed near equal weight.
Our book returned 27.14% in total over that period. Sharpe was 0.48, Sortino 0.61 and Calmar 0.20. Max drawdown reached -26.87%, with volatility of 12.70%. These figures belong to a near-equal-weight book and cannot be read as a TimeGAN result. The cap was our specification error. It says nothing about He's method.
The paper's closest reference is equal weight, with a net return of 6.41% and Sharpe of 0.50. Our 0.48 Sharpe is 0.02 lower. These books differ in universe and period (2020 to 2024 versus 2010 to 2025). They also incur different costs (per-share versus 10 bp). They measure different books and should not be ranked against each other.
Only a narrow result would change my mind about the paper: a TimeGAN-minus-resampling interval excluding zero under its historical-scale floor, with turnover near hybrid levels. The source comparisons all use the 1e-8 floor. Until that evidence arrives, the figure to remember is 53.23%.
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.