Videos Published Explaining Code for the ES.D DayTrade (V-ORBO) Strategy
Two videos have been uploaded to youTube describing the strategy and strategy based indicator that I discussed in the prior post. Here is todays action (Friday 9th of April).
2021-04-09 Friday Action – Sometimes It Works
What’s In The Videos?
Getting the Shading of the Break Out Box requires some tweaking of the indicator properties. Part A shows how to do this – remember the code is available in the prior post. In Part B I break down the code and show I first was inspired to develop the indicator and then figured developing the strategy would help create the indicator. I describe both sources in the Part B.
I didn’t say a very good Free System! This code is really cool so I thought I would share with you. Take a look at this rather cool picture.
Six Bar Break Out with Volatility Buffer and Volatility Trailing Stop
Thanks to a reader of this blog (AG), I got this idea and programmed a very simple day trading system that incorporated a volatility trailing stop. I wanted to make sure that I had it programmed correctly and always wanted to draw a box on the chart – thanks to (TJ) from MC forums for getting me going on the graphic aspect of the project.
Since I have run out of time for today – need to get a haircut. I will have to wait till tomorrow to explain the code. But real quickly the system.
Buy x% above first y bar high and then set up a trailing stop z% of y bar average range – move to break-even when profits exceed $w. Opposite goes for the short side. One long and one short only allowed during the day and exit all at the close.
if barCount >= startTradeBars then begin volAmt = average(range,startTradeBars); if barCount = startTradeBars then begin longStop = highToday + breakOutVolPer * volAmt; shortStop = lowToday - breakOutVolPer * volAmt; end; if t < endTradeTime then begin if longsToday = 0 then buy("volOrboL") next bar at longStop stop; if shortsToday = 0 then sellShort("volOrboS") next bar shortStop stop; end;
trailVolAmt = volAmt * trailVolPer; if mp = 1 then begin longsToday +=1; if c > entryPrice + breakEven$/bigPointValue then longTrail = maxList(entryPrice,longTrail); longTrail = maxList(c - trailVolAmt,longTrail); sell("L-TrlX") next bar at longTrail stop; end; if mp = -1 then begin shortsToday +=1; if c < entryPrice - breakEven$/bigPointValue then shortTrail = minList(entryPrice,shortTrail); shortTrail = minList(c + trailVolAmt,shortTrail); buyToCover("S-TrlX") next bar at shortTrail stop; end; end; setExitOnClose;
if barCount >= startTradeBars then begin volAmt = average(range,startTradeBars); if barCount = startTradeBars then begin longStop = highToday + breakOutVolPer * volAmt; shortStop = lowToday - breakOutVolPer * volAmt; for iCnt = 0 to startTradeBars-1 begin plot1[iCnt](longStop,"BuyBO",default,default,default); plot2[iCnt](shortStop,"ShrtBo",default,default,default); end;
end; if t < endTradeTime then begin if longsToday = 0 and h >= longStop then begin mp = 1; mEntryPrice = maxList(o,longStop); longsToday += 1; end; if shortsToday = 0 and l <= shortStop then begin mp = -1; mEntryPrice = minList(o,shortStop); shortsToday +=1; end; plot3(longStop,"BuyBOXTND",default,default,default); plot4(shortStop,"ShrtBOXTND",default,default,default); end;
trailVolAmt = volAmt * trailVolPer;
if mp = 1 then begin if c > mEntryPrice + breakEven$/bigPointValue then longTrail = maxList(mEntryPrice,longTrail);
longTrail = maxList(c - trailVolAmt,longTrail); plot5(longTrail,"LongTrail",default,default,default); end; if mp = -1 then begin if c < mEntryPrice - breakEven$/bigPointValue then shortTrail = minList(mEntryPrice,shortTrail); shortTrail = minList(c + trailVolAmt,shortTrail); plot6(shortTrail,"ShortTrail",default,default,default); end; end;
Cool code for the indicator
Very Important To Set Indicator Defaults Like This
For the BO Box use these settings – its the first 4 plots:
Use these colors and bar high and bar low and set opacity
The box is created by drawing thick semi-transparent lines from the BuyBo and BuyBOXTND down to ShrtBo and ShrtBOXTND. So the Buy components of the 4 first plots should be Bar High and the Shrt components should be Bar Low. I didn’t specify this the first time I posted. Thanks to one of my readers for point this out!
Use bar low for ShrtBo and ShrtBOXTND plots
Also I used different colors for the BuyBo/ShrtBo and the BuyBOXTND/ShrtBOXTND. Here is that setting:
The darker colored line on the last bar of the break out is caused by the overlap of the two sets of plots.
Here is how you set up the trailing stop plots:
Make Dots and Make Then Large – I have Red and Blue Set
Backtesting with [Trade Station,Python,AmiBroker, Excel]. Intended for informational and educational purposes only!