Our Mission: to effectively automate trading. We continuously have and fragment codes for finance.
Our Vision: AI neighborhood has gathered an commence-provide code ocean over the final decade. Making exercise of these intellectual and engineering properties to finance will provoke a paradigm shift from the dilapidated trading routine to an automated machine finding out skill, even RLOps in finance.
FinRL (web inform) is the principle commence-provide mission to search out the immense seemingly of deep reinforcement finding out in finance. We relieve practitioners pipeline a trading approach the exercise of deep reinforcement finding out (DRL).
The FinRL ecosystem is a unified framework, including a lot of markets, inform-of-the-art work algorithms, monetary duties (portfolio administration, cryptocurrency trading, excessive-frequency trading), live trading, etc.
Roadmap | Level | Customers | Instance | Desription |
---|---|---|---|---|
0.0 (Preparation) | preparation | practitioners of enterprise immense knowledge | FinRL-Meta | a universe of market environments |
1.0 (Proof-of-Opinion) | entry-level | beginners | this repo | demonstration, education |
2.0 (Knowledgeable) | intermediate-level | fat-stack builders, mavens | ElegantRL | financially optimized DRL algorithms |
3.0 (Production) | come-level | investment banks, hedge funds | Podracer | cloud-native solution |
Outline
- Overview
- File Structure
- Supported Recordsdata Sources
- Installation
- Jam Update
- Contributions
- Tutorials
- News
- Citing FinRL
- Welcome Contributions
- Sponsorship
- LICENSE
Overview
FinRL has three layers: purposes, drl agents, and market environments.
For a trading project (on the head), an agent (in the heart) interacts with an surroundings (on the bottom), making sequential choices.
Bustle FinRL_StockTrading_NeurIPS_2018.ipynb miniature by miniature for a swiftly commence up.
A video about FinRL library on the AI4Finance Youtube Channel.
File Structure
Correspondingly, the principle folder finrl has three subfolders apps, drl_agents, finrl_meta.
We use a put collectively-take a look at-exchange pipeline by three files: put collectively.py, take a look at.py, and exchange.py.
FinRL
├── finrl (most indispensable folder)
│ ├── purposes
│ ├── cryptocurrency_trading
│ ├── high_frequency_trading
│ ├── portfolio_allocation
│ ├── stock_trading
│ └──
│ ├── agents
│ ├── elegantrl
│ ├── rllib
│ └── stablebaseline3
│ ├── finrl_meta
│ ├── data_processors
│ ├── env_cryptocurrency_trading
│ ├── env_portfolio_allocation
│ ├── env_stock_trading
│ ├── preprocessor
│ ├── data_processor.py
│ └── finrl_meta_config.py
│ ├── config.py
│ ├── config_tickers.py
│ ├── most indispensable.py
│ ├── space.py
│ ├── put collectively.py
│ ├── take a look at.py
│ └── exchange.py
│
├── tutorial (tutorial notebooks and instructional files)
├── unit_testing (be definite that verified codes engaged on env & knowledge)
│ ├── test_env
│ └── test_env_cashpenalty.py
│ └── test_marketdata
│ └── test_yahoodownload.py
├── setup.py
├── requirements.txt
└── README.md
Supported Recordsdata Sources
Recordsdata Supply | Form | Differ and Frequency | Seek files from Limits | Raw Recordsdata | Preprocessed Recordsdata |
---|---|---|---|---|---|
Alpaca | US Stocks, ETFs | 2015-now, 1min | Fable-particular | OHLCV | Prices&Indicators |
Baostock | CN Securities | 1990-12-19-now, 5min | Fable-particular | OHLCV | Prices&Indicators |
Binance | Cryptocurrency | API-particular, 1s, 1min | API-particular | Tick-level each day aggegrated trades, OHLCV | Prices&Indicators |
CCXT | Cryptocurrency | API-particular, 1min | API-particular | OHLCV | Prices&Indicators |
IEXCloud | NMS US securities | 1970-now, 1 day | 100 per 2nd per IP | OHLCV | Prices&Indicators |
JoinQuant | CN Securities | 2005-now, 1min | 3 requests each time | OHLCV | Prices&Indicators |
QuantConnect | US Securities | 1998-now, 1s | NA | OHLCV | Prices&Indicators |
RiceQuant | CN Securities | 2005-now, 1ms | Fable-particular | OHLCV | Prices&Indicators |
tusharepro | CN Securities, A fragment | -now, 1 min | Fable-particular | OHLCV | Prices&Indicators |
WRDS | US Securities | 2003-now, 1ms | 5 requests each time | Intraday Trades | Prices&Indicators |
YahooFinance | US Securities | Frequency-particular, 1min | 2,000/hour | OHLCV | Prices&Indicators |
OHLCV: commence, excessive, low, and shut costs; volume. adjusted_close: adjusted shut assign
Technical indicators: ‘macd’, ‘boll_ub’, ‘boll_lb’, ‘rsi_30’, ‘dx_30’, ‘close_30_sma’, ‘close_60_sma’. Customers moreover can add contemporary aspects.
Installation
Jam Update
Version Historic past [click to expand]
- 2021-08-25
0.3.1: pytorch version with a 3-layer architecture, apps (monetary duties), drl_agents (drl algorithms), neo_finrl (gym env) - 2020-12-14
Upgraded to Pytorch with receive-baselines3; Plan shut tensorflow 1.0 at this 2nd, beneath pattern to augment tensorflow 2.0 - 2020-11-27
0.1: Beta version with tensorflow 1.5
Contributions
- FinRL is the principle commence-provide framework to make clear the immense seemingly of applying DRL algorithms in quantitative finance. We have an ecosystem all by the FinRL framework, which seeds the impulsively rising AI4Finance neighborhood.
- The utility layer offers interfaces for users to customize FinRL to their include trading duties. Automated backtesting tool and efficiency metrics are supplied to relieve quantitative merchants iterate trading systems at a excessive turnover charge. Winning trading systems are reproducible and hands-on tutorials are supplied in a newbie-obliging kind. Adjusting the trained devices to the impulsively altering markets is moreover that you might per chance per chance per chance accept as true with.
- The agent layer offers inform-of-the-art work DRL algorithms which can per chance be tailored to finance with swish-tuned hyperparameters. Customers can add contemporary DRL algorithms.
- The environment layer consists of not entirely a sequence of historic knowledge APIs, but moreover live trading APIs. They are reconfigured into traditional OpenAI gym-style environments. Furthermore, it contains market frictions and lets in users to customize the trading time granularity.
Tutorials
- [Towardsdatascience] Deep Reinforcement Discovering out for Automated Stock Buying and selling
- [Towardsdatascience] FinRL for Quantitative Finance: Tutorial for A few Stock Buying and selling
- [Towardsdatascience] FinRL for Quantitative Finance: Tutorial for Portfolio Allocation
- [Towardsdatascience] FinRL for Quantitative Finance: Tutorial for Single Stock Buying and selling
- [Towardsdatascience] ElegantRL-Podracer: A Scalable and Elastic Library for Cloud-Native Deep Reinforcement Discovering out
- [Towardsdatascience] ElegantRL: A Lightweight and Proper Deep Reinforcement Discovering out Library
- [Towardsdatascience] ElegantRL: Mastering PPO Algorithms
- [MLearning.ai] Hyperparameter Optimization the exercise of Ray tune for FinRL devices
- [MLearning.ai] An Empirical Plot to Instruct Deep Reinforcement Discovering out in Portfolio Administration Job
- [MLearning.ai] FinRL for Quantitative Finance: mosey-and-play DRL algorithms
- [MLearning.ai] ElegantRL Demo: Stock Buying and selling The exercise of DDPG (Part I)
- [MLearning.ai] ElegantRL Demo: Stock Buying and selling The exercise of DDPG (Part II)
- [DataDrivenInvestor] FinRL-Meta: A Universe of Shut to Exact-Market Environments for Recordsdata-Driven Financial Reinforcement Discovering out
- [DataDrivenInvestor] A Recordsdata Scientist’s Plot for Algorithmic Buying and selling the exercise of Deep Reinforcement Discovering out: An Stay-to-pause Tutorial for Paper Buying and selling
- [Analytics Vidhya] Weights and Biases-ify FinRL with Proper Baselines3 devices
- [Analytics Vidhya] Hyperparameter tuning the exercise of optuna for FinRL
- [Analytics Vidhya] A hitchhikers files to FinRL: A Deep Reinforcement Discovering out Framework for Quantitative Finance
- [Analyticsindiamag.com] How To Automate Stock Market The exercise of FinRL (Deep Reinforcement Discovering out Library)?
News
- [央广网] 2021 IDEA大会于福田圆满落幕:群英荟萃论道AI 多项目发布亮点纷呈
- [央广网] 2021 IDEA大会开启AI思想盛宴 沈向洋理事长发布六大前沿产品
- [IDEA新闻] 2021 IDEA大会发布产品FinRL-Meta——基于数据驱动的强化学习金融风险模拟系统
- [知乎] FinRL-Meta基于数据驱动的强化学习金融元宇宙
- [量化投资与机器学习] 基于深度强化学习的股票交易策略框架(代码+文档)
- [运筹OR帷幄] 领读计划NO.10 | 基于深度增强学习的量化交易机器人:从AlphaGo到FinRL的演变过程
- [深度强化实验室] 【重磅推荐】哥大开源“FinRL”: 一个用于量化金融自动交易的深度强化学习库
- [商业新知] 金融科技讲座回顾|AI4Finance: 从AlphaGo到FinRL
- [Kaggle] Jane Avenue Market Prediction
- [矩池云Matpool] 在矩池云上如何运行FinRL股票交易策略框架
- [财智无界] 金融学会常务理事陈学彬: 深度强化学习在金融资产管理中的应用
- [Neurohive] FinRL: глубокое обучение с подкреплением для трейдинга
- [ICHI.PRO] 양적 금융을위한 FinRL: 단일 주식 거래를위한 튜토리얼
Citing FinRL
@article{finrl2020,
creator ={Liu, Xiao-Yang and Yang, Hongyang and Chen, Qian and Zhang, Runjia and Yang, Liuqing and Xiao, Bowen and Wang, Christina Dan},
title ={{FinRL}: A deep reinforcement finding out library for automated inventory trading in quantitative finance},
journal={Deep RL Workshop, NeurIPS 2020},
Three hundred and sixty five days ={2020}
}
@article{liu2021finrl,
creator ={Liu, Xiao-Yang and Yang, Hongyang and Gao, Jiechao and Wang, Christina Dan},
title ={{FinRL}: Deep reinforcement finding out framework to automate trading in quantitative finance},
journal={ACM Global Convention on AI in Finance (ICAIF)},
Three hundred and sixty five days ={2021}
}
We printed FinTech papers, overview Google Pupil, ensuing on this mission. Carefully linked papers are given in the list.
Join and Make contributions
Welcome to the AI4Finance Basis neighborhood!
Join to communicate about FinRL: AI4Finance mailing list, AI4Finance Slack channel:
Apply us on WeChat:
Please overview Contributing Guidances.
Contributors
Thanks!
Sponsorship
Welcome gift money to augment AI4Finance, a non-profit tutorial neighborhood. Consume the links in the staunch, or scan the following vemo QR code:
Detailed sponsorship files might per chance per chance moreover be found at Field #425
LICENSE
MIT License
Disclaimer: Nothing herein is monetary advice, and NOT a advice to interchange true money. Please exercise general sense and continuously first seek the advice of a legit earlier than trading or investing.