À propos du projet
czsc est un outil d'analyse technique Chanlun open source destiné au trading quantitatif, issu de la théorie du blog de Chan Zhongshuo, principalement utilisé pour la recherche quantitative sur les actions, les contrats à terme et les cryptomonnaies. Le projet est distribué sous forme de paquet Python, installable via pip, nécessitant Python 3.10 ou supérieur.
Sur le plan architectural, la version 1.0 adopte une architecture hybride Rust + Python. Les algorithmes clés du Chanlun (fractales, traits, pivots, etc.) ont été entièrement migrés vers Rust, exposés à Python via l'extension PyO3 czsc._native. Le workspace Rust sous-jacent comprend des crates tels que czsc, czsc-core, czsc-derive, czsc-signals, czsc-trader, czsc-utils, czsc-ta, czsc-signal-macros et czsc-python. Côté Python, des modules comme traders, utils, connectors, strategies, fsa, mock et envs sont fournis.
Les capacités principales incluent : la reconnaissance automatique des fractales et des traits Chanlun ; la définition et la mise en œuvre du système logique de trading quantitatif « signal-événement-trading », où les événements peuvent être combinés logiquement via signals_all, signals_any et signals_not ; plus de 220 fonctions de signaux ; la prise en charge de l'analyse décisionnelle multi-échelles Chanlun, assurée par CzscTrader ; et le synthétiseur de chandeliers BarGenerator pour la génération de données multi-périodes.
Pour le backtest et la recherche, le projet intègre WeightBacktest pour le backtest de séquences pondérées, ainsi que des points d'entrée de recherche stratégique comme run_replay et run_research. La visualisation est uniformément générée en HTML avec plotly et lightweight-charts, prenant en charge les chandeliers à période unique avec structure Chanlun, les graphiques de séries pondérées, ainsi que des rapports HTML autonomes hors ligne avec superposition de signaux multi-échelles.
Les connecteurs de données couvrent les marchés à terme via TQSdk (Tianqin), les données historiques A-shares via Tushare, les échanges de cryptomonnaies via CCXT, ainsi qu'un cache local pour les données de recherche. Le projet dépend également de wbt (moteur de backtest pondéré, dépendance stricte), wmr (système de gestion des pondérations, complément en aval) et talib-rs (dépendance de test optionnelle pour la validation numérique des opérateurs TA), formant une boucle fermée d'analyse, de backtest, de mise en œuvre et de validation.
Avant utilisation, il faut noter : la version 1.0.X, après migration des algorithmes clés vers Rust, n'est pas compatible avec la version 0.9.X ; l'ancien code doit être migré selon la nouvelle API. Le projet déclare que l'open source est uniquement à des fins d'échange technique.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.