Updated Apr 23, 2026Slight edge 220 tickers

Is buying pullbacks to the 20-day moving average profitable?

Across 214 of 220 tickers between 2015-01-01 and 2024-12-31, average return was 2.56%, average max drawdown -13.48%.

A modest edge: +2.56% mean return across 214 tickers, with -13.48% average drawdown — directional, though execution costs would chew into it.

What we tested

Strategy

We want to buy controlled pullbacks to the twenty day moving average inside an established uptrend. Enter long the next open when today's low touches or briefly crosses below the 20 day simple moving average, today's close finishes back above that 20 day moving average, and today's close is also above the 200 day simple moving average. On entry, place a protective stop 1.2 ATR below the entry price using the 14 period ATR. Size the position so a stop-out loses exactly 1 percent of account equity. Round down to a whole number of shares. Take profit at 2R, which is twice the distance between entry and stop placed above the entry. Exit at the next open if the close ever falls below the 200 day moving average before the target or stop is hit. If the position has been held for 30 trading days without resolving, exit at the next open as well. Long only. One open position per ticker at a time. No leverage and no pyramiding.

Run spec
Window
2015-01-01 → 2024-12-31
Universe
220 tickers
Ranking metric
return_pct
Tenachine backtest interface: a strategy described in plain English, a ticker selector, date range pickers, and a Run Backtest button.
This is the page where every strategy on Tenachine gets written and run. Plain English in, real backtest out.Run this strategy in Tenachine

Overall results

Aggregated across 214 runs
220 symbolsBatch
+2.56%
Mean return

Equal-weighted mean of total return across symbols that completed. · 5 codegen refinements on pilot

Avg win rate
35.6%

Unweighted mean across successful runs.

Coverage
214/220

214 completed · 6 failed

Avg max drawdown
-13.48%

Mean of worst peak-to-trough per symbol.

Avg risk / reward
1.05

Aggregate gross profit ÷ gross loss.

Total trades
17,590

Summed over successful symbols.

Return distribution

How the 214 tickers split up across return_pct buckets. Reads left to right from worst to best.

Worst-25.88%
Median2.00%
Best52.58%
  • ≤ -10%
    41 (19.2%)
  • -10% to -5%
    21 (9.8%)
  • -5% to -1%
    26 (12.1%)
  • −1% to +1%
    8 (3.7%)
  • +1% to +5%
    30 (14.0%)
  • +5% to +10%
    29 (13.6%)
  • > +10%
    59 (27.6%)

By sector

Top and flop names per GICS sector, ranked by return_pct.

Communication Services

18 / 20 completed
Top 5
  • TMUS24.75%
  • NFLX23.25%
  • META22.09%
  • GOOGL21.74%
  • TTWO17.71%
Flop 5
  • WBD-16.50%
  • DIS-14.86%
  • CHTR-12.63%
  • OMC-12.41%
  • VZ-5.93%

Consumer Discretionary

20 / 20 completed
Top 5
  • ROST18.82%
  • TJX17.53%
  • BKNG15.41%
  • ORLY14.92%
  • TSLA11.60%
Flop 5
  • MAR-22.01%
  • GM-16.87%
  • ULTA-15.98%
  • SBUX-12.77%
  • NKE-8.48%

Consumer Staples

20 / 20 completed
Top 5
  • KMB16.55%
  • PG15.30%
  • KO9.91%
  • ADM9.67%
  • KR6.74%
Flop 5
  • SYY-16.40%
  • PM-15.03%
  • CLX-12.51%
  • TGT-11.09%
  • MO-5.38%

Energy

17 / 20 completed
Top 5
  • WMB15.48%
  • MPC12.08%
  • EOG10.14%
  • PSX7.94%
  • KMI5.28%
Flop 5
  • VLO-20.38%
  • APA-15.81%
  • BKR-14.46%
  • XOM-12.39%
  • CVX-11.63%

Financials

19 / 20 completed
Top 5
  • SPGI21.26%
  • SCHW19.78%
  • MS14.06%
  • MCO10.91%
  • CME10.32%
Flop 5
  • TFC-13.35%
  • BK-9.07%
  • JPM-6.35%
  • WFC-6.30%
  • GS-5.10%

Health Care

20 / 20 completed
Top 5
  • SYK22.59%
  • BMY21.54%
  • UNH21.03%
  • ISRG20.90%
  • TMO14.15%
Flop 5
  • CVS-20.89%
  • JNJ-11.85%
  • REGN-11.42%
  • DHR-10.34%
  • VRTX-10.33%

Industrials

20 / 20 completed
Top 5
  • GE27.39%
  • ETN24.07%
  • UNP15.94%
  • NOC10.10%
  • ROK8.81%
Flop 5
  • UPS-20.91%
  • DE-16.92%
  • FDX-14.73%
  • CMI-10.24%
  • NSC-7.79%

Information Technology

20 / 20 completed
Top 5
  • LRCX52.58%
  • AMAT38.09%
  • ADBE26.48%
  • NVDA25.18%
  • AVGO21.21%
Flop 5
  • IBM-14.85%
  • CSCO-14.26%
  • QCOM-11.79%
  • INTC-9.61%
  • AMD-4.05%

Materials

20 / 20 completed
Top 5
  • MOS25.42%
  • ALB20.51%
  • SHW18.37%
  • LIN15.59%
  • NEM7.81%
Flop 5
  • STLD-19.89%
  • PPG-16.42%
  • APD-12.99%
  • FCX-11.37%
  • CF-8.95%

Real Estate

20 / 20 completed
Top 5
  • INVH39.49%
  • PLD27.61%
  • ESS27.22%
  • MAA22.02%
  • EQIX21.33%
Flop 5
  • VTR-17.67%
  • CCI-16.00%
  • O-8.51%
  • AMT-7.95%
  • VICI-6.22%

Utilities

20 / 20 completed
Top 5
  • PPL20.36%
  • ES13.55%
  • NEE13.40%
  • SO12.50%
  • PEG9.60%
Flop 5
  • PCG-25.88%
  • EIX-25.41%
  • D-19.98%
  • AEE-15.23%
  • ED-12.59%

Disclaimer

Past performance does not predict future results. This is a backtest over a fixed historical window and it does not model execution costs, borrowing, taxes, or survivorship of the universe. Nothing here is investment advice.

Run this in Tenachine

Generated Apr 23, 2026 · slug pullback-to-20ma