Overview

The unique Visual Strategy Trader Professional (VSTpro) v2.0 is a highly integrated and configurable complete trading strategy, as well as a fully-featured visual backtesting platform for MetaStock v8 and above.

All elements in each of VSTpro's 61 templates are completely interconnected - adjusting any indicator parameter will also update all signals and backtesting results globally, for an instant visual feedback on the effects made by the changes.

VSTpro allows you to tailor its strategy according to your own risk requirements: just dial in your personal risk limit, and VSTpro automatically determines the optimal risk-management settings such as recommended leverage and position sizing.

Important:

      Always apply the complete VSTpro/VSTmod/VSTopt templates with the Expert Commentary docked to the chart,
      rather than plot individual indicator components or chart experts.

      Please load at least 1000 periods of chart data prior to applying any templates, and preferably 2000 periods or more.



Click on chart below to expand and show more detail.


click here for more chart detail


The key to unlocking the phenomenal power of VSTpro, is to take advantage of its CRE technology:

Change     Refresh     Experiment

Changing parameters and refreshing the chart allows for unprecedented rapid experimentation with any of the myriad VSTpro strategy combinations - profit and risk charts and commentary stats immediately reflect changes made.




Setup

The VSTpro platform is composed of 259 MetaStock components and one companion spreadsheet (Median.xls).

MetaStock has a formula storage limit of 2000 indicators.  Prior to setup, please make sure that there is sufficient indicator space available in your MetaStock setup for the VSTpro's 168 indicators.
Please see the complete VSTpro setup components list here.


Stage 1

This setup stage is critical for the correct operation of VSTpro.   Please close MetaStock and run VSTindexSetup.exe, which will install the following four indicators into MetaStock v8.0 or higher versions:

      "VSTpro IdxOpen"
      "VSTpro IdxHigh"
      "VSTpro IdxLow"
      "VSTpro IdxClose"

These are main index reference indicators necessary for the VSTpro's Market Filter.  The VSTpro needs to know the location of your MetaStock main index data for your market, such as for example the S&P 500 index.   The index reference indicators are set by default to the S&P 500 Index from Reuters DataLink EOD online, so if you subscribe to this data service and you wish to choose the S&P 500 as your main market index, then please skip this stage and proceed to stage 2 setup.

After installing the above four indicators, please edit their default index path:
      MetaStock      Tools      Indicator Builder      find and double-click "VSTpro IdxClose".


(The following example does not apply to MetaStock v12 and above, as the ability to reference local data has been disabled in those versions.
 Data reference in MetaStock v12+ (both RT & EOD) should be replaced with the online security calls.)

Let's say for example that your main index data is located in the C:\MetaStock Data\US\Indices\ folder, and your main index symbol is ".GSPC":

Within the formula, edit the {2} line of code.

Original data path  (Reuters DataLink EOD, only option for MetaStock v12 and later verions):
       {2}"ONLINE:.SPX"

Replace with new data path:
       {2}"C:\MetaStock Data\US\Indices\.GSPC"

Click Ok to save edited indicator.

Verify
Drag down "VSTpro IdxClose" from indicator quicklist, and plot in its own window below any chart to verify that it references the index data correctly.   If it displays an error message, please re-edit indicator with the correct data path and symbol, taking care to note any spaces within the folder path.
Once the first indicator has been verified for correct operation, please apply the above exact steps for the remaining three path indicators.
The Market Trend Filter (MTF) references these four path indicators and is central to the VSTpro platform's correct operation.

Notes:
Whenever updating to later versions of VSTpro, do not run VSTindexSetup.exe again - doing this will overwrite your existing path indicators with default data paths, which will then require you to edit your index data path again.
Please note that the MTF depends on key market events to signal a change in trend, and that if there is any missing data on your current chart then these key MTF signals (and trend change) may not appear on that particular incomplete chart.   Always verify the MTF trend status on a reliable chart based on your main index (i.e., S&P 500) with complete data.


Stage 2

After installing/editing/verifying the four Index path indicators (Stage 1 setup), please close MetaStock and run VSTproSetup.exe to install all VSTpro platform components.   Note that MetaStock setup will flag as missing the four Index path indicators which are not included with this main setup - please ignore any installation error messages during this setup stage.


Troubleshooting

If you experience any installation problems, please follow these steps:

      1)   Close MetaStock
      2)   Right-click on your MetaStock startup icon
      3)   Choose "Properties" from the drop-down menu
      4)   Choose "Compatibility" tab
      5)   In the compatibility section, choose to run as Windows XP or Windows 2000
      6)   For Windows 7/8 and Vista operating systems, choose to * run this program as an administrator *
            (otherwise Win 7/8 and Vista will place indicators in Windows' virtual store, making them inaccessible to MetaStock)
      7)   Run setup again, restart MetaStock and apply any of the VSTpro templates to any chart.


Data load settings

To ensure that there is sufficient data to calculate representative profit and risk stats, please adjust the following MetaStock data settings so that they are identical for both Explorer and charts:
      Tools      The Explorer      Options      Load 2000 Records.
      File      Open      Options      Load Options      Load 2000 periods (display 1000 periods).


Ideally, choose 12 years' EOD data for both Explorer and charts:

 


Live data  (also MetaStock v12 and later versions)

VSTpro's intensive processing requirements pushes MetaStock to its limits.   When applying the VSTpro to live charts (if using a live data feed),
it is strongly recommended that the following MetaStock settings be adjusted in  MetaStock      Tools      Options      Real-time tab:
      "Enable real-time" - tick (enable)
      "Enable live bars" - untick (disable)
      "Recalculate expert live" - untick (disable)
      "Update commentary on" - set to "Complete bar".


Expert Commentary window

After installing the complete VSTpro kit, open MetaStock with any chart and apply the "VSTpro Long.mwt" template.   Follow these three easy steps to make sure that the Expert Commentary window remains open in a docked position:



click here for more chart detail

1) MetaStock      View      Expert Commentary



click here for more chart detail

2) Drag window corner and resize to minimum viewable width



click here for more chart detail

