|JTOOLS TOP TEN BLASTER
JTools Table of Contents
Project Location: \JTools_TopTenBlaster
The Top Ten Blaster application calculates and maintains 5 top ten lists for every exchange available. The lists are then separated by Equities, Futures and Indexes, depending on what the exchange offers. It is a perfect example of the 'whole market analysis' one can perform with NxCore.
You may view 4 exchange/market type combinations simultaneously (each with the 5 top ten lists). The 5 lists that are offered include:
This application requires a good amount of screen space to be displayed in it's full glory. The following image is a reduced in size:
A snippet for the above in full resolution:
You can choose new exchanges (or markets within an exchange) by using the Combi boxes to the left of the lists:
The exchanges available (and markets within the exchanges) are determined when NxCore is started and the choices are populated dynamically immediately after.
While the application was written with the intention of viewing top ten lists in real time, you can also blast through a historical tape as fast as possible. This is accomplished through a variety of mechanisms:
However, this application is GUI bound. While the updating of each list is done smartly (only modifying rows/values that have changed) there are 20 lists updating in real time. When you are listening in real time and are caught up in the feed this is not a problem and the application consumes very little CPU. However when blasting through a tape full speed the GUI will limit the message rate, sometimes considerably.
You can verify this by turning on "Compact" which closes the GUI section (and updating of the lists):
Rate will remain high as you blast through a tape (or catch up to the real time buffers) as fast as possible.
However when the GUI is opened up message rates will drop:
This is a perfect example of a GUI binding the message rate. It is still processing much faster than required in real time, but there is a performance hit due to the GUI.
Furthermore, there is also a setting buried in the Color Preferences called "Spin Entire Market":
When this setting is on, all lists for all markets are updated, calculated and maintained in real time. When a request for a new exchange/market is made it simply refreshes the display with the new information and proceeds. However, when this switch is off, the application will only update, calculate and maintain data for the specific lists being viewed. When a request is made for a new combination, the system generates a custom symbol spin to retrieve the symbols specific to the request, makes a state trade call for each symbol and populates the new list in the spin, all in the blink of the eye. Once the spin is complete the system proceeds in real time.
You may change colors for he entire application by clicking on the application icon in the upper left corner, and choosing 'Color Prefs':
JTools Table of Contents