Revisiting Ensemble Methods for Stock Trading and Crypto Trading Tasks at ACM ICAIF FinRL Contest 2023-2024
Paper • 2501.10709 • Published • 2
YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
Agent de trading crypto basé sur Soft Actor-Critic (SAC) entraîné sur les données historiques BTC/USDT.
| Métrique | SAC Agent | Buy & Hold |
|---|---|---|
| Rendement Total | -4.57% | -17.26% |
| Sharpe Ratio | -0.024 | -0.117 |
| Max Drawdown | 29.54% | 48.49% |
| Portfolio Final | $95,431 | $82,736 |
L'agent surperforme le Buy & Hold de +12.7 points de pourcentage pendant une période baissière (déc 2024 - avr 2026), avec un drawdown maximal réduit de moitié.
Basée sur FinRL-Meta et FinRL-Contest.
| Paramètre | Valeur |
|---|---|
| Dataset | linxy/CryptoCoin (Binance OHLCV) |
| Symbole | BTCUSDT daily |
| Training timesteps | 200,000 |
| Learning rate | 3e-4 |
| Batch size | 64 |
| Buffer size | 100,000 |
| Network | MLP [64, 32] |
| Gamma | 0.99 |
| Tau | 0.005 |
| Entropy coeff | auto |
| Commission | 0.1% |
| Capital initial | $100,000 |
from stable_baselines3 import SAC
from stable_baselines3.common.vec_env import DummyVecEnv, VecNormalize
import pickle
# Charger le modèle
model = SAC.load("sac_crypto_final")
# Charger le normalisateur
# vec_normalize = VecNormalize.load("vec_normalize.pkl", venv)
# Prédire une action
action, _ = model.predict(observation, deterministic=True)
# action > 0 → acheter, action < 0 → vendre
Ce modèle est fourni à des fins de recherche et d'éducation uniquement. Il ne constitue pas un conseil financier. Les performances passées ne garantissent pas les résultats futurs. Le trading de crypto-monnaies comporte des risques significatifs de perte en capital.