Subscribe to RSS feeds Bulkowski Blog via RSS

Thomas Bulkowski’s successful investment activities allowed him to retire at age 36. He is an internationally known author and trader with 30+ years of stock market experience and widely regarded as a leading expert on chart patterns. He may be reached at

Support this site! Clicking the links (below) takes you to If you buy ANYTHING, they pay for the referral.

Picture of the head's law.
Chart Patterns: After the Buy
Getting Started in Chart Patterns, Second Edition book.
Trading Basics: Evolution of a Trader book.
Fundamental Analysis and Position Trading: Evolution of a Trader book.
Swing and Day Trading: Evolution of a Trader book.
Visual Guide to Chart Patterns book.
Encyclopedia of Chart Patterns 2nd Edition book.

Adam White Trading Setup

Class Elliott Wave Fundamentals Psychology Quiz Research Setups Software Tutorials More...
Candles Chart
Small Patterns
Industrials (^DJI):
Transports (^DJT):
Utilities (^DJU):
Nasdaq (^IXIC):
S&P500 (^GSPC):
As of 02/22/2017
20,776 32.60 0.2%
9,449 -83.20 -0.9%
682 2.42 0.4%
5,861 -5.32 -0.1%
2,363 -2.56 -0.1%
Tom's Targets    Overview: 02/14/2017
21,150 or 20,000 by 03/15/2017
8,800 or 9,700 by 03/01/2017
700 or 640 by 03/01/2017
5,950 or 5,650 by 03/01/2017
2,400 or 2,260 by 03/01/2017
Indus strength: None YTD
Mutt Losers: None YTD
Mutt Winners: None YTD

Written by and copyright © 2005-2017 by Thomas N. Bulkowski. All rights reserved. Disclaimer: You alone are responsible for your investment decisions. See Privacy/Disclaimer for more information.

This article discusses a long-term stock trading setup by Adam White from a June 1995 Technical Analysis of Stocks and Commodities magazine article. He proposed it as a weekly S&P trading system, but I wanted to test it for stocks and ETFs as well. I updated the results to October 2010 and found that performance dropped.

Adam White Setup Summary

This trading setup is for the long term position trader. I tested it on stocks and ETFs with little performance difference.

