NinjaTrader Grafik Verilerini, OHLCV ve Gösterge Değerlerini CSV'ye Aktarma
NinjaTrader, OHLCV bar verilerini Data Manager üzerinden yerleşik olarak dışa aktarır: bir enstrümana sağ tıklayın, dışa aktarın ve tarih, saat, açılış, yüksek, düşük, kapanış ve hacim içeren noktalı virgülle ayrılmış bir CSV elde edin. Gösterge değerleri bu dışa aktarımda yoktur. Gösterge değerlerini almak için değerleri bir dosyaya yazdıran bir NinjaScript göstergesi yazmak gerekir. İki yolun nasıl çalıştığı aşağıda.
- NinjaTrader Data Manager, OHLCV bar verilerini noktalı virgülle ayrılmış CSV olarak dışa aktarır; biçim tarih ve saat, ardından açılış, yüksek, düşük, kapanış, hacimdir.
- Gösterge değerleri standart OHLCV dışa aktarımına dahil değildir ve değerleri dosyaya yazmak için bir NinjaScript dışa aktarma göstergesi gerektirir.
- OHLCV ve göstergelerin birleşik çıktısı, NinjaScript dışa aktarımını bar verisi dışa aktarımıyla birlikte çalıştırıp çıktıları birleştirmek anlamına gelir.
NinjaTrader'dan OHLCV Bar Verisi Nasıl Dışa Aktarılır
NinjaTrader 8 geçmiş bar verilerini kendi yerel veritabanında saklar. Dışa aktarmak için Control Center'ı açın, Tools > Historical Data'ya (bazı sürümlerde Data Manager) gidin, istediğiniz enstrümana sağ tıklayın ve Export'u seçin. Tarih aralığını ve zaman dilimini seçip onaylayın. NinjaTrader seçtiğiniz çıktı klasörüne bir CSV yazar.
Dışa aktarılan CSV varsayılan olarak ayırıcı olarak virgül yerine noktalı virgül kullanır. Sütun sırası gün içi zaman dilimleri için Date;Time;Open;High;Low;Close;Volume, günlük barlar için Date;Open;High;Low;Close;Volume şeklindedir. Tarih biçimi YYYYMMDD, saat biçimi HHMMSS'dir.
OHLCV dışa aktarımı, NinjaTrader'ın o enstrüman ve zaman dilimi için indirdiği tüm geçmiş veriyi kapsar. Daha fazla geçmişe ihtiyacınız varsa dışa aktarmadan önce platformun geçmiş veri indirme araçlarıyla indirin.
Standart NinjaTrader OHLCV Dışa Aktarımının İçermedikleri
Data Manager OHLCV dışa aktarımı yalnızca bar verisi içerir. Şunları içermez: bu barlardan hesaplanan gösterge değerleri, çizim nesneleri veya not verileri, işlem geçmişi ve seans düzeyinde notlar.
Dosya ham bir fiyat verisi dışa aktarımıdır. Gösterge hesaplama katmanı tamamen NinjaTrader'ın çalışma ortamında yaşar ve bar verisi dosyasına serileştirilmez. Analiz iş akışınız fiyatın yanında belirli gösterge okumalarına bağlıysa yalnızca OHLCV içeren dışa aktarım bu bağlamı taşımaz.
OHLCV ile birlikte çizim ve not verilerinin yapılandırılmış dışa aktarımı için /resources/articles/ninjatrader-drawing-export adresine bakın.
| Veri Türü | Data Manager Dışa Aktarımında Var mı |
|---|---|
| Açılış, Yüksek, Düşük, Kapanış (bar başına) | Evet |
| Hacim (bar başına) | Evet |
| Tarih ve saat damgaları | Evet |
| Gösterge değerleri (EMA, RSI, VWAP vb.) | Hayır |
| Çizim nesneleri ve notlar | Hayır |
| İşlem geçmişi ve gerçekleşen emirler | Hayır |
| Seans düzeyinde notlar | Hayır |
NinjaTrader enstrüman listeleri ve kontrat ayları: üç aylık mı, aylık mı
Enstrüman listeleri NinjaTrader Control Center'da Tools, ardından Instrument Lists altında bulunur. Bir liste enstrümanları gruplar; böylece Strategy Analyzer'ı veya bir Market Analyzer'ı hepsi üzerinde aynı anda çalıştırabilir ya da onları diğer pencerelere hızla yükleyebilirsiniz.
NinjaTrader'da vadeli işlemler vade tarihini adlarında taşır, örneğin ES 12-26. Yeni bir kontrat ayının ne sıklıkla çıkacağını borsa belirler: ES ve NQ gibi CME hisse endeksi vadelileri üç aylık kontratlar listeler (Mart, Haziran, Eylül ve Aralık), ham petrol (CL) ise her ay bir kontrat listeler. Yaygın endeks vadelilerinin hiçbiri yılda bir kez listelenmez.
Bir kontrat devir tarihine ulaştığında Tools, ardından Database Management enstrümanları ileri taşır. NinjaTrader'ın yardım kılavuzuna göre devir, açık çalışma alanlarındaki tüm enstrüman listelerinde ve pencerelerde vade tarihini günceller; değişikliği korumak için çalışma alanlarını kaydedersiniz. NinjaScript stratejileri kendiliğinden ileri taşınmaz.
Dışa aktarmalar için Tools, Options, Market data altındaki Merge Policy ayarını kontrol edin. MergeBackAdjusted her vadeyi, devir tarihlerinde ofsetlerle tek bir sürekli geçmişte birleştirir; Do Not Merge tek bir kontrat ayını korur. Barların daha sonra eşleştirilebilmesi için kontrat ayını ve birleştirme ayarını dosya adına yazın.
- Hisse endeksi vadelileri (ES, NQ): üç aylık; Mart, Haziran, Eylül, Aralık.
- Ham petrol (CL): her ay yeni bir kontrat.
- Database Management'taki devir her enstrüman listesini günceller; çalışma alanlarını yeniden kaydedin.
- Merge Policy, dışa aktarılan geçmişin tek bir kontratı mı yoksa birkaçını mı kapsayacağına karar verir.
NinjaTrader'dan Gösterge Değerleri Nasıl Dışa Aktarılır
Gösterge değerlerini bir CSV dosyasına almak için, istediğiniz değeri hesaplayan ve her bar güncellemesinde bir dosyaya yazan bir NinjaScript göstergesi yazarsınız. NinjaTrader'ın NinjaScript ortamı dosya yazmak için System.IO'ya erişebilir.
Temel kalıp şöyledir: State.DataLoaded için OnStateChange içinde hedef dosya yolunuza bir StreamWriter açın. OnBarUpdate içinde BarsInProgress == 0 ve IsFirstTickOfBar ise mevcut barın Date, Time ve gösterge değerlerini StreamWriter'a yazın. State.Terminated için OnStateChange içinde StreamWriter'ı kapatın.
StreamWriter yaklaşımı size NinjaTrader'ın kütüphanesindeki herhangi bir göstergenin veya yazdığınız herhangi bir özel göstergenin bar bazında kaydını verir. Çıktı, bir elektronik tabloda açabileceğiniz ya da herhangi bir analiz aracına aktarabileceğiniz ayraçlı bir metin dosyasıdır. Platforma bağımlı dışa aktarmaya bir alternatif için /resources/articles/thinkorswim-to-csv-xlsx-annotations adresine bakın.
OHLCV ve Gösterge Değerlerini Tek Dosyada Birleştirmek
OHLCV barlarını gösterge değerleriyle birleştirmenin iki yaklaşımı vardır. Birincisi, her satırda OHLCV alanlarını ve gösterge değerlerini çıktılayan tek bir NinjaScript dışa aktarma göstergesi yazmaktır; bu her şeyi aynı bar zaman damgasına hizalı tutar.
İkinci yaklaşım, OHLCV'yi Data Manager'dan dışa aktarıp gösterge değerlerini NinjaScript ile ayrıca dışa aktarmak, ardından iki dosyayı ortak zaman damgasını birleştirme anahtarı olarak kullanarak bir elektronik tabloda veya betikte birleştirmektir. Birleştirmenin doğru çalışması için iki dosya arasında zaman damgası biçimi tutarlı olmalıdır.
Tek dosyalı NinjaScript yaklaşımı analiz için daha temizdir ancak uygulamak için NinjaScript becerisi gerektirir. Birleştirme yaklaşımı, zaman damgası biçimleri uyuşuyorsa özel kod olmadan çalışır.
NinjaTrader Dışa Aktarımının Yetersiz Kaldığı Yerler ve Ne Zaman Destek Gerekir
NinjaTrader dışa aktarma iş akışı, ister Data Manager'dan ister NinjaScript ile olsun, bar bar veri çıkarmak için güvenilirdir ancak ham OHLCV'nin ötesindeki her şey için NinjaScript geliştirmesi gerektirir. Geliştirici olmayanlar için gösterge değeri dışa aktarımında ciddi bir engel vardır.
Diğer sınırlama notların taşınabilirliğidir: NinjaTrader'da çizilen grafik çizimleri, not metinleri ve destek-direnç seviyeleri OHLCV veya gösterge dışa aktarımlarında yer almaz. Grafik bağlamını bar verisinin yanında taşıması gereken iş akışları için ek bir not dışa aktarma katmanı gerekir.
Platformdan bağımsız o not katmanı için /resources/articles/chart-annotation-export-for-trading-journal-xlsx-csv adresine, gösterge dışa aktarma yaklaşımlarının platformlar arası karşılaştırması için /resources/articles/export-tradingview-indicator-values-csv adresine bakın.
Sık sorulan sorular
- NinjaTrader gösterge değerlerini yerleşik olarak CSV'ye aktarabilir mi?
- Hayır. Data Manager OHLCV dışa aktarımı yalnızca bar fiyat ve hacim verisini içerir. Gösterge değerlerini dışa aktarmak için her bar güncellemesinde değerleri bir dosyaya yazmak üzere System.IO.StreamWriter kullanan bir NinjaScript göstergesi yazmanız gerekir.
- Bir NinjaTrader grafiğinden hangi OHLCV verileri dışa aktarılabilir?
- Data Manager ile NinjaTrader'ın indirdiği her enstrüman ve zaman dilimi için tarih, saat, açılış, yüksek, düşük, kapanış ve hacmi dışa aktarabilirsiniz. Çıktı noktalı virgülle ayrılmış bir CSV'dir. Gün içi dışa aktarımlar saat sütunu içerir; günlük dışa aktarımlar içermez.
- Harici analiz için NinjaTrader grafik verilerini almanın en iyi yolu nedir?
- OHLCV bar verisi için Data Manager dışa aktarımını kullanın. Gösterge değerleri için OHLCV alanlarının yanında bar bazında gösterge okumalarını dosyaya yazan bir NinjaScript dışa aktarma göstergesi yazın. İki ayrı dışa aktarım kullanıyorsanız çıktıları zaman damgası üzerinden birleştirin.
- NinjaTrader'ın CSV dışa aktarımının ayırıcı biçimi nedir?
- NinjaTrader varsayılan CSV dışa aktarımında virgül yerine noktalı virgül kullanır. Excel'e veya başka araçlara aktarırken içe aktarma sırasında ayırıcı olarak virgül yerine 'noktalı virgül' seçin.
- NinjaTrader vadeli işlem kontratları üç aylık mı, aylık mı?
- Bu, borsanın listelemesine bağlıdır. ES ve NQ Mart, Haziran, Eylül ve Aralık aylarında üç aylık kontratlar listeler; CL her ay listeler. NinjaTrader her birini vadesine göre adlandırır, örneğin ES 12-26; Tools, ardından Database Management enstrüman listelerini sonraki aya taşır.
MyLinedChart'ı deneyin
MyLinedChart; çizimlerinizi, notlarınızı ve gösterge değerlerinizi dışa aktarabileceğiniz, gözden geçirebileceğiniz ve yeniden kullanabileceğiniz veri olarak saklar.
MyLinedChart'ı keşfedin