2. So führen Sie eine Strategieoptimierung durch
2.1. Einstiegspunkt und gemeinsame Kwargs
Führen Sie die Strategieoptimierung mit qt.run(op, mode=2, ...) durch. Zu den gängigen Argumenten gehören opti_method, opti_sample_count, opti_output_count und andere.
2.2. Vollständige Liste der Optimierungsalgorithmen (mit kurzen Erläuterungen)
Im Folgenden sind allgemeine opti_method-Werte und typische Anwendungsfälle aufgeführt; Beziehen Sie sich auf die qteasy 2.0-API als Quelle der Wahrheit.
Algorithmus |
Bedeutung |
Typischer Anwendungsfall |
|---|---|---|
grid |
Rastersuche |
Wenige Parameter, diskreter Raum; umfassende oder grobe Rastersuche. |
montecarlo |
Monte-Carlo-Zufallsstichprobe |
Zufallsstichprobe bei vielen Parametern. |
GA |
Genetischer Algorithmus |
Mittlere bis hohe Abmessungen; kontinuierliche/diskrete Mischräume. |
SA |
Simuliertes Glühen |
Mittlere Abmessungen; hilfreich, wenn lokale Optima ein Problem darstellen. |
PSO |
Partikelschwarmoptimierung |
Kontinuierlicher Raum mit mehreren Gipfeln. |
bayesian |
Bayesianische Optimierung |
Teure Bewertungen; Sie benötigen gute Ergebnisse in wenigen Schritten. |
2.3. Vollständige Liste der Optimierungslaufparameter (mit kurzen Erläuterungen)
Parametername |
Typ/Werte |
Bedeutung |
|---|---|---|
opti_method |
str |
Optimierungsalgorithmus: „ |
opti_sample_count |
int |
Anzahl der Stichproben/Iterationen (z. B. Monte-Carlo-Stichproben oder GA-Generationen). |
opti_output_count |
int |
Anzahl der besten Ergebnisse, die beibehalten werden sollen (Top-K). |
Zielfunktion |
— |
Z. B. Sharpe Ratio oder Drawdown; siehe Konfigurations- oder API-Dokumente. |
Einschränkungen |
— |
Wenn Einschränkungen gelten (z. B. maximales Drawdown-Limit), siehe Konfiguration. |
Backtest-Datumsbereich: „asset_pool``, and other arguments shared with ``mode=1`` also apply in ``mode=2“.
2.4. Parameterraum
Die Parameter-Objekte und par_range der Strategie definieren den Suchraum; Das Framework probiert oder durchsucht darin gemäß „opti_method“.
2.5. Minimales lauffähiges Beispiel
import qteasy as qt
op = qt.Operator(strategies='dma', signal_type='PT', run_freq='d')
# dma 策略带 short_period、long_period 等可调参数
qt.configure(asset_pool='000001.SZ', invest_start='2020-01-01', invest_end='2023-12-31')
result = qt.run(op, mode=2, opti_method='grid', opti_sample_count=100, opti_output_count=10)
2.6. Konfigurations-Highlights
Backtest-Bereich und Asset-Pool: Wie „mode=1“; Sie definieren die Backtest-Umgebung für jede Parameterbewertung.
Zielfunktion: Definiert, was „besser“ bedeutet (z. B. Sharpe maximieren oder Drawdown minimieren) und beeinflusst das Ranking und die endgültige Auswahl.