Close
Skip to content

Program 31 | Trade planner

Program 31 is a TradeStation EasyLanguage strategy developed using TradeStation 9.0. It is designed to help plan trades by drawing entry, target and stop lines on a chart, perhaps in conjunction with another indicator or show me study. The user also has the option to have the program place trades based on the values of the lines (see below) using program generated stop and limit orders.

A companion indicator is included that plots the level values. This is explained in the video below.

The following image shows an example screen (click the image if you would like to see a larger version):

Program 31 applied to @ES12(D) chart.

Program 31 draws an entry line, target 1 line, target 2 line, target 3 line, and stop line on the chart based on the user inputs below. The user may also drag the lines to change the position of any of the lines. The lines should be moved in the following order:

  • Entry line (which moves all the lines with the distances between them defined by the original Tgt1, Tgt2, Tgt3 and Stp inputs)
  • Target 1 line (which moves the target 1 , target 2 and target 3 lines)
  • Target 2 line (which moves the target 2 and target 3 lines)
  • Target 3 line (moves the target 3 line)
  • Stop line (moves the stop line)

This UNPROTECTED programs (i.e. the TradeStation EasyLanguage strategy and indicator) are available for immediate download for $89.95 by clicking the ‘add to cart’ button to pay using Credit card or PayPal. Gold Pass members are eligible for 20% off this price.

Line inputs

I have included a brief description of each input. The video, below, provides more information.

iInterval1( 250 ), // How often timer updates (in milliseconds)
LongOrShort( -1 ), // 1 = Go long, -1 = Go short
EntryVal( 0 ), // Initial value for entry level
EntryColorLong( White ), // Color of entry line for long trades
EntryColorShort( White ), // Color of entry line for short trades
Tgt1( 100 ), // First target expressed number of ticks from Entryval
Tgt1Color( Green ), // First target line color
Tgt2( 100 ), // Second target initially equals first target plus Tgt2 ticks
Tgt2Color( Green ), // Second target line color
Tgt3( 100 ), // Third target initially equals second target plus Tgt3 ticks
Tgt3Color( Green ), // Third target line color
Stp( 100 ), // Places stop line initially Stp ticks from entry line
StpColor( Red ), // Color of stop line
RiskRewardColor( White ), // Color of risk/reward text

If the user input LongOrShort is set to 1 then the target lines are drawn above the  entry line. If LongOrShort is set to -1 then the target lines are drawn below the entry line. If EntryVal is set to zero the initial entry line is set 20 ticks from the opening value of the last bar on the chart. When LongOrShort is equal to 1 the target and stop lines are drawn as follows:

  • First target = entry price + Tgt1 ticks
  • Second target = first target + Tgt2 ticks
  • Third target = second target + Tgt3 ticks
  • Stop = entry price – Stp ticks

When LongOrShortis equal to -1 the target and stop lines are drawn as follows:

  • First target = entry price – Tgt1 ticks
  • Second target = first target – Tgt2 ticks
  • Third target = second target – Tgt3 ticks
  • Stop = entry price + Stp ticks

Trade inputs (in the strategy version)

Trade( TRUE ), // If set to TRUE the strategy will issue strategy orders
Cts1( 5 ), // Number of contracts bought or sold at the first target
Cts2( 5 ), // Number of contracts bought or sold at the second target
Cts3( 5 ); // Number of contracts bought or sold at the third target

If Trade is set to TRUE the program will enter and exit trades using the following code:

// ORDER GENERATION
If LastBarOnChart and Trade then
BeginIf LongOrShort = 1 then
Begin
Buy ( Cts1 + Cts2 + Cts3 ) Contracts next bar at EntryVar Stop;
Sell (“Tgt1L”) Cts1 Contracts next Bar at Target1 Limit;
Sell (“Tgt2L”) Cts2 Contracts next Bar at Target2 Limit;
Sell (“Tgt3L”) Cts3 Contracts next Bar at Target3 Limit;
Sell (“StpL”) Next Bar at StopVal Stop;
End;