3) Right-click on window frame and choose "Dock View" from drop-down menu



click here for more chart detail

We are now ready to explore the power of the VSTpro platform.





Usage

Important
Before proceeding with this reference manual, it is strongly recommended that the comprehensive VSTpro instructional video from LearnMetaStock.com first be viewed in its entirety.   The thorough eight-section VSTpro instructional video is the product of exemplary MetaStock trainer Kevin Nelson, founder of LearnMetaStock.com.   Please login to LearnMetaStock.com now, go to the VSTpro section, and watch the instructional video in order to get up and running with the VSTpro in no time.

Note:
Due to the VSTpro's tightly integrated nature, it is strongly recommended that only complete VSTpro templates be applied to charts.
Single indicators dragged down from the indicator quicklist (or altering/removing template indicators) may not display as intended.


Overview
The VSTpro templates can be divided into two main categories:
      CRE-type (Change/Refresh/Experiment) templates;
      X-type (Exploration control panel) templates.
Each template category is composed of a Long and Short template.



Change Refresh Experiment (CRE) Long/Short templates


There are seven interconnected VSTpro components within the two CRE templates, and VSTpro processing flows in the following order:

       Index path indicators      MTF      Bands      SmartStop      Profit      Risk      Expert signals & commentary.

       Parameter changes to the MTF will affect the Bands/SmartStop/Profit/Risk indicators and Expert Signals/Commentary outputs that follow.
       Parameter changes to the Bands indicator on the chart, will only affect the SmartStop/Profit/Risk indicators and Expert Signals/Commentary.
       Parameter changes to the SmartStop on the chart, will only affect the Profit/Risk indicators and Expert Signals/Commentary outputs.
       Parameter changes to the Profit indicator in the first window, will only affect the Risk indicator and Expert Signals/Commentary outputs.
       Parameter changes to the Risk indicator in the second window, will only affect the Expert Signals/Commentary outputs.

The Market Trend Filter (MTF) can operate on a stand-alone basis, but all other VSTpro indicators are required on the chart at all times in order for the complete VSTpro setup to operate correctly.

Let's begin by introducing the VSTpro Long CRE template's six main chart components (the same applies to the Short version):



click here for more chart detail

  1) Market Trend Filter (MTF)
           
2) VST Bands indicator
           
3) SmartStop
           
4) Profit indicator
           
5) Risk indicator
           
6) Expert commentary,
    signals & highlights

Double-click on each of the five chart indicators to access their parameters.
Please refresh chart (button or Alt+V, R) after any parameter changes.



3 Market Trend Filter (MTF) parameters


Overview
The MTF's main purpose is to override VST band timing signals when market conditions are unfavorable.
On Long setups, a green MTF (bullish trend) will allow entry/exit Long signals to go through as normal.
       A red MTF (bearish trend) closes any open Long positions, and rejects any new Long trades.
On Short setups, a red (bearish) MTF will allow entry/exit Short signals to go through as normal.
       A green (bullish) MTF closes any open Short positions, and rejects any new Short trades.

1- MTF Type
The first MTF parameter field offers a choice between two distinctively different methods of detecting the market trend.
       [1] Sharp: attempts to catch market trends as they turn, by searching for key market events.
              A brief explanation for each of the Sharp MTF components is available as comments within the MTF indicator code.
       [2] Traditional: advanced trend-following mode, lags at market turns, approx 6 times less active than Sharp mode.
              Note: the MTF traditional mode is not suitable for intraday charts - please use the MTF sharp mode for these.

2 - MTF Mode
       [1] Normal: standard Long/Short MTF.
       [2] Reverse: Long=Short, Short=Long.
       [3] OnlyMTF: bypasses band timing signals for pure MTF signals only; produces identical signals for all securities.
       [4] NoMTF: disables Market Trend Filter, allowing pure band timing signals to be tested.

3 - MTF periods
Periods used for Sharp/Traditional Market Trend Filter.
For the MTF Sharp type, it is recommended that only 14/15 periods be applied.
For the MTF Traditional type, the default 15 periods works best overall, but I suggest experimenting within the 4-260 period range.



6 Signals/Bands parameters


Overview
This indicator generates the VSTpro's timing signals, based on volatility bands with different price crossover conditions.
Signal conditions can be altered through 30 different band/price combinations, for a total of 108 strategy combinations when including the three MTF options available (Sharp/Traditional/Disabled).

1 - Entry conditions
       [1] Price crosses above bottom band;
       [2] Price crosses above midline;
       [3] Price crosses above top band;
       [4] Price crosses below bottom band;
       [5] Price crosses below midline;
       [6] Price crosses below top band.

2 - Exit conditions
1~6 identical to the entries, with this additional condition:
       [0] No exit band conditions - exits depend on SmartStop and/or MTF.
Note that no signals are possible when identical conditions are selected for both entry and exit (i.e., signals cancel each other out).

3 - Volatility bands spread - ATR multiplier
This setting controls the spread of the volatility bands.
Depending on the security's volatility, this parameter may have a great influence on the timing signals.

4 - ATR average periods
Sets the ATR average periods for the bands spread above.
The ATR averaging is based on MetaStock's default method, based on Wilder's smoothing of ATRs over the past x periods.

5 - MidLine periods
Periods used for the MidLine, on which the ATR bands are based.

6 - Price
This sets the price used by both the bands and entry/exit conditions:
       [1] Open;
       [2] High and Low (whole bar);
       [3] Close (default);
       [4] Weighted Close: (H+L+Cx2)/4.



5 SmartStop parameters


Overview
The SmartStop is a hybrid volatility & fixed % visual stop which reacts with initial and trailing stops to the chart signals.
The stops are only visible on a chart while a trade is active, and thus won't skew the chart's scale with remnants of any previous trade.

The SmartStop is disabled by default in order to determine the system's profitability prior to adding any stops.
Some strategies benefit from a suitable combination of initial and trailing stops, while other strategies with efficient exits may suffer from unwanted interference from any stops.

