MyLinedChart
ProPobierz
Strona głównaCennikPobierzArtykuły

Jak wyeksportować dane wykresu NinjaTrader, OHLCV i wartości wskaźników do CSV

Opublikowano 2026-06-26 · Zaktualizowano 2026-10-18 · Czytaj po angielsku

NinjaTrader eksportuje dane świecowe OHLCV natywnie przez Data Manager: klikasz instrument prawym przyciskiem, wybierasz eksport i dostajesz CSV rozdzielany średnikami z datą, godziną, otwarciem, maksimum, minimum, zamknięciem i wolumenem. Wartości wskaźników nie są w tym eksporcie. Aby je wydobyć, trzeba napisać wskaźnik NinjaScript, który zapisuje wartości do pliku. Oto jak działają obie drogi.

Najważniejsze punkty
  • Data Manager w NinjaTrader eksportuje dane świecowe OHLCV do CSV rozdzielanego średnikami; format to data i godzina, potem otwarcie, maksimum, minimum, zamknięcie, wolumen.
  • Wartości wskaźników nie są częścią standardowego eksportu OHLCV i wymagają wskaźnika eksportującego w NinjaScript, który zapisuje wartości do pliku.
  • Połączone wyjście OHLCV plus wskaźniki oznacza uruchomienie eksportu NinjaScript obok eksportu danych świecowych i scalenie wyników.

Jak wyeksportować dane świecowe OHLCV z NinjaTrader

NinjaTrader 8 przechowuje historyczne dane świecowe we własnej lokalnej bazie danych. Aby je wyeksportować: otwórz Control Center, przejdź do Tools > Historical Data (w niektórych wersjach Data Manager), kliknij prawym przyciskiem wybrany instrument i wybierz Export. Wybierz zakres dat i interwał, a następnie potwierdź. NinjaTrader zapisze plik CSV w wybranym folderze docelowym.

Wyeksportowany plik CSV domyślnie używa średników jako separatorów zamiast przecinków. Kolejność kolumn to: Date;Time;Open;High;Low;Close;Volume dla interwałów śróddziennych albo Date;Open;High;Low;Close;Volume dla świec dziennych. Format daty to YYYYMMDD, a format czasu to HHMMSS.

Eksport OHLCV obejmuje wszystkie dane historyczne, które NinjaTrader pobrał dla danego instrumentu i interwału. Jeśli potrzebujesz dodatkowej historii, pobierz ją najpierw narzędziami do pobierania danych historycznych platformy, zanim wyeksportujesz.

Czego standardowy eksport OHLCV z NinjaTrader nie zawiera

Eksport OHLCV z Data Manager zawiera wyłącznie dane świecowe. Nie obejmuje: wartości wskaźników obliczonych z tych świec, obiektów rysunkowych ani danych adnotacji, historii transakcji ani notatek na poziomie sesji.

Plik to surowy eksport danych cenowych. Warstwa obliczeń wskaźników żyje w całości w środowisku wykonawczym NinjaTrader i nie jest serializowana do pliku danych świecowych. Jeśli Twój przepływ analizy zależy od konkretnych odczytów wskaźników obok ceny, eksport samego OHLCV nie przeniesie tego kontekstu.

O ustrukturyzowanym eksporcie rysunków i adnotacji obok OHLCV przeczytasz w /resources/articles/ninjatrader-drawing-export.

Eksport Data Manager w NinjaTrader zawiera tylko cenę i wolumen. Wartości wskaźników wymagają osobnego podejścia z eksportem w NinjaScript.
Typ danychZawarte w eksporcie Data Manager
Otwarcie, maksimum, minimum, zamknięcie (na świecę)Tak
Wolumen (na świecę)Tak
Znaczniki daty i czasuTak
Wartości wskaźników (EMA, RSI, VWAP itd.)Nie
Obiekty rysunkowe i adnotacjeNie
Historia transakcji i realizacjeNie
Notatki na poziomie sesjiNie

