Betting Against Beta Stocks (C#)
Betting Against Beta Stocks Handelsregeln Tagesdaten mit BenchmarkSecurity synchronisieren; WindowDays + 1 gemeinsame Daten sind nötig. Einfache Rendite r[d] = P[d] / P[d−1] − 1. Beta ist Kovarianz de...
Betting Against Beta Stocks
Handelsregeln
Tagesdaten mit BenchmarkSecurity synchronisieren; WindowDays + 1 gemeinsame Daten sind nötig. Einfache Rendite r[d] = P[d] / P[d−1] − 1. Beta ist Kovarianz der Renditen mit dem Benchmark geteilt durch dessen Varianz. Nullvarianz verschiebt die Auswahl. Niedrigstes Beta-Deciles kaufen und höchstes verkaufen, je floor(Universe-Größe / Deciles). Keine Intraday-Beta-Schwellen, Stops oder beta-neutrale Hebelanpassung.
Nur abgeschlossene Kerzen mit gleichem Zeitstempel werden gemeinsam ausgewertet. Statistiken zählen verschiedene UTC-Daten; weitere Intraday-Kerzen ersetzen den Tageswert. Die erste geeignete gemeinsame Kerze jedes Monats löst genau eine Umschichtung aus. Unvollständige Daten verschieben sie. Gleiche Werte werden nach Security.Id sortiert.
Bei Intraday-CandleType zählen nur UTC-Daten vor dem aktuellen Signaldatum. Der unvollständige aktuelle Tag bleibt ausgeschlossen. Eine abgeschlossene Tageskerze darf ihr eigenes vollständiges Datum beitragen.
Eingabedaten
PriceHistoryFile ist eine optionale CSV positiver Tagesschlusskurse: SecurityId,Date,Close; Datum yyyy-MM-dd. Aktuelle und zukünftige Daten dürfen eine Entscheidung nicht vorwärmen. Live-Schlusskurse ersetzen den jeweiligen UTC-Tageswert. Doppelte Daten sind ungültig. Die Datei ermöglicht lange Rückblicke bei kurzen Ausführungsarchiven.
Parameter
| Parameter | Standardwert |
|---|---|
Universe |
erforderlich |
Capital |
100000 |
Leverage |
1 |
MinTradeUsd |
100 |
CandleType |
TimeSpan.FromMinutes(5).TimeFrame() |
Deciles |
10 |
PriceHistoryFile |
optional — nicht gesetzt |
BenchmarkSecurity |
erforderlich |
WindowDays |
252 |
Ausführung
Universe muss explizit angegeben werden. Preise und Capital sind in USD je gehandelter Einheit angegeben. Capital ist ein festes Budget; Leverage bestimmt das Bruttoengagement. Es werden keine Stop-Loss- oder Take-Profit-Orders hinzugefügt.
Jede Seite erhält die Hälfte von Capital × Leverage, gleichmäßig auf ihre Titel verteilt. Stückzahlen basieren auf dem Signalschlusskurs und werden zu null auf VolumeStep gerundet. Tatsächliche Ausführungen bestimmen den Bestand. Offene Orders werden abgewartet, MinVolume/MaxVolume eingehalten und große Anpassungen auf spätere Kerzen verteilt. MinTradeUsd gilt nicht für vollständige Glattstellungen.
Prüfung
Ausführungen werden ausschließlich mit dem vorhandenen BTC/TON-Archiv geprüft. Explizite Berichts-, Options- und Vorwärmdaten sind mechanische Testdaten, keine echten Unternehmens- oder Optionsdaten. Kürzere Fenster, zwei Gruppen und März als jährlicher Termin sind benannte Testprofile, kein Nachweis für unveränderte langfristige Standardwerte. Es wird keine Rendite behauptet.
Ich antworte anhand dessen, was auf dieser Seite steht. Für alles andere verweise ich auf die Dokumentation.