Please note the following limitation: stops cannot signal an exit or restart on the immediate bar following an entry/exit/stop signal, i.e.:
       After an entry signal on the first bar, the stop's first exit signal is only possible on the third bar (or thereafter).
       After an exit or stop signal on the first bar, the stop can only restart its plot on the third bar (or thereafter).

1 - Stop switch
       [1] Enables stop;
       [0] Disables stop - it still plots on the chart, but stops are ignored by the system platform.

2 - Initial Stop parameter
Input number of ATRs (+), or a fixed % amount(-).
For example, a "3" indicates that the Initial Stop will plot 3 ATRs below (above for Short) the entry signal price, and a "-5" indicates that the Initial Stop will plot 5% below the entry signal price.

3 - Trailing Stop parameter
Input number of ATRs (+), or a fixed % amount (-).
For example, a "4" indicates that the Trailing Stop will track price 4 ATRs away from price, and a "-6" input will track price 6% away from price.

4 - ATR average periods
Number of periods used for the averaging of ATR used above.
The averaging is based on a Simple Moving Average of ATRs over the past x periods.
This alternative smoothing method is more responsive and suitable for stops, as opposed to MetaStock's default ATR-smoothing method used in the bands.

5 - SmartStop trigger
This parameter determines where the stop will get triggered.

       [1] Intrabar - triggers the stop if any point of the price bar hits the stop;
       [2] Close - triggers the stop only if the Close hits the stop.

If the trigger on the Close is selected, the stops are based off the Close price.
For Long stops triggered on Intrabar (i.e., the Low touches/breaches the stop Long), the stops are based off the lowest point of that bar, the Low.
For Short stops triggered on Intrabar (i.e., the High touches/breaches the stop Short), the stops are based off the highest point of that bar, the High.


More on stops
From experience, stops should only be thought of as a safety net of last resort in case the real exits fail or are non-existing.
To use an analogy, car drivers usually apply the brakes (stops) only in hazardous situations, and generally steer their car out of any potential trouble rather than brake in every adverse situation.
However, depending on stops to take us out of a bad trade when most of the damage has already been done is akin to depending on seatbelts or airbags to come to a safe stop after an accident.

In other words, we should aim to steer our way out of bad trades through timely exits, rather than getting stopped-out at what is often the worst time.
A good example of being stopped out at a bad time is the market meltdown of May 6, 2010, when massive slippage in many cases took out stopped trades at a fraction of the security's normal price.

If stop losses are hit more than 20-30% of the time in trading, then the exit strategies (and ideally there should be several to cater for different market conditions) are simply not working too well.  If stops are hit 100% of the time, then obviously there is no exit strategy at all.  Depending purely on stops to exit trades is akin to your broker taking massive commissions out of every single trade - win or lose.



6 Profit parameters


Overview
Profit is measured for each individual trade, and then accumulated to show overall profitability.
Whenever viewing the profit and risk equity curves, it is recommended that the chart be fully zoomed out (Zoom reset button or Alt+V, Z, R).   This allows for a rapid appreciation of the system's profit/risk characteristics.
Although the most important statistic in any system is the Profit/Risk ratio (more on this below), it is important to see if the profit curve is steady and progressive, or if the profit has been derived from one or two erratic lucky trades.

1 - Trade leverage (margin)
Default 1: no leverage.
Above 1: x:1 leverage.
       e.g., "3" would use x3 trade leverage.
       $10,000 would control $30,000 worth of shares in a trade, with a resulting x3 increase in both profit and risk.
Below 1: similar to position % sizing.
       e.g., "0.5" would use only 50% of available trade capital.
       $10,000 would control $5,000 worth of shares in a trade, with a resulting 50% decrease in both profit and risk.

2 - Entry price
       [1] Calculates profit and risk based on entry signal bar's Open price.
       [2] Calculates profit and risk based on entry signal bar's Close price.

3 - Exit price
       [1] Calculates profit and risk based on exit signal bar's Open price.
       [2] Calculates profit and risk based on exit signal bar's Close price.
              Open trades use the current Close for calculation of profit and risk.
       [3] No exit - i.e., Buy and Hold.

4 - Entry/Exit signal delay periods
[xx] 1st digit: entry delay periods(0-9); 2nd digit: Exit delay periods(0-9).
Note that since it is not possible to trade the Open of a signal based on the Close of the same bar, VSTpro does not allow any combination not possible in the real markets, i.e., trade delays are automatically set to a minimum of 1 period if buying/selling on the Open.

5 - Total transaction costs
Input your estimated total entry and exit transaction % costs here.

The total transaction cost % is based on a percentage of the full trade position or contract size, regardless of any leverage (margin) used.
Leverage and position size do not affect costs when calculated in this way.
The total transaction costs differ from one security to the next, but an average approximation works fine.

Example - IBM stock trade with no margin lending:

 
Trade position size:
  $10,000 (83 shares @ $120 e/a)
 
Actual trade (irrelevant):
  $10,000
 
Entry & exit brokerage:
  $10 x2 = $20
 
Avg entry & exit slippage:
  $0.02 x83 shares x2 = $3.32
 
Total entry & exit costs:
  $23.32, approx 0.23% of trade position size

Example - Crude Oil futures trade at 10:1 leverage:

 
Contract size:
  $80,000 (1 contract of 1000 barrels @ $80/barrel)
 
Actual trade (irrelevant):
  $8,000 (10:1 leverage)
 
Entry & exit brokerage:
  $22 x2 = $44
 
Avg entry & exit slippage:
  $0.01 x1000 barrels x2 = $20
 
Total entry & exit costs:
  $64, approx 0.08% of contract size


6 - Indicator display output
These parameters only affect the Profit display:
       [1] Cumulative profit;
       [2] Individual trade profit;
       [3] Cumulative risk;
       [4] Individual trade risk;
       [5] Trade signals.


3 Risk parameters


Overview
Drawdown is measured from the beginning of each trade, and then accumulated to display overall risk.
Whenever viewing the profit and risk equity curves, it is recommended that the chart be fully zoomed out (Zoom reset button or Alt+V, Z, R).   This allows for a rapid appreciation of the system's overall profit/risk characteristics.

