NinjaTrader 8 AddOn to convert NRD (*.nrd) market replay files to CSV (*.csv)
(based on not yet documented MarketReplay.DumpMarketDepth feature)
- Download the latest zip file with AddOn from Releases
- Import AddOn into NinjaTrader 8 via
Tools/Import/NinjaScript Add-On... - Open NRD to CSV tool via
Tools/NRD to CSV - Press Convert button to convert all
*.nrdreplay files (could take some time to proceed) - Check
Documents\NinjaTrader 8\db\replay.csvfolder with the results
You can specify filenames to convert with semicolon-separated regular expressions (experiment here):
- Convert only Gold Commodity futures:
GC - Convert several instruments:
GC; HG; 6E - Convert files with names related only to December 2021:
202112\d{2}
Means:"2021""12"<any 2 digits of Day> - Convert files with names related to all Decembers of Gold Commodity futures:
GC.*\d{4}12\d{2}
Means:"GC"<any chars><any 4 digits of Year>"12"<any 2 digits of Day>
L1;0;20210120050050;2300000;1855.8;2
L1;1;20210120050107;2140000;1855.4;8
L2;0;20210120050000;70000;0;0;;1855.5;1
NinjaTrader.Data.MarketDataType
Ask = 0
Bid = 1
Last = 2
DailyHigh = 3
DailyLow = 4
DailyVolume = 5
LastClose = 6
Opening = 7
OpenInterest = 8
Settlement = 9
Unknown = 10TimestampinYYYYMMDDhhmmssformat (local NinjaTrader timezone is used)Timestamp offsetas an integer amount of 100-nanoseconds (1e-7)Pricevalue (local NinjaTrader price format is used for thousand/decimal separators)Volumevalue
NinjaTrader.Data.MarketDataType
Ask = 0
Bid = 1
Last = 2
DailyHigh = 3
DailyLow = 4
DailyVolume = 5
LastClose = 6
Opening = 7
OpenInterest = 8
Settlement = 9
Unknown = 10TimestampinYYYYMMDDhhmmssformat (local NinjaTrader timezone is used)Timestamp offsetas an integer amount of 100-nanoseconds (1e-7)NinjaTrader.Cbi.Operation
Add = 0
Update = 1
Remove = 2Positionin Order BookMarketMakeridentifierPricevalue (local NinjaTrader price format is used for thousand/decimal separators)Volumevalue
This project adheres to Semantic Versioning.
Every release, along with the migration instructions, is documented on the GitHub Releases page.
The code is available under the MIT license.
Feel free to contact me at @gmail.com: eugene.ilyin
