Allgemeine Einführung
Abu Quantitative Trading System ist eine Open-Source-Plattform, die auf Python basiert. Sie wurde vom Nutzer "bbfamily" entwickelt, um Investoren bei der Umsetzung quantitativer Handelsstrategien durch Code zu unterstützen. Das System unterstützt das Backtesting und den Handel mit einer breiten Palette von Finanzprodukten wie Aktien, Optionen, Futures und Bitcoin. Es nutzt Technologien des maschinellen Lernens für die Datenanalyse und Strategieoptimierung. Mit Stand vom 25. März 2025 hat dieses Projekt mehr als 12.000 Sterne und 3,8.000 Forks auf GitHub, was auf eine große Fangemeinde hinweist. Das Ziel von Abu ist es, Investitionsentscheidungen durch Automatisierung und Intelligenz für die Nutzer zu erleichtern.
Funktionsliste
- Unterstützt den Handel an mehreren Märkten: Er kann Kursdaten von den Aktienmärkten in Shanghai und Shenzhen, von US-Aktien, Futures und digitalen Währungen verarbeiten.
- Backtest-Funktion: Ermöglicht die Analyse historischer Daten, um die Wirksamkeit von Handelsstrategien zu testen.
- Stock Picking und Timing: Integrierte Strategien für Stock Picking und Timing erleichtern dem Benutzer das Screening von Aktien und die Entscheidung über den Zeitpunkt von Käufen und Verkäufen.
- Integration von maschinellem Lernen: Kombination von Algorithmen des maschinellen Lernens zur Optimierung von Handelsmodellen.
- Hochgradig anpassbar: Die Benutzer können den Code ändern und die Richtlinien und Parameter nach ihren Bedürfnissen anpassen.
- Datenmanagement: unterstützt die Erfassung und parallele Verarbeitung von Finanzzeitreihendaten.
- Handelsausführung: Verbindung mit Marktschnittstellen zur Automatisierung von Kauf- und Verkaufsvorgängen.
Hilfe verwenden
Das Abu Quantitative Trading System ist ein Open-Source-Projekt, und die Benutzer benötigen für den Einstieg einige grundlegende Programmierkenntnisse. Es verfügt nicht über eine Standard-Grafikschnittstelle, sondern läuft über Python-Code. Nachfolgend finden Sie eine detaillierte Beschreibung der Installation und Verwendung:
Einbauverfahren
- Vorbereiten der Umgebung
- Stellen Sie sicher, dass auf Ihrem Computer Python 3.x installiert ist (3.7 oder höher empfohlen).
- Laden Sie das Git-Tool zum Abrufen von Code von GitHub herunter und installieren Sie es.
- Optional: Installieren Sie Anaconda zur einfachen Verwaltung der Python-Umgebung und abhängiger Pakete.
- Klonen von Code
- Öffnen Sie ein Terminal oder eine Befehlszeile und geben Sie den folgenden Befehl ein, um das Abu-Projekt zu ziehen:
git clone https://github.com/bbfamily/abu.git
- Wenn Sie fertig sind, gehen Sie zum Projektordner:
cd abu
- Öffnen Sie ein Terminal oder eine Befehlszeile und geben Sie den folgenden Befehl ein, um das Abu-Projekt zu ziehen:
- Installation von Abhängigkeiten
- Das Projekt benötigt einige Python-Bibliotheken, die durch Ausführen des folgenden Befehls im Terminal installiert werden:
pip install -r requirements.txt
- Wenn Sie keine -Datei haben, können Sie die Kernbibliotheken manuell installieren, zum Beispiel
numpy
undpandas
im Gesang antwortensklearn
::pip install numpy pandas scikit-learn
- Das Projekt benötigt einige Python-Bibliotheken, die durch Ausführen des folgenden Befehls im Terminal installiert werden:
- Überprüfen der Installation
- Geben Sie in das Terminal
python
geben Sie die Python-Umgebung ein. - in Bewegung sein
import abupy
Wenn kein Fehler gemeldet wird, war die Installation erfolgreich.
- Geben Sie in das Terminal
Verwendung
Der Kern des Abu-Systems ist die Ausführung quantitativer Handelsstrategien durch Code. Im Folgenden wird detailliert beschrieben, wie die wichtigsten Funktionen funktionieren:
1. die Datenerhebung und -aufbereitung
- Abu unterstützt den Abruf historischer Daten von mehreren Märkten, z. B. von den Aktienmärkten in Shanghai und Shenzhen oder von US-Aktien.
- Legen Sie den Markttyp im Code fest, zum Beispiel:
from abupy import ABuEnv ABuEnv.g_market_target = 'us' # 设置为美股市场
- Führen Sie die Datenerfassungsfunktion aus:
from abupy import all_symbol symbols = all_symbol() # 获取所有股票代码
2. das Backtesting von Handelsstrategien
- Definieren Sie Kauf- und Verkaufsstrategien. Verwenden Sie zum Beispiel eine Ausbruchsstrategie:
buy_factors = [{'xd': 60, 'class': 'AbuFactorBuyBreak'}] sell_factors = [{'stop_loss_n': 0.5, 'class': 'AbuFactorAtrNStop'}]
- Legen Sie die Anfangsfinanzierung und die Backtesting-Zeit fest:
from abupy import run_loop_back result = run_loop_back( read_cash=1000000, # 初始资金100万 buy_factors=buy_factors, sell_factors=sell_factors, n_folds=2, # 回测2年数据 start='2023-01-01', # 开始时间 end='2025-01-01' # 结束时间 )
- Ergebnisse anzeigen: Nach der Ausführung gibt das System Handelsgewinne/-verluste und Statistiken aus.
3. die Aktienauswahl und das Timing
- Verwenden Sie den eingebauten Stockpicker, um Aktien zu screenen. Suchen Sie zum Beispiel nach dem Preis:
from abupy import AbuPickStockPriceMinMax stock_picks = [{'class': 'AbuPickStockPriceMinMax', 'threshold_price_min': 50.0}]
- Kombiniert mit Backtesting-Läufen:
result = run_loop_back(read_cash=1000000, buy_factors=buy_factors, sell_factors=sell_factors, stock_picks=stock_picks)
4. maschinelle Lernoptimierung
- Abu integriert Funktionen des maschinellen Lernens zur Optimierung der Strategieparameter. Beispiel:
from abupy import AbuMLGrid best_params = AbuMLGrid.grid_search_mul_init_kwargs(...) # 优化参数
- Wenden Sie die optimierten Parameter auf den Backtest an.
5. die Bedienung und Inbetriebnahme
- Speichern Sie den Code als
.py
Dateien, wie z.B.trade.py
. - Läuft im Terminal:
python trade.py
- Wenn etwas schief läuft, prüfen Sie die Protokollausgabe und passen Sie den Code oder die Parameter an.
Featured Function Bedienung
- Multimarkt-Unterstützung: durch
ABuEnv.g_market_target
Wechselnde Märkte, wie z.B.'cn'
(Shanghai und Shenzhen),'us'
(U.S.-Aktien) oder'btc'
(Bitcoin). - Parallelverarbeitung: Einstellungen
n_process_kl
im Gesang antwortenn_process_pick
Parameter, wobei Multi-Core-CPUs eingesetzt werden, um die Datenverarbeitung und das Backtesting zu beschleunigen. - Maßgeschneiderte StrategienBenutzer können ihre eigene Kauf-Verkaufs-Logik schreiben, die sie in die
buy_factors
vielleichtsell_factors
.
Weitere Tutorials finden Sie im Ordner im Projekt, der eine ausführliche IPython Notebook Dokumentation enthält.
Anwendungsszenario
- Quantitative Einzelinvestitionen
Privatanleger können Abu nutzen, um ihre Handelsideen zu testen, z. B. um anhand historischer Daten zu überprüfen, ob eine Ausbruchsstrategie profitabel ist. - Finanzielle Forschung
Forscher können sie nutzen, um Markttrends zu analysieren und in Kombination mit maschinellem Lernen Datenmuster zu erkennen. - Automatisierter Handel
Programmierer können sich mit Echtzeit-Datenschnittstellen verbinden, um vollautomatische Kauf- und Verkaufsvorgänge durchzuführen.
QA
- Welche Märkte werden von Abu unterstützt?
Es unterstützt eine breite Palette von Märkten wie die Börsen von Shanghai und Shenzhen, US-Aktien, Futures und Bitcoin, und die Nutzer können frei wechseln. - Brauchen Sie eine Programmiergrundlage?
Ja, Abu läuft auf Python und setzt voraus, dass der Benutzer in der Lage ist, einfachen Code zu schreiben. - Wie kann ich Hilfe bekommen?
Sie können sich die -Datei auf GitHub ansehen oder dem Tutorial auf WeChat "abu_quant" folgen.