If LongOrShort = -1 then
Begin
Sell Short ( Cts1 + Cts2 + Cts3 ) Contracts next bar at EntryVar Stop;
BuyToCover (“Tgt1S”) Cts1 Contracts next Bar at Target1 Limit;
BuyToCover (“Tgt2S”) Cts2 Contracts next Bar at Target2 Limit;
BuyToCover (“Tgt3S”) Cts3 Contracts next Bar at Target3 Limit;
BuyToCover (“StpS”) Next Bar at StopVal Stop;
End;
End;

This UNPROTECTED programs (i.e. the TradeStation EasyLanguage strategy and indicator) are available for immediate download for $89.95 by clicking the ‘add to cart’ button to pay using Credit card or PayPal. Gold Pass members are eligible for 20% off this price.

Program 31 demonstration video

Decimal places and levels

The program automatically calculates the number of decimal places required for a particular trading instrument (e.g 5 for GBPUSD).

Program 31 makes sure that when the user moves a line, if it is not on a valid price, the program moves it to the nearest tick value. The rounding rules used by the program are as follows:

If LongOrShort = 1

  • Entry line rounded up
  • Target 1 line rounded down
  • Target 2 line rounded down
  • Target 3 line rounded down
  • Stop line rounded up

If LongOrShort = -1

  • Entry line rounded down
  • Target 1 line rounded up
  • Target 2 line rounded up
  • Target 3 line rounded up
  • Stop line rounded down

So, for example, if LongOrShort = 1 and a user moved the entry line on a @ES chart to a value of  1373.57, the line would be moved up to the next tick value of 1373.75.

Chart with the program 31 indicator applied. Notice that the plot values can be seen on the right hand scale.

This UNPROTECTED programs (i.e. the TradeStation EasyLanguage strategy and indicator) are available for immediate download for $89.95 by clicking the ‘add to cart’ button to pay using Credit card or PayPal. Gold Pass members are eligible for 20% off this price.

TO THE BEST OF MARKPLEX CORPORATION’S KNOWLEDGE, ALL OF THE INFORMATION ON THIS PAGE IS CORRECT, AND IT IS PROVIDED IN THE HOPE THAT IT WILL BE USEFUL. HOWEVER, MARKPLEX CORPORATION ASSUMES NO LIABILITY FOR ANY DAMAGES, DIRECT OR OTHERWISE, RESULTING FROM THE USE OF THIS INFORMATION AND/OR PROGRAM(S) DESCRIBED, AND NO WARRANTY IS MADE REGARDING ITS ACCURACY OR COMPLETENESS. USE OF THIS INFORMATION AND/OR PROGRAMS DESCRIBED IS AT YOUR OWN RISK.

ANY EASYLANGUAGE OR POWERLANGUAGE TRADING STRATEGIES, SIGNALS, STUDIES, INDICATORS, SHOWME STUDIES, PAINTBAR STUDIES, PROBABILITYMAP STUDIES, ACTIVITYBAR STUDIES, FUNCTIONS (AND PARTS THEREOF) AND ASSOCIATED TECHNIQUES REFERRED TO, INCLUDED IN OR ATTACHED TO THIS TUTORIAL OR PROGRAM DESCRIPTION ARE EXAMPLES ONLY, AND HAVE BEEN INCLUDED SOLELY FOR EDUCATIONAL PURPOSES. MARKPLEX CORPORATION. DOES NOT RECOMMEND THAT YOU USE ANY SUCH TRADING STRATEGIES, SIGNALS, STUDIES, INDICATORS, SHOWME STUDIES, PAINTBAR STUDIES, PROBABILITYMAP STUDIES, ACTIVITYBAR STUDIES, FUNCTIONS (OR ANY PARTS THEREOF) OR TECHNIQUES. THE USE OF ANY SUCH TRADING STRATEGIES, SIGNALS, STUDIES, INDICATORS, SHOWME STUDIES, PAINTBAR STUDIES, PROBABILITYMAP STUDIES, ACTIVITYBAR STUDIES, FUNCTIONS AND TECHNIQUES DOES NOT GUARANTEE THAT YOU WILL MAKE PROFITS, INCREASE PROFITS, OR MINIMIZE LOSSES.