As of 03/27/2024
  Indus: 39,760 +477.75 +1.2%  
  Trans: 16,029 +177.70 +1.1%  
  Utils: 875 +23.30 +2.7%  
  Nasdaq: 16,400 +83.82 +0.5%  
  S&P 500: 5,248 +44.91 +0.9%  
YTD
 +5.5%  
 +0.8%  
-0.8%  
 +9.2%  
 +10.0%  
  Targets    Overview: 03/13/2024  
  Up arrow40,000 or 38,500 by 04/01/2024
  Up arrow16,300 or 15,350 by 04/01/2024
  Up arrow885 or 830 by 04/01/2024
  Up arrow16,600 or 15,200 by 04/01/2024
  Up arrow5,350 or 5,100 by 04/01/2024
As of 03/27/2024
  Indus: 39,760 +477.75 +1.2%  
  Trans: 16,029 +177.70 +1.1%  
  Utils: 875 +23.30 +2.7%  
  Nasdaq: 16,400 +83.82 +0.5%  
  S&P 500: 5,248 +44.91 +0.9%  
YTD
 +5.5%  
 +0.8%  
-0.8%  
 +9.2%  
 +10.0%  
  Targets    Overview: 03/13/2024  
  Up arrow40,000 or 38,500 by 04/01/2024
  Up arrow16,300 or 15,350 by 04/01/2024
  Up arrow885 or 830 by 04/01/2024
  Up arrow16,600 or 15,200 by 04/01/2024
  Up arrow5,350 or 5,100 by 04/01/2024

Bulkowski on Pattern Pairs: Rectangle Tops

Initial release: 12/15/2021.

The idea behind pattern pairs is to pick a chart pattern type (like broadening bottoms with upward breakouts) to buy and another to sell (like double tops). You buy the upward breakout from the broadening bottom, hold for a few years, and sell when a double top appears and breaks out downward. Along the way, you give price a chance to rise far enough to overcome those trades which are stopped out for a loss. This is a trend-following strategy.

Trading rectangle tops: Summary

Picture of the pattern pairs.

The figure illustrates the idea for trading pattern pairs, where price is the red line and the boxes are chart patterns. This articles assumes you buy an upward breakout from either a rectangle top or a busted one (price breaks out downward, drops no more than 10%, reverses, and closes above the top of the pattern. Buy as price rises above the top of the pattern).

On the sale side, you can sell the first bearish chart pattern which comes along or wait for your favorite bearish chart pattern to appear and sell then.

Here's a list of the top five performing sell signals, based on annualized gain (annualized because the hold time is often years, in parenthesis).

The following list shows the expected performance of chart pattern pairs, ranked by their expectancy. Expectancy is a way of gauging winning and losing trades and how much money you might make trading a pattern pair. I put the expected profit per trade, per share, in parenthesis.

To improve performance, try these tips.

Top of page

Trading rectangle tops: Entry and Exit Conditions

The databases I built over several decades doesn't identify every chart pattern. There may be plenty of double tops over the years, for example, that I didn't catalog on the way to the one I did catalog. So buying an upward breakout from a rectangle top and selling at the double top I cataloged would be different than choosing to sell a different double top. However, the following analysis does give a real-world flavor for how well you might do trading chart patterns if you follow the pattern pair strategy.

Here's what I used in my analysis.

I used the following 43 chart patterns in the analysis, but some only applied if they were busted.

Top of page

Trading Rectangle Tops: Stops

I used a stop loss order set a penny below the bottom of the chart pattern. Price on the way down may have gapped below the stop price (for the sale price), so I used the lower of the stop price or the opening price on the day of sale).

For trailing stops, I removed the stop loss order and used a trailing stop set at 10%, 15%, 20%, or 25% below a peak, never lowering the stop value, but raising it if a higher peak came along during the trade.

In Table 1, I calculated the percentage net gain (the average of gains and losses) when using various trailing stop loss amounts (10%, 15%, 20%, and 25%) for all tested chart patterns according to the busted/non-busted buy/sell configuration. In parenthesis is the size of the average loss so I could detail how losses change with various stop loss orders.