Listy instrumentów i miesiące kontraktów w NinjaTrader: kwartalne czy miesięczne

Listy instrumentów znajdziesz w NinjaTrader Control Center w menu Tools, a potem Instrument Lists. Lista grupuje instrumenty, więc możesz uruchomić Strategy Analyzer lub Market Analyzer na wszystkich naraz albo szybko wczytać je do innych okien.

Kontrakty terminowe w NinjaTrader mają datę wygaśnięcia w nazwie, np. ES 12-26. To, jak często pojawia się nowy miesiąc kontraktu, ustala giełda: kontrakty na indeksy akcji CME, takie jak ES i NQ, są notowane kwartalnie (marzec, czerwiec, wrzesień i grudzień), a ropa naftowa (CL) ma nowy kontrakt co miesiąc. Żaden z popularnych kontraktów na indeksy nie jest notowany raz w roku.

Gdy kontrakt dochodzi do daty rolowania, Tools, a potem Database Management, przesuwa instrumenty na kolejny kontrakt. Według przewodnika pomocy NinjaTrader rolowanie aktualizuje datę wygaśnięcia na wszystkich listach instrumentów i w oknach otwartych obszarów roboczych, a zmianę zachowasz, zapisując obszary robocze. Strategie NinjaScript nie rolują się same.

Przy eksporcie sprawdź Merge Policy w Tools, Options, Market data. MergeBackAdjusted łączy kolejne kontrakty w jedną ciągłą historię z korektami w datach rolowania; Do Not Merge zostawia jeden miesiąc kontraktu. Wpisz miesiąc kontraktu i ustawienie łączenia w nazwę pliku, by później dopasować świece.

  • Kontrakty na indeksy akcji (ES, NQ): kwartalnie, marzec, czerwiec, wrzesień, grudzień.
  • Ropa naftowa (CL): nowy kontrakt co miesiąc.
  • Rolowanie w Database Management aktualizuje każdą listę instrumentów; zapisz ponownie obszary robocze.
  • Merge Policy decyduje, czy wyeksportowana historia obejmuje jeden kontrakt, czy kilka.

Jak wyeksportować wartości wskaźników z NinjaTrader

Aby wartości wskaźników trafiły do pliku CSV, piszesz wskaźnik NinjaScript, który oblicza potrzebną wartość i zapisuje ją do pliku przy każdej aktualizacji świecy. Środowisko NinjaScript w NinjaTrader ma dostęp do System.IO do zapisu plików.

Podstawowy wzorzec jest taki: w OnStateChange dla State.DataLoaded otwórz StreamWriter do docelowej ścieżki pliku. W OnBarUpdate, jeśli BarsInProgress == 0 i IsFirstTickOfBar, zapisz do StreamWriter datę, czas i wartości wskaźników bieżącej świecy. W OnStateChange dla State.Terminated zamknij StreamWriter.

Podejście ze StreamWriter daje zapis na świecę dla dowolnego wskaźnika dostępnego w bibliotece NinjaTrader lub własnego wskaźnika, który napisałeś. Wynikiem jest rozdzielany plik tekstowy, który otworzysz w arkuszu kalkulacyjnym lub zaimportujesz do dowolnego narzędzia analitycznego. Alternatywę dla eksportu zależnego od platformy opisuje /resources/articles/thinkorswim-to-csv-xlsx-annotations.

Łączenie OHLCV i wartości wskaźników w jednym pliku

Są dwa podejścia do łączenia świec OHLCV z wartościami wskaźników. Pierwsze to napisanie jednego wskaźnika eksportującego w NinjaScript, który wypisuje pola OHLCV i wartości wskaźników w każdym wierszu, co utrzymuje wszystko dopasowane do tego samego znacznika czasu świecy.

