3. Struktur der Backtest-Ergebnisse
3.1. Beschreibung des Rückgabewerts
Das von qt.run(op, mode=1) zurückgegebene Objekt ist normalerweise ein Backtest-Ergebniscontainer (z. B. ein Backtester oder eine Struktur mit Ergebnissen), konsistent mit der qteasy 2.0-API. Der genaue Typ hängt von der Dokumentation ab.
3.2. Vollständige Liste der Backtest-Ergebnisfelder (auflisten und kurz erläutern)
Nachfolgend sind allgemeine Attribute/Schlüssel in Backtest-Ergebnissen und ihre Bedeutung aufgeführt. Einzelheiten finden Sie in der aktuellen Version.
Feld-/Attributname |
Typ |
Bedeutung |
|---|---|---|
loop_result |
Struktur/Liste |
Ergebnisse des Schleifenlaufs nach Zeitschritt. |
complete_values |
DataFrame/array |
Eine vollständige NAV- oder Aktienkurvenreihe, einschließlich Positionen, Bargeld, Wert, Gebühr und der p-{股票代码}-Tagespreisspalte(n) usw. |
oper_count |
int/dict |
Anzahl der Vorgänge oder Statistiken nach Typ. |
summary |
dict/str |
Zusammenfassende Informationen (z. B. Gesamtrendite, Sharpe Ratio usw.). |
Eigenkapitalkurve / Nettoinventarwert |
array/Series |
Täglicher oder periodenbezogener NAV. |
Positionen |
DataFrame |
Positionsdetails zu jedem Zeitpunkt (falls vorhanden). |
Weitere mögliche Felder: Handelsdetails, Gebührenübersichten usw. Bitte beziehen Sie sich auf die tatsächlichen Eigenschaften des zurückgegebenen Objekts.
3.3. Eigenkapitalkurve und Positionen
Extrahieren Sie den täglichen Nettoinventarwert aus dem Ergebnis: Er stammt normalerweise aus der Spalte „Wert“ von „complete_values“ oder einem ähnlichen Attribut.
Preis am selben Tag: In Complete_Values enthält die Spalte „p-{股票代码}“ den Schlusskurs jedes Instruments für diesen Tag; Wenn es fehlt, ist es NaN.
Positionsverhältnis: Wenn die Ergebnisse eine Positionstabelle liefern, können Sie diese nach Instrument und Datum aggregieren, um das Verhältnis zu berechnen.
3.4. Leistungskennzahlen
Die Ergebnisse können bereits auswerten oder integrierte Leistungsmetriken (Sharpe Ratio, maximaler Drawdown, jährliche Rendite, Gewinnrate usw.) enthalten.
So erhalten Sie es: z. B. „result.summary“, „result.evaluate()“ oder separater Aufruf einer Auswertungsfunktion – siehe API-Dokumentation.