The setup relies on higher highs and higher lows for entry. Exit is a two part affair. The first half measures how far price has retraced from a peak. The second part acts as a switch to turn on and off the retracement exit. It uses what Adam White calls a trend analysis index or TAI for short. The trend analysis index calculates a high-low price range to determine whether price is trending or not. If price is trending, the TAI switches off the retracement exit (in theory, but it didn't always work in practice). Securities with steep price drops don't exit in a timely manner, so that needs to be fixed.

For exchange traded funds, the system wins 38% of the time, making 1.4 times as much as when it loses. The average profit per trade is $208 on a $10,000 investment held for 151 days, on average. Stocks won 39% of the time, making 1.4 times their losses with an average profit of $261 when held for an average of 147 days.


Background: Adam White Results: 1982 to 1991

Adam White Results 1982-1991Top
Number of winning trades: 710
Number of losing trades: 29
Total won: $942$1,027
Total lost: $80$273
Win/loss ratio: 11.8:13.8:1
Average duration of winners: 45 weeks29 weeks
Average duration of losers: 15 weeks7 weeks

As mentioned, Adam White wrote a feature article titled, "A weekly S&P trading system" in 1995. As the title suggests, he used weekly data from April 1982 to November 1991 in his test.

The article doesn't break out trading performance, but it does mention a few statistics for the top and bottom performing parameters (not trades). I show them listed in the table on the right.

Few trades occurred, but the ratio of dollars won to dollars lost (win/loss ratio) is impressive, ranging from nearly 4 to 1 for the worst performing parameters to almost 12 to 1.



Background, Bulkowski Results: 1982 to 1991

Bulkowski Results 1982-1991Default
Number of winning trades: 8
Number of losing trades: 6
Total dollars won: $222
Total dollars lost: $37
Dollars won/lost ratio: 6:1
Average duration of winners: 39 weeks
Average duration of losers: 5 weeks
Maximum drawdown: 9%
Maximum hold time loss: 6%

Using his default parameters (5% retracement, 1.2 TAI, 26 SMA with no commissions or fees) on the S&P 500 index (^GSPC), I tested his setup and found the following, shown in the table on the right.

The number of trades are about what they should be since I am not using the best nor the worst parameters (but he doesn't specify what those were. He only provides the range used in tests). The total dollars won falls well short of his results, but the ratio of dollars won to lost is where it should be: 6 to 1.

I found the maximum drawdown to be 9% and the hold time loss to be just 6%. The hold time loss is the drop from the buy price to the lowest low before the trade ends. This is different than drawdown which measures the peak to valley drop in equity. I like to think of drawdown as the amount of profit the system gives up before exiting. The hold time loss is how much money you could lose if you were stopped out at the worst possible time.

The differences between the two tables can be attributed to many variables. My code or my interpretation of his setup could be wrong. He shows the best and worst results for parameters while I used his default settings. I don't know how close his defaults are to his best and worst parameters. Since the test dates are so old, it really doesn't matter.

One point he mentions is that the system was out of the market during the 1987 crash. My trades show the setup going into cash on September 28, 1987 and reentering on December 28, missing the October 19 plunge of over 22%.


Bulkowski Results 1990-2010Default
Number of winning trades: 13
Number of losing trades: 12
Total dollars won: $1,276
Total dollars lost: $671
Win/loss ratio: 1.9:1
Average duration of winners: 43 weeks
Average duration of losers: 16 weeks
Maximum drawdown: 23%
Maximum hold time loss: 28%

Background, Bulkowski Results Updated: 1990 to 2010

The table on the right shows my results from November 1990 (one trade began in 1990 and ended in 1992, so I include it here but not in the prior table) to July 2010, using the S&P 500 index (^GSPC).

The results do not include commission charges or other fees nor interest on cash balances and are on a per-share basis.

The results include bear markets in 2000-2002 and 2007-2009. Notice that the win/loss ratio has dropped from 6:1 to 1.9 to 1. The drawdown and hold time loss have increased substantially, probably due to the bear markets.



Bulkowski Results 1991-2010Default
Average win: $700
Average loss: $234
Average profit per trade: $465
Win/loss ratio: 52%
Average hold time: 210 days

The table on the right shows how an investment of $10,000 per trade would have done. This assumes $10 trading commissions each trade ($20 round trip).

The max drawdown (23%), hold time loss (28%) and other results are the same as shown in the prior table since it is the same test only the numbers have been expressed differently.



Entry Methodology

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.

Picture of buy signals on the S and P 500 index.

The figure above shows buy signals on the S&P 500 index.

Notice that as price trends lower on the left half of the chart, the buy signals disappear. On the right half of the chart, when price is climbing, many buy signals occur. The entry signal looks for higher highs and higher lows and that's how it knows that price is trending upward. When entry conditions are met, a buy signal occurs and that appears on the chart as a tall black rectangle along the bottom of the chart.


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.

Picture of buy signals on the S and P 500 index.

The figure above shows the entry signal as the tallest black bar near the bottom of the chart. These are the same entry signals as in the prior chart. The retracement exit is the lowest black bar, and the trend analysis index is the black bar that ends midway between those two. TAI is on (ok to sell) or off (hold longer) as a switch for the retracement sell signal.

For example, multiple entry signals occur at A (since the bar is wider than others of the same height). Notice that price is trending up at the start of the black bar.

At B, the trend analysis index says it's okay to sell and it's likely that the retracement signal is also triggered but hidden by the taller black bar. Notice that B occurs when price drops.

Entry at C occurs when price turns up and the exit comes at D when price drops. Notice that the retracement bar between C and D would have signaled an exit except for the trend analysis index said not to sell. The trend analysis index works great by turning off the retracement sell in a rising price trend, but it also turns off retracement as price falls and that leads to larger losses. I adjusted the parameters to limit those losses and tuned the setup for today's markets.



I charted the retracement signal and the two exit signals and played with some of their parameters, just to see how they behaved. For the entry signal, I didn't touch the parameters. It's not perfect, but the signals are timely. I like how it avoids signaling a buy in a falling market.

For the exit signals, I was less than pleased. I don't like how it keeps you into a trade when price turns down steeply. My feeling is that a component of the ADX indicator would work better than the trend analysis index, but I haven't tried that. You might want to experiment with better exit strategies than the trend analysis index used here.

I show the median drawdown in the table instead of the maximum because of the large numbers: 99% for out of sample stocks (AIG) and 93% (SKF) for ETFs. Those two symbols show that the exit method has a serious flaw, so it's something you'll want to fix if using this setup.

Anyway, I played with the parameters, using in-sample data from January 2000 to January 2005. My results confirm Adam White's settings as the optimum ones: 26 week SMA, 5% retracement, and 1.2 TAI. The setup holds up in out of sample tests, too, but you can be the judge of that. The out-of-sample period extended from January 2005 to October 2010.

Metric567 Stocks
In Sample
567 Stocks
Out of Sample
104 ETFs
Out of Sample
Average win: $769$856$674
Average loss: ($597)($595)($466)
Average profit per trade: $172$261$208
Dollars won/loss:
Win/loss ratio: 40%39%38%
Median drawdown: 11%10%8%
Median hold time loss: 5%4%3%
Average hold time: 134 days147 days151 days
Trades: 3,1404,560797

The table shows the results using White's parameters on in-sample and out-of-sample data, applied to 567 stocks from my database. The stocks are the ones I look at daily, so they span the range from small to large cap and sport a wide spectrum of prices. I did set a minimum price of $5 for the security. The numbers reflect a $10,000 investment per trade, $10 commissions ($20 round trip), with no provision made for slippage, taxes, interest incurred on balances, and so on.

I would prefer to have setups that win more often than 38% to 40% of the time.

Results Download

An Excel spreadsheet (21 kb) showing summary test results is available for downloading by clicking on the link.

-- Thomas Bulkowski


See Also

Written by and copyright © 2005-2017 by Thomas N. Bulkowski. All rights reserved. Disclaimer: You alone are responsible for your investment decisions. See Privacy/Disclaimer for more information. The generation of random numbers is too important to be left to chance