Releases: tyhobbs/FinRL_Deep_Reinforcement_Learning
Releases · tyhobbs/FinRL_Deep_Reinforcement_Learning
Release list
v1.0.0 — Complete Ablation Study: DRL Trading with Sentiment Analysis
FinRL Deep Reinforcement Learning — v1.0.0
First stable release of the complete ablation study benchmarking DRL trading agents
across architectures, data sources, stock universes, and capital levels.
What's included
- 24 trained models across 2 universes (30-stock, 50-stock), 4 architectures,
and 3 capital levels ($1M / $100k / $10k) - utils.py — shared evaluation utilities for all notebooks
- Complete metrics — Sharpe ratio, total return, max drawdown, Calmar ratio,
win rate, buy-and-hold comparison, market regime analysis - GitHub Pages dashboard — interactive results at
https://tyhobbs.github.io/FinRL_Deep_Reinforcement_Learning/
Key Results
| Metric | Value |
|---|---|
| Best Test Sharpe | 3.111 (30-Stock VGG Baseline $10k) |
| Models beating buy-and-hold | 18 / 24 |
| Best avg architecture | VGG + Alpaca (avg Sharpe 2.089) |
| Optimal capital level | $100k (avg Sharpe 2.035) |
Key Finding
Contrary to the initial hypothesis, VGG-based architectures outperformed the
Cross-Stock Transformer (avg Sharpe 2.089 vs 1.568). Capital constraint level
is the dominant performance factor — $100k models achieve the highest average
risk-adjusted returns across all architectures.
Training Details
- Training period: 2020-01-01 → 2024-01-01
- Test period: 2024-01-01 → 2025-01-01
- Algorithm: PPO via Stable Baselines 3
- Sentiment: Polygon.io + FinBERT (full historical coverage)
- Transaction costs: 0.15% per trade (0.1% commission + 0.05% slippage)
- Risk-free rate: 5% annualised (3-month T-bill)
Architecture Summary
| Architecture | Avg Test Sharpe | Best | Worst |
|---|---|---|---|
| VGG + Alpaca | 2.089 | 2.726 | 1.570 |
| VGG Baseline | 1.939 | 3.111 | 1.001 |
| VGG + FinBERT | 1.892 | 2.350 | 1.273 |
| Transformer | 1.568 | 1.895 | 0.629 |
What's not included
Model weights (.zip files) and sentiment cache (.pkl files) are excluded
from this release due to file size. See README for instructions on
reproducing results from scratch.