Better Optimizer result storageOptimizer results are no longer stored in an MDB database, this means there is no longer a dependency on a legacy file format, and no longer an artificial storage size limit.

New icon set and color schemeTradesignal now has a new icon style and associated theme changes including a light and dark color scheme..

Currency and Unit Conversion for Combined SymbolsCombined symbols (whether made from instruments from the data feed, or from continuous futures), now support currency and unit conversion via the property inspector (or when created form the command line/as Equilla inline instruments). To convert the currency of such a symbol, add it to a chart, then simply change the currency property of that instrument in the property inspector. Changing the unit is done in much the same way. Currency conversion is only supported when all underlying instruments have a valid currency, where the currencies differ (illustrated with a ? symbol), currency conversion may be used to set a single standard currency for the underlyings. Unit conversion is only possible if all underlyings either have the same unit or have a unit that can be converted to the unit of each of the other underlyings.

Most Recent Recipients List for SMTP Email DialogPreviously entered recipients are now made available in the SMTP email dialog when typing a recipient's email address.

DPI Scaling on 4k monitorsSupport has been added for both the font scaling and DPI Scaling methods allowed by Windows to scale applications on high-resolution monitors (e.g. 2k or 4k). When either scaling type is activated (normally following a re-log), the application will scale its various windows and dialogs in proportion to the desired size.

Map Option Contracts and Warrants for IB order routingIt is now possible to route strategy orders to IB Option Contracts and Warrants. Adding the strike price and contract type (put or call), to the mapping information will now allow routing to the desired contract.

Changed SMTP default SSL portThe default SSL port for SMTP settings has been changed to 587. This change will only have an effect if the SSL checkbox on the SMTP settings panel is activated. A hint about this and the old values has been added to the setting panel.

Two rendering modes for seasonal chart contracts with more than 12 months to expiryA new default mode has been added for rendering contracts with more than twelve months to expiry in a seasonal chart. Such contracts will be displaced in the chart from their expiry point, back to the distance to expiry. This will often require the seasonal chart to be set to show more than 12 months of data to see the contract. A new displacement option has been added to the chart seasonal properties that will displace all contracts into the end year in the same way that seasonal charts rendered in prior versions. The seasonal average indicator will only use the new mechanism, since the average requires this to be correct.

Start/end date/time shown when zooming/panning a chartThe date scale on a chart will now show the exact start and end date/times of the viewport when a zoom or pan operation is in progress via mouse or keyboard. This feature allows users to precisely set the data range in a chart without having to use the set timespan dialog.

Improved display of chart value scale labelThe value scale label in charts will now resize the value scale to ensure that it is always visible. To compensate for the effect this will have on chart sizes, the label is rendered with a smaller font than the rest of the scale (75% of the size).

Open chart on application startIt is now possible to start the application and open a chart for a specific symbol directly from the Windows command prompt using the following command line switch: tse -chart ""After start, a workspace will be created containing a new chart with the specified symbol. The quotation marks are optional if no spaces or special characters are in the symbol.

Change default element styles after theme changeWhen a user changes between the light and dark themes, they will now be offered a choice to update their chart, watch list, and other styles to the corresponding dark or light style.

Deemphasized time values on chart date scaleTime values displayed on the date scale in a chart will now be more faded than displayed day/month/year values.

!! BREAKING CHANGES !!

Updated look for Classic and Carbon styles and removed old Brown and Blue chart stylesIf the older version of these styles are still desired *and* are being used in a saved workspace, please open the workspace, selected the chart and then click "Home > Style > Styles > Save Style" on the Toolbar, to save the style from the chart for future use. The newly save style can be made the default style by clicking "Home > Style > Styles > Manage Styles" to show the Manage Styles Dialog.

Simplified colors in panoramic chart scrollbarThe chart's panoramic scrollbar will now use the date scale foreground color for the bar and the grippers. The charts drawn in the scrollbar will now use grey scales instead of various pooled color values.

Start initialization of Equilla scriptsStart initialization of Equilla scripts has changed dramatically to allow the new persistent variable types. Most scripts will notice no change, but in some very edge cases where the first bar could be evaluated multiple times (e.g. in Renko), the variables would previously be reinitialized each time. This will no longer occur (since it was incorrect behaviour).

And/Or precedence in EquillaThe precedence of "And" and "Or" operators in Equilla has changed from equal precedence, to "And" having higher precedence (as is expected in almost all programming environments). This means that code such as:

If a Or b And c Then DoSomething();

which was previously equivalent to:

If (a Or b) And c Then DoSomething();

will now be treated as:

If a Or (b And c) Then DoSomething();

If in doubt, use parentheses.

Removal of Excel Order Tracker Sample Equilla Extension ProjectTradesignal no longer includes the Excel Order Tracker sample Equilla extension project, or its corresponding showcase indicator. Microsoft has changed its one API for all office versions policy, so a connection to office (which is still relatively easy to do), will have to use a different COM API for each office version, preventing a general example that works for any office version.

Removing Japanese Indicator setWe are no longer shipping a special set of translated indicators for Japanese installs.

Removal of two light themesTradesignal now only includes one light and one dark theme, instead of the three, barely different, light themes and one dark theme from the previous version.

Seasonal charts with active contracts with more than 12 months to expiry will now shift the current data by the distance to expiryThis new mechanism ensures that the data in the active contract is compared against the correct point in time with expired contracts. To change it back to the rendering used in earlier Tradesignal versions, set the property "Chart > Seasonal > Displacement" to "Current Year".

Removed toolbar links to color-tagged indicators and strategiesThe feature to add a Toolbar Shortcut for an indicator or strategy with custom name and parameters has long superseded this feature.

IntPortion function changed to only return the signed integer part of the expression.In previous versions IntPortion was just an alias for the Int function, the behaviour has now been corrected. Use the Int function instead if the prior functionality is needed.

EQUILLA

