Aprendizagem pessoal com IA
e orientação prática
讯飞绘镜

Qlib: uma ferramenta de pesquisa de investimento quantitativo de IA desenvolvida pela Microsoft

Introdução geral

O Qlib é uma plataforma de código aberto desenvolvida pela Microsoft que se concentra no uso da tecnologia de IA para ajudar os usuários a pesquisar investimentos quantitativos. Ela começa com o processamento básico de dados e dá suporte aos usuários na exploração de ideias de investimento e na transformação delas em estratégias utilizáveis. A plataforma é fácil de usar e adequada para usuários que desejam aprimorar suas pesquisas de investimento com aprendizado de máquina. O qlib fornece funções de gerenciamento de dados, treinamento de modelos e backtesting, abrangendo todo o processo de investimento quantitativo. Lançado pela equipe da Microsoft Research, ele incorpora as mais recentes tecnologias de IA para lidar com dados financeiros complexos. Atualmente datado de 25 de março de 2025, o Qlib é continuamente atualizado no GitHub e tem uma comunidade ativa que atrai muitos desenvolvedores.

Qlib:微软开发的AI量化投资研究工具-1


 

Qlib:微软开发的AI量化投资研究工具-1

 

Lista de funções

  • Processamento de dados: oferece suporte ao armazenamento e ao processamento eficientes de dados financeiros para acesso e análise rápidos.
  • Treinamento de modelos: fornece uma variedade de modelos de aprendizado de máquina, como aprendizado supervisionado e aprendizado por reforço, para ajudar a prever as tendências do mercado.
  • Ferramenta de backtesting: função de backtesting integrada para simular o desempenho das estratégias de investimento e avaliar a eficácia.
  • Geração de estratégia de investimento: otimize as decisões de negociação gerando portfólios-alvo a partir de sinais.
  • Módulo personalizável: os usuários podem ajustar modelos e estratégias para atender às necessidades individuais.
  • Modo on-line e off-line: suporte à implantação local ou serviços de dados compartilhados, escolha flexível de uso.

 

Usando a Ajuda

Processo de instalação

O Qlib precisa ser instalado em um ambiente que suporte Python. Aqui estão as etapas detalhadas:

  1. Preparação do ambiente
    • Certifique-se de que o Python esteja instalado em seu computador (recomenda-se a versão 3.7 ou 3.8). Isso pode ser feito com <code>python --version</code> Verifique a versão.
    • É recomendável que você use o ambiente de gerenciamento do Anaconda. Depois de fazer o download e instalar o Anaconda, crie um novo ambiente:
      conda create -n qlib_env python=3.8
      
    • Ativar o ambiente:
      conda activate qlib_env
      
  2. Instalação de dependências
    • Instale a biblioteca básica primeiro:
      pip install numpy
      pip install --upgrade cython
      
    • Instale o Qlib a partir do GitHub:
      git clone https://github.com/microsoft/qlib.git
      cd qlib
      pip install .
      
    • Se você precisar desenvolver funcionalidades, poderá usar o <code>pip install -e .[dev]</code>.
  3. Obtenção de dados
    • Faça o download de dados de exemplo (para o mercado chinês):
      python scripts/get_data.py qlib_data --target_dir ~/.qlib/qlib_data/cn_data --region cn
      
    • Os dados são salvos no diretório do usuário para uso posterior.

Como usar os principais recursos

processamento de dados

O processamento de dados do Qlib é rápido e pode organizar os dados financeiros em um formato adequado para análise. Depois de executar o comando de download de dados acima, os dados são automaticamente armazenados no diretório <code>~/.qlib/qlib_data/cn_data</code>Você pode carregar os dados com um script Python. Você pode carregar os dados com um script Python:

import qlib
qlib.init(provider_uri="~/.qlib/qlib_data/cn_data")
from qlib.data import D
instruments = D.instruments(market="csi300")
data = D.features(instruments, ["$close", "$volume"], start_time="2023-01-01", end_time="2025-03-25")
print(data.head())

