Qlib : un outil d'analyse quantitative des investissements basé sur l'IA et développé par Microsoft

Introduction générale

Qlib est une plateforme open source développée par Microsoft qui se concentre sur l'utilisation de la technologie de l'IA pour aider les utilisateurs à rechercher des investissements quantitatifs. Elle commence par le traitement des données de base et aide les utilisateurs à explorer des idées d'investissement et à les transformer en stratégies utilisables. La plateforme est facile à utiliser et convient aux utilisateurs qui souhaitent améliorer leur recherche d'investissement grâce à l'apprentissage automatique. qlib fournit des fonctions de gestion des données, d'apprentissage de modèles et de backtesting, couvrant l'ensemble du processus d'investissement quantitatif. Lancé par l'équipe de recherche de Microsoft, il intègre les dernières technologies d'intelligence artificielle pour traiter des données financières complexes. Actuellement daté du 25 mars 2025, Qlib est continuellement mis à jour sur GitHub et dispose d'une communauté active qui attire de nombreux développeurs.

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

 

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

 

Liste des fonctions

  • Traitement des données : permet de stocker et de traiter efficacement les données financières pour un accès et une analyse rapides.
  • Formation aux modèles : fournit une variété de modèles d'apprentissage automatique tels que l'apprentissage supervisé et l'apprentissage par renforcement pour aider à prédire les tendances du marché.
  • Outil de backtesting : fonction de backtesting intégrée permettant de simuler la performance des stratégies d'investissement et d'en évaluer l'efficacité.
  • Génération de stratégies d'investissement : optimiser les décisions de trading en générant des portefeuilles cibles à partir des signaux.
  • Module personnalisable : les utilisateurs peuvent adapter les modèles et les stratégies aux besoins individuels.
  • Mode en ligne et hors ligne : prise en charge du déploiement local ou des services de données partagés, choix d'utilisation flexible.

 

Utiliser l'aide

Processus d'installation

Qlib doit être installé dans un environnement qui supporte Python. Voici les étapes détaillées :

  1. Préparation de l'environnement
    • Assurez-vous que Python est installé sur votre ordinateur (3.7 ou 3.8 recommandé). Cela peut être fait avec <code>python --version</code> Vérifier la version.
    • Il est recommandé d'utiliser l'environnement de gestion Anaconda. Après avoir téléchargé et installé Anaconda, créez un nouvel environnement :
      conda create -n qlib_env python=3.8
      
    • Activer l'environnement :
      conda activate qlib_env
      
  2. Installation des dépendances
    • Installez d'abord la bibliothèque de base :
      pip install numpy
      pip install --upgrade cython
      
    • Installez Qlib depuis GitHub :
      git clone https://github.com/microsoft/qlib.git
      cd qlib
      pip install .
      
    • Si vous avez besoin de développer des fonctionnalités, vous pouvez utiliser la fonction <code>pip install -e .[dev]</code>.
  3. Obtenir des données
    • Télécharger un exemple de données (pour le marché chinois) :
      python scripts/get_data.py qlib_data --target_dir ~/.qlib/qlib_data/cn_data --region cn
      
    • Les données sont enregistrées dans le répertoire de l'utilisateur pour une utilisation ultérieure.

Comment utiliser les principales fonctionnalités

traitement des données

Le traitement des données de Qlib est rapide et permet d'organiser les données financières dans un format adapté à l'analyse. Après avoir exécuté la commande de téléchargement de données ci-dessus, les données sont automatiquement stockées dans le fichier <code>~/.qlib/qlib_data/cn_data</code>Vous pouvez charger les données à l'aide d'un script Python. Vous pouvez charger les données à l'aide d'un 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())

Ce code affiche le cours de clôture et le volume de l'action spécifiée.

formation au modèle

Qlib prend en charge une variété de modèles, tels que LightGBM. Voici les étapes pour former un modèle simple :

  1. Configurer le jeu de données et les paramètres du modèle, enregistrer sous <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. Exécutez la commande de formation :
    qrun workflow_config.yaml
    
  3. Lorsque la formation est terminée, le modèle est enregistré dans le chemin d'accès par défaut <code>~/.qlib/qlib_data/models</code>.

Outils de backtesting

Le backtesting permet de tester l'efficacité de la stratégie. Exécutez un backtest avec le code suivant :

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> Indique les 10 premiers titres.
  • <code>drop=2</code> Indique que les deux actions les moins performantes sont éliminées chaque jour.
    Les résultats montrent des indicateurs de rendement et de risque.

Fonction en vedette Fonctionnement

mode en ligne

Qlib prend en charge le mode en ligne, en partageant les données par l'intermédiaire de Qlib-Server :

  1. Installer 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. Configurer le client pour qu'il se connecte au serveur :
    qlib.init(provider_uri="http://<server_ip>:port")
    
  3. Les données seront extraites du serveur pour améliorer l'efficacité.

Stratégies personnalisées

Vous voulez essayer votre propre stratégie ? L'héritage est possible <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只股票平分权重

Testez ensuite les résultats à l'aide d'un outil de backtesting.

 

scénario d'application

  1. Recherche d'investissements individuels
    Les utilisateurs peuvent utiliser Qlib pour analyser des données historiques, tester leurs idées d'investissement et trouver des stratégies offrant des rendements plus élevés.
  2. Équipe de recherche financière
    Les équipes peuvent utiliser les capacités de modélisation et de backtesting de Qlib pour valider rapidement les théories académiques sur le marché.
  3. Apprentissage éducatif
    Les étudiants peuvent utiliser Qlib pour s'initier à l'investissement quantitatif, au traitement pratique des données et à la formation aux modèles.

 

QA

  1. Quels sont les systèmes d'exploitation pris en charge par Qlib ?
    Windows, macOS et Linux sont pris en charge et fonctionneront tant que Python et les bibliothèques dépendantes sont installés.
  2. D'où proviennent les données ?
    Les données par défaut proviennent de Yahoo Finance, mais les utilisateurs peuvent les remplacer par leurs propres données.
  3. Besoin d'une base en programmation ?
    Des connaissances de base en Python sont nécessaires, mais la documentation officielle et les exemples sont suffisamment détaillés pour permettre à un novice de démarrer.
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...