1 - Maximum risk % target  [0-100%]
This parameter allows the custom target of any specific risk level by selecting the maximum risk % tolerated.
Used only for Leverage and Position Size calculations.

2 - Maximum recommended leverage displayed  [0-1000]
This is necessary in order to avoid a large leverage recommendation when based on a small sample of data with little or no risk.

3 - Indicator display output
These parameters only affect the Risk display:
       [1] Cumulative risk;
       [2] Individual trade risk;
       [3] Recommended leverage;
       [4] Recommended position size at currently selected leverage;
       [5] Profit/Risk ratio (output capped at 50:1).



Expert signals and Commentary window


VSTpro Long Commentary window   Overview

(SmartStop is enabled in this example)

The commentary window allows the display of all current signal parameters and statistics for either the current or any other chosen bar.

In order to view the current VSTpro values, please refresh chart after any parameter changes in any of the four indicators.

Please take special note of the very important Profit/Risk Ratio statistic after any changes.



Explorer control panel Long/Short templates


The VSTpro explorations are part of a comprehensive backtesting engine.
The purpose of the VSTpro Explorer templates is to control the 22 parameters referenced by the VSTpro explorations.
Use the above CRE templates to experiment and quickly find promising strategy combinations, and then apply those parameters to the exploration templates prior to running the associated explorations.
The exploration parameters are hard-coded within the template's indicators, so these need to be edited within each indicator formula in order for the exploration changes to take effect.
No refresh is necessary after any changes.

There are six interconnected VSTpro components within the two Explorer templates, and their processing flows in the following order:

       Index path indicators      MTF/Bands      SmartStop      Profit      Risk      Expert signals & commentary

       Parameter edits to the MTF/Bands will affect the SmartStop/Profit/Risk indicators and Expert Signals/Commentary outputs that follow.
       Parameter edits to the SmartStop on the chart, will only affect the Profit/Risk indicators and Expert Signals/Commentary outputs.
       Parameter edits to the Profit indicator in the first window, will only affect the Risk indicator and Expert Signals/Commentary outputs.
       Parameter edits to the Risk indicator in the second window, will only affect the Expert Signals/Bands/Commentary outputs.



click here for more chart detail

  1) MTF/VST bands indicator
           
2) SmartStop
           
3) Profit indicator
           
4) Risk indicator
           
5) Expert commentary,
    signals, trend, highlights

Double-click on each of the five chart indicators to access their parameter values within the Formula tab.


Explorer control panel - Overview

All parameters in each of the four VSTpro X template indicators are identical in construction and operation to the CRE (global template) versions, but they require formula editing (within the Formula tab) for any permanent changes, rather than the simpler input changes found in the CRE templates.
Double-click on any of the four template indicators, click on the Formula tab, edit parameters, and save (Ok) - no need to refresh chart.
Please note that any edit changes to any indicators are permanent - a reminder of original settings can be found within each indicator's formula, as well as in the Expert Commentary window.
Please do not alter any code beyond the parameters section - if any indicator code is corrupted by inapropriate editing, it is then best to shut down MetaStock and quickly re-install VSTpro.


Example - MTF/Bands indicator parameters

The main VSTpro X band indicator incorporates the MTF as well as generating the VSTpro's timing signals.
The MTF is incorporated into the Band indicator in order to speed up exploration execution.
Edit Band/MTF parameters to desired values prior to running any of the VSTpro's Explorations.




(Formula tab window elongated for clarity purposes)

In the above indicator, the only values that should be edited are these:
type:= 1 ; (change "1" to "2", i.e., type:= 2 ;)
mode:= 1 ; (change "1" to "2" or "3" or "4")
Mpds:= 15 ; (change period value to suit)
... prc:= 3 ;- do not edit any values past this line


Exploration parameter edit examples, based on the MTF/Bands (VSTpro X Long) indicator:


  Section   Parameter     Original   Description     New     Description
  MTF type   type  
1
Sharp style MTF  
2
  Traditional style MTF
  MTF mode   mode  
1
Normal  
3
  MTF only
  MTF periods   Mpds  
15
15 MTF periods  
14
  14 MTF periods
  Entry   in  
5
Price below midline  
6
  Price below top band
  Exit   ex  
3
Price above top band  
1
  Price above bottom band
  ATR bands spread   sprd  
3.5
3.5 ATRs  
2.5
  2.5 ATRs
  ATR periods   Apds  
6
6 periods for ATR  
5
  5 periods for ATR
  Midline periods   pds  
12
12 SMA periods  
7
  7 SMA periods
  Price   prc  
3
Close  
4
  Weighted Close




Commentary window


VSTpro Long Commentary window   Overview

(In this example the SmartStop is disabled by default
- enabling it will produce identical results to the CRE setup above)


After any indicator edits, please check for the following on the commentary window:

    1) Parameters have been changed and saved as desired;
    2) Exploration report values match the CRE template's with identical parameters.



Extracting meaningful information from VSTpro explorations

The main purpose of the six VSTpro explorations is to collect all relevant system stats and extract representative values for each universe of securities tested.

The best representative statistic is the median (middle) value, rather than the average.   Imagine a room with ten people, nine of which earn $100K/year and one earns $10Mill/yr.   The average of this group's income ($1.09Mill/yr) is not representative of anyone in that room because the 10th person's income skews the average - the median ($100K/yr) represents the majority in that group much better.

And so is the case with exploration statistics - the median result represents a basket of securities much better than the average.   This middle value can be extracted manually for each column as explained in the VSTpro instructional video, or it can be extracted quickly and more efficiently with the aid of the included Median.xls spreadsheet and these three simple steps:





1 - Run any MetaStock Exploration, right-click anywhere in the Exploration report, select "Copy" from report drop-down menu.





2 - Open VSTpro's companion Median.xls spreadsheet.





3 - Paste (Ctrl+V) into green spreadsheet cell (A6) and see median representative results for each column immediately.



New:  System profit Robustness stats


click here for more chart detail

Now available to all VSTpro platform templates and explorations

Notes on curve-fitting