For example, if I tested non-busted rectangle tops and sold various non-busted patterns (ascending triangles, broadening tops, head-and-shoulders tops, and so on), I made an average of 71% ("Stop Loss Only" column) after having a stop loss order in place. Losses averaged 11%. Replacing the stop loss with a 10% trailing stop cut the gain to 8% but also trimmed the average loss to 5%. Using a 25% trailing stop allowed me to keep more money, 29%, but losses climbed to 13%. If I didn't use any type of stop, the gain averaged 220% with losses averaging 28%.

The results show that trades which do not use a stop make the most money but losses are huge. Busted buys outperform the other rows except for the 10% trailing stop column (where there was a tie).

Table 1: Various Trailing Stop Settings: Net Profit and (Average Loss)
Data 10%  15%  20%  25%  Stop Loss 
Only
 No Stop
Non-busted buys, non-busted sales 8% (-5%)  13% (-8%)  21% (-10%)  29% (-13%)  71% (-11%)  220% (-28%) 
Busted buys, non-busted sales 10% (-5%)  18% (-5%)  28% (-9%)  37% (-11%)  123% (-7%)  445% (-26%) 
Non-busted buys, busted sales 7% (-6%)  12% (-8%)  21% (-10%)  25% (-13%)  75% (-10%)  223% (-27%) 
Busted buys, busted sales 8% (-5%)  16% (-5%)  26% (-10%)  36% (-13%)  133% (-6%)  526% (-26%) 

Top of page

Trading rectangle tops: Busted Patterns

Table 2 shows what I found when comparing the performance of non-busted patterns (both buy and sell) with busted and non-busted chart patterns. In 22 or 31 contests (up to 31 different chart pattern types, depending on which apply), I compared the three combinations of busted and non-busted buy and sell signals to non-busted buy and sell signals. The table below shows the percentage of time the busted combination beat the non-busted combination in the contests.

I found that the highest rate of success for busted patterns was 71%. If you bought a busted rectangle top and sold a non-busted pattern, you'd have a successful trade 71% of the time. The other combinations of busted pattern didn't perform favorably.

According to the contest results, be cautious trading using busted chart patterns.

Table 2: Busted or Non-Busted Contest Winners
 Sell Non-Busted PatternSell Busted Pattern
Buy non-busted patternN/A (benchmark)32%
Buy busted pattern71%45%

Top of page

Trading rectangle tops: Non-busted Buy, Non-Busted Sale

Picture of a busted pattern pair.

Table 3 shows statistics I collected for rectangle tops using the trading rules described above and shown in the figure. A stop loss order was used and priced a penny below the bottom of the chart pattern (after buying).

For example, if you were to buy the upward breakout from a rectangle top chart pattern and hold it until you encountered a broadening bottom (the first chart pattern listed in the table), but one with a downward breakout, you'd net an average of 98% on the 324 (88 winners, 236 losers) trades. That's an average of 388% on your winners, 10% average loss on your losers. You'd find that only 27% of the trades made money but you'd gain an average of 34% per year (ranking 34th where 1 is best). If you removed the stop loss order and just held on until the broadening bottom with a downward breakout appeared, you'd almost triple your money (191% per trade).

The expectancy averaged $4.16 per share per trade which ranks 82nd where 1 is the best value.

Notes: The rank is based on the net gain for all four performance tables (tables 3 to 6) shown below. Trades with sample counts below 30 are not ranked.

