Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

jswanson

Advanced Stops & Targets Strategy Tool

Recommended Posts

This strategy development tool was designed for TradeStation. It's coded in EasyLanguage and it's my first version. I thought a few people on this forum may find it useful.

 

The tool is a simple strategy to assist me in testing various stops and targets. My program is not completely unique. It’s actually based off an existing TradeStation strategy, called _Stops&Targets. I’ve taken this program and modified it with several other exit techniques. The code is available for download at the bottom of this article and is called _Stops&TargetsAdvanced. This strategy can be inserted into any chart to help you quickly test various exit techniques.

 

Below is an image of the _Stops&TargetsAdvanced strategy applied to a chart. You can see this strategy is running in parallel with another strategy called MA Simple. MA Simple is a moving average cross over system that only generates entry signals. All exit signals are generated by the _Stops&TargetsAdvanced strategy.

 

InsertStrategyExample.png

 

My code has the same stops and targets available in TradeStation’s original version, but I’ve expanded the capabilities to include the following nine new stops:

 

  1. Bar Count – Exit a position based on the number of bars since the position was opened.
     
  2. ATR Hard Stop – Exit a position based on the average true range of the market. This is a fixed stop loss. In other words the stop does not advance as a position moves in your favor. However, the value of the stop loss is updated on each bar close to adjust for the current market ATR.
     
  3. ATR Trail – Trailing stop based on the average true range of the market.
  4. Square root ATR Trail – This stop was explained in the article ATR Square Root.
  5. Noise Tolerant Stop – This technique was demonstrated in the article A Noise Tolerant Money Management Stop and provides a linear regression based stop which is also a non-optimized based exit.
     
  6. Moving Average – Exit a position based upon when price crosses beyond a simple moving average.
     
  7. RSI – Exit a position based on an RSI value.
     
  8. Day Of Week– Exit a position based upon the day of the week. By using this stop you can close all positions on a specific weekday, such as Friday.
     
  9. Time of Day– Exit a position at a specific time during the day. This is only used with systems that trade intraday.

 

Next I will explain the input values for these nine new stops.

 

  1. ExitToTest – This indicates which stop to test. At the time of this writing there are nine stops to test. Simply enter the digit (see above for the correct digit) of the stop to activate.
  2. NumBars – The number of bars to exit a position since the entrybar.
  3. ATRLen – The number of bars to use in ATR calculation.
  4. ATRMult – This number is the ATR multiple. The value is multiplied by the ATR to generate a final value.
  5. NTStop_N – The look back period for the noise tolerant stop.
  6. MALen – The look back period to use for the moving average based exit.
  7. RSILen – The look back period to use for the RSI based exit.
  8. iDayOfWwek – The day of week to exit. 1 for Monday and 5 for Friday.
  9. ExitTime – The time of day to exit a position. Time should be expressed in military time.

 

TrailingStopExample.png

 

Video

 

The video explains the code and how to use these stops in much more detail. A future modification I would like to add would be to base exit decisions on a different time-frame. Currently all exit decisions are based on the same time-frame in which trades are executed. It’s a common practice to base exit decisions on a higher time-frame.

 

 

Download The Code

 

The code is available here. You can freely change it by adding new stops or modify the existing stops. Please note however, this tool is for backtesting. It has not been designed or tested on live markets.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.