Curve-fitting of system parameters often leads to overly-optimistic backtest results, a problem which arises whenever any strategy is optimized to a particular data set.   The tighter the optimized parameter fit is to past historical data, the less likely those optimal results will repeat in the future.

In order to determine the robustness of any strategy on the VSTpro platform and avoid curve-fitting, VSTpro applies two significant factors to its unique system robustness indicators and robustness-adjusted profit/risk ratio:

1) Statistical Significance
Optimal backtest results based on a low number of total trades are generally statistically unreliable.   The robustness % factor is penalized on a sliding (2nd order polynomial) scale when the total trades in the backtest period is less than 20.   This factor also penalizes strategies that approach buy & hold as a result of poor exits.

2) Profit variance from mean
Performance results are more reliable when they are based on a consistently gradual profit curve, rather than based on a few "lucky" trades that often results in an irregular profit curve which may or may not repeat in the future.
The VSTpro's Robustness process measures the profit variance between the historical profit curve and its Linear Regression trendline, compares this variance to the profit's scale, and penalizes irregular results on an appropriate 0-100% scale.   The Profit/Risk ratio is then adjusted accordingly.



click here for more chart detail
Irregular profit curve = inconsistent and unreliable system


click here for more chart detail
Smooth and regular profit curve = trustworthy and reliable system

The VSTpro's unique Robustness process takes the guesswork out of building and testing solid trading strategies.




Select Date & Time for VSTpro backtest range


MTF blacked-out for clarity purposes - click on chart to expand

click here for more chart detail


The two Long and Short templates incorporate time-base filters which allow the selection of a backtest date range for EOD charts, and a date and time range for intraday charts.

Click on the upper gold band to select start & end dates, and on the band below it (only appears on intraday charts) to select a time range for each trading session.   All signals and stats are restricted to the selected period.

For more information, please view the VSTtime instructional material at LearnMetaStock.com




VSTmod

Bonus R&D modules


click here for more chart detail


VSTmod overview
The bonus VSTmod R&D backtest module allows to easy plug-in any custom strategy into the VSTpro platform.   VSTmod comes with 25 inbuilt Long & Short strategies (which include the MTF and SmartStops) ready for testing.   The MTF and SmartStop are disabled by default in each strategy template, so that the true performance of each system can be backtested on its own merit.   Please login to LearnMetaStock.com and view the VSTmod instructional video now.

Setup
The VSTpro setup automatically installs all 68 VSTmod components (all named "VSTmod ...") - please see details of all VSTmod components here.

Usage
Open any chart and apply any of the 25 VSTmod templates to it.   Click on the chart/signals indicator to access the user input global parameters, and refresh chart after any changes.   The Expert Commentary window displays current settings as usual.



VSTmod Long & Short strategies

VSTmod-01 - Simple template
Price / Moving Average crossovers.
Buy: Close crosses up above 22-period SMA.
Sell: Close crosses down below 8-period SMA.
Use this indicator as a template for quick R&D of any custom strategy without inputs.

VSTmod-02 - Inputs template
Buys & Sells on price breakouts, similar to the Turtle strategy.
Use this indicator as a template for R&D of any custom strategy with variable inputs.

VSTmod-03 - EMA Crossovers
Buy: 3-period EMA crosses up above 18-period EMA.
   Sell - 3-period EMA crosses down below 18-period EMA.

VSTmod-04 - ADX Crossovers
Positive/Negative ADX crossovers.

VSTmod-05 - MACD Crossovers
1: Buy - MACD crosses up over zero line.
    Sell - MACD crosses down below zero line.
2: Buy - MACD crosses up over signal line.
    Sell - MACD crosses down below signal line.
Default strategy: #1.

VSTmod-06 - TC MACD 10
Buy: MACD Histogram Histogram (MACDHx2) enters oversold zone.
Sell: MACDHx2 enters overbought zone.
This strategy introduces the MACD Histogram Histogram (MACDHx2),
which is the difference between a normal MACD Histogram and its signal line.

VSTmod-07 - Rainbow Oscillator
Rainbow Oscillator crossover signals (RO created in 1997 by Mel Widner, Ph.D.)

VSTmod-08 - Head & Shoulders
Signals based on Head & Shoulders patterns.

VSTmod-09 - Lunar Cycle
Full/New/Q1/Q3 Moon signals indicator.
Buy: day before third Quarter
Sell: day before first Quarter
Multiple entry/exit choices - some surprises here.

VSTmod-10 - Perfect System
Hindsight is a wonderful thing. :)

VSTmod-L11 - 5x2 system - Long
Buys Long on 5 Close DOWN bars in a row.
Sells Long on 2 Close UP bars in a row.

VSTmod-S11 - 4x2 system - Short
Buys Short on 4 Close UP bars in a row.
Sells Long on 2 Close DOWN bars in a row.

Please note SmartStop is enabled for both of these "11" strategies - a good example where stops are beneficial.

VSTmod-12 - Breakouts
Adjustable breakout strategy.


Additional VSTmod strategies added since VSTpro's initial release

VSTmod-L13 - Vortex - with adjustable parameters.
VSTmod-L14 - Milk Money Trade - with adjustable parameters.
VSTmod-L15 - Normalized Volatility Strategy - with auto volatility threshold, much improved strategy version.
VSTmod-L16 - Clear method - Getting Clear With Short-Term Swings
                            The only correct MetaStock version available, with additional swing parameters to reduce signal whipsaws.
VSTmod-L17 - Equis Trend Analysis - 4 original strategies, selectable 256 unique signal combinations.
VSTmod-L18 - Bongo strategy - triple weekly RSI and weekly SMA strategy for daily charts, with improved and variable parameters.
VSTmod-L19 - Trend CC w StdDev Stop 2X - Trend-based Entry, Volatility-based Exit strategy from VSTpro client.
VSTmod-L20 - John Ehlers' Zero Lag EMA
                            Complete indicator and strategy signals with full parameter control, and automatic signal threshold - more details here.