Table 3: Statistics for rectangle tops
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank
Broadening bottom388%-10%98%34%34191%88/23627%$4.1682
Broadening top318%-10%90%37%27178%190/43330%$10.6524
Broadening formation, right-angled and ascending193%-10%46%20%86129%77/20427%$2.8596
Broadening formation, right-angled and descending221%-11%51%22%83119%61/16827%$3.0794
Broadening wedge, ascending306%-11%90%51%15215%61/13132%$2.66100
Broadening wedge, descending254%-10%81%28%64140%59/11235%$6.6746
Bump-and-run reversal top235%-10%79%41%23160%279/49136%$8.0834
Diamond bottom193%-10%47%19%89141%23/6028%$2.56101
Diamond top192%-10%60%28%63147%86/16335%$6.4247
Adam & Adam double top390%-9%94%32%42286%358/102826%$9.5429
Adam & Eve double top356%-9%84%32%45202%146/42326%$11.7518
Eve & Adam double top288%-9%65%27%67208%166/49625%$7.6837
Eve & Eve double top276%-10%74%30%50154%213/51329%$16.747
Falling wedge212%-9%57%23%78108%54/12630%$5.7657
Head-and-shoulders top287%-9%73%31%47203%611/158728%$6.1353
Head-and-shoulders, complex top185%-10%48%22%84108%119/28230%$3.9183
Rectangle top186%-9%45%23%79104%119/31228%$3.4293
Rising wedge220%-10%65%29%57151%213/44432%$5.6160
Rounding top275%-11%67%25%74159%115/30727%$4.8570
Ascending scallop226%-11%79%42%22165%66/10738%$4.2280
Descending scallop224%-10%52%25%73128%322/89227%$3.5690
Scallop, inverted and ascending415%-9%107%47%17168%25/6627%$21.735
Scallop, descending and inverted222%-10%54%29%58117%183/47528%$5.5262
Triangle, ascending334%-9%81%36%30167%100/28026%$5.4663
Triangle, descending287%-10%74%31%46120%114/29128%$3.5591
Triangle, symmetrical258%-10%66%29%59147%327/82528%$6.2948
Triple top275%-9%67%29%55169%518/139927%$6.8245
Rectangle bottom206%-11%38%20%8887%62/21422%$2.8497
3 falling peaks305%-10%78%34%37178%539/138728%$8.2731
Roof294%-10%74%32%44152%27/7128%$4.4675
Roof, inverted141%-10%33%17%93107%51/12729%$3.6987
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank

Top of page

Trading rectangle tops: Busted Buy, Non-Busted Sale

Picture of a busted pattern pair.

The figure shows the setup for this scenario. When price busts the bearish chart pattern (busts a downward breakout from a rectangle top in a bull market), buy. Sell after a downward breakout from the target chart pattern.

Table 4 shows the performance of busted rectangle tops for the entry and sales after downward breakouts from various bearish chart patterns. A stop loss order was used and priced a penny below the bottom of the pattern (after buying).

A busted rectangle top has a downward breakout but price drops no more than 10% before reversing and moving above the top of the pattern. Buy when price moves at least a penny above the top of the busted pattern. Sell after price drops at least a penny below the target chart pattern.

For example, buying a rectangle top with a busted downward breakout in a bull market (the entry price is really the higher of a penny above the top of the pattern or the opening price) and selling after the downward breakout from a broadening bottom shows winners averaging gains of 264%. Losses average 6%, for a net of 80%. Annualized that's 28% (ranking 62nd). Only 110 trades occurred with a win/loss ratio of 32%. If you traded this as a buy-and-hold position, meaning no stops were used, the net gain climbed to 141%. Expectancy was a gain of $6.97 per share, ranking 42nd where 1 is best.

Trades with sample counts below 30 are not ranked.