Dynamic Quotes APINew Equilla API that allows a quote value related to the parent instrument to be queried by its textual name (as opposed to the limited set of standard symbolic name fields from earlier versions). The syntax is as follows: Field( "Ask" ) of Data1The instrument specifier can be omitted to refer implicitly to Data1. The parameter can be the name of any field that is available for an instrument via the watch list (the watch list field picker also displays these names more clearly). The Field() function will return the Invalid value if the field does not exist, or is not yet connected. Using the Field() function will add a subscription to that field, so the indicator will re-evaluate based on updates to the field value.

Persistent variables APITwo new Equilla keywords have been added that may be used to prefix a variable or array (in the same way as one uses IntraBarPersist).

FullEvaluationPersist: The variable or array will keep its value even if the user fully reloads the data, replaces the parent instrument or otherwise.

Serialized: The variable or array will behave like FullEvaluationPersist and its contents will be saved into the workspace. When the workspace is newly opened, the variable or array will be initialized with its prior value. The workspace will be marked as modified if the variables value changes.

Re-evaluate APITwo new functions have been added to Equilla. These allow a script to schedule its own next evaluation, instead of waiting for the next price update.

RequestEvaluationIncremental: Will schedule an evaluation as if a new price update had occurred.

RequestEvaluationFull: Will schedule the full historic data to be re-evaluated from the first bar.

Both of these methods can lead to significant performance problems (since they undermine the built-in performance controls) and should only be used in very limited scenarios.

Dynamic Global Statistics Query APIIt is now possible in Equilla, to query statistic values via their textual name. This allows for more flexible access to the trading statistics, including any that a script may have added.

FillArrayWithStatisticNames( "array" )Can be used to fill a dynamic array with one entry for each statistic that is known.

GetStatisticByName( "NetProfit", StatisticAllTrades, True ) of Data1Can be used to query the current value of a named statistic. The second parameter can be used to restrict the statistic just to short or long trades. The third parameter can be used to specify True if global statistics should be queried (in which case the instrument context Data1 is not needed), or False if the statistic set for the parent instrument (Data1 etc.) is queried.

Grid APIThe Equilla Grid API allows small grid windows to be created that float within a chart window and can be used to display label/value type data irrespective of where the user scrolls. Grids can utilize a range of formatting such as colors, padding font size, row spanning or image rendering. Cells can also be made to be interactive. This allows cells to act as a checkbox, text entry field, number entry field, push button, push button list or drop down list. Interactively changing the value of a grid cell will result in the Equilla script being re-evaluated, so that such a change can be detected and reacted to. Please refer to the help article "Grids in Equilla" for a detailed description of this API with samples.

GridCreateWindow: Creates a new (empty) window.

GridCreateButton: Creates a new Button control on a window.

GridCreateButtonStrip: Creates a new ButtonStrip control on a window.

GridCreateCheckBox: Creates a new CheckBox control on a window.

GridCreateDropDown: Creates a new DropDown control on a window.

GridCreateImage: Creates a new Image control on a window.

GridCreateLabel: Creates a new Label control on a window.

GridCreateNumericEdit: Creates a new NumericEdit control on a window.

GridCreateSeparator: Creates a new Separator control on a window.

GridCreateTextBox: Creates a new TextBox control on a window.

GridRegisterImage: Registers an image to be available for subsequent use in Image controls by passing in the returned id.

GridRemoveCell: Removes the specified grid control.

GridRemoveColumn: Removes all grid controls in a given column.

GridRemoveRow: Removes all grid controls in a given row.

GridRemoveWindow: Removes a given window.

GridGetValue: Returns the value of the specified grid control or Invalid if none exists. Results depends on the control type.

GridSetAlignment: Set content/text alignment for all controls or a single one.

GridSetBackColor: Sets background color for all controls or a single one.

GridSetBorderColor: Sets border color of a window.

GridSetBorderVisible: Sets whether border lines should be drawn or not.

GridSetFont: Sets font size and style for all controls or a single one.

GridSetForeColor: Sets foreground color for all controls or a single one.

GridSetLineColor: Sets line color of a window.

GridSetLineVisible: Sets whether grid lines should be drawn or not.

GridSetMargin: Sets margin values for all controls or a single one. Margin is the spacing between a control and the grid cell.

GridSetMinimumWidth: Sets minimum width for all controls or a single one. Minimum width applies to actual content area.

GridSetPadding: Sets padding values for all controls or a single one. Padding is the space between a control's inner content and its borders.

GridSetRepositionable: Sets whether the window can be repositioned by clicking on a non-editable cell and dragging.

GridSetValue: Sets the value of the specified grid control. Result depends on control type.

GridGetEventColumn: Returns the column of the control the user has most recently interacted with.

GridGetEventName: Returns the name of the control the user has most recently interacted with.

GridGetEventOccurred: Returns True when the user has interacted with a control, False otherwise.

GridGetEventRow: Returns the row of the control the user has most recently interacted with.

GridGetEventValue: Returns the value of the control the user has most recently interacted with.

GridGetEventWindowId: Returns the window identifier for the window containing the control the user has most recently interacted with.

Add Image via EditorIt is now possible to load and Base64-encode a PNG image via the context menu in the Equilla editor. The expected usage of this feature is to store the encoded image in a variable (via the GridRegisterImage() function), and later passing this to an image cell in a grid, for rendering in the chart.

Scatter Plot and Equilla Scatter APIA new Equilla drawing method has been added DrawScatter(), that allows a scatter chart to be drawn. DrawScatter( Close of Data1, Close of Data2, "d1", "d2", Default, Default, SymbolDot + SymbolJoined );

This chart will share the value axis with the parent instrument, but will generate a new horizontal value axis above the date scale in the same sub-chart. The date/time range selected in the chart will be used to filter the data points shown in the scatter plot. See the help article on DrawScatter or the source of the Scatter indicator for how to use this function. Hovering over any scatter plot point in a chart will show that points value (the target cursor cannot be used to inspect this price by price data).

