So exportieren Sie NinjaTrader-Chartdaten, OHLCV und Indikatorwerte als CSV
NinjaTrader exportiert OHLCV-Balkendaten nativ über den Data Manager: Instrument rechtsklicken, exportieren, und Sie erhalten eine CSV mit Semikolon als Trennzeichen mit Datum, Uhrzeit, Open, High, Low, Close und Volume. Indikatorwerte sind in diesem Export nicht enthalten. Um sie herauszuholen, schreiben Sie einen NinjaScript-Indikator, der die Werte in eine Datei ausgibt. So funktionieren beide Wege.
- Der NinjaTrader Data Manager exportiert OHLCV-Balkendaten in eine CSV mit Semikolon als Trennzeichen; das Format ist Datum und Uhrzeit, dann Open, High, Low, Close, Volume.
- Indikatorwerte sind im Standard-OHLCV-Export nicht enthalten und brauchen einen NinjaScript-Export-Indikator, der die Werte in eine Datei schreibt.
- Eine kombinierte Ausgabe aus OHLCV und Indikatoren bedeutet, den NinjaScript-Export neben dem Export der Balkendaten laufen zu lassen und die Ausgaben zusammenzuführen.
So exportieren Sie OHLCV-Balkendaten aus NinjaTrader
NinjaTrader 8 speichert historische Balkendaten in einer eigenen lokalen Datenbank. Zum Export öffnen Sie das Control Center, gehen zu Tools > Historical Data (in manchen Versionen Data Manager), klicken mit rechts auf das gewünschte Instrument und wählen Export. Wählen Sie Zeitraum und Zeiteinheit und bestätigen Sie. NinjaTrader schreibt eine CSV in den gewählten Ausgabeordner.
Die exportierte CSV nutzt standardmäßig Semikolons statt Kommas als Trennzeichen. Die Spaltenreihenfolge lautet: Date;Time;Open;High;Low;Close;Volume für Intraday-Zeiteinheiten oder Date;Open;High;Low;Close;Volume für Tagesbalken. Das Datumsformat ist YYYYMMDD und das Zeitformat HHMMSS.
Der OHLCV-Export umfasst die historischen Daten, die NinjaTrader für dieses Instrument und diese Zeiteinheit heruntergeladen hat. Brauchen Sie mehr Historie, laden Sie sie zuerst über die Download-Werkzeuge der Plattform für historische Daten herunter, bevor Sie exportieren.
Was der Standard-OHLCV-Export von NinjaTrader nicht enthält
Der OHLCV-Export des Data Managers enthält nur Balkendaten. Nicht enthalten sind: aus diesen Balken berechnete Indikatorwerte, Zeichenobjekte oder Anmerkungsdaten, Handelshistorie und Notizen auf Session-Ebene.
Die Datei ist ein reiner Export von Kursdaten. Die Ebene der Indikatorberechnung liegt vollständig in der Ausführungsumgebung von NinjaTrader und wird nicht in die Datei der Balkendaten serialisiert. Hängt Ihr Analyse-Workflow von bestimmten Indikatorwerten neben dem Kurs ab, trägt der reine OHLCV-Export diesen Kontext nicht.
Zum strukturierten Export von Zeichnungs- und Anmerkungsdaten neben OHLCV lesen Sie /resources/articles/ninjatrader-drawing-export.
| Datentyp | Im Export des Data Managers enthalten |
|---|---|
| Open, High, Low, Close (pro Balken) | Ja |
| Volume (pro Balken) | Ja |
| Zeitstempel für Datum und Uhrzeit | Ja |
| Indikatorwerte (EMA, RSI, VWAP usw.) | Nein |
| Zeichenobjekte und Anmerkungen | Nein |
| Handelshistorie und Ausführungen | Nein |
| Notizen auf Session-Ebene | Nein |
NinjaTrader-Instrumentenlisten und Kontraktmonate: quartalsweise oder monatlich
Instrumentenlisten finden Sie im NinjaTrader Control Center unter Tools, dann Instrument Lists. Eine Liste fasst Instrumente zusammen, sodass Sie den Strategy Analyzer oder einen Market Analyzer über alle auf einmal laufen lassen oder sie schnell in andere Fenster laden können.
Futures tragen in NinjaTrader ihren Verfall im Namen, etwa ES 12-26. Wie oft ein neuer Kontraktmonat erscheint, legt die Börse fest: CME-Aktienindex-Futures wie ES und NQ listen Quartalskontrakte (März, Juni, September und Dezember), Rohöl (CL) dagegen jeden Monat einen Kontrakt. Keiner der gängigen Index-Futures wird nur einmal im Jahr gelistet.
Erreicht ein Kontrakt sein Rollover-Datum, rollt Tools, dann Database Management, die Instrumente weiter. Laut Hilfe von NinjaTrader aktualisiert ein Rollover den Verfall in allen Instrumentenlisten und Fenstern offener Workspaces, und Sie speichern die Workspaces, um die Änderung zu behalten. NinjaScript-Strategien rollen nicht von selbst weiter.
Prüfen Sie für Exporte die Merge Policy unter Tools, Options, Market data. MergeBackAdjusted verbindet jeden Verfall zu einer durchgehenden Historie mit Ausgleich an den Rollover-Daten; Do Not Merge behält einen Kontraktmonat. Schreiben Sie Kontraktmonat und Merge-Einstellung in den Dateinamen, damit sich die Kerzen später zuordnen lassen.
- Aktienindex-Futures (ES, NQ): quartalsweise, März, Juni, September, Dezember.
- Rohöl (CL): jeden Monat ein neuer Kontrakt.
- Ein Rollover in Database Management aktualisiert jede Instrumentenliste; Workspaces neu speichern.
- Die Merge Policy entscheidet, ob die exportierte Historie einen oder mehrere Kontrakte umfasst.
So exportieren Sie Indikatorwerte aus NinjaTrader
Um Indikatorwerte in eine CSV-Datei zu bekommen, schreiben Sie einen NinjaScript-Indikator, der den gewünschten Wert berechnet und bei jedem Balken-Update in eine Datei schreibt. Die NinjaScript-Umgebung von NinjaTrader hat Zugriff auf System.IO zum Schreiben von Dateien.
Das Grundmuster: Öffnen Sie in OnStateChange bei State.DataLoaded einen StreamWriter auf Ihren Zieldateipfad. Schreiben Sie in OnBarUpdate, wenn BarsInProgress == 0 und IsFirstTickOfBar gilt, Date, Time und Indikatorwerte des aktuellen Balkens in den StreamWriter. Schließen Sie den StreamWriter in OnStateChange bei State.Terminated.
Der StreamWriter-Ansatz liefert Ihnen einen Datensatz pro Balken für jeden Indikator aus der Bibliothek von NinjaTrader oder jeden selbst geschriebenen Indikator. Die Ausgabe ist eine Textdatei mit Trennzeichen, die Sie in Excel öffnen oder in jedes Analyse-Tool importieren können. Eine plattformunabhängige Alternative zum Export finden Sie unter /resources/articles/thinkorswim-to-csv-xlsx-annotations.
OHLCV und Indikatorwerte in einer Datei kombinieren
Es gibt zwei Ansätze, OHLCV-Balken mit Indikatorwerten zu kombinieren. Der erste ist ein einziger NinjaScript-Export-Indikator, der in jeder Zeile OHLCV-Felder und Indikatorwerte ausgibt; so bleibt alles am selben Balken-Zeitstempel ausgerichtet.
Der zweite Ansatz exportiert OHLCV aus dem Data Manager und die Indikatorwerte separat über NinjaScript, und führt die beiden Dateien dann in einer Tabelle oder einem Skript über den gemeinsamen Zeitstempel als Join-Schlüssel zusammen. Das Zeitstempelformat muss in beiden Dateien einheitlich sein, damit das Zusammenführen korrekt klappt.
Der Ansatz mit einer einzigen NinjaScript-Datei ist für die Analyse sauberer, verlangt aber NinjaScript-Kenntnisse. Der Ansatz mit Zusammenführen funktioniert ohne eigenen Code, wenn die Zeitstempelformate übereinstimmen.
Wo der NinjaTrader-Export Grenzen hat und wann Sie ergänzen sollten
Der Exportablauf von NinjaTrader, ob aus dem Data Manager oder über NinjaScript, ist für das Auslesen Balken für Balken verlässlich, verlangt aber NinjaScript-Entwicklung für alles jenseits von reinem OHLCV. Wer nicht programmiert, steht vor einer spürbaren Hürde beim Export von Indikatorwerten.
Die zweite Grenze ist die Übertragbarkeit von Anmerkungen: Chartzeichnungen, Notiztexte und in NinjaTrader gezeichnete Unterstützungen und Widerstände stehen weder im OHLCV- noch im Indikator-Export. Für Workflows, die Chart-Kontext neben den Balkendaten mitführen müssen, ist eine ergänzende Ebene für den Export von Anmerkungen nötig.
Zu dieser plattformunabhängigen Anmerkungsebene lesen Sie /resources/articles/chart-annotation-export-for-trading-journal-xlsx-csv und /resources/articles/export-tradingview-indicator-values-csv für einen plattformübergreifenden Vergleich der Exportansätze für Indikatoren.
Häufig gestellte Fragen
- Kann NinjaTrader Indikatorwerte nativ als CSV exportieren?
- Nein. Der OHLCV-Export des Data Managers enthält nur Kurs- und Volumendaten der Balken. Um Indikatorwerte zu exportieren, müssen Sie einen NinjaScript-Indikator schreiben, der mit System.IO.StreamWriter die Werte bei jedem Balken-Update in eine Datei schreibt.
- Welche OHLCV-Daten lassen sich aus einem NinjaTrader-Chart exportieren?
- Über den Data Manager können Sie Datum, Uhrzeit, Open, High, Low, Close und Volume für jedes Instrument und jede Zeiteinheit exportieren, die NinjaTrader heruntergeladen hat. Die Ausgabe ist eine CSV mit Semikolon als Trennzeichen. Intraday-Exporte enthalten eine Zeitspalte, Tagesexporte nicht.
- Was ist der beste Weg, NinjaTrader-Chartdaten für externe Analyse zu bekommen?
- Für OHLCV-Balkendaten nutzen Sie den Export des Data Managers. Für Indikatorwerte schreiben Sie einen NinjaScript-Export-Indikator, der die Indikatorwerte pro Balken neben den OHLCV-Feldern in eine Datei schreibt. Bei zwei getrennten Exporten führen Sie die Ausgaben über den Zeitstempel zusammen.
- Welches Trennzeichen nutzt der CSV-Export von NinjaTrader?
- NinjaTrader nutzt im Standard-CSV-Export Semikolons statt Kommas als Trennzeichen. Beim Import in Excel oder andere Tools wählen Sie „Semikolon“ als Trennzeichen statt Komma.
- Sind NinjaTrader-Futures-Kontrakte quartalsweise oder monatlich?
- Das hängt vom Listing der Börse ab. ES und NQ listen Quartalskontrakte im März, Juni, September und Dezember; CL wird jeden Monat gelistet. NinjaTrader benennt jeden Kontrakt nach Verfall, etwa ES 12-26, und Tools, dann Database Management, rollt Instrumentenlisten in den nächsten Monat.
MyLinedChart ausprobieren
MyLinedChart speichert Ihre Zeichnungen, Notizen und Indikatorwerte als Daten, die Sie exportieren, prüfen und wiederverwenden können.
MyLinedChart entdecken