Table 4: Statistics for Busted Buys, Normal Sales
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank
Broadening bottom264%-6%80%28%62141%35/7532%$6.9742
Broadening top570%-6%132%59%13254%46/14524%$8.2033
Broadening formation, right-angled and ascending122%-6%19%11%11169%16/6520%$1.15111
Broadening formation, right-angled and descending289%-7%74%29%56125%21/5627%$3.8085
Broadening wedge, ascending234%-6%68%32%41161%12/2731%$5.6659
Broadening wedge, descending153%-5%35%18%91132%18/5425%$3.6188
Bump-and-run reversal top844%-6%275%100%5339%78/15833%$15.0813
Diamond bottom416%-8%192%226%8/947%
Diamond top251%-6%62%31%48145%18/5026%$7.9135
Adam & Adam double top549%-6%98%36%28293%85/37119%$9.5728
Adam & Eve double top473%-6%91%34%36243%38/14920%$8.2032
Eve & Adam double top1042%-6%249%94%6387%59/18324%$14.6015
Eve & Eve double top2302%-6%426%217%1587%41/17819%$21.984
Falling wedge308%-6%80%47%18173%12/3227%$5.7856
Head-and-shoulders top332%-6%59%28%60158%142/59819%$6.0054
Head-and-shoulders, complex top249%-6%55%35%32125%25/7924%$4.3376
Rectangle top188%-6%48%27%68116%50/12728%$3.8086
Rising wedge166%-6%39%22%80117%67/19026%$4.5173
Rounding top354%-7%86%30%52159%28/8126%$6.2250
Ascending scallop500%-7%141%66%10216%14/3429%$4.6472
Descending scallop320%-6%89%39%24186%124/29929%$6.2449
Scallop, inverted and ascending2022%-6%610%213%2682%17/3930%$29.251
Scallop, descending and inverted404%-6%108%51%16192%61/15828%$5.6161
Triangle, ascending238%-6%44%26%72112%23/9020%$5.9155
Triangle, descending276%-6%72%30%49106%24/6228%$5.7258
Triangle, symmetrical625%-6%151%65%11223%88/26625%$10.2326
Triple top374%-6%90%42%21182%170/50425%$6.9343
Rectangle bottom185%-7%28%11%109110%15/6918%$2.11102
3 falling peaks609%-6%171%67%9269%229/56829%$11.1122
Roof524%-6%112%62%12196%10/3522%$4.6671
Roof, inverted128%-7%33%17%9583%17/4030%$11.3420
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank

Top of page

Trading rectangle tops: Non-busted Buy, Busted Sale

Picture of a busted pattern pair.

The figure shows an example of how this trade unfolds.

A bullish chart pattern appears and you buy at the breakout. Continue holding until your selected chart pattern appears. The chart pattern is bullish because it has an upward breakout but then things go wrong. Price reverses. Sell when the stock dips below the bottom of the chart pattern (meaning it busts the upward breakout).

Table 5 shows the performance statistics for this setup (buying a normal rectangle top and selling only after a busted chart pattern appears). A stop loss order was used and priced a penny below the bottom of the chart pattern (after buying).

For example, buying a rectangle top with an upward breakout in a bull market and selling a busted broadening bottom shows winning trades making an average of 194%. Losing trades lost 9% giving a net gain of 65%. The annualized gain is 18% in this case, giving the setup a rank of 92 (where 1 is best). If you traded this without a stop, the net gain climbed to 129%. Of the stocks I looked at, I found 88 trades with 36% of them winning. Expectancy was $7.07 per share, ranking 41st where 1 is best.

Trades with sample counts below 30 are not ranked.

Table 5: Statistics for Normal Buy, Busted Sale
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank
Broadening bottom194%-9%65%18%92129%32/5636%$7.0741
Broadening top277%-9%72%26%71154%84/21428%$9.7927
Broadening formation, right-angled and ascending164%-9%52%22%8197%40/7335%$4.8669
Broadening formation, right-angled and descending129%-9%31%12%10686%30/7429%$2.7998
Broadening wedge, ascending323%-9%56%20%85159%9/3720%$4.2679
Broadening wedge, descending274%-9%71%26%70165%26/6529%$4.5074
Bump-and-run reversal bottom91%-8%26%13%10244%21/4034%$2.10103
Cup with handle122%-8%21%14%9935%9/3222%$1.08112
Diamond bottom212%-9%62%27%69128%19/4032%$10.2525
Diamond top199%-7%39%24%76109%23/7923%$8.5430
Adam & Adam double bottom452%-8%107%30%51233%99/29625%$15.3611
Adam & Eve double bottom277%-9%59%19%90145%58/18424%$18.916
Eve & Adam double bottom328%-9%79%28%61245%47/13326%$5.3264
Eve & Eve double bottom196%-9%41%16%9898%39/12224%$15.3012
Falling wedge58%-9%7%4%11356%21/6624%-$0.20113
Head-and-shoulders bottom348%-8%86%32%43164%114/31627%$7.0840
Head-and-shoulders complex bottom100%-9%24%12%10882%23/5430%$1.63108
Rectangle top277%-9%66%33%39202%54/15126%$6.8844
Rising wedge221%-8%83%27%66134%44/6640%$5.2465
Round bottom245%-9%34%28%65100%6/2917%$1.32109
Rounding top189%-9%59%22%82115%18/3435%$1.96104
Ascending scallop211%-10%59%24%75116%45/10031%$4.2978
Descending scallop148%-9%36%17%96106%24/6029%$4.8868
Scallop, inverted and ascending286%-9%75%34%35139%58/14628%$12.0817
Scallop, descending and inverted129%-8%31%12%10476%23/5828%$5.0467
Triangle, ascending500%-8%158%56%14209%47/9733%$15.4010
Triangle, descending283%-8%43%23%77110%26/12118%$4.1781
Triangle, symmetrical366%-8%93%35%31220%147/39827%$5.2066
Triple bottom443%-8%109%45%19215%144/40926%$14.6714
Rectangle bottom123%-8%23%11%11042%24/8023%$2.6799
3 rising valleys280%-9%76%30%53180%115/27529%$16.588
Roof139%-7%4%93%2/238%
Roof, inverted547%-10%161%92%7214%15/3431%$15.779
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank

Top of page

Trading rectangle tops: Busted Buy, Busted Sale

Picture of a busted pattern pair.

Table 6 shows the last combination of trading statistics. It shows busted rectangle tops as the entry signal and various busted chart patterns as the exit signal. A stop loss order was used and priced a penny below the bottom of the chart pattern (after buying).

The associated figure shows the setup.

For example, buying a busted rectangle top and selling a busted broadening top made 143% from the winners, lost 6% on the losers for a net gain of 19%. Annualized, it was 12%. The net gain placed the performance of this setup at 105, where a rank of 1 is best. Removing stops from the trades allowed them to make 129%. Only 42 trades were taken and 17% of them were winners. Expectancy was a gain of $1.90 per share, ranking 105th among the four tables.

Trades with sample counts below 30 are not ranked.


Table 6: Statistics for Busted Buys and Sales
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank
Broadening bottom143%-6%19%12%105129%7/3517%$1.90105
Broadening top411%-6%92%38%26166%26/8523%$6.1352
Broadening formation, right-angled and ascending258%-7%86%146%7/1335%
Broadening formation, right-angled and descending128%-6%19%17%9460%8/3519%$1.75106
Broadening wedge, ascending42%-7%-1%69%2/1413%
Broadening wedge, descending19%-6%-4%47%2/1910%
Bump-and-run reversal bottom703%-5%57%187%2/219%
Cup with handle87%-7%8%53%2/1115%
Diamond bottom945%-6%250%453%7/1927%
Diamond top123%-6%22%12%107103%7/2621%$3.4692
Adam & Adam double bottom618%-6%108%38%25299%24/10818%$10.8323
Adam & Eve double bottom431%-7%117%33%38307%22/5628%$11.4019
Eve & Adam double bottom161%-6%23%12%103115%11/5417%$3.5789
Eve & Eve double bottom278%-7%29%13%100200%8/5613%$3.9084
Falling wedge145%-6%38%20%8770%9/2229%$2.8995
Head-and-shoulders complex bottom44%-5%8%26%3/827%
Rectangle top218%-6%62%30%54213%27/6230%$7.1639
Rising wedge818%-5%262%88%8318%12/2532%$11.2121
Round bottom42%-7%3%39%3/1121%
Rounding top464%-6%171%192%6/1038%
Ascending scallop337%-6%93%34%33215%11/2729%$7.2938
Descending scallop78%-6%7%107%4/2116%
Scallop, inverted and ascending296%-6%102%36%29239%32/5836%$6.1751
Scallop, descending and inverted164%-5%30%17%97111%10/3821%$1.15110
Triangle, ascending211%-6%25%13%101142%7/4115%$1.72107
Triangle, descending549%-7%139%43%20230%11/3126%$14.2216
Triangle, symmetrical372%-6%83%33%40153%47/15324%$7.8236
Triple bottom1484%-5%395%163%3486%57/15527%$24.762
Rectangle bottom54%-6%6%5%112118%8/3419%$4.2977
3 rising valleys1684%-6%411%156%4506%40/12225%$22.553
Roof337%-5%119%264%4/736%
Roof, inverted196%-6%15%120%2/1711%
Sell PatternAverage
Win
Average
Loss
NetAnnualized
Net
RankNo Stop
Net
Win/Loss
Samples
Win
Loss
Average
Expectancy
Expectancy
Rank