Cycles PlotThe DrawSymbol Equilla function now has a new connected drawing mode that will draw semi circles between each plotted symbol and optional anchoring to the top of bottom of the view port. The following additional flags may be added to the DrawSymbol() Style parameter to change the drawing:

SymbolJoined: Joins the selected symbols with a line.

SymbolNoSymbol: Omits the drawn symbol, if only the joining lines are interesting.

SymbolJoinedArc: Joins the selected symbols with an arc.

SymbolJoinedArcInverted: Joins the selected symbols with a flipped arc.

SymbolAnchorTop: Anchors the drawn symbol to the top of the chart.

SymbolAnchorBottom: Anchors the drawn symbol to the bottom of the chart.

SymbolAnchorPriceMid: Anchors the drawn symbol to the middle of the high/low price range.

SymbolAnchorPrice: Anchors the drawn symbol to the current price of the symbol.

Property date picker for Equilla date inputsIt is now possible to add a second parameter to an Equilla text input that indicates this should be treated as a date/time:

Input: MyDate( "2016-10-20 12:55:00", InputTypeDateTime );

Doing so will automatically convert the input variable to a date/time type, and present a date/time picker in the property inspector when the input needs to be changed. Several constants have been added to allow the initial value of such an input to be generated when it is added to a chart (instead of having a fixed value):

InputValueToday: Set the input to today's date, when the script is added to a chart.

InputValueNow: Set the input to the current date and time, when the script is added to a chart.

InputValueFirstBarDateTime: Set the input to the date and time of the first bar of the script's parent, when the script is added to a chart.

InputValueLastBarDateTime: Set the input to the date and time of the last bar of the script's parent, when the script is added to a chart.

Input: MyDate( InputValueNow, InputTypeDateTime );

Property symbol picker for Equilla symbol inputsIt is now possible to add a second parameter to an Equilla text input that indicates this should be treated as an instrument's symbol:

Input: MySymbol( ".GDAXI", InputTypeSymbol );

Doing so will present a symbol search dialog in the property inspector when the input needs to be changed. A constant has been added to allow the initial value of such an input to be generated when it is added to a chart:

InputValueParentSymbol: Set the input to the symbol of the the script's parent, when the script is added to a chart.