Esse código exibe o preço de fechamento e o volume da ação especificada.

treinamento de modelos

O Qlib oferece suporte a uma variedade de modelos, como o LightGBM. Aqui estão as etapas para treinar um modelo simples:

  1. Configure o conjunto de dados e os parâmetros do modelo, salve como <code>workflow_config.yaml</code>::
    dataset:
    class: DatasetH
    module_path: qlib.data.dataset
    kwargs:
    handler:
    class: Alpha158
    module_path: qlib.contrib.data.handler
    segments:
    train: ["2023-01-01", "2024-01-01"]
    valid: ["2024-01-02", "2024-06-30"]
    test: ["2024-07-01", "2025-03-25"]
    model:
    class: LGBModel
    module_path: qlib.contrib.model.gbdt
    
  2. Execute o comando de treinamento:
    qrun workflow_config.yaml
    
  3. Quando o treinamento é concluído, o modelo é salvo no caminho padrão <code>~/.qlib/qlib_data/models</code>.

Ferramentas de backtesting

O backtesting testa a eficácia da estratégia. Execute um backtest com o seguinte código:

from qlib.contrib.strategy import TopkDropoutStrategy
from qlib.backtest import backtest
strategy = TopkDropoutStrategy(topk=10, drop=2)
report = backtest(strategy=strategy, start_time="2024-01-01", end_time="2025-03-25")
print(report)
  • <code>topk=10</code> Indica as 10 principais ações.
  • <code>drop=2</code> Indica que as duas ações com pior desempenho são descartadas a cada dia.
    Os resultados mostrarão indicadores de retorno e risco.

Operação da função em destaque

modo on-line

O Qlib suporta o modo on-line, compartilhando dados por meio do Qlib-Server:

  1. Instale o Qlib-Server:
    git clone https://github.com/microsoft/qlib-server.git
    cd qlib-server
    docker-compose -f docker_support/docker-compose.yaml up -d
    
  2. Configure o cliente para se conectar ao servidor:
    qlib.init(provider_uri="http://<server_ip>:port")
    
  3. Os dados serão obtidos do servidor para aumentar a eficiência.

Estratégias personalizadas

Quer experimentar sua própria estratégia? A herança é possível <code>WeightStrategyBase</code> Classe:

from qlib.contrib.strategy import WeightStrategyBase
class MyStrategy(WeightStrategyBase):
def generate_trade_decision(self, data):
return {stock: 0.1 for stock in data.index[:5]}  # 前5只股票平分权重

Em seguida, teste os resultados com uma ferramenta de backtesting.

 

cenário do aplicativo

  1. Pesquisa de investimentos individuais
    Os usuários podem usar o Qlib para analisar dados históricos, testar suas ideias de investimento e encontrar estratégias com retornos mais altos.
  2. Equipe de pesquisa financeira
    As equipes podem usar os recursos de modelagem e backtesting do Qlib para validar rapidamente as teorias acadêmicas no mercado.
  3. Aprendizagem educacional
    Os alunos podem usar o Qlib para aprender sobre investimentos quantitativos, processamento prático de dados e treinamento de modelos.

 

QA

  1. Quais sistemas operacionais são compatíveis com o Qlib?
    Windows, macOS e Linux são compatíveis e serão executados desde que o Python e as bibliotecas dependentes estejam instalados.
  2. De onde vêm os dados?
    Os dados padrão são obtidos do Yahoo Finance, ou os usuários podem substituí-los por seus próprios dados.
  3. Precisa de uma base de programação?
    É necessário ter conhecimentos básicos de Python, mas a documentação oficial e os exemplos são detalhados o suficiente para que um novato possa começar.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Qlib: uma ferramenta de pesquisa de investimento quantitativo de IA desenvolvida pela Microsoft
pt_BRPortuguês do Brasil