VSTmod-L21 - Golden Cross - a simple but effective long-term strategy based on moving average crossovers.
VSTmod-L22 - EMA-WMA cross - Index-based EMA/WMA crossover strategy.
VSTmod-L23 - Weekly RSI-SMA - relatively low-risk RSI/SMA composite weekly strategy.
VSTmod-L24 - ATR + Detrend - strategy based on custom Detrended Oscillator and ATR bands.
VSTmod-L25 - ATR/Bollinger bands - multi-strategy based on ATR/Bollinger/Composite bands.
VSTmod-L26 - Seasonal signals - Which period within each year is (seasonally) the most profitable for a given market?
                            This setup helps find optimal dates for seasonal profitability - default dates optimized for S&P 500 market.
VSTmod-S26 - Seasonal signals - short version of the above strategy.
VSTmod-L27 - Whipsaw reversals - anti-whipsaw reversal-type signals - buy when market drops, sell when it rockets up.
VSTmod-L28 - Seasonal Redux - Seasonal/MACD-based longer-term strategy.
VSTmod-L29 - Detrended Osc - multi-strategy based on Detrended% Oscillator.
VSTmod-S29 - Detrended Osc - short version of the above strategy.
VSTmod-L30 - Price/Volume composite RSI - multi-strategy Long based on unique composite RSI oscillator.
VSTmod-S30 - Price/Volume composite RSI - Short version of the above strategy.


Always refresh chart after any changes to any parameters.
This will also immediately update Expert signals and commentary, as well as the profit and risk displays.



Testing alternative custom strategies

Alternative trading systems can be easily incorporated into VSTmod-xx module, simply by making a copy of an existing VSTmod-xx indicator and replacing Entry/Exit criteria within the new indicator's formula.

       1) Copy either "VSTmod-01 - Simple" (no inputs) or "VSTmod-02 - Inputs" indicator.
       2) Rename indicator copy to VSTmod-xx (xx = number of your choice, no spaces).
       3) Insert new Entry & Exit conditions (or reference any other signals indicator) within your new indicator.
       4) Apply the"VSTmod-01 - Simple" template to your chart.
       5) Highlight existing yellow "VSTmod-01 - Simple" signals indicator in top window and delete, leaving indicator window empty.
       6) Drag down your new VSTmod-xx signal indicator to empty window.
       7) * Refresh chart twice for now (more detail on this issue below and also in instructional video from LearnMetaStock).
       8) Save setup as a new VSTmod-xx template as required.

* In order to avoid double/triple chart refreshing due to timing issues with global variable data,
   the VSTmod four support indicators need to be removed from the template and replaced/saved in this correct order:
       1) SmartStop
       2) Profit
       3) Risk
       4) Robustness (almost-hidden 10-bar gray zero small plot - scroll back to beginning of Risk window to find it)

   Please follow this procedure prior to saving your custom VSTmod template:
       1) Open a second clean chart (right-click on chart space -> Apply Template -> Clean.mwt);
       2) Arrange/display both charts side by side (Window -> Column);
       3) Drag/move the SmartStop to the clean chart;
       4) Drag/move the Profit, Risk and Robustness indicators to their own window on the clean chart;
       5) Move back all indicators in the correct 1-4 order to their original locations:
           i.e., SmartStop first, Profit then Risk next, and Robustness small plot into risk window last;
       6) Save custom VSTmod template.



VSTmod X Long & Short Explorer Backtester


click here for more chart detail


The VSTmod X templates will accept any custom strategy for a complete stats backtest on any basket of securities.
The MTF and SmartStop may be enabled at any time, but it is best to first backtest the raw strategy without them.

To apply and backtest your own custom strategy with the VSTmod explorer setup, please follow these simple steps:

       1) Apply either of the Long or Short VSTmod Explorer templates to any chart;
       2) Go to the "VSTmod X Long Custom" or "VSTmod X Short Custom" indicator window;
       3) Click on the indicator and go to the formula tab;
       4) Delete all code there and paste your new custom code into that existing indicator.

Original "VSTmod X Long/Short Custom" indicator names must remain unchanged.
Please note that the custom strategy indicator must produce Entry & Exit signals in order for it to be backtested successfully.
i.e., +1/-1 signals must be visible in the VSTmod X custom indicator window below the MTF window.
When done, run any of the VSTmod X explorations for a full analysis on your custom strategy.

Any strategy from the simplest to multi-formula complex setups (using Fml() references where space is limited) may be backtested in a similar fashion to the VSTpro X.   If you are unfamiliar with this basic MetaStock process, help may be available through the private VSTpro support group.




VSTopt

Intelligent strategy optimizer


click here for more chart detail


VSTopt overview

