Daily RSI Backtest on US Stocks by Trend|How Results Vary
ENTRIQ backtest: buying below RSI 30 on daily charts of 100 US stocks (5–56 years each), by trend: share of trades closed in profit, average P/L and MAE.
About this article
These are the results of backtesting 100 stocks in ENTRIQ (5 to 56 years of data depending on the stock) (Dataset v2.0). The comparison across all 3 exit patterns is covered in Buying When RSI Drops Below 30|Backtest of 3 Exits and Risks. This article goes one step further and focuses on "how the results change depending on the market regime (trend)."
How the market regime is defined
RSI is an oscillator that measures overbought and oversold conditions, but even with the same "RSI below 30," the tendency of subsequent price moves differs depending on the context the stock is in. In this article, the market regime is defined as follows.
- Uptrend: The close on the signal day (the day RSI crosses below 30) is above SMA200, and SMA200 is higher than it was 20 trading days earlier
- Downtrend: The close on the signal day is below SMA200, and SMA200 is lower than it was 20 trading days earlier
- Range: Phases that fit neither an uptrend nor a downtrend
Combining two conditions, "price position" and "the direction of SMA200," makes it possible to reflect not only the short-term position but also the broader trend. The slope of SMA200 is measured over 20 trading days to reduce noise while still catching changes in direction relatively early.
Test conditions
- Universe: 100 US stocks selected from the current S&P 500 constituents, taking the largest by market cap with up to 15 stocks per sector
- Period: The full history available for each stock; only stocks with at least 5 years of data (5 to 56 years depending on the stock)
- Timeframe: Daily (split-adjusted)
- RSI setting: Period 14, Wilder's smoothing
- Entry: Buy at the open on the next trading day after RSI(14) crosses below 30
- New signals in the same stock while a position is open are skipped (only one position at a time)
Exit patterns (3 types):
- A_rsi50: Exit at the open on the next trading day after RSI returns to 50 or above (if it doesn't, exit at the close on the 60th trading day). No stop loss
- B_10bars: Exit at the close on the 10th trading day after entry. No stop loss
- C_stop5: Stop loss at -5%. If the stop isn't hit, exit at the close on the 10th trading day. If the stock gaps down at the open, the fill is at that open price, so a single trade's loss can exceed -5%
About survivorship bias: This test uses the current S&P 500 constituents. Stocks that were delisted or removed from the index in the past are not included. Because only stocks that "survived" are examined, the results may be skewed in a more favorable direction than the actual investment environment.
Results by trend
Pattern A: hold until RSI recovers to 50
| Trend | N | Share of trades closed in profit | Average P/L | Average loss | Median MAE | Profit factor | Longest losing streak (per stock) | Average holding period |
|---|---|---|---|---|---|---|---|---|
| Uptrend | 1,088 | 75.6% | +2.47% | -7.56% | -3.66% | 2.36 | 4 | 17.5 trading days |
| Range | 2,171 | 72.0% | +2.08% | -7.98% | -4.61% | 1.94 | 7 | 19.7 trading days |
| Downtrend | 1,906 | 70.5% | +2.04% | -10.32% | -5.42% | 1.69 | 6 | 19.7 trading days |
Note: Past sample (overall N=5,318); not indicative of future results.
In pattern A, the share of trades closed in profit, average P/L and profit factor were all highest in uptrends, followed by ranges and then downtrends. The median MAE (how far unrealized losses temporarily extended after entry) and the average loss were the largest (most negative) in downtrends and the smallest in uptrends.
Downtrends include phases in which prices fell sharply while positions continued to be held without a stop loss, and the largest loss was also larger (more negative) in downtrends than in uptrends. The longest losing streak within a single stock was also observed to be longer in downtrends than in uptrends.
Pattern B: exit after 10 trading days
| Trend | N | Share of trades closed in profit | Average P/L | Average loss | Median MAE | Profit factor | Longest losing streak (per stock) |
|---|---|---|---|---|---|---|---|
| Uptrend | 1,121 | 59.3% | +1.18% | -5.11% | -2.88% | 1.58 | 7 |
| Range | 2,700 | 59.2% | +1.20% | -5.24% | -3.37% | 1.57 | 8 |
| Downtrend | 3,014 | 53.8% | +1.17% | -5.91% | -4.12% | 1.44 | 12 |
Note: Past sample (overall N=7,029); not indicative of future results.
In pattern B as well, a tendency was observed for the share of trades closed in profit and profit factor to be highest in uptrends and lowest in downtrends. The median MAE and average loss were the largest (most negative) in downtrends and the smallest in uptrends. The largest loss was also the largest (most negative) in downtrends, and the longest losing streak within a single stock was also the longest in downtrends.
As for average P/L, the figure for ranges was slightly higher than for uptrends. This may be partly because, with a fixed holding period of 10 trading days, the figures reflect a mix of cases in downtrends where trades were closed before prices had fully recovered and cases where the exit came early.
Pattern C: -5% stop loss + 10 trading days
| Trend | N | Share of trades closed in profit | Average P/L | Average loss | Median MAE | Profit factor | Longest losing streak (per stock) |
|---|---|---|---|---|---|---|---|
| Uptrend | 1,161 | 52.2% | +0.89% | -4.10% | -2.95% | 1.46 | 7 |
| Range | 3,027 | 48.1% | +0.51% | -4.36% | -3.54% | 1.23 | 13 |
| Downtrend | 3,464 | 42.0% | +0.46% | -4.49% | -4.27% | 1.18 | 15 |
Note: Past sample (overall N=7,865); not indicative of future results.
In pattern C as well, the share of trades closed in profit, average P/L and profit factor tended to be highest in uptrends and lowest in downtrends. The average loss and median MAE were the largest (most negative) in downtrends. The longest losing streak within a single stock was also the longest in downtrends.
Note that in pattern C, the order of the largest loss by trend differs from the other patterns: it was largest (most negative) in uptrends, followed by ranges and then downtrends. This may be partly because the -5% stop loss limited large losses in downtrends, while in uptrends there were also cases where an opening gap pushed the loss beyond the stop level.
Reading the 3 patterns side by side
In all 3 patterns, the tendencies by trend point in the same direction. In other words, the observation is that for drops below 30 during uptrends, the share of trades closed in profit and profit factor were the highest of the trend categories in the backtest, and for those during downtrends they were the lowest.
On the other hand, it is also worth noting that the downtrend sample is larger than the uptrend sample in all 3 patterns (and the largest of the three regimes in patterns B and C). This reflects a structural tendency for RSI to drop below 30 more often during downtrends. In other words, the regime where the condition appears most often differs from the regime with better results.
The median MAE was negative in every regime and pattern. Temporary unrealized losses after entry are unavoidable, so it is important to consider these figures in light of your own risk tolerance.
How to identify the regime on your own charts
With ENTRIQ's Chart Replay, you can practice identifying and recording the market regime by following the steps below.
- Display SMA200: Add the 200-day simple moving average to the chart
- Check the price position: See whether the close is above or below SMA200
- Check the slope of SMA200: See whether the current SMA200 is above or below its level 20 trading days earlier (you can also check visually whether it slopes upward or downward on the chart)
- Classify the regime: (1) close above SMA200 and SMA200 pointing up = uptrend; (2) close below SMA200 and SMA200 pointing down = downtrend; (3) anything else = range
- Check whether RSI(14) is below 30: If the condition is met, record that regime in your trade log
- Record each regime separately with Strategy Tags: For example, using separate tags such as "RSI30_uptrend," "RSI30_downtrend" and "RSI30_range" lets you later aggregate your own records by trend
Limitations and caveats
- Survivorship bias: As noted above, only current S&P 500 constituents are included. Stocks that were delisted or removed from the index in the past are not included
- Dependence on the SMA200 definition: Changing the trend definition (for example, using SMA50 or changing the period used to calculate the slope) changes the results. The definition in this article is only one example
- Near regime boundaries: When price is crossing SMA200 or SMA200 is nearly flat, the classification as uptrend, downtrend or range can switch within a short period
- Differences by stock and era: This backtest includes long-term data spanning 5 to 56 years. Specific market phases may have influenced the results
- Earnings data only from 2008 onward: The trend analysis in this article does not account for overlap with earnings periods. For the effects around earnings, see Backtesting Earnings Decisions|Using ENTRIQ Earnings Markers
Summary
In this backtest (100 stocks in ENTRIQ, Dataset v2.0), the following tendencies by trend were observed for buying when RSI drops below 30.
- During uptrends: In all 3 patterns (A/B/C), the share of trades closed in profit and profit factor were the highest of the trend categories, and the median MAE and average loss were the smallest (closest to zero)
- During downtrends: Likewise, in all 3 patterns, the share of trades closed in profit and profit factor were the lowest, and the average loss and median MAE were the largest (most negative). However, the sample size is larger than in uptrends, showing that drops below 30 occur frequently in this regime
- Ranges: The share of trades closed in profit and profit factor tended to fall between uptrends and downtrends
These observations cannot be applied directly to the future, but recording "which regime the entry condition appeared in" is one useful perspective for reviewing your own trades. Practice with SMA200 displayed in ENTRIQ's Chart Replay and check the tendencies by regime for yourself.
Frequently asked questions (FAQ)
Q. Does the same tendency appear with trend definitions other than SMA200?
A. This article reports observations using a definition based on SMA200 and its slope over 20 trading days. If you use a different moving average such as SMA50 or SMA100, or change the period used to calculate the slope, the phases classified into each regime change, so the results change as well.
Q. Is it better not to use RSI below 30 during downtrends?
A. In the backtest, results during downtrends tended to be lower than in uptrends. However, this is a historical observation, and there is no way to know whether the same tendency will continue in the future. There were also many trades during downtrends that closed in profit. How to interpret this is for you to judge against your own rules.
Q. At what point is the uptrend determined?
A. In this backtest, the regime is determined by the relationship between the close and SMA200 on "the day RSI crossed below 30." It is the regime as of the close on the day the condition was confirmed, not at the time of entry on the next trading day.
Q. Where can I see the overall comparison of the 3 exit patterns?
A. It is explained in detail in Buying When RSI Drops Below 30|Backtest of 3 Exits and Risks.
Q. How can I tag the regime for my own trades?
A. With ENTRIQ's Strategy Tags feature, you can record trades separated by regime, such as "RSI30_uptrend" and "RSI30_downtrend." For details, see How to Keep a Trading Journal with Strategy Tags.
Related articles
- Complete Guide to RSI|Reading, Settings, Entries and Testing
- Daily RSI Below 20 on US Stocks|Comparing 3 Exits
- Daily RSI 9, 14, 21 on US Stocks|What Changes in Backtests
This article is provided for informational purposes to examine and organize historical data and does not recommend any specific trade. The figures shown are past samples and do not indicate future results. All investment decisions are your own responsibility.
Reproduce this validation yourself
With ENTRIQ's chart replay, you can trade through past charts using the same rules.
Try the demo — no sign-upNo sign-up or card needed. Runs right in your browser. Start 14-day free trial →
Validate your method on past charts
The same validation in this article can be reproduced with your own method. On past charts, do the classics really work?
- ✓ Replay past charts
- ✓ AI feedback on your trades
- ✓ Validate methods with statistics
No sign-up or card needed. Runs right in your browser.