StockFetcher Forums · Filter Exchange · Bulkowski's Adam White Setup<< >>Post Follow-up
wkloss
231 posts
msg #96029
Ignore wkloss
9/5/2010 8:44:34 PM

I was exploring http://thepatternsite.com and came across an interesting trading sysyem. It was developed by Adam White; published in TASC magazine in 1995; tested and slightly revised by Tom Bulkowski. More information can be found here: http://thepatternsite.com/AdamWhiteSetup.html. Below are testing results. I find the ETF test most interesting.

For some reason known only to the devil that lives in my computer, the backtesting performance chart won't copy and paste correctly here but some highlights:

104 ETF's tested from 2005 to 2010

avg win $845; avg loss $219; avg trade $580; win/loss ratio 62%; avg drawdown 10%; avg hold time 113 days; 921 trades

In sample and out of sample data for stocks is also provided and it appears to document a good system.

The entry rules in Bulkowski's words are

"The trading setup is divided into three parts, entry, exit, and exit. Yes, it has two types of exits, and I'll explain that later. Entry is simple enough and it uses a type of moving average crossover. Here's the Metastock 4.5 code.

Enter long: when(llv(L,5),>,llv(L,13)) AND when(H,=,hhv(H,5))

I don't have metastock, but the code is easy to understand. llv and hhv are functions that return the lowest low and highest high values, respectively. L is the most recent weekly low and H is the most recent weekly high.

To put this into words, when the lowest low value of the past 5 weeks is above the lowest low of the past 13 weeks, and when the most recent weekly high is the highest high value of the last 5 weeks, then buy.

His examples seem to indicate that "past 5/13 weeks" include the most recent week (quote) as the first price bar of the 5 or 13"

I apoligize for the long post but I would rather give the author's interpretation rather than mine.

Could someone code the entry rule?














wantonellis
155 posts
msg #96033
Ignore wantonellis
modified
9/6/2010 10:09:49 AM



Kevin_in_GA
4,599 posts
msg #96035
Ignore Kevin_in_GA
9/6/2010 11:33:28 AM

Wantonellis got the entry code spot on. I notice that many of the results are very low volume - too thinly traded for my tastes. I would add "average volume(50) above 250000" to insure decent liquidity.

At some point these specific entry criteria should be optimized, but without knowing what the exit criteria are it is impossible to evaluate this right now.

wantonellis
155 posts
msg #96039
Ignore wantonellis
modified
9/6/2010 12:38:18 PM



wkloss
231 posts
msg #96040
Ignore wkloss
9/6/2010 12:51:54 PM

Thanks to wantonellis and Kevin.

Here is the exit methodology, again in Bulkowski's words:

Exit Methodology
The exit mechanism is a unique one. It comes in two parts. The first is when price retraces far enough down from a peak that it triggers an exit signal. However, that exit signal is shut off if price is trending strongly using a trend analysis index.

"Here is the metastock code for the exit formulas.