Imagine having to search for the optimal strategy amongst 90 entry/exit/MTF combinations:  e.g., change the VSTpro band width to 3ATRs, try entry/exit combination 1/6, write results down, try 2/6, write results, 3/6, etc...   2 hours later you may possibly have the optimal strategy combination for that particular set of bands for that security.   Now, change the VSTpro band spread to 2.5 ATRs and start all over again... :(

The VSTopt module is a unique intelligent optimizer tool which does the above manual work automatically and instantly, for each set of chosen VST band parameters.

Based on the chosen bands and MTF parameters, VSTopt searches through a total of 90 entry/exit/MTF permutations in order to (instantly) find the optimal strategy combination using every MTF choice (Sharp/Traditional/Disabled).

For more robust optimal results, VSTopt optimizes signals based on the Profit/Risk ratio rather than the traditional profit-only method which ignores risk.   VSTopt's unique method also incorporates safeguards to greatly reduce the curve-fitting effect.


VSTopt templates
"VSTopt - Long.mwt" & "VSTopt - Short.mwt"

Apply these templates to any chart, and let the VSTopt process select the optimal strategy based on your chosen parameters.

Experiment with different VSTpro band widths, as this helps to determine the optimal strategy.   If the bands are too tight (1 ATR or less), the system will probably suffer from over-trading, and this will reflect on the Profit/Risk ratio results.   If the bands are too wide (5 ATRs or more), the system will likely produce very few trades.   A low trade count often leads to curve-fitting, and this will reflect on the adjusted Profit/Risk ratio results.

Also experiment with forcing the VSTopt to use different Market Trend Filter options:
     [1]Optimal MTF    [2]Sharp MTF only    [3]Traditional MTF only    [4]Disable MTF

The robustness-adjusted Profit/Risk ratio (third (orange) arrow in Expert Commentary) is probably the most important of all the VSTopt's statistics - please take note of this important stat when searching for optimal strategy combinations.   Also look for smooth system profit curves, rather than irregular ones.

Stops: it is not feasible nor desirable to incorporate the SmartStop into the optimization process.

For more detail on VSTopt usage, please login to LearnMetaStock.com and view the VSTopt instructional video.




Q&A

Answers to common questions about the VSTpro platform's operation.
This section may be updated on an occasional basis.



Q 1:
I've applied the template setups for trading ETFs/Futures/Forex to my live intraday data, but the profit/risk stats don't look as good as I'd like them to be.

A:
These templates are meant to be used as an initial guideline only.   They were put together based on EOD data, so it's best to experiment with other settings for intraday data.




Q 2:
I'm looking at a chart that has a historical maximum risk of 40%.  I've now adjusted the Max Risk target to 15%.   Although the Risk Management section has updated, the performance statistics are not changing to reflect my change in risk exposure.

A:
As mentioned in the Risk indicator input text, the Risk Target is used only for the VSTpro's Leverage/PosSize calculation:
       "Maximum risk% target (for Leverage/PosSize calc)"

The Profit and Risk stats adjust only through changes to the Leverage input within the Profit indicator:
       Leverage adjustment:  any amount greater than 1  (i.e.,  2.5 = x2.5 leverage);
       Position Size adjustment:  any amount less than 1  (i.e.,  0.8 Leverage = 80% Position Size).

So, after changing the risk target and taking note of the VSTpro's new Leverage recommendation (0.375 or 37.5% PosSize in this case), please adjust the Leverage in the Profit indicator accordingly in order to see the new performance stats at the lower risk level.

It also helps to visualize the VSTpro's processing flow or direction:
       MTF  -->  Bands  -->  SmartStop  -->  Profit  -->  Risk  -->  Expert signals & commentary.
i.e., it's not possible for the Risk indicator to go back and affect any of the VSTpro processes before it, such as the Profit indicator in this example.




Q 3:
What is the gold line which occasionally flatlines at -100% on both the profit and risk indicators?

A:
This line indicates when drawdown (risk) has reached 100% of trade capital - in other words, when the trade capital has been depleted by excessive risk.   As per advice in the commentary, adjust your exposure to the markets by recommended amount through reduced Position Sizing of your trades, and also reduce Leverage in the Profit indicator in order to reduce risk to your chosen risk level.




Q 4:
I'm testing one of the bonus VSTmod strategies, and the chart signals don't seem to appear where I expect them to - some entry signals are missing, and there are exit signals in places where there shouldn't be any.

A:
This happens when the Market Trend Filter (MTF) is active, and it overrides the main strategy's entry & exit signals.   The MTF should be inactive in all VSTmod templates by default, but occasionally MetaStock "forgets" and reverts back to the indicator's default (active MTF) setting.   Click on the MTF indicator, choose "4 (NoMTF)" from its second input in order to disable it, and resave that particular VSTmod template to replace the original.




Q 5:
Why are volatility bands the basis for the VST's timing signals?

A:
Volatility is a measure of a chart's unpredictability, and it is this uncertainty in the security's price movement which offers potential profits and losses.   The markets as we know them would not exist without this element of unpredictability - they would just be flat much like a USD - Chinese Yuan forex chart.   A measurement of volatility should be a major component of any decent strategy, as it indicates when the market is heating up and is probably a good a predictive indicator of price turning points as well.

The volatility-based bands as used in the VST are also superior to other indicators when reacting to price turning points, and therefore they do a much better job at following and encapsulating price range than say, the slower-reacting Bollinger bands or shifted Moving Average bands.




Q 6:
I trade CFDs with a fixed 10:1 leverage.   How can I apply the VSTpro's recommended leverage to fixed leverage in CFDs?

A:
Fixed leverage in any trading instrument can be controlled by adjusting trade exposure,  i.e., by adjusting the amounts traded and held in reserve.
For example, with $2,000 trades controlling $20,000 of securities (10:1 leverage):

       10:1 =  trade $2,000,  no reserve
         5:1 =  trade $1,000,  reserve $1,000
         2:1 =  trade $400,  reserve $1,600
         1:1 =  trade $200,  reserve $1,800
         1:2 (no leverage, 50% position size) =  trade $100,  reserve $1,900




Q 7:
How can I scan (with the Exporer) a list of securities, using the optimized values found by the VSTopt module?

A:
Below is an example for the long side.

       Step 1:
       Take note of all custom parameters used in the "VSTopt - Long.mwt" template, such as the bands spread.

       Step 2:
       Take note of optimal MTF/Entry/Exit conditions found by the VSTopt optimizer for the current security.

       Step 3:
       Apply the "VSTpro Long - Explorer.mwt" template to any chart, and transfer all parameters in steps 1 & 2.

       Step 4:
       Run "VSTpro X Long Stats 1" and "VSTpro X Long Stats 2" explorations for complete backtest stats;
          Or
       Run "VSTpro X Long Signals" quick exploration for optimized signals and Profit/Risk ratios.




Q 8:
I have identical settings for both the VSTopt and VSTpro, yet performance stats seem different for each template.

A:
The VSTopt uses the closing price with no signal delay for its internal optimization process, and this is hard-coded into the VSTopt platform.
It would require a lot more than the VSTopt template's 25 indicators (inc. 21 hidden indicators and 91 background equity curves) in order to add additional optimization variables such as price choice and signal delay, with the resulting complexity slowing down the optimization process.

Therefore, by default the final profit curve in the VSTopt template also uses parameters identical to the VSTopt's internal optimization process, so that optimal results will match the displayed profit curve.   However, these VSTopt profit parameters may also be changed to match the default settings in the VSTpro profit curve - Entry/Exit on the Open [1] with one period delay for each [11]:


click here for more chart detail

Setting identical parameters for the VSTopt and VSTpro profit curves (as well as all other system parameters) will result in identical performance stats.   In some rare cases the VSTopt allows for the occasional extra initial trade periods as part of its optimization process, and this may result in slight stats differences between the two templates.




Q 9:
What is the ideal backtest period?
How do we strike a balance between measurable risk vs unmeasurable uncertainty?

A:

If we were asked to predict this month's chance of rain based solely on last month's weather statistics, we would be introducing a large amount of uncertainty into our weather prediction.   However, if we had access to 100 years of seasonal weather patterns, the uncertainty level would drop dramatically and confidence in our prediction would then be much higher.

The same concept applies to backtesting any strategy - the longer the backtest period, the lower the uncertainty level.



click here for more chart detail

John Ehlers' Zero Lag EMA tested on MSFT over 5 years, showing acceptable 16% maximum risk.



click here for more chart detail

Exact same strategy tested on MSFT over 12 years, showing unacceptable 93% maximum risk.


So, how far should we go back in time for backtesting purposes?

If we look back far enough, we'll run into that distant Black Swan event that wiped out just about everyone exposed to risk in the markets.   Should we prepare for the 100-year storm?   My personal view is that any EOD backtesting should include ten year's data in order to include at least one market cycle.   Anything beyond 20 years would be looking for that once-in-a-lifetime event that may or may not happen.

And even if 200 years of data were used in backtesting, some unmeasurable uncertainty components remain - after all, if there was no uncertainty then we could trade (leveraged) at 99% risk levels.   This is where the VSTpro's default (and adjustable) maximum acceptable 30% risk level comes from - it leaves room for about 70% of risk uncertainty.

Of course, it doesn't take 100% drawdowns to wipe out a trader.   Personally, my confidence to trade would be depleted at around 50% capital losses.   A fund manager would probably begin to lose clients at around 10-20% drawdowns and result in a fund redemption spiral.

The bottom line is that when measuring risk, we need to look back far enough to backtest for a reasonable representation of risk over time, but not far back enough to prepare for Doomsday-type events.




Q 10:
How does VSTpro compare with TradeSim?

A:
VSTpro features not found in TradeSim:
       * Complete profitable trading strategy with relatively low risk.
       * Instant visual representation of Profit, Risk, Risk/Reward ratio for each individual chart.
       * Real-life risk % calculation based on trade drawdowns.
       * Individual Position and Leverage suggestions for each security based on customized risk levels.
       * CRE technology (Change, Refresh, Experiment).
       * Intelligent optimizer which minimizes any curve-fitting effect.
       * 108 + 40 trading strategies with powerful integrated Market Trend Filter.
       * Mean-based backtest statistics, rather than averages which are often skewed by outliers.
       * Excellent feedback and additional strategy development from professional trader group within private VSTpro forum.
       * Several other minor features unique to VSTpro.

TradeSim features not found in VSTpro:
       * Portfolio backtesting.
       * Monte Carlo simulations.
       * Several other minor simulation stats.




Q 11:
How do I scan for the top ten Profit/Risk ratio stock candidates as shown in the VSTpro's trade table?

A:
Any scan for new VSTpro/MTF trades only needs to be done whenever the MTF indicates a change in its trend's direction.
At first this process may seem more complex than necessary, but it is not possible to fit the VSTpro platform code within an exploration.
Once the MTF exploration setup is set, it can then be left this way for future MTF scans.

Prior to following these instructions, please make sure that your loaded periods are identical for both charts and explorations:
       Tools      The Explorer      Options      Load 3024 Records  (12 years' EOD data);
       File      Open      Options      Load Options      Load 3024 periods.


Let's now setup the Explorer to search for the top ten candidates, using Long trades setup as an example:

       1) Apply the "VSTpro Trading Sample Long.mwt" template to your S&P 500 chart (shown on left below);
       2) Apply the "VSTpro Long - Explorer.mwt" template to the same chart (shown on right below);
       3) Go to MetaStock's Window menu and select "Column" so that both templates are now open side by side:


       click here for more chart detail

       We are now going to change settings in the "VSTpro Long - Explorer.mwt" (right) template,
       so that signals & stats become identical to the "VSTpro Trading Sample Long.mwt" (left) chart.

             (4) Click on the chart's "VSTpro X Long" indicator bands, and change the following two settings within its formula tab:


