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.


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 :
- 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
- Assurez-vous que Python est installé sur votre ordinateur (3.7 ou 3.8 recommandé). Cela peut être fait avec
- 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>
.
- Installez d'abord la bibliothèque de base :
- 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.
- Télécharger un exemple de données (pour le marché chinois) :
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 :
- 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
- Exécutez la commande de formation :
qrun workflow_config.yaml
- 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 :
- 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
- Configurer le client pour qu'il se connecte au serveur :
qlib.init(provider_uri="http://<server_ip>:port")
- 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
- 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. - É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é. - 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
- 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. - 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. - 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
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...