Investor/RT Version 11.3.12 Release Notes
Released: June 12, 2014
- Using Pre-defined RTL Tokens
In the RTL setup window, when adding technical indicator tokens to the list of tokens on the right, Investor/RT now enables you to quickly add pre-defined tokens. For example, if you have various session statistics setups (presets) defined in your system, when you add the SESST token in the RTL setup window, Investor/RT will prompt "Which SESST?" and present a list of pre-defined SESST setups. You may select one or more items from the list and press OK; the associated tokens will be added to the available tokens list on the right side of the RTL setup window. After adding tokens in this fashion, you can rename the actual tokens if you wish to make them shorter for use in the RTL syntax, or simply use them as is. If you find yourself using the same indicator setups repeatedly in RTL, you can take advantage of this feature by adding clearly named "Presets". For example, if you commonly use RTL MA tokens for 13 period and 26 period simple moving averages, open the moving average preferences window, set the moving average period and type to 13, Simple. Click the Presets button and choose "New...". Assign the name MA_#13 to this preset for example. Repeat, changing the period to 26, and assign a new preset name of MA_#26. Thereafter, when using the RTL Setup window, you can quickly add both tokens MA_#13 and MA_#26 by double-clicking on MA: Moving Average in the list at the left, selecting the tokens from the list and clicking OK. When naming presets, it is recommended that you begin the name with the actual underlying indicator token, MA in these examples.
Prior to this enhancement, adding a technical indicator token to the RTL setup would prompt for manual setup of the token's indicator preferences. If you prefer to continue using RTL this way, manually setting up each token, you may go to Setup > Configuration and set the configuration variable PromptForPresetRTLTokens to False. This will cause Investor/RT to ignore predefined setups and prompt for manual setup as it did in Version 11.2 and earlier.
- Symbol Indirection using @n Ticker Symbols
Thirty two special ticker symbols @1, @2, ..., @32 can be used as indirect references to actual symbols that depend upon the context in which the @n symbol is used. When an @n symbol is added to a chart as a secondary instrument, the data charted will be obtained from the actual symbol found in the user text variable T#n for the existing (primary) instrument in the chart. This powerful feature can be very useful in charting related instruments. For example, suppose you create a chart of AAPL and you set T#1 of AAPL to GOOG, then add the symbol @1 to the AAPL chart. A chart of GOOG will appear in a new pane because @1 gets the actual symbol from T#1 of the host symbol AAPL. Suppose that you also have T#1 of IBM set to INTC. If you then change the APPL chart to IBM, the chart will show IBM and INTC since now @1 maps to the T#1 symbol of the host symbol IBM.
A chart can have several panes, one containing @1, another with @2, and a third containing @3 for example. You must of course use Setup Instruments to create these special symbols; define them as type "Cash". They must exist before you can add them to chart setups. For each host instrument, you setup T#1 to hold the @1 symbol, T#2 to hold the @2 symbol, and T#3 to hold the @3 symbol for that host instrument. If you use an @n symbol in a chart and the corresponding T#n variable contains nothing at all, or is not a valid symbol known to Investor/RT, then the @n pane in the chart will simply be blank. @n symbols have no data themselves, they are special placeholder symbols that direct Investor/RT to find the data using a T# reference to some other symbol.
@n symbols operate with any periodicity. Charts update dynamically. Once added to a chart, you may add technical indicators and associate them with any @n symbol. The indicators will then operate on the data of the indirectly referenced associated symbol. Pane titles will show the @n symbol followed by an equal sign and the actual ticker that the @n symbol references at the time. As you change the host (primary) instrument in the chart, the pane title will change to show the newly associated symbol for the new host instrument.
This new feature will be very useful to those who trade futures spreads. For each actual spread symbol, you setup T#1 to hold the symbol of the first contract in the spread and T#2 to hold the symbol of the second contract. Charts of the primary spread symbol can then show @1 and @2 panes, providing a view of the spread itself and its components. As you change primary instruments in the chart to a different spread, the @1 and @2 panes will update to reflect the two component contracts of the new spread.
To view and edit T# variables, open any quotepage and add columns T#1, T#2, etc. The page will then show the values of these T# variables for each symbol row. You may revise or enter new values for the T# cells by simply typing text into them.
- Option to Widen Crosshairs, Drawing Tool Lines
Configuration variables were added to enable multi-pane chart crosshairs and drawing tool lines/rectangles to be drawn thicker to increase visibility. Normally crosshairs and line drawing traces are drawn 1 pixel wide. Use Setup > Configuration to set ChartCrossHairThickness to a higher number of pixels for thicker crosshairs. Similarly set DrawingToolThickness to a higher number so that line traces when drawing trend lines and using other drawing tools are drawn thicker.
- Stochastic Indicator Bands and Transparency
The Stochastic Indicator now has a "Draw Bands" option, available when two or more lines are requested (Raw %K, Fast %D, Slow %D). Colored bands are drawn between the selected lines. The bands also have an option to be drawn transparently. When a band is drawn between two lines, the band color is determined by the line highest in value. For example, when a band is drawn between RawK and FastD, the band will have the RawK color when RawK is greater than FastD; the FastD color will fill the area between the lines when FastD has the greater value. When all three stochastic lines are selected, a band is drawn between the RawK and FastD line and another band is drawn betweeen the FastD and SlowD.
- Playback Speed Improvements
When using higher playback speeds, e.g. 1 second == 300 seconds for more, the actual speed of playback in Version 11.2 and earlier was adversely affected (slowed) by the chart redrawing activity taking place for every single tick. When playing back one minute interval data this is not an issue, but when playing back sessions with millions of ticks, the slow pace has been evident depending on the number of symbols and charts being played back. Version 11.3 introduces a configuration variable for controlling the pace of actual drawing. See Setup > Configuration, variable name PlaybackChartRefreshMS defaults to 300 milliseconds, i.e. during tick playback the chart is redrawn approximately three times per second, instead of once per tick. This considerably reduces drawing activity and allows playback to go through the data much faster when faster playback speed is in effect. Setting PlaybackChartRefreshMS to zero, will cause playback to perform chart drawing every tick as it does in Version 11.2 and earlier. Setting PlaybackChartRefreshMS to a much higher number, e.g. 1000 or 5000 may be beneficial for those playing back long periods of time (many days or months) rather than just a session's data.
- RTL Scan Evaluation Fix
Evaluation of Scan formulas has been handled somewhat differently than the evaluation of RTL custom indicators and trading signals. Scans are usually looking for a particular condition to be true or false at the current bar only. Thus the evaluation of scans in version 11.2 and earlier has not attempted to evaluate the entire array of conditions and then use the value of the last bar to determine the result. For efficiency, calculations were streamlined to operate only on the value of market data and indicators at the last bar. Certain scans however, were not evaluating properly when the formula used some statistical function such as SUM, MIN, MAX, over some period of bars. For simple formulas, such as SUM(CL > MA, 100) > 30 to find all instruments that closed above some moving average at least 30 or the last 100 days, would work okay, but more complex formulas such as SUM(CL > MA_A && CL < MA_B, 100) > 30 would not compute correctly, because the more complex compound expression CL > MA_A && CL < MA_B could not be handled by the more streamlined evaluation method used for scans. To work around these limitations in scan formulas, you could first define a signal CL > MA_A && CL < MA_B and then reference that signal in a scan, e.g. SUM(SIGNAL, 100) > 30.
To make RTL more robust and consistent whether you are writing a scan, signal, or custom indicator, the internal evaluation methods have now been revised so that scans are evaluated the same way as signals and custom indicators are. With this change, more complex formulas like the one cited above now operate correctly without having to resort to workarounds. For complex scans, the new methods should be reasonably efficient, on par with the former method. For simple scan formulas, the new methods will add some additional overhead, however this may only be noticable when scans are being run on many hundreds or thousands of symbols. We expect very few will notice any impact, but just in case, a configuration variable has been added. If you wish scans to be evaluated in 11.3 and higher as they were in 11.2 and earlier, you may go to Setup > Configuration and set the variable TurboRTLforScans to false. There are two configuration variables in place that affect how RTL formulas are evaluated, TurboRTL and now TurboRTLforScans. Both default to true and are the recommended settings. For scans to be evaluated using the new more robust method, both TurboRTL and TurboRTLforScans should be set true.
- RTL Setup Improvements
When creating new signals and custom indicators in the RTL Setup window, Investor/RT confirms that the formula entered produces a true/false result (for signals) or an arithmetic result (for custom indicators). If the formula has an unexpected result, Investor/RT asks if you would like to save the new formula as a different RTL type. For example, if the RTL setup window it setup for entry of a custom indicator and you enter a formula the evaluates to true/false, you are given an opporunity to save the formula as a signal instead. Similarly, when entering a signal, if the formula produces an arithmic result, you are given an opportunity to save the formula as a custom indicator.
- DTN IQFEED Protocol Update
DTN IQFEED Protocol Update. Investor/RT is making the transition from IQFEED Protocol 4.9 to 5.0. The new 5.0 Protocol used with IQConnect for Windows will be the default market data reception protocol for Investor/RT Version 11.4 when released. For the present Version 11.3, the default remains 4.9, but the 5.0 Protocol is available in this release for testing by setting configuration variable DTNIQProtocol5=True in Setup > Configuration. The 5.0 protocol features millisecond timestamps for trades and a more condensed data format that reduces processing time per tick. For the majority of IQFEED users there will be noticeable difference in data reception.
Regarding millisecond time stamps, Investor/RT historical data timestamps are limited to the hour, minute, and second of each trade. Presentation of time stamps will continue to be hh:mm:ss format. By default Investor/RT will ignore the millisecond for each trade reported by IQFEED under the 5.0 Protocol. For users who may want more precise bar formation for fixed time interval bars (periodicity), there is a configuration variable that controls how to treat the millisecond time stamp for each trade as it arrives in real-time. The variable name in Setup > Configuration is DTNIQMillisecBoundary; it can be set to a value between 0 and 999 milliseconds. When a tick comes in having milliseconds higher than the boundary number, the timestamp of the trade is promoted (rounded up) one second. The default setting for DTNIQMillisecBoundary is 999, thus no rounding up will occur, i.e. the milliseconds are ignored effectively. Setting DTNIQMillisecBoundary=499, for example, would cause incoming trade timestamps to be rounded to the nearest second, i.e. a time of 09:30:00.650 would be treated as a trade at 9:30:01, while a time of 09:30:00.350 would be treated as a trade at 9:30 precisely (9:30:00). A DTNIQMillisecBoundary setting of zero will essentially promote any timestamp with more than 0 milliseconds to the next second. Only those trades reported at precisely 09:30:00.000 will be processed as having occurred at 09:30:00 precisely. This rounding of time stamps can produce more accurate time interval bars. If milliseconds are ignored and Investor/RT is forming one minute bars ending at say 09:31:00, and 10 trades arrive with hh:mm:ss at 09:31:00.xxx where xxx is milliseconds, all 10 trades will be included in the one minute bar ending 09:31, even though theoretically, any trades having milliseconds > 0 actually occurred after the 9:31 bar ended. If you set DTNIQMillisecBoundary=0, then any of the trades that occurred any number of milliseconds after 09:31:00 would be promoted to 09:31:01 and thus would become the first trades of a new one minute bar ending at 09:32:00.
These time considerations are moot for users who employ mainly time-independent periodicities (range bars, Renko bars, volume bars, etc.), but for users employing fixed time interval bars, especially for sub minute intervals, the milliseconds of each trade are useful at the bar ending time boundaries to place trades in the existing or next bar appropriately. Short duration bars, e.g. 10 second bars, 20 second bars, having multiple bar endings per minute, will be more accurate now that Investor/RT can detect when trades at a bar ending time actually occurred precisely at the bar ending time or some number of milliseconds after the bar ending time thus beginning a new bar.
Using the new 5.0 protocol, Investor/RT is able to detect and filter out certain kinds of trades, e.g. Odd Lots, Intramarket Sweeps, or Implied Trades. By default trades having these trade conditions are ignored in real-time. Configuration variables are available if inclusion of these kinds of trade reports are desired, e.g. to accept odd lot trades for equities, go to Setup > Configuration and set the variable named DTNIQFilterOutOddLots to False. To see other DTN IQFEED related configuration settings go to Setup > Configuration and enter the text DTNIQ into the Find box.
- SDK 11.3 Available
An updated edition of the Investor/RT SDK (Software Developers Kit) is available. The SDK is used to develop C or C++ plug-ins for use in charts and RTL formulas.
- Checking Working Order Status in RTL
The RTL token TR_WORK can be employed in trading signals to make the firing of the signal dependent upon the status of currently working orders. The Trading Rule indicator allows you to put a trading rule into a chart that becomes active only when your market position for the charted symbol is FLAT. The trading rule's signal is tested while you are flat and if the signal is true on the current bar, a trading order is submitted to the broker, e.g. to place a limit order to buy 1 contract. Until the limit order is filled, you remain FLAT. It is important that the trading signal only fire once, otherwise the trading rule might submit multiple limit orders.
This is an example where the TR_WORK token solves a dilemma. By adding the condition (TR_WORK = 0) to the trading rule's signal, the signal is guaranteed to fire true only when there are no orders already working.
TR_WORK evaluates to a number that indicates whether there are orders working and what kind of orders they are. TR_WORK is zero when there are no orders working. Positive values indicate a buy order is working; negative values indicate that a sell order is working. RTL has seven numeric constant tokens, named to reflect the seven status conditions:
WS_NONE is value 0, no orders working.
WS_FLAT_BUY is value 1, current position is FLAT, a buy order is working.
WS_LONG_BUY is value 2, current position is LONG, a buy order is working.
WS_SHRT_BUY is value 3, current position is SHRT, a buy order is working.
WS_FLAT_SELL is value -1, current position is FLAT, a sell order is working.
WS_SHRT_SELL is value -2, current position is SHRT, a sell order is working.
WS_LONG_SELL is value -3, current position is LONG, a sell order is working.
The values have been designed to enable flexible testing for single or multiple conditions easily, e.g.
TR_WORK > 0 tests for a buy working, regardless of position state.
TR_WORK < 0 tests for a sell working, regardless of position state.
TR_WORK = 0 tests for nothing working.
TR_WORK != 0 tests for either a buy or sell order working, regardless of position.
ABS(TR_WORK) = 1 tests for position FLAT, with either a buy or sell order working.
ABS(TR_WORK) = 2 tests for a buy or sell order working that extends the present LONG or SHRT position.
ABS(TR_WORK) = 3 tests for a buy or sell order working that will reduce or close the present position.The TR_WORK token can be used within any RTL signal, e.g. a signal within the chart associated with a Signal Marker Indicator or a Trading Rule Indicator, or a signal that is used in a rule in a Trading System running in the chart via the Trading System Indicator. TR_WORK references within signals that are used during backtesting will evaluate to zero (no orders working) since Investor/RT backtesting fills are always immediate, on the present bar or upon opening of the next bar during backtesting. When a trading system is run live using the Trading System indicator however, TR_WORK will evaluate to the actual status of working orders in progress with the broker (or with the Investor/RT built-in trading simulator).
The TR_WORK value for each symbol is viewable in a quote page by adding the column named Working Order Status. Thus you can create a custom column referencing this built-in column, and color code the quotepage cell background for each symbol depending on various values of TR_WORK, e.g. shades of green when a buy order is working, shades of red when a sell order is working for the symbol, neutral backgound when TR_WORK is zero, nothing working. A right-click or double-click on any Working Order Status cell in a quotepage opens the Order Status window. This window shows all working order in the current session and their status (working, cancelled, filled).
The TR_WORK token is available for display in chart annotation indicators. For example, setup an annotation with the text "%TR_WORK %TICKER" in your trading chart. When you have a buy order working the annotation will say something like "FLAT, Working Buy @ES#". Within the annotation setup you can also check mark the Show/Posn box and the annotation indicator will then show both the working order status, the ticker and the trading position, e.g. "LONG, Working Sell @ES# LONG 1 at 1855". Investor/RT normally adds a position status annotation automatically to charts. You may edit this pre-existing annotation indicator, typically displayed in the upper left corner of the chart, and add the annotation text "%TR_WORK %TICKER" to add the working order status display to your trading chart(s).
An easy way to get familiar with TR_WORK is to use the Trading Simulator built into Investor/RT. In the Data > Configure Data Source/Broker window, set the Brokerage Destination to Trading Simulator. Open a quote page, e.g. the Trading List quote page and add the column Working Order Status. Also open a chart for the symbol you will trade and setup the annotation to display the %TR_WORK text. Use the Trading Order desk to simulate various scenarios, e.g. place a limit order to buy 1 contract at a nearby limit price. The quote page display of working order status will update to reflect that working order and the chart annotation will show the working order. After the order fills, the working order status goes to "No working orders". Then place additional working orders and watch the status values change as orders are placed and fills occur.
RTL tokens TR_POS (trading position size) and TR_WORK (working order status) can now be used to specify RTL signals that trigger trading orders only under certain position and working order status conditions.
- Playback Improvement
The market data playback feature of Investor/RT (Data > Playback) has been enhanced to enable manual advance and rewind operations. The Playback window has Rewind and Advance buttons at the top and a preference at the bottom where the user specifies the amount of time each click on these buttons rewinds or advances the playback. For example, if you are playing back while viewing a chart showing 30 minute bar data, you can set the Advance/Rewind time to 30 minutes. Each click on the Advance button will move forward to the next 30 minute boundary and pause playback. Thus you can advance through the session one bar at a time this way.
The Shift and Ctrl keys can be used to advance or rewind in larger increments. A Shift+Click on the Advance or Rewind button will double the advance or rewind time specified, e.g. one hour in this example. Ctrl+Click will advance or rewind triple time. Shift+Ctrl+Click will advance or rewind quadruple time. Clicks on the Rewind button will instantly adjust the playback (and charts) to the earlier time specified and pause playback. Clicks on Advance or Rewind while playback is running will rewind/advance and then pause playback. Clicks on the Advance button will advance by the time period specified, playing back data at the maximum rate and then pausing playback at the desired time. Thus you will see some animation when advancing in time as market data is rapidly played into the open chart(s).
These new manual controls enable you to easily playback some interesting, pivotal period of trading, then pause and rewind, then play it again, perhaps using a different playback speed, by clicking the green Play button again.
- EMiniPlayer Support/Resistance Zones
The External Data Indicator (EDI) now provides users with access to EMiniPlayer Support/Resistance Zones. To access these zones with EDI, simply choose "EMiniPlayer Zones" from the list of sources. These zones will be made available free to all users through the end of May 2014. For more information on these key support/resistance levels or to subscribe to these levels past May 2014, visit www.eminiplayer.net
The EMiniPlayer Support/Resistance Zones identify the highest probability inflection points in the E-mini S&P 500 futures market. The S/R Zones offer ideal trade location with high odds of a reaction on first test of a Zone. By limiting your trades to the S/R Zones, you can avoid the middle chop area where most traders lose money and enter at the best prices which means you'll take less heat on your trades and can even enter the market with a smaller stop-loss.
In order to activate the free trial through the end of May 2014, users must enter their email address as the username with password "freetrial" in the credentials space of the EDI indicator.
The are three types of lines: Support (S), Resistance (R), and Bull/Bear Zone/Level (L). The recommended colors for these are green, red, and yellow respectively. Within each type are two possible levels: Normal (N) and Strong (S). It is recommended a darker shade be used for Strong levels. "R N" stands for Resistance Normal, "S S" stands for Support Strong, etc. Within the EDI indicator, check the "Label Current Values" check box to have each level properly marked with the labels just mentioned.
- Editing Layouts using the Object Manager
The Object Manager has been enhanced to provide a means of viewing the contents of any layout and selectively deleting windows from a layout without actually opening the layout's windows. In the Object Manager window, select Layout as type and select a layout name. When you click the Delete button you will be asked to confirm the deletion of the layout. Respond by clicking "Delete" if you wish to delete the entire layout from the database. Alternatively, you can click the Edit button if you wish to inspect the contents of the layout and perhaps delete some windows from the layout selectively. Investor/RT will display a list of layout items (windows) showing the type of window (chart, quotepage, etc.) the name of the object in the window (chart name, quotepage name, etc.) and the location of that window in the layout. You may dismiss this list by closing the window, or you can select one or more items in the list and click OK or Apply to remove them from the layout. The Apply button does the removal and leaves the list open for additional removal actions. After removing items from a layout in this way, click the Open button in the Object Manager to activate the layout and view the revised contents of the layout.
- Version 11.3 Fixes, Miscellaneous Enhancements
- The External Data indicator (EDI) was corrected for users of the ToTheTick external data service.
- Performing manual downloads from the chart menu requesting 5, 10, 30 minutes of tick data was sometimes requesting far more data than needed. This is fixed in Version 11.3.
- Import/Export of chart definitions containing Color Marker indicator(s) has been corrected.
- RTL formulas such as MA(HI)/LO were being incorrectly evaluated as MA(HI/LO). This has has been corrected. It is no longer necessary to use extra parentheses in such cases, e.g (MA(HI)) / LO is now equivalent to MA(HI)/LO.
- Import/Export of multi-pane chart definitions for technical indicators having text labels and automatic label settings are now handled correctly. Formerly, if the automatic label setting was in effect, the user-provided text label was not being exported.
- A fatal error bug was fixed pertaining to dragging and dropping certain indicators, such as Plug-ins, from one chart to another. This fix was retroactively applied to 11.2.12 version installers for Build #33084 and higher.
- Export of Scan definition now correctly export the number of user-specified bars to be use to evaluate the scan formula.
- Optimization was enhanced by allowing any user variable (V#) to be used as a custom display result. These custom display results may also use to sort the optimization results. This allows the user to manage any user variable within each individual backtest to compute key statistics or price levels and presents those results and allow sorting on them in the report and spreadsheet that optimization produces.
- The Price Bands indicator was enhanced to give user the ability to specify the width and the horizontal offset of Thick Bar style. Both the offset and width can be specified in pixels or percentage of bar width. This allows users to horizontally stack bands between key price levels horizontally within each bar.
- Use Keyboard Shortcut, Alt+I to setup a new custom indicator, Alt+Shift+I to setup a new signal. Alt+R opens the RTL Setup Window also, set the last type of RTL saved.
- An option has been added pertaining to the labels of naked lines of the Profile Indicator. In the past, when text labels were turned on for the Profile Indicator, naked lines were labeled with the date on which they were created. Now, these lines will also be labeled with either nPOC, nHI, nLO, or nCL according to which price they represent. This option defaults to off, but a configuration variable, titled ProfileNakedLabels, allows users to turn this addition to the text labels on. When this additional text is turned off via the configuration variable, it can still be restored on an instance basis by setting the Profile Indicator label text to "nPOC" (case-sensitive).
- There are two new quote page data columns named Tick Data Storage and Bar Data Storage. These columns show the amount of database storage used per symbol. The storage usage is determined at each startup for display in the quote page. To update the usage numbers at time, go to File > Functions and perform the "Inventory Data Storage" function. Sort the quote page by Tick or Bar Data Storage to determine which symbols are using the most storage. RTL tokens TDS (tick data storage) and BDS (bar data storage can be used to scan for symbols having high storage requirements, e.g. a scan for "BDS > 100m OR TDS > 100m" will list any symbols having either tick or bar data consuming more than 100 MB of database storage on disk.
- DTN Protocol 5.0 fix to support reception of settlement price.
- Text windows, e.g. the message log window, fixed to enable scroll bar thumb to be dragged and dropped. Text now scrolls properly as the thumb is dragged.
- A bug related to chart printing was fixed. Trendlines with arrow option were not being printed.
- The Plug-in Indicator can be used within an MPD (Mixed Periodicity Data) Indicator.
- Plug-in Indicator setup dialog has new options for auto storage of results into a user-specified V# varaible; display format; shifting of plug-in bar drawing left/right some number of user-specified bars.
- With a multi-pane chart as front window and with no selection in the chart, using Edit > Copy or pressing the shortcut Ctrl+C (Command+C on Macintosh) causes Investor/RT to place the definition text for the chart on the clipboard.
- Using the Tab and Shift+Tab keys to tab through the instruments and indicators in a multi-pane chart now works more intuitively, skipping over any invisible indicators that may exist inside the chart for performance/efficiency reasons.
- When new charts are saved, the Object Manager window is notified. If the Object Manager is currently displaying chart objects, the newly added chart name will then appear automatically. Whether you have the Object Manager showing all charts or just the recent ones, the newly added chart will be immediately be available for selection.
- The Bands indicator was enhanced to enable Plug-in indicators to be used to define the historical price values used to draw bands. When a plug-in is specified, Investor/RT will by default use the first array result of the plug-in for the historical price array. The user can override by entering the syntax: Array=n; followed by any parameters to the plug-in. For example if a plug-in that takes two period numbers as parameters and produces 2 array results is used in the bands setup, specifying the parameters as "Array=2;9,13" will tell the Bands Indicator to use the second array of the Plug-in and to pass the parameters 9,13 to the plug-in.
- The Profile Indicator was enhanced with some new keyboard shortcuts. These keyboard shortcuts apply when the profile duration is specified in either days, bars, minutes, weeks, months, quarters, or years. When a profile of this duration is selected, the left and right arrow keys will serve to increase or decrease the duration by 1 unit. If the shift key is despressed, the left and right arrow keys will then serve to adjust by 5 units. If the profile is setup as "last 10 days" for example, the right arrow key will change to "last 9 days" while shift-left arrow would change to "last 15 days".
- The Zig Zag indicator has a new option titled Triangles. When this option is checked, highs of each leg are connected and the lows of each leg are connected forming triangles for each consecutive pair of legs. In addition, a new labeling option has been added titled Retracement; it results in each leg being labeled with the retracement level of that leg with respect to the previous leg. For instance, a value of "58.1%" on an upward leg means the upward leg was 58.1% of the vertical length (in price) of the previous downward leg.
- An option was added to the Pivot Point indicator titled Next Day Pivots When Session Closed. This option applies to daily pivots and forces the indicator to project the next days pivot levels off the price of the day just completed when the session is closed (between session). This essentially moves up the transition time of the pivot levels from the start of the next session, to the close of the current session.
- Four results where added to the Position Indicator: Min Low to End of Chart, Max High to End of Chart, Min Low to End of Chart, Max High to End of Chart. These results are special in that they look forward in time, not historically. Thus, these results are not realistic for use in a trading system as they are looking into the future. These results look forward from each bar and get the highest high or lowest low from that bar to the end of the chart or session and provide for useful chart displays of what happened after a particular bar.
- A statistic has been added to the first menu in the Session Statistics indicator, titled Bars Into Period. This statistic provides the number of bars into whatever period is specified below in the indicator. This gives the user something similar to the Bars From Start of Session option of the Position Indicator but with much more flexibility as the period can be not only session, but week, month, quarter, year, etc.
- The RTL tokens SESSOPEN and WEEKOPEN are available for use in RTL formulas. The SESSOPEN token has value 0.0 when the session of the instrument in question is closed and 1.0 when open. The token is evaluated based on the current time of day (the computer clock), versus the session start and stop times of the instrument's session. Note that a symbol can have an overnight session for data retention purposes, but a chart can be using an override session to display the instrument's data for the day session. The session will be the override session if there is one, otherwise it will be the session of the symbol.
WEEKOPEN is true (1.0) when the current time of day is any time of day within the session week. For a day session trading Monday through Friday, WEEKOPEN is true from the Monday start to the Friday stop time. For an overnight session that begins trading Sunday and ends Friday, WEEKOPEN is true from the session start Sunday until the end of session Friday. Depending on your local time zone a trading week may begin on Tuesday and end Saturday or begin Monday evening and end Saturday for overnight sessions. WEEKOPEN takes the time zone into consideration, yielding 0.0 for any time of day before a new session week begins or after the end of the last session of the week. - A configuration variable, ProfInfoBoxButton, has been added. Set this to false to hide the +/- button that toggles the info box of the Profile Indicator on/off.
- A custom duration has been added to the VWAP indicator titled Custom Between Dates. It is similar to the Custom From Date/Time duration; it allows the user to specify an ending date/time instead of running the VWAP until the end of the chart (to present). This ending date/time can be adjusted from the keyboard by selecting the VWAP and using the left/right arrow buttons with the Shift key depressed.