Reconstructed Tape NT8 download
Please, download and try the add-on before buying. Evaluation period is 14 days.
Add-on for NinjaTrader 8 Trading Platform.
How to install or update Reconstructed Tape NT8
It is recommended to use the standard way to install or remove the add-ons in NinjaTrader.
The most recent version of the add-on is always available to download from this page or from the homepage.
Download the latest assembly (DtReconstructedTape.zip file) from this description page or from the homepage.
Run NinjaTrader 8.
Go to 'Tools' → 'Import' → 'NinjaScript Add-On…', select the downloaded .zip file and press 'Open'.
Click 'Yes' if asked for replacement of the existing "DiscoTrading.Net48.Common.dll" and/or "DtReconstructedTape" assemblies:
Restart NinjaTrader 8! It is required step to properly finish the installation!
Note: Various Dt add-ons are relying on the same "DiscoTrading.Net48.Common.dll" library. The most recent build contains the latest version of the library, so you have to click 'Yes' when asked for replacement of the file during installation.
Why the tape is important tool to day trader?
First of all, Tape (aka Time&Sales) is a direct source of first-level market-generated information — the most objective information that is derived from real positions taken in the markets by real people with real money. This makes tape reading a powerful weapon in the hands of a day trader who already has an idea about the big picture and has a daily plan to follow.
There are several basic metrics of the order flow we can monitor by means of Time & Sales (T&S) window: Trade Side, Trade Size, Speed of Tape and the character of order-flow in general. Of course, the price effect we see on the bar charts is also important. Perhaps these metrics seem to be too commonplace, so the many just neglect to observe and analyse the tape but are carried away by countless fancy price derivatives and 100%-guaranteed money-making signal generators like a “super-ultra-smoothed oXillator” or something else they even have no idea on. Think be able to wait a signal patiently and be disciplined enough to press the button when the signal comes in are the only skills required for a profitable trading? This is not enough in the modern market environment where trader's elasticity and adaptability are the prerequisites for any success. Intraday adaptability is a complicated skill rising from such principal skills of discretionary day trader as the ability to perceive market rhythm and feel market intentions, to smell one's prey and even more importantly smell the predator. So tape reading reveals its real value as the most natural way of listening the market along with the continuous studying the language the market speaks in.
A little of history… The way the exchange engines report on transactions.
Nevertheless, there are some obstacles in the way of getting usable information we need.
As you probably already know, the CME Group made changes regarding how trade transactions are reported using its FIX/FAST messaging protocol on 4th October 2009. This concerned not only equity futures but other CME products also. Earlier, for example, the similar changes had been applied to the currency futures. According to the CME's official notification of equity futures enhancements any single trade event (and thus any print in ours common T&S window) takes place for each filling resting order (aka limit order), i.e. the common tape shows split executions, not the market orders. That means a trade size we used to see in the tape is the size of that part of the corresponding limit order that has been filled by a corresponding opposite market order. In other words, any printed tick size will be equal or less than the size of resting limit order that has been eaten by a market order. A tick size may easily be less than the size of an underlying resting order just because an opposite market order just might take a bite of the resting one instead of to ate it entirely. It follows therefrom that in the general case the sizes being printed by the common tape do not track market order sizes at all.
Exchange engine comes into the assistance to institutional bots with the purpose of hiding the activity of big participants. At this point the Reconstructed Tape has a 'Basic Reconstruction' mode which is usable to reconstruct market orders splitted by exchange engine.
By the way, many thought that before that enhancements the futures exchange was reporting us the actual sizes of executed market orders just as different stock market centers like NYSE or BATS are doing that. It is not quite so in general. As far as we know it today the CME was using a certain aggregation mechanism operating in very fast market conditions. All this once more confirms for us the truth of how much subjectivity attached to the trading.
The next major changes of CME Globex exchange engine were being carried out in the end of 2014. On December 7, 2014, CME Group has introduced a new market data messaging format — the MDP 3.0.
In May 2015 some of the data providers migrated to the MDP 3.0 protocol. The main point of these changes is that the CME Globex engine is aggregating market orders by itself (but within one price tick level). So it might appears that the 'Basic Reconstruction' algorithm available in Reconstructed Tape became useless for those who trade products traded on Globex, but this isn't entirely true for several reasons. Firstly, the 'Basic Reconstruction' technique is still able to resplice a big market order filled throughout several price levels (aka "Filled Over" prints, when one market orders eats resting limit orders of two or more contiguous bids or offers). Secondly, the Globex's FIX/FAST is still also available to data vendors, so some of them are still using this preceding data protocol. So, for example, DTN IQFeed is claiming there are some deficiencies in the new protocol. Thirdly, there are many other exchanges as COMEX, NYMEX, CBOT, ICE, Eurex etc which are using the standard FIX/FAST format.
Although the underlying principles of MDP 3.0 does not help to hide the activity of big participants anymore (like the FIX does), the arrival of this protocol reinforces another challenge — big orders' fragmentation directly by the bots of heavy market participants. We want to track original sizes of the market orders so as to assess what kind of traders is primarily initiating trades right now in the market: whether big boys are pressing the button or just the crowd of minors is producing a market noise. That could be valuable information when the price is near some significant level.
Therefore we have added a new trade aggregation mode into dt Reconstructed Tape — the 'Hybrid' mode. The 'Hybrid' algorithm combines a subsecond aggregation technique with the basic trade reconstruction (a technique based on messaging protocol), so that it allows to resplice trades broken to pieces by algos in a rotundity way (with some degree of accuracy).
dt Reconstructed Tape
Our objective is to pick out the useful market information and to make easier a perception of that information. To solve this task dt Reconstructed Tape has certain features.
First of all, this tool is a customary tape, but has an ability to reconstruct the original size of underlying market orders (two modes are available: 'Basic Reconstr.' and 'Hybrid').
dt Reconstructed Tape also has the 'Raw' mode that makes it work like a common time & sales. So, the traders who are accustomed to the common raw tape will also find dtTape useful.
dt Reconstructed Tape is quite fast and free of flickering. It is not only more comfortable for eyes, but also makes it possible to perceive and feel the tempo of order flow more appropriately.
The dtTape has various options of data filtering with flexible customization of visual representation of trades:
In addition to the tape you can use On-Chart Markers to display filtered trades on a price chart.
Since the build 126.96.36.199 both the tape and On-Chart Markers have absolutely independent filtering functions.
Filtering options are very flexible: in addition to the three different methods of filtering By Size you can use filtering By Trade Side.
Out-of filter criteria trades will not be printed on the tape.
You can use various formatting of the tape prints in accordance with different criteria:
- 'Regular' trades
- 'Big Size' trades
- 'Filled Over' trades
Since the build 188.8.131.52 the new option “Show 'Size' as Histogram” is available. Enabling it turns the tape into a visual tool.
Audible alerts on 'Big' trades. Different audio file formats are supported (wav, mp3, wma).
All settings are available from the Tape window. Any changes in the settings will take immediate effect, you no more need to get into NT's “Indicators” settings dialog window.
Any trade is the result of market order execution at the best price currently obtainable on the market (at the bid price for buy or the ask price for sell market order).
In normal conditions and on liquid futures the majority of market orders usually not exceeding the quantity of contracts resting on the current (best) bid or ask level.
However, sometimes a big buyer/seller becomes so aggressive that it will seize more contracts than the current ask/bid level has.
Such kind of trade (executed market order) that alone “eats” contracts of more than one price level called 'Filled Over' Trade in dtTape and can also be highlighted in the tape using custom formatting.
Highlighting 'Filled Over' trades has a priority higher than a priority of highlighting 'Big Size' trades. On very liquid “thick” instruments like ES this can be useful as a straight indication of the aggressiveness of a trade initiator. However, market orders filled through several levels (aka slippage) are ordinary events on “thin” and fast instruments/markets. Thus, since the 184.108.40.206 version you can turn off marking 'Filled Over' trades if you are trading such kind of market.
Even though all settings were moved from the NinjaTrader's “Indicators” Window to the tape GUI all of them are saveable with NT's Workspaces, Chart Templates and Indicator Default Settings.
So, for example, you can save your own settings as default parameters for the dtReconstructedTape in the usual way:
To force the T&S window to stay always over of other windows even if it does not have focus do right-click somewhere inside the dtTape Window and activate context menu item "Always on Top".
Most of the settings are self-explanatory. All parameters in the 'Settings' Tab relate to the tape (T&S) and all parameters in the 'On-Chart Markers' relate to the On-Chart Markers.
Raw mode. Raw executions will be printed in the Time & Sales.
Basic Reconstr. mode. Reconstructed trades will be printed in the Time & Sales. This mode uses a simple and fast messaging-based technique of trade reconstruction.
Hybrid mode. The 'Hybrid' algorithm combines a subsecond aggregation technique with the basic trade reconstruction (a technique based on messaging protocol) in order to resplice trades broken to pieces by algos in a rotundity way (with some degree of accuracy).
Important note: In NT7 the Hybrid aggregation technique works only in real-time and does not work in Market Replay.
General Filter By Size
Greater Than Or Equal. This mode forces the tape to show only the trades which have a size greater than or equal to the Fiter Size value.
Less Than Or Equal. This mode forces the tape to show only trades with the size not exceeding the Fiter Size value.
In Between. This will force the tape to take into account only that trades which have a size in the range from the Filter Min Size to the Filter Max Size inclusive.
If you do not want to use any filtering, you should just leave the Filter Mode and Filter Size at its default values (Filter Mode = "Greater Than Or Equal", Filter Size = "1").
Filter By Side.
- All. No filtering, all trades will be printed on the tape.
- @ Bid. Only trades at bid (whenever a sell market is matched with a resting buy limit order) will be printed on the tape.
- @ Ask. Only trades at ask (whenever a buy market is matched with a resting sell limit order) will be printed on the tape.
Intra-Spread. Only trades occurred at unknown side or inside current bid-ask spread will be printed on the tape.
The “Unknown Side“ can really happen from time to time, even on liquid instruments. The most common reason is a swift trade occurred inside current bid-ask spread. The second reason is exceedingly fast order flow flavored with vendor data inconsistency.
“Big” Size. Defines the lower limit size of trades (reconstructed or raw is dependent on the chosen mode) that will be highlighted on the tape using custom formatting.
- Time Format. Choose time format you wish to use in the 'Time' column.
- Font Family. Choose font family you wish to use in the tape. It is recommended to use the font specially designed for comfortable reading on computer displays. A name of such font often contains "UI" or "User Interface".
- Scroll Bars. Controls the visibility of the Vertical and Horizontal Scroll Bars. Hiding unused scroll bars might come in handy for a space-saving.
Show extra info. This setting allows to turn on/off the counting and displaying of the additional data: cumulative delta (CD), maximum and minimum CD, split factor (the number of executions that were aggregated into the reconstructed trade).
Note: The setting is enabled by default that can be useful for investigations of market behavior, but this additional data may be excessive and unnecessary when trading. So you can always turn it off for space-saving.
Highlight 'Filled Over' trades. Since the version 220.127.116.11 a possibility to turn off highlighting 'Filled Over' trades was added. As was mentioned above, this might be useful if you trade a volatile “thin” instrument.
Show 'Size' as Histogram. Enables a histogram-like visual representation of trade size in the 'Size' column.
Most of the time the default values are suitable.
- Refresh rate. Use 'Real-Time' on fast computers or either of 'Adaptive' modes on slow computers/fast markets.
Max # of Rows. The parameter sets the number of recent prints that will be presented in the tape. Too big number of rows (prints) may have a negative impact on the performance.
If you really need a big number of stored prints (>>5000) use it in conjunction with the 'Adaptive-Slow' refresh mode.
- Space between rows. Allows to control line spacing. Negative numbers are acceptable.
On-Chart Markers uses own Filtering functions which is fully independent of that one that is used by the Time & Sales. The settings are similar.
Due to the nature of reconstruction logic and tape operation the Reconstructed Tape functions in real-time only. Thus On-Chart Markers are collecting from live data and cannot be obtained/shown based on historical data as the historical data is not enough. It cannot plot on historical bars.
Nevertheless Reconstructed Tape NT8 functions properly in NinjaTrader Playback either (based on 'Market Replay' data, not 'Historical' data!). Thus the only way to get historical marks is to use Ninja's Playback function to replay the trading session with Market Replay data (not Historical data).
Enable On-Chart Markers. Enables/disables gathering of the trades that meets filter conditions and that will be shown as markers on the price chart.
Visibility. Hiding of markers does not disable the gathering of theirs.
Additional On-the-fly filtering
This section allows you to apply additional filter conditions to the gathered on-chart markers. All manipulations in the 'On-the-fly Filtering' section affect only representation and do not affect an underlying list of the gathered markers.
The Spectrum window visualizes statistical distribution of accumulated "Buying"/"Selling" Volume and Delta over various Trade Size ranges. This allows to observe and analyze the intentions/influence of various king of market participants (big, small).
The Reconstructed Tape NT8 begins gathering of sample data for statistical computations from start. Thus there is no need to specially open the Spectrum window to get the data be collected, yhe data is collected all the time.
By default all gathered trades are used as statistical sample. Alternatively it is possible to specify what amount of the most recent trades to use in the distribution computations in order to get more adaptive picture when investigating short time frames.
The Spectrum window displays two kinds of distribution charts: Automatic (displayed on the left side) and Manual based on user defined trade size ranges (displayed on the right side). In general, both distributions show actually the same, the only difference is the horizontal 'Trade Size' axis scaling:
- In the Automatic distribution chart the dtTape detects the size of the biggest trade and automatically computes the 'Trade Size' Axis scaling. So this does not require any specific settings.
- In the Manual distribution chart displays how the volume and delta behave by three groups: Small, Medium and Large Trade Size. The Trade Size Range of each group is manually defined by user.
By default, the distributions are re-calculating each ten seconds. You may manually force the recalculation by using the 'Refresh' command from the context menu of the Spectrum window.
Upper charts visualize as many as three metrics at the same time!: 1) Accumulated “Buying” Volume, 2) Accumulated “Selling” Volume and 3) Accumulated Volume Delta of executed Market Orders of the specified Trade Size range. This allows visually compare the Trade Size groups by both absolute volume and delta.
Lower charts show Relative Delta % to reveal which side was dominant and how much in the specified Trade Size range.
Mathematically the Relative Delta % is simply
100% x ["Buying" Volume - "Selling" Volume] / [Summary Volume] of Market Orders of the specified Trade Size range.
Let's look at the 'Auto distribution' chart on the illustration above.
In this example the fist column of the chart shows the accumulated volume of all trades with size from 1 to 2 contracts.
Then 3 contracts, then form 4 to 6, then from 7 to 10,.... And finally the last column shows the volume of trades with size from 171 to 300.
Thus one can easily visually compare the activity of “small” lot traders and “big” lot traders.
Let's look at the 'Manual distribution' chart on the illustration above. The number 7814 at the bottom (2nd column) displays for the info the total “Buying” and “Selling” volume of the trades with size from 8 to 48 contracts. In turn, the corresponding Relative Delta -16.18% on lower chart displays that the volume of executed Market Sell orders of size [8...48] is greater by 16.18% than the volume of executed Market Buy orders of size [8...48]. That is, in this example, the absolute difference in contracts is 16.18% of 7814. (In other words ~4539 contracts are executed Market Sell orders and ~3275 contracts are Market Buy orders; 7814 in total.)
In this way, the upper charts allow to visually compare the various 'Trade Size' groups by absolute delta, while the bottom charts allow to visually compare the same groups by relative delta.
Please, download and try the add-on before buying. Evaluation period is 14 days.