Close Long: when(fml(#1),>,opt1) AND when(fml(#2),<,opt2)
OPT1: retracement value Min=0.03 Max=0.07 Step = 0.01
OPT2: TAI threshold level Min=1 Max=1.4 Step =.01
Formula #1: (hhv(L,13)-L)/L
Formula #2: ((hhv(mov(C,26,S),5)-llv(mov(C,26,S),5))/C)*100
Formula #1 controls the price retracement. In words, calculate the highest weekly low value of the past 13 weeks. From that result, subtract the current weekly low price and divide by the current weekly low. White is measuring the distance from the highest low to the current low and expressing that as a percentage retracement.

Formula #2 is the trend analysis index threshold. This turns off the retracement exit signal if price is trending strongly. When price begins to move sideways, TAI turns on, letting the retracement percentage force an exit. In words, calculate the most recent 5 readings of a 26-week simple moving average of closing prices. From those five readings, subtract the lowest one from the highest one, then divide by the weekly close and multiply by 100.

White is calculating the range that a 26-week simple moving average travels over a 5-week period. Large values in the range means the stock is trending. Small values between the high and low of the moving average means the stock is going sideways. The rest of the calculation makes the numbers consistent across securities"

Hopefully this can be coded in SF.

What I'm hoping to do is:

1. Reduce the # of trades. Kevin's suggestion will help and one thing I will attempt is limiting the candidates to optionable stocks. I like options and not just directionally. One strategy is to do a put credit spread in systems that go long.

2. Reduce the holding time. This system averaged 193 trades a year with a 113 day holding time. That appears to be 60 or so trades at any one time. That is way too many to keep up with.

If the exits can be coded and if I can find improvements, I will post them. I really like the results Bulkowski got using ETF's but I have no idea how to limit the number of trades other than what is listed above. If anyone has any ideas, they will be welcomed.



wkloss
231 posts
msg #96071
Ignore wkloss
9/7/2010 10:29:43 PM

In my post above, there are 2 exit rules.

If anyone could code them, it would really be appreciated.

Bill

wantonellis
155 posts
msg #96089
Ignore wantonellis
modified
9/8/2010 8:28:53 PM



wkloss
231 posts
msg #96103
Ignore wkloss
9/9/2010 1:36:16 PM

An Intial report:

1st, thanks to wantonellis for the coding.

I used my idea of optionable stocks and Kevin's idea of average volume limit the # of candidates.

The 2007 to 2009 period was not kind to this system. My opinion is that these trades take so long to develop that unrealized gains turn into losses when the markets fall.

The 2005 to 2007 period was ok on a win % basis but not good on ROI.

I also tried this on stocks using Kevin's average volume. Results weren't much there either.

My initial conclusion is that this system must get its best results from low volume ETF's & stocks. This looked great when I saw the summary of results on Bulkowski's site but now we know why.

Bill

bushynose
22 posts
msg #146742
Ignore bushynose
2/27/2019 2:36:10 AM

Quick filter display. Can someone improve this idea?

Fetcher[
set{L5, low 5 week low}
draw L5
set{L13, low 13 week low}
draw L13 on plot L5

set{H5, high 5 week high}
draw H5 on plot L5
set{H, high 1 week high}
draw H on plot L5
set{L513, count(L5 is above L13, 1)}
draw L513
set{H15, count(H equals H5, 1)}
draw H15
]



Village Elder
231 posts
msg #146743
Ignore Village Elder
2/27/2019 8:54:14 AM

Fetcher[
close above 5
set{L5, low 5 week low}
draw L5 on plot price
set{L13, low 13 week low}
draw L13 on plot price

set{H5, high 5 week high}
draw H5 on plot price
set{H, high 1 week high}
draw H on plot price
set{L513, count(L5 is above L13, 1)}
draw L513
set{H15, count(H equals H5, 1)}
draw H15
plot-display is weekly
]



Same code but now the High and Low data are plotted onto the weekly price rather than below. You have to be careful mixing weekly indicators and daily plots - I think the indicators default to the plot-display setting rather than what you are thinking it will do. I also removed any stocks below 5 dollars to clear out the penny stocks. I would also consider a minimum volume requirement such as

average volume(30) above 250000

or

count(volume * close above 1000000, 30) above 29

to remove thinly traded stocks.

Do you have an entry and exit signal strategy here? There is no selection being made based on the indicators you are using.

StockFetcher Forums · Filter Exchange · Bulkowski's Adam White Setup<< >>Post Follow-up

*** Disclaimer *** StockFetcher.com does not endorse or suggest any of the securities which are returned in any of the searches or filters. They are provided purely for informational and research purposes. StockFetcher.com does not recommend particular securities. StockFetcher.com, Vestyl Software, L.L.C. and involved content providers shall not be liable for any errors or delays in the content, or for any actions taken based on the content.


Copyright 2022 - Vestyl Software L.L.C.Terms of Service | License | Questions or comments? Contact Us
EOD Data sources: DDFPlus & CSI Data Quotes delayed during active market hours. Delay times are at least 15 mins for NASDAQ, 20 mins for NYSE and Amex. Delayed intraday data provided by DDFPlus


This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.