click here for more chart detail MTF mode: 3  (MTF only)
MTF periods: 14

Click on "Ok" to save
(click on pic for more detail)


       The two templates should now display identical Profit/Risk stats in their respective commentary windows:


       click here for more chart detail


       Please check that all parameters are set identically between the two chart setups if any discrepancies are found.


       5) Once the two templates are verified to be identical, please run the "VSTpro X Long Signals" exploration on all S&P 500 stocks.

       6) Upon completion, open exploration report and click on robustness-adjusted P/R ratio column header to sort results from best to worst.
           Choose the top ten robustness-adjusted P/R ratio stocks on the list.

       7) Ignore (skip) any candidate stock which is either a takeover target or has a Position Size of less than 60%.


The resulting ten trade selections are kept for the entire duration of the MTF trend period.
Whenever a security on the list gets stopped out, a re-entry signal will appear on its chart two bars later if the main MTF trend remains intact.

If the MTF turns Short, please repeat the above process with the Short versions of the templates and exploration:
       VSTpro Trading Sample Short.mwt" MTF trades template,
       VSTpro Short - Explorer.mwt" exploration template,
       VSTpro X Short Signals" exploration.







Disclaimer

  Past performance is not necessarily indicative of future results.
Amongst many factors, performance may vary depending on data:
We use and recommend accurate EOD data from Premium Data.
  This product is an educational tool; it is not a recommendation
to buy or sell, and should only be used by investors who are
aware of the risk inherent in trading.
  Neither Jose Silva nor MetaStockTools.com shall be held liable
for any investment losses based on the use of this software.

  The grant of this license is for personal use only.
  Any code disclosure, exchange, resale or repackage in any way
or form to any third party, is strictly prohibited.
  All VST & VSTpro code remains the sole property of Jose Silva.