Drugie podejście to wyeksportowanie OHLCV z Data Manager i osobne wyeksportowanie wartości wskaźników przez NinjaScript, a następnie scalenie obu plików w arkuszu lub skrypcie z użyciem wspólnego znacznika czasu jako klucza łączenia. Format znacznika czasu musi być spójny w obu plikach, aby scalenie działało poprawnie.

Podejście z jednym plikiem NinjaScript jest czystsze do analizy, ale wymaga umiejętności NinjaScript. Podejście ze scalaniem działa bez własnego kodu, jeśli formaty znaczników czasu się zgadzają.

Gdzie eksport NinjaTrader zawodzi i kiedy go uzupełnić

Przepływ eksportu NinjaTrader, czy z Data Manager, czy przez NinjaScript, jest niezawodny dla wydobywania danych świeca po świecy, ale wymaga programowania w NinjaScript dla czegokolwiek poza surowym OHLCV. Osoby niebędące programistami napotykają realną barierę przy eksporcie wartości wskaźników.

Drugie ograniczenie to przenośność adnotacji: rysunki na wykresie, tekst notatek i poziomy wsparcia i oporu narysowane w NinjaTrader nie trafiają ani do eksportu OHLCV, ani do eksportu wskaźników. Dla przepływów, które muszą przenieść kontekst wykresu obok danych świecowych, potrzebna jest uzupełniająca warstwa eksportu adnotacji.

O tej warstwie adnotacji niezależnej od platformy przeczytasz w /resources/articles/chart-annotation-export-for-trading-journal-xlsx-csv oraz w /resources/articles/export-tradingview-indicator-values-csv, gdzie jest porównanie podejść do eksportu wskaźników między platformami.

Najczęstsze pytania

Czy NinjaTrader potrafi natywnie wyeksportować wartości wskaźników do CSV?
Nie. Eksport OHLCV z Data Manager zawiera tylko dane cenowe i wolumen świec. Aby wyeksportować wartości wskaźników, musisz napisać wskaźnik NinjaScript, który używa System.IO.StreamWriter do zapisywania wartości do pliku przy każdej aktualizacji świecy.
Jakie dane OHLCV można wyeksportować z wykresu NinjaTrader?
Za pomocą Data Manager możesz wyeksportować datę, czas, otwarcie, maksimum, minimum, zamknięcie i wolumen dla dowolnego instrumentu i interwału, który NinjaTrader pobrał. Wynikiem jest CSV rozdzielany średnikami. Eksporty śróddzienne zawierają kolumnę czasu; dzienne nie.
Jaki jest najlepszy sposób na pobranie danych wykresu NinjaTrader do zewnętrznej analizy?
Dla danych świecowych OHLCV: użyj eksportu z Data Manager. Dla wartości wskaźników: napisz wskaźnik eksportujący w NinjaScript, który zapisuje odczyty wskaźników na świecę do pliku obok pól OHLCV. Jeśli używasz dwóch osobnych eksportów, scal wyniki po znaczniku czasu.
Jaki jest format separatora w eksporcie CSV z NinjaTrader?
NinjaTrader w domyślnym eksporcie CSV używa średników zamiast przecinków. Przy imporcie do Excela lub innych narzędzi wybierz "średnik" jako separator zamiast przecinka.
Czy kontrakty terminowe w NinjaTrader są kwartalne czy miesięczne?
To zależy od notowań na giełdzie. ES i NQ mają kontrakty kwartalne w marcu, czerwcu, wrześniu i grudniu; CL ma kontrakt co miesiąc. NinjaTrader nazywa każdy kontrakt według daty wygaśnięcia, np. ES 12-26, a Tools, potem Database Management, roluje listy instrumentów na kolejny miesiąc.

Wypróbuj MyLinedChart

MyLinedChart przechowuje Twoje rysunki, notatki i wartości wskaźników jako dane, które możesz eksportować, przeglądać i wykorzystywać ponownie.

Poznaj MyLinedChart

Więcej artykułów