Einführung
Willkommen bei TRAIL – dem professionellen Options-Backtesting-Tool für ambitionierte Trader. Diese Dokumentation erklärt dir alle Funktionen der Plattform im Detail.
Starte mit dem Abschnitt "Account erstellen" und arbeite dich durch die Grundlagen. Die Dokumentation ist so aufgebaut, dass jeder Abschnitt auf den vorherigen aufbaut.
Was ist TRAIL?
TRAIL (Trading Research and Investment Lab) ist eine webbasierte Plattform zum Backtesten von Options-Strategien. Die Plattform ermöglicht es dir, komplexe Multi-Leg-Strukturen zu definieren und gegen historische Marktdaten zu testen.
Kernkonzepte
Bevor du mit TRAIL arbeitest, solltest du die grundlegenden Konzepte verstehen:
Strategie
Eine Strategie ist der oberste Container in TRAIL. Sie definiert das Underlying-Symbol (z.B. SPXW für SPX Weekly Options), den Backtest-Zeitraum und globale Einstellungen wie Handelsgebühren. Eine Strategie enthält eine oder mehrere Leg Groups.
Leg Group
Eine Leg Group ist ein Container für zusammengehörige Options-Positionen. Zum Beispiel bildet ein Put Credit Spread eine Leg Group mit zwei Legs (Short Put + Long Put). Leg Groups haben eigene Exit-Regeln wie Stop Loss und Take Profit, die für alle enthaltenen Legs gelten.
Leg
Ein Leg repräsentiert eine einzelne Options-Position innerhalb einer Leg Group. Jedes Leg definiert:
- Execution Type: Sell (Short) oder Buy (Long)
- Option Type: Put (P) oder Call (C)
- Strike-Auswahl: Nach Delta, Prämie oder Offset
Indikator
Indikatoren steuern, wann Trades eröffnet werden. Sie können zeitbasiert sein (z.B. "Jeden Tag um 10:00 Uhr") oder auf Marktdaten basieren (z.B. "Wenn VIX unter 20"). Indikatoren können auch per KI generiert werden.
Backtest Run
Ein Run ist die Ausführung eines Backtests. Dabei wird die Strategie gegen historische Daten getestet. Nach Abschluss stehen detaillierte Statistiken und Charts zur Verfügung.
Unterstützte Underlyings
TRAIL unterstützt aktuell folgende Options-Symbole:
| Symbol | Beschreibung | Multiplier |
|---|---|---|
SPXW |
S&P 500 Weekly Options | 100 |
SPY |
SPDR S&P 500 ETF Options | 100 |
QQQ |
Invesco QQQ Trust Options | 100 |
IWM |
iShares Russell 2000 ETF Options | 100 |
Systemanforderungen
TRAIL läuft vollständig im Browser. Für die beste Erfahrung empfehlen wir:
- Moderne Browser: Chrome, Firefox, Edge oder Safari (aktuelle Version)
- JavaScript muss aktiviert sein
- Mindestens 1920x1080 Bildschirmauflösung für optimale Darstellung
Account erstellen
Um TRAIL nutzen zu können, benötigst du einen Account. Bei der Registrierung wird automatisch eine persönliche Datenbank für deine Strategien und Backtests erstellt.
Registrierung
-
1
Zur Registrierung navigieren
Öffne die TRAIL-Anwendung. Du siehst zunächst das Login-Formular. Klicke auf den Link "Account erstellen" unterhalb des Login-Buttons.
-
2
Benutzernamen wählen
Gib deinen gewünschten Benutzernamen ein. Der Benutzername wird für dein persönliches Datenbank-Schema verwendet (Format:
BBT_[Username]). Wähle einen Namen, den du dir gut merken kannst. -
3
Passwort festlegen
Wähle ein sicheres Passwort. Das Passwort wird mit bcrypt gehasht und sicher gespeichert.
-
4
Registrierung abschließen
Klicke auf "Registrieren". Bei erfolgreicher Registrierung erscheint eine Erfolgsmeldung und du wirst nach 2 Sekunden automatisch zum Login-Formular weitergeleitet. Dein Benutzername ist dort bereits vorausgefüllt.
Der Benutzername kann nach der Registrierung nicht mehr geändert werden, da er für das Datenbank-Schema verwendet wird.
Login
Nach der Registrierung kannst du dich jederzeit anmelden:
-
1
Anmeldedaten eingeben
Gib deinen Benutzernamen und Passwort ein.
-
2
Einloggen
Klicke auf "Anmelden" oder drücke Enter. Bei erfolgreicher Anmeldung erscheint kurz "Login erfolgreich!" und du wirst zum Dashboard weitergeleitet.
Session-Verwaltung
TRAIL verwendet PHP-Sessions zur Authentifizierung. Deine Session bleibt aktiv, solange du den Browser nicht schließt. Beim erneuten Öffnen der Anwendung wirst du automatisch eingeloggt, wenn deine Session noch gültig ist.
Logout
Um dich abzumelden, klicke auf deinen Avatar (zeigt die ersten 2 Buchstaben deines Benutzernamens) in der oberen rechten Ecke der Header-Leiste. Im Dropdown-Menü findest du die Option "Logout". Nach dem Logout wirst du zum Login-Formular zurückgeleitet.
Dashboard Übersicht
Nach dem Login landest du auf dem Dashboard. Hier siehst du alle deine Strategien als Karten (Cards) angeordnet und kannst direkt auf alle wichtigen Funktionen zugreifen.
Header-Leiste
Die Header-Leiste am oberen Bildschirmrand ist immer sichtbar und enthält:
- Logo und Titel: Klick darauf kehrt zum Dashboard zurück
- Theme Toggle: Schaltet zwischen Light und Dark Mode um (wird im Browser gespeichert)
- Avatar: Zeigt die ersten 2 Buchstaben deines Benutzernamens. Klick öffnet das Dropdown mit Logout-Option
Strategie-Grid
Die Hauptansicht zeigt alle deine Strategien als responsive Karten-Grid. Wenn du noch keine Strategien hast, siehst du einen Empty State mit der Aufforderung, deine erste Strategie zu erstellen.
Strategie-Karte
Jede Strategie wird als Karte dargestellt mit folgenden Elementen:
| Element | Beschreibung |
|---|---|
| Name | Der Name der Strategie (z.B. "Put Credit Spread Daily") |
| Symbol-Badge | Das Options-Symbol (z.B. SPXW, SPY) als farbiger Badge |
| Run-Info | Zeigt den letzten Run-Status: "queued", "running" (mit Prozent), "done", oder "canceled" |
| Zeitraum | Der Backtest-Zeitraum (z.B. "2020-01-01 bis 2024-12-31") |
| Leg Groups | Anzahl der Leg Groups in der Strategie |
Quick-Action Buttons
Oben rechts auf jeder Karte befinden sich Icon-Buttons für schnelle Aktionen:
| Icon | Aktion | Beschreibung |
|---|---|---|
| ► (Play) | Backtest starten | Startet einen neuen Backtest-Run für diese Strategie. Der Button ist deaktiviert, wenn bereits ein Run läuft. |
| ■ (Stop) | Run abbrechen | Bricht einen laufenden oder wartenden Run ab. Nur aktiv, wenn ein Run läuft. |
| 🗐 (Copy) | Strategie kopieren | Erstellt eine Kopie der Strategie inklusive aller Leg Groups, Legs und Indikatoren. Die Kopie wird mit "(Kopie)" im Namen versehen. |
| ✎ (Edit) | Bearbeiten | Öffnet ein Modal zum Ändern von Name und Symbol der Strategie. |
| 🗑 (Trash) | Löschen | Löscht die Strategie nach Bestätigung. Alle zugehörigen Leg Groups, Legs, Runs und Indikatoren werden ebenfalls gelöscht. |
Klicke auf die Karte selbst (nicht auf die Buttons), um die Strategie-Detailansicht zu öffnen. Dort kannst du Leg Groups, Legs und Indikatoren bearbeiten.
Portfolios-Bereich
Unterhalb des Strategie-Grids befindet sich der Portfolios-Bereich. Hier kannst du:
- Portfolios erstellen, um mehrere Runs zu kombinieren
- Aggregierte Statistiken über mehrere Strategien sehen
- Portfolio-Details und Charts aufrufen
KI-Chat Button
In der unteren rechten Ecke befindet sich ein schwebender Button (Floating Action Button) für den KI-Chat. Klicke darauf, um den Chat-Dialog zu öffnen. Mit dem KI-Assistenten kannst du:
- Strategien per natürlicher Sprache erstellen lassen
- Indikatoren generieren und bearbeiten
- Fragen zur Bedienung stellen
Dark Mode
Der Theme Toggle in der Header-Leiste schaltet zwischen Light Mode und Dark Mode um.
Die Einstellung wird im Browser (localStorage) unter dem Schlüssel bbt.ui.theme gespeichert
und beim nächsten Besuch automatisch wiederhergestellt.
Strategie erstellen
Eine Strategie ist der oberste Container für deine Options-Trades. Sie definiert das Underlying, den Backtest-Zeitraum und enthält eine oder mehrere Leg Groups.
Neue Strategie anlegen
Im Dashboard-Header findest du den Button "Neue Strategie". Klicke darauf, um das Modal zum Erstellen einer neuen Strategie zu öffnen.
Pflichtfelder im Erstellungs-Modal
| Feld | Beschreibung | Beispiel |
|---|---|---|
| Strategie Name | Ein aussagekräftiger Name für deine Strategie | "Put Credit Spread 0DTE" |
| Underlying | Das Options-Symbol (Dropdown-Auswahl) | SPXW (Standard) |
-
1
Modal öffnen
Klicke auf "Neue Strategie" im Dashboard-Header.
-
2
Name eingeben
Gib einen Namen ein, z.B. "Iron Condor Strategy" oder "Put Credit Spread Daily".
-
3
Underlying wählen
Wähle das Underlying aus dem Dropdown. Standard ist SPXW.
-
4
Speichern
Klicke auf "Speichern". Die neue Strategie erscheint als Karte im Dashboard.
Nach dem Erstellen ist die Strategie noch leer. Du musst mindestens eine Leg Group mit mindestens einem Leg und einem Indikator hinzufügen, bevor du einen Backtest starten kannst.
Strategie-Detailansicht
Klicke auf eine Strategie-Karte im Dashboard, um die Detailansicht zu öffnen. Diese ist in zwei Bereiche unterteilt:
Linker Bereich: Dynamische Panels
Hier werden die Legs-Panels und Trigger-Panels angezeigt. Diese erscheinen erst, wenn du eine Leg Group auswählst (Legs) oder einen Indikator hast (Triggers).
Rechter Bereich: Accordions
Der rechte Bereich enthält aufklappbare Accordion-Sektionen:
- Strategy Settings: Globale Einstellungen für die Strategie
- Leg Groups: Verwaltung der Options-Strukturen
- Indicators: Verwaltung der Entry-Indikatoren
- Runs: Übersicht aller Backtest-Runs dieser Strategie
Strategy Settings
Die Strategy Settings definieren globale Parameter für den Backtest. Öffne das "Strategy Settings" Accordion in der Strategie-Detailansicht.
Verfügbare Einstellungen
| Feld | Typ | Beschreibung |
|---|---|---|
| Backtest Start Date | Datum | Das Startdatum für den Backtest. Der Backtest beginnt ab diesem Tag. |
| Backtest End Date | Datum | Das Enddatum für den Backtest. Der Backtest läuft bis zu diesem Tag (inklusive). |
| Trade Fee per Leg ($) | Dezimalzahl | Handelsgebühr pro Leg pro Trade. Wird bei Entry und Exit abgezogen. Beispiel: 1.50 für $1.50 pro Leg. |
| Use Margin | Checkbox | Aktiviert die Margin-Berechnung. Wenn aktiv, wird das Margin Value Feld angezeigt. |
| Margin Value | Dezimalzahl | Der verfügbare Margin-Betrag für die Strategie. Nur sichtbar wenn "Use Margin" aktiviert ist. |
| Record Timeseries | Checkbox | Wenn aktiviert (Standard: an), werden P&L-Zeitreihen für Charts gespeichert. Hinweis: Diese Option ist in der UI nicht gleichzeitig mit Second Drilldown (Minute → Second) verwendbar. |
Klicke nach dem Ändern der Einstellungen auf "Settings Speichern", um die Änderungen zu übernehmen. Die Settings werden sofort in der Datenbank gespeichert.
Name und Symbol ändern
Um den Namen oder das Symbol einer Strategie zu ändern, klicke auf den Edit-Button (Stift-Icon) auf der Strategie-Karte im Dashboard. Ein Modal öffnet sich mit den aktuellen Werten vorausgefüllt.
Strategie kopieren
Die Kopier-Funktion erstellt eine vollständige Kopie einer bestehenden Strategie, inklusive aller Leg Groups, Legs und Indikatoren.
Kopiervorgang
-
1
Copy-Button klicken
Klicke auf das Copy-Icon (zwei überlagerte Rechtecke) auf der Strategie-Karte.
-
2
Bestätigung abwarten
Die Kopie wird serverseitig erstellt. Dies kann einen Moment dauern.
-
3
Neue Strategie prüfen
Die Kopie erscheint im Dashboard mit dem Namen "[Originalname] (Kopie)". Alle Leg Groups, Legs und Indikatoren wurden mitkopiert.
Was wird kopiert?
- Strategie-Einstellungen (Datum, Gebühren, Margin, etc.)
- Alle Leg Groups mit ihren Parametern
- Alle Legs innerhalb der Leg Groups
- Alle Indikatoren (inklusive Indicator Values)
Was wird NICHT kopiert?
- Backtest-Runs und deren Ergebnisse
- Portfolio-Zuordnungen
Nutze die Kopier-Funktion, um schnell Variationen einer Strategie zu testen. Kopiere die Strategie, ändere einen Parameter und vergleiche die Backtest-Ergebnisse.
-
1
Strategie auswählen
Finde die Strategie im Dashboard, die du kopieren möchtest.
-
2
Kopieren-Button klicken
Klicke auf das Kopieren-Icon in der Strategie-Karte.
-
3
Namen anpassen
Gib der Kopie einen neuen, eindeutigen Namen.
Strategie-Einstellungen (Vertiefung)
Die Strategy Settings in der Detail-Ansicht bieten erweiterte Konfigurationsmöglichkeiten. Dieser Abschnitt vertieft die wichtigsten Einstellungen.
Backtest-Zeitraum
Der Zeitraum definiert, für welchen historischen Bereich der Backtest läuft. Die verfügbaren Daten hängen vom gewählten Underlying ab.
Stelle sicher, dass für den gewählten Zeitraum Options-Daten vorhanden sind. Backtests ohne Daten liefern keine Trades.
Trade Fee pro Leg
Die Trade Fee wird für jedes Leg bei Entry UND Exit berechnet. Bei einem Spread mit 2 Legs und $1.50 Fee entstehen also 2 × 2 × $1.50 = $6.00 Kosten pro Trade.
Margin-Modus
Im Margin-Modus wird geprüft, ob genügend Margin für neue Trades verfügbar ist. Dies simuliert ein realistischeres Konto-Verhalten.
Record Timeseries
Wenn aktiviert, werden für jeden Trade die P&L-Werte über die Zeit gespeichert. Dies ermöglicht detaillierte Charts in der Analyse, erhöht aber den Speicherbedarf.
Wichtig: In der UI ist Record Timeseries und Second Drilldown gegenseitig exklusiv. Wenn Record Timeseries aktiv ist, werden alle Second-Drilldown-Toggles deaktiviert. Wenn ein Second-Drilldown aktiviert wird, wird Record Timeseries deaktiviert und gesperrt.
Leg Groups – Grundlagen
Eine Leg Group ist ein Container für zusammengehörige Options-Positionen. Alle Legs einer Leg Group werden gemeinsam eröffnet und haben gemeinsame Exit-Regeln.
Leg Group erstellen
In der Strategie-Detailansicht, öffne das "Leg Groups" Accordion und klicke auf "Leg Group hinzufügen".
Leg Group Parameter
| Parameter | Typ | Beschreibung |
|---|---|---|
| Name | Text | Ein beschreibender Name für die Leg Group (z.B. "Put Credit Spread") |
| Quantity | Integer | Anzahl der Kontrakte. Gilt für alle Legs in der Group. |
| Min DTE | Integer | Minimale Days to Expiration. Option muss mindestens so viele Tage bis zum Verfall haben. |
| Max DTE | Integer | Maximale Days to Expiration. Wenn > 0, wird ein DTE-Bereich verwendet statt exakter Wert. |
Typische Leg Group Strukturen
Put Credit Spread
2 Legs: Short Put (höherer Strike) + Long Put (niedrigerer Strike). Credit-Strategie mit definiertem Risiko.
Call Credit Spread
2 Legs: Short Call (niedrigerer Strike) + Long Call (höherer Strike). Credit-Strategie auf der Call-Seite.
Iron Condor
Normalerweise 2 Leg Groups: Eine für den Put Spread und eine für den Call Spread.
Strangle
2 Legs ohne definiertem Risiko: Short Put + Short Call. Höheres Risiko, höherer Credit.
Legs – Konfiguration
Jedes Leg repräsentiert eine einzelne Options-Position. Legs werden innerhalb einer Leg Group definiert.
Leg erstellen
Klicke auf eine Leg Group in der Liste. Im linken Panel erscheint das Legs-Formular. Klicke auf "+ Leg hinzufügen" um ein neues Leg zu erstellen.
Grund-Parameter
| Parameter | Optionen | Beschreibung |
|---|---|---|
| Execution Type | Sell / Buy | Sell = Short (Credit erhalten), Buy = Long (Debit zahlen) |
| Option Type | Call / Put | Die Art der Option |
Strike-Auswahl (Criterion)
Das Criterion bestimmt, wie der Strike für das Leg ausgewählt wird:
| Criterion | Parameter | Beschreibung |
|---|---|---|
| Delta | Delta-Wert | Wählt die Option mit dem angegebenen Delta (z.B. 0.16 für 16 Delta) |
| Fixed Premium | Credit | Wählt die Option mit der angegebenen Prämie (in Dollar) |
| Premium Range | Min Credit, Max Credit | Wählt eine Option innerhalb des Prämien-Bereichs |
| Strike Offset | Offset-Wert | Strike = Underlying-Preis + Offset (z.B. -50 für 50 Punkte unter Spot) |
| Leg to Leg Strike Offset | Offset-Wert | Strike relativ zu einem anderen Leg (Depend Leg erforderlich) |
| Leg to Leg Strike Offset Closest | Offset-Wert | Wie oben, aber wählt den nächstgelegenen verfügbaren Strike |
| Leg to Leg Strike MaxOffset MaxPrice | Max Offset, Max Preis | Maximaler Offset mit Preis-Limit |
| Percentage (OTM) | Prozent | Strike als Prozentsatz vom Underlying-Preis (OTM) |
Zusätzliche Leg-Optionen
- Highest in Range: Bei Premium Range den höchsten Strike statt den niedrigsten wählen
- Use High (für Exit-Conditions): Aktiviert OHLC-basierte Exit-Prüfung für Stop Loss / Take Profit. Statt nur MidPrice werden (wenn verfügbar) OHLC-Extremwerte genutzt; fehlt OHLC (Count=0), wird auf MidPrice zurückgefallen.
- Enable Second Drilldown (Minute → Second): Erlaubt beim OHLC-Exit-Checker einen Sekunden-Drilldown innerhalb der Exit-Minute (ThetaData v3). Voraussetzung: Use High ist aktiv. Nicht kombinierbar mit Record Timeseries (UI sperrt die Kombination).
Exit-Regeln
Exit-Regeln definieren, wann eine Position geschlossen wird. Sie können auf Leg Group-Ebene oder auf Leg-Ebene definiert werden.
Verfügbare Exit-Typen
| Exit-Typ | Parameter | Beschreibung |
|---|---|---|
| Stop Loss | Faktor (z.B. 2.0) | Schließt bei Verlust = Credit × Faktor. Bei Faktor 2.0 und $1.00 Credit schließt bei $2.00 Verlust. |
| Take Profit | Faktor (z.B. 0.5) | Schließt bei Gewinn = Credit × Faktor. Bei Faktor 0.5 und $1.00 Credit schließt bei $0.50 Gewinn (50% des Max). |
| Early Exit | Uhrzeit (HH:MM:SS) | Schließt die Position zu dieser Uhrzeit, wenn noch offen. |
| ITMP Exit | Uhrzeit (HH:MM:SS) | In-The-Money-Protection: Schließt, wenn die Option ITM ist und die Zeit erreicht wurde. |
Slippage
Slippage ist ein optionaler numerischer Parameter pro Leg/Leg Group. Er wird in der Strategie-Konfiguration gespeichert und in Trades/Runs mitgeführt.
Du kannst mehrere Exit-Regeln gleichzeitig aktivieren (Stop Loss, Take Profit, Early Exit, ITMP). Die Position wird geschlossen, sobald eine der Bedingungen erfüllt ist – innerhalb des aktiven Exit-Modus (siehe unten).
Leg Group vs. Leg Exit-Regeln
TRAIL erzwingt einen eindeutigen Exit-Modus pro Strategie: Exit-Conditions dürfen entweder auf Leg Group-Ebene oder auf Leg-Ebene gesetzt werden – nicht beides gleichzeitig. Die UI prüft das beim Speichern und sperrt/cleart widersprüchliche Exit-Felder.
- Leg Group Exit: Gilt für alle Legs in der Group. Wird basierend auf dem Gesamt-P&L der Group berechnet.
- Leg Exit: Gilt nur für dieses eine Leg. Wird basierend auf dem P&L des einzelnen Legs berechnet.
Leg-Abhängigkeiten
Mit Leg-Abhängigkeiten (Depend Leg) kannst du den Strike eines Legs relativ zu einem anderen Leg definieren. Dies ist essentiell für Spreads und andere Multi-Leg-Strukturen.
Beispiel: Put Credit Spread
Ein klassischer Put Credit Spread besteht aus:
-
1
Short Put (Leg 1)
Execution: Sell, Type: Put, Criterion: Delta 0.16. Kein Depend Leg.
-
2
Long Put (Leg 2)
Execution: Buy, Type: Put, Criterion: "Leg to Leg Strike Offset" mit Offset -50. Depend Leg: Leg 1. Der Strike ist also 50 Punkte unter dem Short Put.
Das unabhängige Leg muss zuerst erstellt werden, bevor du ein abhängiges Leg anlegen kannst. Im Dropdown "Depend Leg" siehst du nur bereits existierende Legs.
Verfügbare Abhängigkeits-Kriterien
| Criterion | Verwendung |
|---|---|
| Leg to Leg Strike Offset | Strike = Depend Leg Strike + Offset. Exakter Offset. |
| Leg to Leg Strike Offset Closest | Wie oben, aber nächster verfügbarer Strike falls exakter nicht existiert. |
| Leg to Leg Strike MaxOffset MaxPrice | Maximaler Offset mit Preis-Obergrenze. Gut für Spread-Breite mit Budget. |
Indikatoren – Übersicht
Indikatoren bestimmen, wann ein Trade eröffnet wird. Ohne aktiven Indikator werden keine Trades geöffnet. Jeder Indikator kann einen oder mehrere Trigger haben, die die genauen Bedingungen definieren.
Indikator erstellen
In der Strategie-Detailansicht, öffne das "Indicators" Accordion und klicke auf "Indicator hinzufügen".
Indikator-Typen
| Typ | Beschreibung | Verwendung |
|---|---|---|
| BBT_ValueLessIndicator | Einfacher Indikator ohne eigene Werte. Feuert basierend auf Zeit-Triggern. | Standard für zeitbasierte Entries (z.B. "Jeden Tag um 10:00") |
| BBT_Indicator | Indikator mit manuell eingegebenen Werten (Indicator Values). | Für benutzerdefinierte Signal-Daten |
| BBT_DataIndicator | Indikator basierend auf Marktdaten (EMA, SMA, Fluctuation). | Für technische Indikatoren |
| BBT_AbstandIndicator | Misst den Preis-Abstand zwischen zwei Legs. | Für Spread-Breite-basierte Entries |
| BBT_DslIndicator | Indikator mit DSL (Domain Specific Language) Definition. | Für komplexe, programmierte Logik |
Indikator-Parameter
| Parameter | Beschreibung |
|---|---|
| Name | Ein beschreibender Name für den Indikator |
| Type | Der Indikator-Typ (siehe oben) |
| Accuracy (ms) | Die Genauigkeit in Millisekunden. 60000 = 1 Minute. Bestimmt, wie genau der Indikator getimed wird. |
Datenquellen (BBT_DataIndicator)
Der BBT_DataIndicator verwendet externe Datenquellen für technische Indikatoren.
Verfügbare Datenquellen
| Datenquelle | Beschreibung | Felder |
|---|---|---|
| SPX_MINUTE | SPX Preis in Minuten-Auflösung | price |
| SPX_SECOND | SPX Preis in Sekunden-Auflösung | price |
| SPX_EMA | Exponential Moving Average | EMA5, EMA20, EMA40 |
| SPX_SMA | Simple Moving Average | SMA5, SMA20, SMA40 |
| SPX_FLUCTUATION | Volatilität/Schwankung | FLUC5, FLUC20, FLUC40 |
| SPX_FLUCTUATION_DAILY | Tägliche Schwankung | FLUC Daily |
Indicator Values
Für den BBT_Indicator können manuelle Werte eingegeben werden. Diese Values definieren, zu welchen Zeitpunkten der Indikator welchen Wert hat.
Um Values zu verwalten, klicke auf einen existierenden Indicator in der Liste. Im "Indicator Values" Panel kannst du:
- Neue Values mit Timestamp und Wert hinzufügen
- Existierende Values bearbeiten oder löschen
- Values per KI generieren lassen
Trigger
Trigger definieren die genauen Bedingungen, unter denen ein Indikator "feuert" und ein Trade eröffnet wird. Jeder Indikator kann mehrere Trigger haben.
Trigger erstellen
Klicke auf einen Indikator in der Liste. Im linken Bereich erscheint das Triggers-Panel. Klicke auf "Trigger hinzufügen".
Trigger-Parameter
| Parameter | Beschreibung |
|---|---|
| Name | Ein beschreibender Name für den Trigger |
| Fire Type | 1 = Once (einmal feuern), 0 = Multiple (mehrfach feuern) |
| Trigger Type | Der Typ des Triggers (siehe unten) |
| Dependent Indicator | Optional: Verknüpfung mit einem anderen Indikator |
Trigger-Typen
Der häufigste Trigger-Typ ist BBT_UniversalTrigger, der verschiedene Modi unterstützt:
- Fixed Zeit: Feuert zu einer bestimmten Uhrzeit (z.B. 10:00:00)
- Zeitbereich: Feuert innerhalb eines Zeitfensters (z.B. 09:30 - 10:30)
- Wertbasiert: Feuert bei einem bestimmten Indikator-Wert
Für 0DTE-Trades: BBT_ValueLessIndicator mit einem BBT_UniversalTrigger im Fixed-Zeit-Modus auf z.B. 10:00:00. Dies eröffnet jeden Tag um 10:00 Uhr einen Trade.
KI-generierte Indikatoren
Mit dem integrierten KI-Chat kannst du Indikatoren automatisch generieren lassen. Die KI versteht natürliche Sprache und kann komplexe Logik in Indikatoren umsetzen.
Verwendung
-
1
KI-Chat öffnen
Klicke auf den Chat-Button in der unteren rechten Ecke.
-
2
Anforderung beschreiben
Beschreibe in natürlicher Sprache, wann Trades eröffnet werden sollen. Zum Beispiel: "Erstelle einen Indikator, der jeden Montag und Mittwoch um 10:00 Uhr feuert."
-
3
Ergebnis prüfen
Die KI erstellt den Indikator und zeigt dir die Konfiguration. Du kannst sie anpassen falls nötig.
KI-Capabilities für Indikatoren
- Indikatoren erstellen und bearbeiten
- Trigger hinzufügen und konfigurieren
- Indicator Values generieren (z.B. basierend auf historischen Daten)
- DSL-basierte Indikatoren für komplexe Logik erstellen
Backtest starten
Um die Performance deiner Strategie zu testen, startest du einen Backtest-Run. TRAIL verwendet eine Job-Queue, die Backtests nacheinander oder parallel verarbeitet.
Backtest starten
-
1
Play-Button klicken
Klicke auf den Play-Button (►) auf der Strategie-Karte im Dashboard.
-
2
Bestätigung
Ein Dialog fragt: "Möchtest du den Backtest für diese Strategie starten?" Bestätige mit OK.
-
3
Queue-Status
Der Job wird in die Queue eingereiht. Du siehst die Position und geschätzte Wartezeit.
-
4
Run läuft
Sobald der Run startet, siehst du den Fortschritt in Prozent auf der Karte.
Run-Status
| Status | Beschreibung |
|---|---|
| queued | Der Run wartet in der Queue. Position und ETA werden angezeigt. |
| running | Der Run wird gerade ausgeführt. Fortschritt in % wird angezeigt. |
| done | Der Run ist abgeschlossen. Ergebnisse sind verfügbar. |
| canceled | Der Run wurde abgebrochen. |
| error | Ein Fehler ist aufgetreten. |
Backtest abbrechen
Klicke auf den Stop-Button (■) auf der Strategie-Karte, um einen laufenden oder wartenden Run abzubrechen. Der Button ist nur aktiv, wenn ein Run läuft oder in der Queue ist.
Das System unterstützt parallele Run-Verarbeitung. Die maximale Anzahl paralleler Runs kann vom Administrator konfiguriert werden.
Backtest-Ergebnisse
Nach Abschluss eines Runs kannst du detaillierte Statistiken und Charts einsehen.
Run-Analyse öffnen
In der Strategie-Detailansicht, öffne das "Runs" Accordion. Klicke auf einen abgeschlossenen Run, um die Analyse-Seite zu öffnen.
Verfügbare Statistiken
| Metrik | Beschreibung |
|---|---|
| Total Trades | Gesamtanzahl der ausgeführten Trades |
| Winners / Losers | Anzahl der Gewinner- und Verlierer-Trades |
| Win Rate | Prozentsatz der Gewinner-Trades |
| Total P&L | Gesamter Gewinn/Verlust in Dollar |
| Average P&L | Durchschnittlicher P&L pro Trade |
| Max Profit | Der beste einzelne Trade |
| Max Loss | Der schlechteste einzelne Trade |
| Profit Factor | Verhältnis Gesamtgewinne / Gesamtverluste |
| Max Drawdown | Maximaler Rückgang vom Höchststand |
Charts
Folgende Charts sind verfügbar (wenn "Record Timeseries" aktiviert war):
- Equity Curve: Kumulativer P&L über die Zeit
- Drawdown Chart: Drawdown über die Zeit
- Trade Distribution: Verteilung der Trade-Ergebnisse
- P&L by Weekday: Performance nach Wochentag
Filter & Zeiträume
Die Analyse-Ansicht bietet umfangreiche Filtermöglichkeiten, um die Performance unter verschiedenen Bedingungen zu analysieren.
Verfügbare Filter
| Filter | Beschreibung |
|---|---|
| Datumsbereich | Filtere auf einen bestimmten Zeitraum (z.B. nur 2023) |
| Wochentag | Zeige nur Trades an bestimmten Wochentagen (z.B. nur Montag und Freitag) |
| Uhrzeit | Filtere nach Entry-Zeit (z.B. nur Trades zwischen 10:00 und 12:00) |
| Exit-Typ | Filtere nach Exit-Grund (Stop Loss, Take Profit, Expiry, etc.) |
Nutze Filter, um zu prüfen, ob deine Strategie an bestimmten Tagen besser performt. Vielleicht ist die Win Rate am Montag höher als am Freitag?
Trade-Liste
Die Analyse-Ansicht zeigt eine detaillierte Liste aller Trades mit allen relevanten Informationen.
Trade-Details
Für jeden Trade werden folgende Informationen angezeigt:
- Entry/Exit Zeit: Wann der Trade geöffnet und geschlossen wurde
- Strike(s): Die gehandelten Strikes
- Entry/Exit Preis: Die Preise bei Entry und Exit
- P&L: Gewinn/Verlust des Trades
- Exit Reason: Warum der Trade geschlossen wurde (SL, TP, Expiry, etc.)
- DTE: Days to Expiration bei Entry
Trade-Chart
Klicke auf einen Trade in der Liste, um ein detailliertes P&L-Chart für diesen Trade zu sehen. Das Chart zeigt den Preisverlauf während der Haltedauer.
Portfolios
Portfolios ermöglichen es dir, mehrere Backtest-Runs zu kombinieren und aggregierte Statistiken zu sehen. Dies ist nützlich, um die Performance einer Kombination von Strategien zu analysieren.
Portfolio erstellen
-
1
Modal öffnen
Im Portfolios-Bereich des Dashboards, klicke auf "Neues Portfolio".
-
2
Name und Beschreibung
Gib einen Namen und optional eine Beschreibung ein.
-
3
Runs hinzufügen
Klicke auf "Add Runs" und wähle die Backtest-Runs, die du kombinieren möchtest.
-
4
Speichern
Klicke auf "Speichern". Das Portfolio erscheint als Karte im Portfolio-Bereich.
Portfolio-Analyse
Klicke auf eine Portfolio-Karte, um die aggregierte Analyse zu öffnen. Die Statistiken werden über alle enthaltenen Runs berechnet:
- Kombinierte Equity Curve
- Aggregierter Total P&L
- Kombinierter Max Drawdown
- Trade-Liste aller enthaltenen Runs
KI-Chat
Der integrierte KI-Chat ermöglicht es dir, mit einem KI-Assistenten zu interagieren, der alle Funktionen von TRAIL nutzen kann.
Chat öffnen
Klicke auf den Chat-Button in der unteren rechten Ecke des Dashboards. Ein Chat-Dialog öffnet sich.
Verfügbare Aktionen
Der KI-Assistent kann folgende Aktionen durchführen:
Strategien
- Strategien erstellen, bearbeiten und löschen
- Strategien nach Name oder ID suchen
- Backtests starten
Leg Groups & Legs
- Leg Groups erstellen und konfigurieren
- Legs mit verschiedenen Kriterien anlegen
- Exit-Regeln definieren
Indikatoren
- Indikatoren erstellen und konfigurieren
- Trigger hinzufügen
- Indicator Values generieren (auch per MCP)
Beispiel-Prompts
| Prompt | Ergebnis |
|---|---|
| "Erstelle eine Put Credit Spread Strategie mit 16 Delta und 50 Punkte Spread-Breite" | Erstellt Strategie mit LegGroup und 2 Legs |
| "Füge einen Indikator hinzu, der jeden Tag um 10:00 Uhr feuert" | Erstellt ValueLess Indikator mit Universal Trigger |
| "Starte einen Backtest für die Strategie 'Iron Condor'" | Findet Strategie und startet Backtest |
| "Zeige mir alle meine Strategien" | Listet alle Strategien auf |
Du kannst den Chat auch öffnen, wenn du auf einer Strategie-Karte bist. In diesem Fall wird die KI im Kontext dieser Strategie arbeiten.
API – Übersicht
TRAIL bietet eine REST-API für programmgesteuerten Zugriff auf alle Funktionen. Die API verwendet JSON für Requests und Responses.
Basis-URL
/api/
Request-Format
Alle POST/PUT-Requests senden JSON im Body mit Content-Type: application/json.
GET-Requests verwenden Query-Parameter.
Authentifizierung
Die API verwendet PHP-Session-basierte Authentifizierung.
Du musst dich zunächst über /api/auth/login einloggen.
Login-Endpoint
{
"username": "dein_username",
"password": "dein_passwort"
}
Session prüfen
// Response bei eingeloggtem User:
{
"isLoggedIn": true,
"username": "dein_username"
}
Wichtige Endpoints
Übersicht der wichtigsten API-Endpoints:
Strategien
| Methode | Endpoint | Beschreibung |
|---|---|---|
| GET | /api/strategies |
Alle Strategien auflisten |
| POST | /api/strategies |
Neue Strategie erstellen |
| GET | /api/strategies/{id} |
Strategie-Details abrufen |
| PUT | /api/strategies/{id} |
Strategie aktualisieren |
| DELETE | /api/strategies/{id} |
Strategie löschen |
| POST | /api/strategies/{id}/run |
Backtest starten |
Leg Groups
| Methode | Endpoint | Beschreibung |
|---|---|---|
| GET | /api/strategies/{id}/leg-groups |
Leg Groups einer Strategie |
| POST | /api/strategies/{id}/leg-groups |
Neue Leg Group erstellen |
Legs
| Methode | Endpoint | Beschreibung |
|---|---|---|
| GET | /api/leg-groups/{id}/legs |
Legs einer Leg Group |
| POST | /api/leg-groups/{id}/legs |
Neues Leg erstellen |
Indikatoren
| Methode | Endpoint | Beschreibung |
|---|---|---|
| GET | /api/strategies/{id}/indicators |
Indikatoren einer Strategie |
| POST | /api/strategies/{id}/indicators |
Neuen Indikator erstellen |
Technische Hinweise
Wichtige technische Informationen zur API:
Response-Format
Erfolgreiche Responses haben oft die Form {"ok": true, ...}.
Fehler haben die Form {"error": "Fehlermeldung"}.
Listen-Responses
Listen werden oft als {"items": [...]} zurückgegeben.
Credentials
Bei Fetch-Calls muss credentials: 'include' gesetzt werden,
um die Session-Cookies mitzusenden.
const response = await fetch('/api/strategies', {
method: 'GET',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data.items); // Array von Strategien