gitwtfhub

wtf is finrl?

ai4finance-foundation/finrl — explained in plain English

Analysis updated 2026-06-24

15,143Jupyter NotebookAudience · researcherComplexity · 4/5LicenseSetup · moderate

TL;DR

Original open-source Python framework for financial reinforcement learning. Trains DRL agents (A2C, DDPG, PPO, SAC, TD3) on stock market data for research and education.

Mindmap

mindmap
  root((FinRL))
    Inputs
      Yahoo Finance data
      DOW 30 tickers
      Config files
    Outputs
      Trained DRL agents
      Backtest results
      Trade signals
    Use Cases
      Algo trading research
      RL benchmarking
      Quant education
    Tech Stack
      Python
      Gym
      ElegantRL
      Stable Baselines

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Train a DRL stock trading agent on DOW 30 historical data

REASON 2

Benchmark A2C, PPO, SAC, and TD3 on financial environments

REASON 3

Build a custom market environment for portfolio allocation

REASON 4

Run an end-to-end train-test-trade pipeline for research papers

What's in the stack?

PythonPyTorchGymPandasNumPy

How it stacks up

ai4finance-foundation/finrlnaklecha/llama3-from-scratchaliaksandrsiarohin/first-order-model
Stars15,14315,24315,003
LanguageJupyter NotebookJupyter NotebookJupyter Notebook
Setup difficultymoderatehardhard
Complexity4/54/55/5
Audienceresearcherresearcherresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 1h+

Needs a Python venv with heavy deps (PyTorch, Gym, market data libs) and a working Yahoo Finance pull before any training script runs.

MIT license, you can use, modify, and redistribute it freely with attribution.

Wtf does this do

FinRL is an open-source Python framework for financial reinforcement learning. Reinforcement learning is a machine learning approach where an agent learns by trial and error: it takes actions in some environment, sees the results, and adjusts its strategy over time to earn more reward. FinRL applies this idea to financial markets, where the agent learns trading decisions by interacting with simulated market data. The project is positioned as the original, classic version of the framework. The maintainers now point new users toward a separate project called FinRL-X, also known as FinRL-Trading, described as the next-generation production-oriented stack. The repository at hand keeps the original train-test-trade pipeline alive for education, benchmarking, and research prototyping. A comparison table in the README lists differences between the two: the classic FinRL uses a three-layer architecture with five named DRL algorithms (A2C, DDPG, PPO, SAC, TD3), manually wired data processors, and basic broker support, while FinRL-X adds modular layers, machine-learning components, and richer risk controls. The codebase is organized around three core layers: market environments, DRL agents, and financial applications. The README walks users through cloning the repo, creating a Python virtual environment, installing with pip, then running example scripts that download DOW 30 stock data from Yahoo Finance and run a stock trading workflow. Example scripts are referenced for data download, training, and evaluation. FinRL is part of a broader ecosystem from the AI4Finance Foundation, alongside FinRL-Meta (gym-style market environments), ElegantRL (DRL algorithm library), and FinGPT (financial large language models). The README points to a Discord community, ReadTheDocs documentation, tutorials on YouTube, and academic papers on arXiv.

Yoink these prompts

Prompt 1
Walk me through running FinRL_StockTrading_2026_1_data.py on a fresh clone and explain what each preprocessing step does
Prompt 2
Show me how to swap the DOW 30 universe in FinRL for a custom ticker list pulled from Yahoo Finance
Prompt 3
Compare the A2C and PPO agent configs in FinRL and tell me which to start with for a 5-stock toy portfolio
Prompt 4
Generate a minimal FinRL example that trains for 10k steps and prints Sharpe ratio on a 2024 backtest
Prompt 5
Migrate my FinRL classic config to FinRL-X structure and flag every breaking change

Frequently asked questions

wtf is finrl?

Original open-source Python framework for financial reinforcement learning. Trains DRL agents (A2C, DDPG, PPO, SAC, TD3) on stock market data for research and education.

What language is finrl written in?

Mainly Jupyter Notebook. The stack also includes Python, PyTorch, Gym.

What license does finrl use?

MIT license, you can use, modify, and redistribute it freely with attribution.

How hard is finrl to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is finrl for?

Mainly researcher.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.