YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

FlashMind v15f β€” AI Crypto Arbitrage Bot (Real-Data Calibrated)

PPO-trained reinforcement learning agent for cross-DEX arbitrage on Ethereum/L2s. v15f closes the real-data gap discovered in v15d validation.

What Changed: v15d β†’ v15f

v15d achieved perfect discrimination on synthetic data (0% bad executions, composite 0.408). But on real DEX market data, it collapsed: 41.2% bad executions, composite -0.467.

Root cause: VecNormalize observation statistics were trained on synthetic data distribution. Real market observations fell outside the trained distribution, causing policy misfire.

v15f fix:

  1. Fresh VecNormalize (re-learned obs distribution from real+synthetic mix)
  2. Real market data injected during training (refreshed every 25 episodes)
  3. Fine-tuned from v15d_final weights with lower LR (1e-4 β†’ 3e-6)
  4. Best model selected by real data composite score

Real-Data Improvement (v15d β†’ v15f best)

Metric v15d (real) v15f (real) Delta
Bad Execute Rate 41.2% 1.3% -39.9pp
Skip Rate 15.2% 50.9% +35.7pp
Good Execute Rate 43.9% 47.7% +3.8pp
Composite Score -0.467 0.603 +1.070
Sharpe Ratio 1.67 5.32 +3.65
Avg PnL 300 274 -26
Active Strategies 10 11 +1

Success Criteria: ALL 6 PASSED

Criterion Target Actual Status
Real bad_exec < 15% 1.3% PASS
Real skip_rate > 30% 50.9% PASS
Real composite > 0.0 0.603 PASS
Composite improved > v15d 0.603 PASS
Bad exec reduced < v15d 1.3% PASS
No synthetic regression comp > 0.30 0.458 PASS

Synthetic Performance (No Regression)

Metric v15d (synth) v15f (synth)
Composite 0.408 0.458
Sharpe 5.29 6.55
Bad Execute 0.0% 3.4%

Model Architecture

  • Algorithm: PPO (Proximal Policy Optimization) with MlpPolicy
  • Parameters: 384K
  • Observation: 621-dim (598 market + 21 strategy one-hot + 2 opportunity signal)
  • Action: Discrete(2) β€” 0=EXECUTE, 1=SKIP

v15f Training Config

  • Base model: v15d_final (policy weights transferred)
  • VecNormalize: FRESH (re-learned from real+synthetic mix)
  • Real data sources: DeFiLlama (pools/TVL), DexScreener (pairs/liquidity), CoinGecko (prices)
  • Real data refresh: Every 25 episodes during training
  • Steps: 200K fine-tuning
  • LR: 1e-4 β†’ 3e-6 linear decay over 150K steps
  • Best model: Selected by real data composite (step ~140K)
  • Training time: 69 minutes
  • Real market pools used: 9

Files in this Repository

File Description
flashmind_ppo_v15f_best.zip Best model (real composite 0.603)
flashmind_ppo_v15f_final.zip Final checkpoint (step 200K)
v15f_vecnormalize.pkl VecNormalize stats (real-data calibrated)
flashmind_ppo_v15d_final.zip Previous best (synthetic-only)
v15d_vecnormalize.pkl Previous norm stats (synthetic-only)
backtest_v15_comprehensive.json Full backtest of v15b/v15c/v15d/v15e
v15f_vs_v15d_comparison.json Real-data comparison v15d vs v15f
training_v15f_results.json v15f training metadata

Usage

from stable_baselines3 import PPO
from stable_baselines3.common.vec_env import DummyVecEnv, VecNormalize

model = PPO.load('flashmind_ppo_v15f_best.zip')
# MUST use v15f_vecnormalize.pkl for proper observation normalization

Training History

Version Key Change Real Comp Synth Comp
v15c First discrimination N/A Failed
v15d norm_reward=False -0.467 0.408
v15e LR decay + early stop N/A 0.440
v15f Real-data fine-tuning +0.603 0.458

License

MIT

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support