A symbol created in this way would typically be passed into an instrument variable. E.g. to get a GBP converted instrument (initially set to the same symbol as the parent:

Property symbol list picker for Equilla symbol list inputsIt is now possible to add a second parameter to an Equilla text input that indicates this should be treated as a list of symbols:

Input: MySymbolList( "", InputTypeSymbolList );

Doing so will present a symbol list create/edit dialog in the property inspector when the input needs to be changed. The default value of this list either needs to be in the format: "[symbol1, symbol2, ...]" or left empty. The value of such an input is designed exclusively to be given to a List() function in an instruments block:

The string used to embed the symbols can be returned from a function, thereby making this a very powerful customization feature. Please note, as before, all items in the list will be loaded and subscribed to, so large lists can have performance implications.

Equilla function: EnumValueToString()This function will return the label of an enum value in an indicator or strategy. It is used to pass a more meaningful value into a user function based on an input enumeration:

Equilla: DateDiff() with Interval_SessionDayThis new interval will calculate the number of in-session days between the two specified dates. To ensure the correct sessions are used, one can always target a specific instrument in the normal way: DataDiff( Interval_SessionDay, date1, date2 ) of Data2;

INDICATORS

Quotes IndicatorThe quotes indicator shows a small, movable grid in the chart view port. Names of valid quote fields can be added in the bottom row. The grid will show the current quote value of any added fields. The field names are the same as those used in the watch list add column wizard.

Term IndicatorPlots a term structure based on a list of expiring instruments entered by the user.

Strategy Report IndicatorThe strategy report indicator shows a small, movable grid in the chart view port containing the name and values of trading system statistics for this chart. Statistics (built-in or custom) can be added or removed from this grid by clicking the name column in the grid.

Symbol Watermark IndicatorThis indicator will draw a watermark into the back of the sub-chart, containing the ticker and name of the parent instrument.

Logo Watermark IndicatorThis indicator will draw an image into the back of the sub-chart, containing the Tradesignal logo. Cloning this indicator and replacing the image variables base64 encoded image, via the Equilla editor, is a great way of embedding any logo as a watermark.

Time & Sales IndicatorThis indicator will show a small time and sales grid, as a floating window within the chart.

LII Ladder IndicatorThis indicator will show a small level 2 ladder histogram, as a floating window in a chart.

Bid Ask Quote IndicatorThis indicator will show a small grid containing the Bid, Ask and Spread quotes, formatted in such a way as to emphasise the significant decimal values (as is common for currency quotes).

Scatter indicatorThis indicator will plot the values of its two parent instruments on a value by value scale. The horizontal value scale is drawn inset into the chart, and the date scale show may be used to filter the data range viewed.

Relative Momentum indicatorThis indicator will plot the relative performance of the symbol specified in its input and the parent instrument, against the momentum of that performance. The horizontal value scale is drawn inset into the chart, and the date scale show may be used to filter the data range viewed. This indicator can be added multiple times to the same parent, with different symbols, to show performance of related items relative to the shared benchmark (parent).

Counter-Clockwise indicatorThis indicator will plot the values of its parent instrument against its volume. The horizontal value scale is drawn inset into the chart, and the date scale show may be used to filter the data range viewed.

Cycles indicatorThis indicator can be used to mark cyclic regions within a chart.

Average Value At Time Projection ModeThe AVAT indicator now has a mode to project the current AVAT value for the whole current day.

Date picker used for relevant pre-existing indicatorsThe start date input for Base Relative, Ratiocator, Percent Performance and Relative Performance will now offer a date picker in the property inspector instead of a textbox.

RSquare indicatorCalculates and plots the RSquare value of the two parents (same as correl() * correl()).

Relative Performance Benchmark indicatorA version of Relative Performance that takes one parent and the second symbol is chosen in the property inspector. Charts are less cluttered and the indicator works well in watch lists.

RSquare Benchmark indicatorA version of RSquare that takes one parent and the second symbol is chosen in the property inspector. Charts are less cluttered and the indicator works well in watch lists.

Correlation Benchmark indicatorA version of Correlation that takes one parent and the second symbol is chosen in the property inspector. Charts are less cluttered and the indicator works well in watch lists.

Ratiocator Benchmark indicatorA version of Ratiocator that takes one parent and the second symbol is chosen in the property inspector. Charts are less cluttered and the indicator works well in watch lists.

Tradesignal Online Terminal Version 7.7

Updated Performance Report

New statistics:

Select Net Profit

Select Gross Profit

Select Gross Loss

Select Profit Factor

Standard Deviation of Trade Net Profit

Standard Deviation of Winning Trades

Standard Deviation of Losing Trades

Annual Rate of Return

Return on Initial Capital

Return Retracement Ratio

Reward/Risk Ratio (RINA Index)

Net Profit as % of Intraday Drawdown

Net Profit as % of Max Drawdown

Max. Drawdown as % of Initial Capital

Max. Intraday Drawdown as % of Initial Capital

Max. Run-up as % of Initial Capital

Average Trade Drawdown

Max Trade Drawdown

Max Run-up

Max Run-up Date

Max. Intraday Drawdown Date

Statistic groupingUse the option "Home > Table > Columns > Toggle Grouping" to show/hide group headers for the statistics shown in the statistic pages of the Performance Report.

Performance Report trades in account currencyA new property called "Trades Display Currency" has been added to the Performance Report that allows the user to decide if the prices shown for trades are shown in the original currency of an instrument, or in the specified Account Currency.

Divider line for MAE and MFE chartsThe Maximum Favourable/Adverse Excursion charts now show a dividing line to help measure the appropriateness of displayed data. This line can be configured to set the slope and intercept, its visibility and its colour.

MAE/MFE charts based on closed tradesThe Maximum Favourable/Adverse Excursion charts now show actual closed trades instead of filled exit orders. This change only makes a difference when a filled exit order exits more than one entry, in such cases the exit must be treated as multiple trades, in order to correctly calculate the runup and drawdown.

Trades listThe Performance report now shows a list of all trades from the Trading System. A trade may be in an open or closed state, but this is clearly visible from the grid. A trade is distinct from the other Filled Orders list, in that each entry may have one or more trades associated with it based on the number of exits. An order that exits multiple entries will generate a trade for each entry.

Trade Drawdown calculation modeA new property called "Drawdown Calculation Mode" has been added to the performance report, this mode determines how drawdown and runup is calculated for a single trade. The drawdown value is used in the Trades List and MAE/MFE charts. The calculation mode can be set to either "Entry to Valley", in which case the maximum drawdown is measured from the entry price to the biggest loss, or "Peak to Valley", in which case the drawdown is measured as the largest drop from a profit high point. The mode applies to the Runup in a similar fashion.

Percent Drawdown/Runup in Trades ListTwo columns have been added to the Trades List which show the Per Trade Runup/Drawdown values as a percentage of investment. This means the MAE and MFE in both absolute and normalized forms can be observer in this list (or in the corresponding graphs).

Restricting settings for active performance report graphProperties in the Inspector will now only be shown for the currently selected performance report graph.

User Interface Enhancements

New Office 2013-style themesIt is now possible to selected one of the Office 2013-style themes that are available in the application under, File > Options > Personalize > Theme. There are three light background themes.

Full Screen ModeFull-screen mode (auto-hide ribbon) will maximize the application and completely hide the title bar and ribbon. To temporarily show the ribbon, one must click on the very top potion of the screen. This mode is toggled by selecting the the "Auto-Hide Ribbon" button on the top right of the application, to the left of the minimize button.

Manual sorting of Watchlist/Scanner/Portfolio rowsBy dragging a row in a Watchlist, scanner or Portfolio and dropping it to a new position, it is now possible to create a user-defined sorting of the document's contents. If automatic sorting is later applied (by clicking on column header), the last manual sort can re restored by selecting "File > Table > Columns > Clear All Sorting".

Drag and Drop rows to a new Group in a Watchlist/Scanner/PortfolioIf the Group Column is being used for grouping in a Watchlist, Scanner or Portfolio. Rows may now be dragged and dropped to a new group. Please note, this only applies to grouping by the special "Group" column, and not to grouping by other columns.

More chart timespan optionsThe number of time span quick picks for charts has been expanded to include more options and better separate mods that show the last 60 minutes from the current hour (which may not yet be complete).

Send test alert emailsThe button to Test Emails settings found at "File > Options > Alerts > Email Alerts > Send test email..." will now push an email onto the alert email queue and send it as if it was an alert. This simulates more closely a real alert email than the previous method that allowed the user to send a mail via a dialog. The email sent may be delayed based on the specified minimum emailing interval. To test basic email settings the button under "File > Options > Personalize > Email > Send test email..." should be used.

Disable value-scale abbreviationsBy default, when no price labels are shown on the value scale, prices will be abbreviated from 10,000 to 10k, and so on. There is a now a property in the inspector at: "Chart > Value Scale > Compact Prices" that can be set to false to always show value scale prices without abbreviation.

New Equilla Features

Additional trade statisticsThe following statistic variables have been added to the Equilla language, and their current value may be queried from any script on each bar;

Drawdown

MaxDrawdown

IntradayDrawdown

MaxIntradayDrawdown

GlobalDrawdown

GlobalMaxDrawdown

GlobalIntradayDrawdown

GlobalMaxIntradayDrawdown

StdevAllTrades (equity)

StdevWinningTrades

StdevLosingTrades

MaxRunup

Closed trade APIA new API has been added to Equilla that allows details about completed trades to be queried, these trades differ slightly from the Filled Order API in that they define a trade as a single entry to a single exit, where as a filled order may exit multiple entries. Accurate Per-Trade Drawdown may only be queried with this API.

ClosedTradeCount()

ClosedTradeEntryLabel()

ClosedTradeExitLabel()

ClosedTradeAmount()

ClosedTradeEntryPrice()

ClosedTradeExitPrice()

ClosedTradeEntryDateTime()

ClosedTradeExitDateTime()

ClosedTradeEntryDate()

ClosedTradeExitDate()

ClosedTradeEntryTime()

ClosedTradeExitTime()

ClosedTradeEntryId()

ClosedTradeExitId()

ClosedTradeDrawdown()

ClosedTradeRunup()

ClosedTradeEntryCommission()

ClosedTradeExitCommission()

ClosedTradeEntrySlippage()

ClosedTradeExitSlippage()

New Indicators

Average Value at Time (AVAT) indicatorThe AVAT indicator has been added. This indicator plots the average value for a given bar, for the same time of day over a defined number of prior days. This differs from a normal moving average which plots the average over a number of recent consecutive bars. This indicator is most often used on a volume indicator. This indicator requires that the parent item is an intraday instrument that has a period which is a multiple of one minute (e.g. 1 minute, 2 minutes, 10 minutes, 60 minutes, etc.).

Back Color Daily (BACKD) indicatorThe BACKD indicator will color the background of a sub-chart in two alternating colors, according to the day of the shown bars. This is of most use in an intra-day chart, to easily visualize day transitions.

Updated Strategy Drawdown indicatorThe strategy drawdown indicator now has three new properties, "ShowDrawdownAsPositiveValues" (that inverts the plotted values since now it is shown as a negative value), "Calculation", which generates either absolute or percentage values for drawdown, and "Source", which allows the user to select which type type of drawdown to plot (ParentDrawdown, ParentIntradayDrawdown, GlobalDrawdown or GlobalIntradayDrawdown).

Updated Strategy Equity Combined indicatorThe Strategy Equity Combined indicator now allows the user to show strategy equity as a percentage value by setting the "Mode" property to either "Percent" or "PercentMoneyMgmt". The former option will use the "Capital" property to calculate the percentage, the latter option will use the Money Management "Initial Capital" property to calculate the percentage.

Currency Conversion in Forward Curve indicatorThe indicator now has a property that allows any currency conversion options applied to the parent instrument to also apply to the forward curve.

Trading Engine

Split commission and slippage over closed TradesThe new Money Management property, for Commission/Slippage, "Split over each trade in an Exit Order" can be set to either "True" (the default) or "False", if true, if an order exits multiple entries, commission and slippage will be distributed evenly across each trade. If set to false, commission and slippage will be applied in full for each trade exited by an order.

Trade Counting based on Closed Trades or Filled Exit ordersA new Money Management property has been added, called "Single Entry per Trade for Statistics", that controls what constitutes a trade in statistics values that require this. This property can be set to either "True" (the default), in which case trades will be based on an entry/exit pair. The property can also be set to "False", in which case trades will be based solely on exits (for example and exit that exits two entries would be a single trade). In prior versions, the latter option was standard, and will remain set in any pre-existing workspaces.

Tradesignal Online Terminal Version 7.6

New Equilla Features

Equilla function: IFs(condition, true result, false result)New Equilla function has been added that mirrors the functionality of the IFF() function, but operates on TrueFalseSimple, and NumericSimple arguments instead of Series arguments of the same type. This can be used to remove the warning messages that the compiler generates when using simple types instead of series types.

Equilla function: IsEvaluatingFirstScannerItem()This function will return true if this is the first row to be evaluated when performing a scan. This method is useful since it allows scripts to perform start-up actions in a scan (such as drawing headers in CSV files).

Equilla function: FilledOrderDrawdown(position, n)Returns the drawdown of the nth filled order within the specified position counting backwards from the current position (which would be position=0).

Equilla function: FilledOrderRunup(position, n)Returns the runup of the nth filled order within the specified position counting backwards from the current position (which would be position=0).

Per-trade Drawdown and Runup in the Strategy Performance ReportThe trades list in the performance report now contains additional columns for the maximum drawdown and maximum runup for each trade.

Maximum Adverse Excursion & Maximum Favourable Excursion graphsThe Strategy Performance Report now contains two additional graphs, showing maximum adverse excursion for all trades and maximum favourable excursion. The graphs can be shown either using the actual prices or as percentage profit (where multiple securities have differing currencies, for example). The trades shown in the graph can be filtered by profitability or by underlying security. Colors and labels can be configured normally in the property inspector. Hovering over a specific trade in the chart will show information on it, including its identifier in the trades list.

Tradesignal Online Terminal Version 7.5

Scheduled scanning

It is now possible to set up scanners to be run a specific times of the day/week (Tradesignal must be running at the time). Once a workspace containing a scanner is saved, go to File > Print > Print & Scan Schedule > Add Schedule to set up a scan schedule. In the resulting dialog, a new drop down list is available that allows the user to select whether to print the workspace, scan in the background or scan in the foreground and save the results. Selecting either of the scanning options will not result in the workspace being printed. Scanning in the background will cause the workspace to be opened at the appropriate time, the scanners run and then the workspace to be closed. Results will not be saved, but any scripts (including those that either generate files or communicate externally) will be executed. Scanning in the foreground will, at the appropriate time, cause the workspace to be visibly opened (if it is not already so) and the scanner to be started. Once complete, the workspace (including the new scanner results) will be saved, the workspace will not be closed automatically.

Convert the currency and/or unit of all watchlist, scanner or portfolio items in one action

The currency of all selected securities in a watchlist, scanner or portfolio can now be changed by select all of the items in the list that should be changed (shift-click to select a range, Ctrl-click to select/deselect individual rows). Then in the property inspector change the currency or unit property to the desired values. The change (if applicable) will be applied to the selected rows.

Category tags for indicator and strategy searches

The indicator and strategies toolboxes can now be filtered by the type of indicator (or strategy) that should be shown. Click on the drop down box below the search box to be shown a list of all available categories, then check those categories (e.g. trend followers) that should be shown. The list of available indicators will be updated to only show trend following indicators. Typing a category name prefixed with an at (@) symbol in the search box will also filter the list by the entered category.

Add categories to any Equilla indicator or strategy

Equilla now supports a new "Categories" keyword that may be added to the meta block of an indicator or strategy. This meta property takes a single string as an argument that contains a semi-colon separated list of category tags that should appear in the indicator and strategy toolbox. When the Equilla script is next compiled the tags will be added to the toolbox list.

Meta: Categories("Trend Follower; Momentum");

Percent profit per trade, month, quarter and year in performance report

The trades list in the performance report will now show the percent profit value as an additional column of data next to the "profit" column. Summaries can also be calculated on this column. The monthly, quarterly and yearly periodic returns reports also have the percent profit data displayed in a column next to the profit column (summaries may also be calculated).

New Indicators

Strategy Drawdown (STRADD) indicator

The drawdown indicator plots the current trading system's drawdown. Properties exist allow specification of the period to reset the drawdown calculation (profit taking point) and whether the values are based on Percentage or absolute drawdown.

Strategy Profit & Loss (STRAPL) indicator

The Equity indicator plots a strategies current profit/loss in a subchart. Lines are plotted showing the P&L for long trades, short trades and all trades. Properties allow configuration of which plots to draw.

Displaced Forward Curve indicator

The Forward Curve indicator now has a new property (PlotShift) that allows its output to be displaced into the past by a number of bars. This, for example, allows the indicator to show the previous (or further back) days data, and then to be adjusted to draw from the previous day.

Seasonal Projection (SEPR) indicator

The seasonal projection can be added to any instrument and it will calculate the yearly seasonal average (using percent performance) up to the end of the previous year. It will then adjust that value to the current year and plot it against the data for the current year (projecting it to the end of the current year. Settings exist to plot the seasonal average as a percent performance chart and also to restrict which years will be involved in the average. For example, adding the indicator multiple times each showing one of the previous years is a way to create a year-by-year overlay onto the current year.

Tradesignal Online Terminal Version 7.3

User Interface

Enhanced Ribbon Shortcuts to Indicators and Strategies with different properties

Add an indicator (or strategy) to the Toolbar by right-clicking on it and selecting "Create Custom Shortcut". The shortcut will appear in green on Ribbon Toolbar in the Home > Favorites section. The same indicator can be added multiple times. Click on the indicator to add it to a chart, watchlist, scanner or portfolio. Right-click on the shortcut to change its display name or any of its properties (e.g. period). In this way you can have a button on the toolbar for SMA10, SMA20 and SMA30 at the same time. These green shortcuts can also be added to the Custom Toolbar in the normal ways. To remove a button from the toolbar chose the Remove Shortcut option in the context menu.

Add sub-menu items (periods, chart-types, etc.) to the Custom Toolbar

The majority of sub-menus on the Ribbon Toolbar (periods, time spans, chart types, etc.) now all have icons and can be added to the Custom Toolbar either by right-clicking on the button when the menu is shown and selecting the option "Add to Quick Access Toolbar", or by using the Toolbar configuration tool located at File > Options > Personalize > Ribbon Toolbar.

Charting

Control the color change of Point & Figure charts

A point and figure chart now has a new property called "Color Change". This is used to determine when the coloring of the chart changes from Color 1 to Color 2. By default, the color will change when the month of a box changes. It is possible to change this value to allow the color to change on a weekly, daily or hourly based, or indeed wheever a new column is created.

Equilla Functions

ResultString = Replace(String, FindText, ReplaceText, IngnoreCase)Search the input string for all instances of the FindText and replace them with the Replace Text. Setting IgnoreCase to true will make the search and replace case-insensitive.

Split(ResultArray, String, Delimiters)Split the input String into sub-strings separated by any of the characters in the delimiters string (empty strings will be skipped). The results will be copied into the result array. The array must either be dynamic or large enough to hold the resulting sub-strings.

Result = IsBarOne()Return true if CurrentBar = 1. This is just a shortcut. Please remeber that CurrentBar = 1 is different from CurrentBar = FirstBar.

ResultSpan = DateDiff(Interval, Date1, Date2)Return the difference in interval units between the two dates. (a negative value is possible). Interval can be Interval_Day, Interval_Hour, Interval_Minute or Interval_Second.

Tradesignal Online Terminal Version 7.2

Point & Figure boxes remain square when zooming

[New in 7.2] Zooming and scrolling using the panoramic scrollbar or zoom tool, will now ensure that boxes in a point & figure chart remain square (so long as the Chart > Squaring property is not set to None). Zooming using the value scale (by right-clicking and dragging) will no longer function by default. This behaviour will be disabled if another instrument that is not compatible with fixed boxes is dragged into the same sub-chart and onto the same price axis. If there are not enough P&F columns to show the full data range when in full-data view, the chart will pad the view port with empty future date/time values.

P&F Price Targets indicator

[New in 7.2] The price targets indicator for Point & Figure charts plots price objectives the Chart. Price objectives are based on counts taken at/near specific patterns. The indicator plots both current and historic objectives and can be configured to show invalidated objectives. Vertical counts are based on the length of a specific column, horizontal on the length of a pattern. Various patterns are supported including specialized handling for one-box reversal charts.

P&F Pole Reversal Indicator

[New in 7.2] The Pole reversal indicator plots symbols onto a P&F chart when a high/low pole pattern is found and the current column retraces more than a specified amount of the pole's length, the so called "Warning". It can be configured to generate an alert when a warning is generated. The indicator shows pole reversal warnings both historically and in realtime.

P&F Pattern Indicator

[New in 7.2] The patterns indicator for Point and Figure charts, highlights common top/bottom-based patterns including multi-tops and catapults.

Snap mode enhancements

Temporarily enable/disable snap mode with Ctrl key

[New in 7.2] Snap mode may be temporarily enabled by holding the Ctrl Key while manipulating a tool. If snap mode is already active, holding the Ctrl key will temporarily disable snap mode, allowing free positioning of a tool point.

Rubberband chart snap mode

[New in 7.2] Chart snap mode will now only snap tool end points when the point approaches within a specific distance of a viable price.

Shift to toggle locking trendline to cardinal directions

[New in 7.2] Holding the shift key while a trendline is being drawn will force the tool to be drawn either horizontally or vertically. In a P&F chart, holding the shift key will allow free positioning of a trendline that is by default locked to either horizontal, vertical or 45 degree orientations.

Moving a tool with snap mode now snaps the end point closest to which was grabbed instead of an arbitrary mid point

[New in 7.2] If a tool is moved while snap mode is active, the tool point closest to where the tool was grabbed will be used to determine how the tool gets snapped. In the past, the exact point grabbed was used. This feature along with the rubberband snap mode makes moving tools precisely easier.

Further additions

Measurement tool

[New in 7.2] A new tool has been added that functions like a trendline, but always shows the measurements for the time period and value range covered. These measurements can still be activated on a normal trendline.

Limiting drawn tool prices to relevant precision

[New in 7.2] All tools when drawn in a chart will only be snapped to prices that are 1/10th of the highest precision price associated with the parent chart object. The price values shown in the inspector can still be set manually to any precision.

Pan chart with right-click and drag

[New in 7.2] Clicking and holding the right mouse button in a chart and then dragging the mouse will now pan the chart either vertically or horizontally.

Tradesignal Online Terminal Version 7.1

Change font, size and background color of strategy trade arrow labels

[New in 7.1.1] A new property in the chart's properties called Trade Labels / Font and Background Color, can now be used to set the font, font style, font size and background color of the labels used on strategy trade arrows.

Full-text search for help articles

[New in 7.1.1] The search in the Help band in the Toolbox will now also search the full content of help files for keywords instead of just the help article's title. All such results will be listed after the results for Equilla help results and title-based matches.

User-defined extension of Fibonacci Retracement chart tool

[New in 7.1.1] It is now possible to manually resize the left and right extension of the Fibonacci Retracement tool by left-clicking and dragging the ends of one of the retracement lines (the top-left and bottom-right corners still change the calculation range of the tool).

Multi-select support in the Toolbox

Mehrfach SelektionAll panes in the toolbox (Symbol Lists, Workspaces, Indicators, Strategies, etc.) now support multi-select operations. To select multiple items in these panels, hold down the Ctrl key while clicking on the items to select (alternatively hold the Shift key and click to select the range). Operations such as Delete, Open and Set Tag will now be applied to all selected items of the same type. Drag & Drop operations are also supported, so it is possible to select multiple symbols in a list (or across multiple lists) and either drag them into a new list, or into a watchlist in a workspace for example.

Manage Tools panel in the chart's Manage Objects dialog

Objekte VerwaltenA new tab page has been added to the Home > Chart > Manage Objects dialog that lists all of the tools found in the active charts. From this dialog it is possible to select tools, remove tools, and scroll to the tool in the chart. The dialog provides many options for locating the tools of interest including grouping by properties of the tool, filtering and sorting. Multiple tools can be deleted at once by first selecting them while holding the Ctrl or Shift modifier keys, and then selecting the delete button.

Breaking on runtime errors

By default, if a runtime error occurs, the debugger will automatically break on the instruction that caused the error. This allows the developer to identify exactly what went wrong, without having to manually set breakpoints to stop just before the error.

This feature may be enabled or disabled in the property inspector, using the Break on Runtime Error property.In the case that runtime errors are disabled in a Equilla Script, the break point will still be triggered, although the execution can then be resumed afterwards.

Item Number indicator

Add this indicator to any scanner, watchlist or protfolio to get the item number. The new indicator Item Number is doing that to help you, sorting your list the way you want it.

Arrow chart tool font property

The arrow tool now has a font property that allows the style and size of the arrow tool's text to be independently changed from the font used by the chart.

Arrow chart tool in-place text editing

Clicking on the arrow tool's information area will now show a text editor that allows direct entry of text to be displayed in the information area of the tool.

Tradesignal Online Terminal Version 7.0

User interface

Office 2010 Look & Feel

New interfaceThe application now uses the look and feel of the Office 2010 suite. This includes support for the tab-based ribbon and the command line below that. The so-called backstage view replaces the file menu as a way to better manage file related operations..

Quickaccess

Customizable ToolbarA new customizable toolbar has been added, that allows any of the commands available on the ribbon to be placed on it. Simply right click on a ribbon button and selected "add to toolbar" (right clicking on the toolbar button allows removal of the command). The toolbar can be positioned above or below the ribbon by using the context menu on the toolbar itself. Using a combination of this toolbar and the collapsed ribbon, it is possible to simulate the menu/toolbar setup of older office versions. For more fine grained control of the toolbar, at File > Options > Personalize > Ribbon Toolbar, is a tool for adding, remove, repositioning and grouping toolbar items.

Unremove function

Undo last close or delete operationIf a close or delete operation occurs, a pop-up displayed at the bottom of the application will appear allowing the LAST operation to be undone. This dialog can be dismissed, although the operation will be available via a link at the top of the application called "unremove". An application setting is available to never show the unremove pop-up, but rather only the link at the top of the application.

Favorite indicators and strategies on the ribbon

Indikatoren direkt anwählenAny indicators and strategies that have been marked with a tag (using the right-click context menu to set yellow, red or blue tag), will be additionally added to the Ribbon in a special group called Favorites. The button on the ribbon will use the ShortCode and tag color of the indicator. Options are available at "File > Options > Under the hood > Indicators & Strategies" to configure if indicators and/or strategies should be added to the ribbon..

Deleted workspaces, indicators, etc. are moved to the Windows recycle bin

When an Equilla file, workspace or template is deleted, it will be moved to the windows recycle bin, allowing their recovery if desired. There will no longer be a question if the item should be removed (this and the undo feature make such a question unnecessary).

Chart

Fibonacci Extensions

A new tool has been added to the chart, that allows creation of Fibonacci Extensions. When drawing this tool, an appropriate third point will be calculated (and later freely repositioned). This tool supported all of the options available for Fibonacci retracements, including alert support.

Mini toolbar to access chart tools

Mini Werkzeugleiste im ChartA mini toolbar containing each of the available chart tools will be displayed whenever the context menu for a chart is shown (by right-clicking in a chart). This mini toolbar is intended to save the user time when drawing a number of tools into a chart.

Point & Figure midpoint value for indicator calculations

1-Box ReversalThe point & figure chart type now provides an additional field call midpoint (in addition to open, high, low, close). The mid point is the value of the middle box in a specific column (or the midpoint between two when the column has an even number of boxes). When an indicator is applied to a point & figure chart, this new field may be selected from the property inspector, in preference to the close field in the indicators Price input property. Please note, it is not possible to explicitly code for this field from within Equilla.

Point & Figure single box reversal display mode

A new property has been added to point & figure charts to control how single box reversal columns are drawn. The "standard" approach is to compress the single box column into the next column. The "New Column" option will always start a new column after the single box reversal. Workspaces containing Point & Figure charts will default to the New Column approach (which was the method from the prior version). Newly created charts will default to the Standard approach.

Equilla

Debugger

DebuggerTransmission errors in trading systems and indicators in Equilla can be automatically checked by the new Debugger with pre-set parameters. The Debugger can also be set to monitor and stop automated trading systems, in order to let the user make improvements.

Access all money management properties from Equilla

The Equilla API has been expanded to allow read-only access to the current value of each of the properties available in the money management section of the property inspector (where there was no access in the previous version), the following additional global variables have been added:

TradeProps::StartDate

TradeProps::EndDate

TradeProps::InitialCapital

TradeProps::TickSimulationPercent

TradeProps::OrderGenerationMode

TradeProps::FieldsForRealTimeFillPriceGeneration

TradeProps::SlippagePerTradeMode

TradeProps::SlippagePerTradeValue

TradeProps::SlippagePerUnitMode

TradeProps::SlippagePerUnitValue

TradeProps::CommissionPerTradeMode

TradeProps::CommissionPerTradeValue

TradeProps::CommissionPerUnitMode

TradeProps::CommissionPerUnitValue

TradeProps::CommissionMin

TradeProps::CommissionMax

TradeProps::DefaultTradeQuantity

TradeProps::MaxTotalPositionSize

TradeProps::PyramidingMode

TradeProps::MaxOpenEntries

TradeProps::DefaultStopMode

TradeProps::DefaultProfitTarget

TradeProps::DefaultStopLoss

TradeProps::DefaultBreakEvenStop

TradeProps::DefaultProfitTrailingStop

TradeProps::DefaultPercentTrailingFloor

TradeProps::DefaultPercentTrailingPercentage

TradeProps::UseCommissionAndSlippageInAutomatedStops

Changes in Tradesignal Version 8.0.7

Fixed:

Varying translucent and non-translucent colors on differing bars in the same output plot from Equilla can result in no color being displayed.

Bars are closed too early when viewing data from a different timezone and using a period that does not fit to the hourly offset between the timezones (resulting in signals sometimes not being generated).

Scanner leaves Last Trade column empty if Expiration Date column is also present.

Indicators (e.g. SMA) contribute their full range of min/max values to the calculation of the value scale range if the viewport does not contain any bars written to by the indicator (e.g. bars up to the indicator's backbuffer).

Tradesignal exits with an unhandled exception after dragging an unknown file type onto the .exe icon.

Target cursor is not drawn in all subcharts after adding a subchart.

Typo in German language for: Optionen -- Ordner.

Conditions for conditional breakpoints in the debugger can be lost when script is re-compiled.

Saving Workspace with "Save As" does not always mark the Workspace as saved.

Equilla function "Split" sets an incorrect run-time error.

Invalid mouse state (leading to an assert) when left-clicking and long holding on a tool while the resolve ambiguous selection menu is shown for the same tool.

Debugger incorrectly highlights loop instruction if a runtime error occurs on an instruction in the loop body.

Panning logarithmic price scale causes price to move erratically.

Render operations when using remote desktop may cause unhandled exceptions if desktop is minimized or disconnected.

Changes to the backup location are only applied after the application has been restarted.

Properties losing focus by using a full history evaluation.

With the IB Order Router, it is not possible to map warrants and options (such as xm6s2y).

Incorrect labels for custom user statistics in performance report.

Watchlist: Empty rows when creating a long watchlist of TeleTrader symbols with an indicator (that exceeds the account's symbol subscription limit).

Instrument-bound global statistics are not marked as user statistics by the compiler causing dependent strategy evaluations to not occur.

Writing an indicator using non existent "Field" values causes an endless "loading.." state when forcing a reevaluation using the TeleTrader provider.

Using % Trailing (Floor) with a per contract Stop-Mode is always activated (ignoring the profit target).

Equilla DateDiff accepts constant Interval_Month but implementation does not support this.

It should be possible to open a non color-linked chart (or other document) from a watchlist (et al.) by holding the control key when using the "open in chart" context menu item. (not available in BETA1)

Fixed:

When using a default line chart property (or style) the % performance and seasonal wizards will not pick different colors for each line chart.

Week Range indicator does not work if there is no trading on Monday. Added a new start day of week field.

Unremove buffer was being cleared when showing the backstage view save and send panel.