Uma camada de ambientes de mercado e benchmark para aprendizado por reforço em finanças, com conjuntos de dados e ambientes de negociação para desenvolver e comparar agentes de trading com DRL.
AI4Finance-Foundation/FinRL-Trading
Framework modular de trading quantitativo em Python para seleção de ações, alocação de portfólio, backtesting e execução pela corretora Alpaca, com uma interface baseada em pesos.
- Estrelas
- 3,912
- Forks
- 1,133
- Issues abertas
- 53
- Último commit
- há 2 meses
Esta página apresenta um projeto de código aberto e não constitui aconselhamento de investimento. Negociar e investir pode gerar perdas: avalie o risco por conta própria e siga as leis do seu país antes de usá-lo.
O que é?
FinRL-X é uma infraestrutura de trading quantitativo nativa de IA da AI4Finance Foundation e sucessora do framework original FinRL. Ela organiza as estratégias em um pipeline que gera um vetor de pesos-alvo para o portfólio; assim, os mesmos pesos alimentam tanto o mecanismo de backtesting quanto a execução em produção.
O projeto abrange a ingestão de dados do Yahoo Finance, FMP e WRDS com cache em SQLite; seleção de ações baseada em ML, incluindo um seletor Random Forest; alocadores de portfólio como pesos iguais, média-variância, variância mínima e um alocador de DRL; além de overlays de timing e risco no nível do portfólio. Os backtests são executados com a biblioteca bt, com comparação a vários benchmarks e custos de transação.
As operações em produção e em paper trading são feitas pela Alpaca, com suporte a várias contas e verificações de risco pré-negociação. O projeto inclui um ponto de entrada CLI, um script de deploy, uma API Python e um fluxo de trabalho de exemplo em Jupyter. O projeto destina-se à pesquisa e à educação, não é uma recomendação financeira.
Recursos principais
- 01Pipeline centrado em pesos, com módulos intercambiáveis para seleção, alocação, timing e overlays de risco.
- 02Carregamento de dados do Yahoo Finance, FMP e WRDS com cache em SQLite.
- 03Backtesting pelo mecanismo bt, com comparação a vários benchmarks e custos de transação.
- 04Paper trading e trading em produção pela Alpaca, com suporte a várias contas e verificações de risco pré-negociação.
- 05Estratégias incluídas: seleção de ações com ML, alocação com DRL (PPO/SAC) e rotação adaptativa de vários ativos.
Casos de uso
- Pesquisar seleção de ações e alocação de portfólio com base em ML ou DRL para ações dos EUA.
- Fazer backtesting de estratégias com vários ativos em comparação com os benchmarks SPY e QQQ.
- Executar experimentos de paper trading com a Alpaca antes de qualquer implantação em produção.
- Ensinar finanças quantitativas com um fluxo de trabalho reproduzível em Python.
Início rápido
- 1
Clone o repositório
git clone https://github.com/AI4Finance-Foundation/FinRL-Trading.git - 2
Crie um ambiente virtual (Python 3.11 ou superior) e depois ative-o
python3 -m venv venv - 3
Instale as dependências
pip install -r requirements.txt - 4
Execute um backtest de rotação adaptativa com deploy.sh
./deploy.sh --strategy adaptive_rotation --mode backtest
Antes de usar
- É necessário ter Python 3.11 ou superior.
- O paper trading e as operações ao vivo exigem credenciais da Alpaca API em um arquivo .env.
- Os resultados de desempenho no README são dos backtests e do paper trading realizados pelos próprios autores em períodos específicos.
Tópicos
Perguntas frequentes
- O que é FinRL-Trading?
- Framework modular de trading quantitativo em Python para seleção de ações, alocação de portfólio, backtesting e execução pela corretora Alpaca, com uma interface baseada em pesos. FinRL-X é uma infraestrutura de trading quantitativo nativa de IA da AI4Finance Foundation e sucessora do framework original FinRL. Ela organiza as estratégias em um pipeline que gera um vetor de pesos-alvo para o portfólio; assim, os mesmos pesos alimentam tanto o mecanismo de backtesting quanto a execução em produção.
- FinRL-Trading é gratuito? Qual é a licença?
- FinRL-Trading é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- FinRL-Trading ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de FinRL-Trading foi em 18 de set. de 2026.
- Para que posso usar FinRL-Trading?
- Pesquisar seleção de ações e alocação de portfólio com base em ML ou DRL para ações dos EUA. Fazer backtesting de estratégias com vários ativos em comparação com os benchmarks SPY e QQQ. Executar experimentos de paper trading com a Alpaca antes de qualquer implantação em produção. Ensinar finanças quantitativas com um fluxo de trabalho reproduzível em Python.
- Como instalar FinRL-Trading?
- Clone o repositório: git clone https://github.com/AI4Finance-Foundation/FinRL-Trading.git Crie um ambiente virtual (Python 3.11 ou superior) e depois ative-o: python3 -m venv venv Instale as dependências: pip install -r requirements.txt Execute um backtest de rotação adaptativa com deploy.sh: ./deploy.sh --strategy adaptive_rotation --mode backtest
- Onde consigo FinRL-Trading?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/AI4Finance-Foundation/FinRL-Trading
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Framework Python de código aberto para aplicar deep reinforcement learning a tarefas de negociação automatizada de ações e gestão de portfólio.
Framework Python para trading quantitativo, com definição de estratégias, backtesting vetorial e orientado a eventos, dashboards de resultados e trading simulado ou ao vivo.
Framework de bot de trading de criptomoedas em Go para criar, fazer backtest e executar estratégias em várias exchanges.
Repositório complementar ao livro chinês “XQuant: Everyone Can Be a Quant Trader”, com Specs e notebooks Jupyter sobre trading quantitativo e backtesting em Python.
Plataforma de investimento quantitativo orientada a IA da Microsoft, que abrange dados, treinamento de modelos, backtesting e execução de ordens para pesquisa quantitativa.