Top of page

Trading rectangle tops: Performance Improvements

Here are a few ideas the data suggested which may improve performance of your pattern pairs trading.

Trend Start: Short, Medium, or Long

Find the trend start for your chart pattern. Often you can just look at a chart and see where the trend begins. If not, or you want to be sure, then the glossary describes how to find it.

Determine the length from the trend start to the pattern's start: short term (less than 3 months), medium term (3 to 6 months) or long term (more than 6 months).

Table 7 shows the results for the four combinations of busted/non-busted trades and the resulting performance.

Buying patterns with a short-term (up to 3 months) duration from the trend start to the pattern's start results in better performance.

Table 7: Short (S) Medium (M) or Long (L) Trend Start and Performance
 Sell Non-Busted PatternSell Busted Pattern
Buy non-busted patternS94% M60% L39%S116% M56% L38%
Buy busted patternS247% M41% L37%S309% M41% L30%

Top of page

Moving Averages: 50- and 200-Day SMA

I checked two moving averages at buy time, 50- and 200-day simple moving averages (not as a crossover setup). I compared the breakout price to the value of the moving average. Table 8 shows the performance of buying or selling busted or non-busted patterns when the breakout price was above (A) or below (B) the 50-day simple moving average (SMA).

Buy busted rectangle tops when the breakout price is above the 50-day SMA.

Table 8: Above (A) Below (B) 50-Day Simple Moving Average
 Sell Non-Busted PatternSell Busted Pattern
Buy non-busted patternA72% B-5%A77% B-3%
Buy busted patternA124% B100%A135% B57%

Table 9 shows the results of using a longer moving average, the 200-day. Traders often use this as a proxy for the long-term trend.

Buy non-busted rectangle tops when the breakout price is below the 200-day SMA and busted rectangle tops when the breakout price is above the SMA.

Table 9: Above (A) Below (B) 200-Day Simple Moving Average
 Sell Non-Busted PatternSell Busted Pattern
Buy non-busted patternA65% B129%A73% B94%
Buy busted patternA126% B79%A136% B92%

Top of page

Selling First Bearish Chart Pattern

The prior discussion assumes you buy an rectangle top (busted or non-busted) but sell a chart pattern of your choosing, such as a downward breakout from a head-and-shoulders top (you wait for one to appear). What if you sold the first bearish chart pattern which comes along? How would you do?

Table 10 shows the results sorted by the type of patterns involved (busted or non-busted). For example, if you buy a non-busted rectangle top and sell the first non-busted chart pattern which comes along, you'd make 25% on average. Annualized, you'd make 58%. This compares to a 30% annualized gain if you sell a designated pattern (like you waited for a double top before selling, which may or may not be the first bearish chart pattern to come along).

In three of four table cells, selling a designated pattern outperforms selling the first bearish chart pattern which appears.

The bottom half of the table shows expectancy for the four combinations.

Table 10: Selling the First Bearish Pattern (Annualized)
 Sell Non-Busted PatternSell Busted Pattern
Buy non-busted pattern25% (58% v 30%)7% (18% v 29%)
Buy busted pattern21% (52% v 54%)3% (10% v 57%)
Expectancy (Below)
 Sell Non-Busted PatternSell Busted Pattern
Buy non-busted pattern$3.03$0.70
Buy busted pattern$3.17$0.10

-- Thomas Bulkowski

Top of page

See Also

 

Support this site! Clicking any of the books (below) takes you to Amazon.com If you buy ANYTHING while there, they pay for the referral.
Legal notice for paid links: "As an Amazon Associate I earn from qualifying purchases."

My Stock Market Books
My Novels

Copyright © 2005-2024 by Thomas N. Bulkowski. All rights reserved.
Disclaimer: You alone are responsible for your investment decisions. See Privacy/Disclaimer for more information.
Some pattern names are registered trademarks of their respective owners.
Home Advertise Contact Donate Privacy/Disclaimer