The following are the primary new features in NeuroShell Trader 5.0:
- Integrated Trading ‘ Ability to send trades directly to the brokerage firm Interactive Brokers or email orders to a list of email addresses. To setup integrated trading within NeuroShell Trader:
-
Select Options from the Tools menu to activate the Options Dialog
-
Select Send orders to brokerage from the Trading Orders tab
-
Select the desired brokerage server from the Brokerage drop-down list.
For more detailed information about the brokerage servers available in 5.0, see: Interactive Brokers and Order Emailer
-
Integrated Trading API ‘ Integrated trading programmer’s interface which will allow programmers to create NeuroShell Trader integrated trading connections to brokerages other than Interactive Brokers. Additional details are available in the Trading API package available from Ward Systems Group.
-
Range Bar Charts ‘ Constant range bars can be created where each bar represents trading activity for the user-specified minimum price range. The high-low range of each bar will equal the specified range. Each bar is created by accumulating trades until the high-low range is reached. The first trade to break outside that range starts a new bar. Since price gaps are not filled with phantom bars, the high-low range of a bar can exceed the specified range when prices gap outside the range before a bar’s price range criteria was met.
To create a constant range bar chart, in the New Chart wizard, simply choose ‘Range Bars’ and then enter the desired amount of price range that will make up each bar (for example price range of 2.5 per bar). Note that range bars are created from tick by tick data streams and therefore historical data may be limited and take longer to load. Additionally, range bars can only be created using eSignal in the 5.0 release.
-
Volume Bar Charts ‘ Constant volume bar charts can be created where each bar represents trading activity for the user-specified minimum volume. The volume of each bar will equal the specified volume. Each bar is created by accumulating trades until the specified volume is reached.
To create a volume bar chart, in the New Chart wizard, simply choose ‘Volume Bars’ and then enter the desired amount of volume that will make up each bar (for example volume of 10000 shares per bar). Note that volume bars are created from tick by tick data streams and therefore historical data may be limited and take longer to load. Additionally, volume bars can only be created using eSignal in the 5.0 release.
-
Tick Bar Charts – Tick bar charts can be created where each bar represents trading activity for the user-specified number of trades. In the New Chart wizard, simply choose ‘Tick Bars’ and then enter the desired number of ticks that will make up each bar (for example 25 ticks per bar). Note that tick bars are created from tick by tick data streams and therefore historical data may be limited and take a longer to load. Additionally, tick bars can only be created using eSignal in the 5.0 release.
-
Second Bar Charts ‘Second bars can be created. In the New Chart wizard, simply choose ‘Second Bars’ and then enter the desired number seconds that will make up each bar (10 seconds per bar). ). Note that second bars are created from tick by tick data streams and therefore historical data may be limited and take a longer to load. Additionally, second bars can only be created using eSignal in the 5.0 release.
-
Expanded Minute and Hour Bar Charts ‘ Minute and Hour bars can now be created with any number of minutes or hours per bar. In the New Chart wizard, simply choose either ‘Minute Bars’ or ‘Hour Bars’ and then enter the desired number of minutes or hours that will make up each bar (for example 13 minute bars or 5 hour bars).
-
Bid and Ask Statistics ‘ When using any tick by tick data stream based charting method (Second Bars, Volume Bars and Range Bars), the bid and ask data streams below may be created by NeuroShell Trader in addition to the standard Open, High, Low, Close and Volume.
Bid The current bid price at the close of the bar.
Ask The current ask price at the close of the bar.
Bid Size The number of shares offered for purchase at the current bid price at the close of the bar.
Ask Size The number of shares offered for sale at the current ask price at the close of the bar.
# Bid Trades The number of trades that occurred at the bid price during the last bar.
# Ask Trades The number of trades that occurred at the ask price during the last bar.
Bid Trade Volume The total volume of trades that occurred at the bid price during the last bar.
Ask Trade Volume The total volume of trades that occurred at the ask price during the last bar.
Avg Bid Trade Volume The average trade volume for trades that occurred at the bid price during the last bar.
Avg Ask Trade Volume The average trade volume for trades that occurred at the ask price during the last bar.
Note:
-
The bid and ask statistics may not be available for every ticker symbol. Availability is dependent upon whether your data provider includes current bid/ask ticks in the tick by tick data stream for a given ticker symbol.
-
Changes in bid price, ask price, bid size and ask size are streamed directly from the data provider as the bid and ask change. The last value of each of these when the bar completes is used by NeuroShell Trader as the Bid, Ask, Bid Size and Ask Size.
-
The # Bid Trades, # Ask Trades, Bid Trade Volume and Ask Trade Volume are calculated by NeuroShell Trader as each tick comes in by comparing each incoming tick price to the current bid and ask price at the time the tick occurred and incrementing appropriately.
-
The Bid Trade Volume and Ask Trade Volume are calculated by NeuroShell Trader at the end of each bar by simply dividing the # Bid Trades by the Bid Trade Volume and # Ask Trades by the Ask Trade Volume.
-
IQFeed provides bid and ask prices in historical data, but not bid and ask sizes. However, both are available in real time streaming data. Therefore, NeuroShell will show zero when bid and ask sizes are inserted onto an IQFeed chart.
-
Ticker Scanning ‘ Large numbers of ticker symbols can be scanned for user definable criteria or values. To start ticker symbol scanning wizard, select ‘Scan Ticker Symbols’ from the ‘Tools Menu’ and then follow the instructions below:
-
On the first page of the Ticker Symbol Scanning Wizard, select either a pre-saved scan template or select No Template.
-
On the second wizard page, select the scanning periodicity (minute bars, hour bars, etc.) and how far back data is loaded for each scan’s calculations.
-
Use the third wizard page to select the category of ticker symbols to be scanned
-
On the fourth wizard pages, select the actual ticker symbols to be scanned.
-
On the fifth wizard page, enter all the indicators values that you wish to view for the scanned ticker symbols. The sixth wizard page lists the latest indicator values for each of the selected ticker symbols. You can sort the columns to group indicators with certain indicator values. Any of the ticker symbols that you select/check will be added to a new chart when you press the Finish button. The new chart will also contain all the indicators that were included in the scan.
-
Workspaces ‘ Saving and loading of workspaces, which are collections of charts you want to load at the same time. To save a workspace, select the ‘Save Workspace’ menu item from the ‘File’ menu. To load a pre-saved workspace, select ‘Open’ from the file menu and select a workspace (file name ending in .wrk). Note that the ‘Open’ dialog displays both charts and workspace files at the same time, but can be changed to display only one or the other using the ‘Files of Type’ dropdown box at the bottom of the dialog.
-
Trend, Fibonacci, Line, Shape and Text Annotations – Trend lines, trend channels, Fibonacci retracements, Fibonacci projections, Fibonacci time lines, lines, vertical lines, horizontal lines, squares, ellipses, and text can now be drawn on charts.
To draw annotations on a chart, select the appropriate annotation type from the ‘Drawing’ menu and then press the left mouse button on the chart where you wish the annotation to start and then drag the mouse with the button still depressed to the ending location of the annotation.
To edit annotations already on a chart, simply select the annotation with the mouse and left mouse button and either drag the annotation to a new position, resize the annotation using the resize squares at the edges of the annotation, or simply delete the annotation using the delete key or the delete menu item. To change text annotations to different text strings, double click on the text annotation.
-
Increasing/Decreasing Bar Colors ‘ Ability to color data series in user selected colors based upon whether the data series is increasing or decreasing. To turn on this feature, select a data series on a chart, choose the “Format Selected ‘” menu item from the ‘Format’ menu and make the appropriate changes in the ‘Multi-Colored’ tab.
-
Maximum/Minimum Range Bar Colors ‘ Ability to color data series in user selected colors based upon whether the data has reached a user defined upper range or lower range. To turn on this feature, select a data series on a chart, choose the “Format Selected ‘” menu item from the ‘Format’ menu and make the appropriate changes in the ‘Multi-Colored’ tab.
-
Gradient Color Bars ‘ Ability to color data series in a user defined color gradient based upon the bars relative range or relative increase/decrease. To turn on this feature, select a data series on a chart, choose the “Format Selected ‘” menu item from the ‘Format’ menu and make the appropriate changes in the ‘Multi-Colored’ tab.
The gradient color shading is determined based upon the number of last bars chosen. So for instance if you choose 14 bars, the current bar’s color will be chosen based upon its value relative to the values over the last 14 bars. If it is at an extreme min or max, then it will be colored in the appropriate min or max color, otherwise it will be colored in a color shade between the two colors in proportion to its distance from the maximum and minimum value over the last 14 days.
-
Out Of Sample Model Saving ‘ Ability to choose whether or not to keep the prediction or trading strategy model that did best on the optimization data set or the model that did best on a subsequent paper trading (i.e. out of sample) data set. Configuration of this feature is done on the dates tab of the prediction parameters and trading strategy parameters dialog.
If you choose to save the model that does best on subsequent paper trading, the model’s parameters are still optimized on the optimization set, but each new optimal solution that is found by the GA is applied to the paper trading set. If that optimal solution is found to get better results on the paper trading set than previous optimal solutions, then it is saved as the ‘best model’. Optimal solutions that underperformed on the paper trading are still used in the GA optimization process to find an optimal solution on the optimal data set, but they are not used as the ‘best model’. The final model selected by the optimization is the last saved ‘best model’.
The optimization data set shows on the chart and on the date selection dialog in gray bars, and the paper trading set shows in orange bars.
-
Trading Data Set ‘ Option to start a ‘trading’ data set before the last chart date in the prediction and trading strategy wizards for additional statistical analysis of systems. To turn on this option, select the ‘Options’ menu item from the ‘Tools’ menu, select the ‘Advanced’ tab and select ‘Allow trading to begin before last chart date’. After this option is turned on, you will see the ‘Start trading before last chart date’ checkbox on the dates tab of the prediction and trading strategy parameters dialog.
By setting this option, the prediction and trading strategy dates interface will allow a ‘trading’ statistics data set to be calculated after the optimization and paper trading data sets. This ‘trading’ data set will be a true “out-of-sample” data set. It can be used if you do not wish to keep the model that did best on paper trading, but yet you still want to see how a model did on data other than the optimization data set. This data set can also be used in conjunction with saving the model that did best on subsequent paper trading to evaluate the model and yet another independent data set.
The Trading data set shows on the chart and in the data selection dialog in green bars.
-
Configurable Results ‘ The statistics that are displayed in prediction and trading strategy wizard results page can now be selected and the statistics columns reordered. To select which statistics are displayed in both wizards, choose the desired statistics from the Results Screen Column section of the wizard options (‘options’ button) for the prediction and trading strategy wizards. To reorder the statistics columns, simply drag and drop the column headers of the statistics list into the desired order.
-
Existing Data/Calculations Tree View ‘ The data in the Existing Data/Calculations dialog is now presented in a tree format that can be expanded down unlimited indicator levels.
-
Simplified Prediction Interface ‘ The confusing prediction optimal walkforward and walkforward interface of 4.0 has been changed to match the trading strategy date interface. The optimal walkforward and walkforward capabilities of 4.0 are now encapsulated in the ‘paper trading’ and ‘trading’ data sets that are selectable from the dates tab of the prediction parameters screen.
-
Chart Page Indicators ‘ A Chart Page Calculation indicator category has been added which contains the Chart Page Upper Rank, Lower Rank, Percentile, Maximum, Minimum, Sum, Average, Count, Standard Deviation, and Z-Score.
These indicators calculate similar to their normal counterparts except that they calculate the statistics for each date/time across all the chart pages in a chart as opposed to calculating back in time on one ticker symbol. So for instance the Chart Page Average, calculates the average value for each date/time across all the chart pages.
Use these indicators in charts with multiple chart pages (i.e. ticker symbols) to compare the current chart page indicators/value with all the other chart pages. So for instance you could use the Chart Page Upper Rank indicator to view the rank of each chart page value relative to the other chart pages, as an input to a prediction that indicates how the ticker is performing relative to others, or even as an input to a trading strategy which might limit trading to the top 3 tickers with the most volume. The possible uses of these indicators is limitless.
-
Open Chart Multiple Selection ‘ The Open File dialog now allows multiple selection of charts.
-
Save Data in Chart ‘ The Save As dialog now has a “Save data in chart” checkbox at bottom of the dialog. Turning on this option will save the current underlying data with in the chart. Upon loading a chart with saved data, you have the option of loading with the saved data or getting data from the normal sources (data feed, files, ‘). Use this feature when sending charts to other people (especially tech support), when you want to guarantee they are seeing exactly the same data without differences in files mapped, data feed provider, etc.
-
Deactivation at Shutdown Option – Check box located at the bottom of the activation screen now allows user to select “Prompt for deactivation at shutdown of Trader”. Use this option if you are frequently running one license on multiple computers, but sometimes forget to deactivate one computer before running the software on another computer.
-
Chart Drag – Charts can be scrolled left or right by dragging the chart in the desired direction with the left mouse button depressed. Note that you must drag a blank portion of the chart, otherwise the data series or annotation over which the mouse cursor is positioned will get selected/dragged instead of the chart getting dragged.
-
Multiple Indicator Colors ‘ Different indicators are now added to the chart in different colors instead of all the same default indicator color of purple.
-
Simultaneous Exit Stop and Limit Orders ‘ Trading Strategies now allow simultaneous exit stop and exit limit orders. This allows for backtesting and trading of strategies that have a simultaneous price target limit order and trailing stop order in the market at the same time.
-
Stop and Limit Order Rounding – Limit and Stop order prices are now rounded to the same precision/increment of price stream. Avoids problem of having a limit and stop order calculation that provides a continuous range of values with very small decimal places being placed at a price in between valid price increments for the underlying symbol being traded.
-
Point Values for each Ticker Symbol ‘ Point Values for predictions and trading strategies are now entered on a ticker by ticker basis. This allows for backtesting and optimizing of strategies across multiple chart pages, with each chart page having a different point value.
The point values for each ticker symbol are also saved and remembered for use in future charts, predictions and trading strategies. To change the point values for the current chart pages, press the Point Values button in the Costs tab of a trading strategy or prediction. You can also edit the list of all saved point values using the Point Values tab after selecting the Options menu item on the Tools menu. Note that if charts from old versions of NeuroShell Trader that contain point value specifications are loaded, the point values used in those charts will be automatically set for the appropriate ticker symbols if no point value currently exists for that ticker symbol.
-
Trading Data Set Recalculates Statistics with Updated Data ‘ As a chart is updated with more data, a Trading data set is added to both the prediction and trading strategies which allow a user to view the trading statistics, trade by trade, etc. with data going forward since the trading strategy or prediction was last backtested. Each time a trading strategy or prediction is modified when there is new data on the chart, the Trading Strategy Wizard and the Prediction Wizard will recalculate the Trading data set statistics to include the latest data.
-
Faster Optimization of Trailing Stop and Exit Indicators ‘ Protective stop and exit signal indicators now process much faster during optimization of a trading strategy. Note that the speed up will only occur if the indicators are inserted by themselves and not if the indicators are used inside another indicator (for example the trailing stop in Add2(TrailingPriceTarget(‘),2) will not process faster). The indicators that optimize faster are:
Entry Price: Percent Activation
Entry Price: Point Activation
Price floor: Percent
Price floor: Points
Trailing price: Percent
Trailing price: Points
Bars Since Activated = X
Bars Since Activated >= X
Bars Since Filled = X
Bars Since Filled >= X
Price Target: Percent
Price Target: Points
-
Linear Time Regression: Predicted Value and Change ‘ The Linear Time Regression: Predicted Value and Linear Time Regression: Predicted Change indicators now accept both zero and negative values for the Periods Ahead parameter. This allows these indicators to not only obtain values and changes on the regression line into the future, but also obtain values and changes on the regression line for the current bar (0) and past bars (negative periods ahead).
-
Renaming Data Series – Renaming of data series is now done in format data series interface. Additionally, a ‘Default’ button is now available to change the name back to the original default name.
-
Pop-up Menu Edit Commands – Cut, copy, paste and delete menu items are now listed in the pop-up menu that appears when the mouse is positioned over a data series and the right mouse button is clicked.
-
Pop-up Menu Recalculate ‘ A ‘Recalculate Chart’ menu item is now listed in the pop-up menu that appears when the mouse is positioned over a blank area of the chart and the right mouse button is clicked. Use the Recalculate Chart menu item to reread data files and recalculate all the calculations in a chart.
When the chart is based on an external data file that is being updated by an external program, manually recalculating the chart will allow new data from the data file to be incorporated into the chart without having to load and unload the chart.
Manually recalculating is especially useful when developing external DLL calls and the DLL has been updated since the chart was loaded (Note that ‘UNLOADCUSTOMDLLS=’ needs to be set to ‘True’ in the Nstparam.ini file in order to copy over a dll being used by a chart)
Also use the ‘Recalculate Chart’ menu item to refire a trading strategy or prediction that has inputs of the form Lead(XXX,1) where XXX is raw data like the Open, High, Low, Close or Volume. Use of Lead(XXX,1) allows for a trading strategy or prediction to ‘peek’ into the next bar to make decisions. Without ‘Recalculate Chart’, leads work well when backtesting, but not when used in real time since the trading strategies and predictions are fired at the end of each bar when no data exists in upcoming bars. Use of the ‘Recalculate Chart’ menu item solves the problem, essentially telling NeuroShell Trader when to ‘peek’ into the data of the red bar forming at the end of the chart in order to revaluate any Lead(XXX,1)’s.
-
Data CD ‘ The data cd distributed with version 4.0 is no longer distributed in 5.0 due to the prevelance of online downloading and data services which provide historical data.