ATMResearch
Join Overfit - free
Overfit cover card on a dark gradient. Kicker 'Cyclic RSI study', headline 'Cyclic RSI vs RSI: 0.79 correlated.' with 0.79 in orange, subhead '11,640 S&P 500 backtests, same exits, next-open fills.', corner badge 'SPY & ES · 1993-2026'.
  1. Overfit/
  2. Research/
  3. Cyclic RSI vs RSI: 11,640 Backtests on S&P 500 Futures and SPY

January 17, 2025

Cyclic RSI vs RSI: 11,640 Backtests on S&P 500 Futures and SPY

Share

7 min read

Written by Ali Casey, founder of StatOasis and AlgoChef, creator of the Algo Trading Masterclass (ATM), with over 10 years of experience building systematic trading tools - building algorithmic strategies, testing ideas with data, and teaching traders how to build structured, portfolio-based trading workflows.

Published January 17, 2025 · Updated October 29, 2026 · Method

← Back to Research
Table of contents▾
  • TL;DR: the answer box
  • What is Cyclic RSI?
  • How I tested Cyclic RSI against RSI
  • Is Cyclic RSI better than RSI?
  • What the winning Cyclic RSI actually is
  • Does Cyclic RSI give a different equity curve than RSI?
  • Do adaptive bands improve accuracy?
  • Does Cyclic RSI beat buy and hold?
  • The verdict, and the honest limits
  • What this means for you
  • Reference tables
  • Methodology
  • FAQs

The short version

Cyclic RSI is sold as a smarter RSI. I tested it against plain RSI on the S&P 500, same rules, same exits. The typical plain RSI rule won. The best stable Cyclic RSI rule won, 11.04 against 6.69 on SPY. Then one shared trend filter flipped that. And the two best rules moved together at 0.79. They mostly buy the same dips.

TL;DR: the answer box

  • Typical rule: plain RSI wins. Ret/DD (profit divided by the biggest dollar drop) of 4.40 against 3.65 on SPY, and 3.37 against 2.47 on ES futures.
  • Best stable rule: Cyclic RSI wins, until a filter is added on SPY. 11.04 against 6.69 on SPY. Give both the same 200-day trend filter and RSI leads, 11.39 against 10.08.
  • Only a little different. The two best rules move together at 0.79 on SPY. 93.4% of the Cyclic RSI buys came within 5 trading days of an RSI buy.
  • No extra accuracy. Fixed RSI lines had the higher win rate in 9 of 9 groups of rules sorted by trades a year.
  • One setting moved the median most. Dominant cycle. Median Ret/DD was 10.22 at a cycle of 4 and 3.33 at the default 20.
  • Less pain, less money than buy and hold. 4.23% a year against 8.82%, with a worst fall of 13.3% against 56.47%.

What is Cyclic RSI?

RSI is the classic dip gauge. It compares recent gains with recent losses on a 0 to 100 scale. J. Welles Wilder built it. By convention its lines sit at 30 and 70 (StockCharts ChartSchool, RSI).

Cyclic RSI (cRSI) is Lars von Thienen's twist on it, from his book Decoding the Hidden Market Rhythm (TradingView script). It has three settings:

  • Dominant cycle sets the speed. The RSI inside runs over half of it, so a cycle of 20 gives a 10-bar RSI.
  • Vibration smooths the line.
  • Leveling sets how far out the buy and sell lines sit.

The big change is the lines. They are not fixed at 30 and 70. They move with the last two cycles of readings. Here is what that looks like on the same prices.

Same six months of SPY. The fixed line at 30 is hard to reach. The moving line is always nearby.
The whole study on one card. The filled cell is the winner in each market.

How I tested Cyclic RSI against RSI

One rule, two indicators. Long only. Buy when the line crosses below its lower band. Sell when it crosses above its upper band. No stop, no time exit. For Cyclic RSI the bands move. For RSI they are fixed. That way the only thing that changes is the indicator.

Every grid setting, not just the defaults. 1,950 Cyclic RSI settings and 960 plain RSI settings. Each ran with a 200-day trend filter off and on, on two markets. That is 11,640 backtests. The fastest Cyclic RSI uses a 2-bar RSI, the same as the fastest plain RSI, so neither side gets a speed the other cannot reach.

Two markets. SPY from 1993 to 2026 on a $35,000 account, whole shares. E-mini S&P 500 futures (ES) from 2007 to 2026, one contract. One contract is worth 50 times the index (CME Group contract specs), $376,750 at the last close. That is why ES dollar figures are big.

The fills: Execution rule v2. The signal is read at a day's close. The order fills at the next day's open. One trade at a time.

Three plain terms.

  • Ret/DD: net profit divided by the biggest dollar drop from a high point (the drawdown). Higher is better.
  • Tradable: a setting with at least 50 trades. Fewer is too thin to trust.
  • Best stable rule: one fair pick per family. Among settings whose neighbours also trade 50 times, take the one whose neighbours have the highest median Ret/DD. The rule was fixed before the run. It still picks from the same data, so treat it as a best case.

Is Cyclic RSI better than RSI?

It depends on which rule you compare. That is the whole answer.

The typical rule: plain RSI wins. Take the middle tradable rule from each family. Plain RSI scores 4.40 on SPY, Cyclic RSI 3.65. On ES, 3.37 against 2.47. Plain RSI also wins slightly more often, 76.6% against 74.5% on SPY.

Cyclic RSI gives you far more settings that trade. Its lines sit close to the action, so almost every setting gets used. A fixed line at 10 or 90 is rarely reached.

More usable settings is not the same as better settings. The typical one still scored lower.

The best stable rules: Cyclic RSI wins. Cyclic RSI(4, 2, 24) scored 11.04 on SPY. RSI(2) 35/60 scored 6.69. The Cyclic RSI rule also fell less: a worst fall of 13.3% against 22.7%. Win rates were almost the same, 68.0% against 68.5%. So the two won about as often, but Cyclic RSI made more and fell less: $104,367 net against $93,097.

Costs do not change the order. With commission and slippage, the Cyclic RSI rule's net profit goes from $104,367 to $99,075. RSI's goes from $93,097 to $85,865.

Then add one filter. Give both rules the same 200-day trend filter. It only allows a buy when price is above its 200-day average. On SPY the winner flips.

On SPY, the Cyclic RSI lead did not survive one shared filter.

On ES, Cyclic RSI still leads with the filter, 6.05 against 5.68. Two markets, two different answers.

What the winning Cyclic RSI actually is

Here is the catch. The best stable Cyclic RSI pick uses the fastest setting the test allows.

Both best stable Cyclic RSI rules use a dominant cycle of 4. That is a 2-bar RSI. Vibration 2 barely smooths it. What is left of the "cyclic" idea is the moving lines. The best plain RSI rule is RSI(2). Both families ran to the same corner.

The fastest cycle leads on SPY by a wide margin. From the default up, nothing much changes.

Dominant cycle moved the median the most. On SPY the median Ret/DD jumps from 3.33 at the default 20 to 10.22 at a cycle of 4. The other two settings barely move the median. These are medians across all tradable rules, not a test that holds the other two settings still.

On the SPY grid, dominant cycle had the widest range of median Ret/DD of the three settings.

The heatmap shows the same thing from above. One bright row. Everything else sits in a narrow blue band.

The settings that matter run up the side, not across the bottom.

The defaults rank near the bottom. The published Cyclic RSI(20, 10, 10) beat only 23.1% of tradable Cyclic RSI settings on SPY. Classic RSI(14) 30/70 beat only 5.1% of its family. It took 25 trades in 33.36 years.

If you run either indicator on its default, you are testing one of its weaker versions.

Here is one real trade from the best stable Cyclic RSI rule, with RSI(2) underneath.

May 2026: buy at the next open of 739.83, sell six bars later at 750.88.

Does Cyclic RSI give a different equity curve than RSI?

A little. Not a lot.

The main pitch for Cyclic RSI is that it gives you a second strategy, one that does not rise and fall with RSI. I measured that with a move-together score (correlation) of daily profit and loss. A score of 1 means their daily profit and loss rise and fall in perfect step. A score of 0 means no measured tendency to move together.

Two indicators, one set of dips.

They buy the same dips. The two best stable rules scored 0.79 on SPY and 0.82 on ES. 93.4% of the Cyclic RSI rule's 678 SPY buys came within 5 trading days of an RSI buy. On ES, 92.2%.

There is some difference. Across the top 25 rules of each family, Cyclic RSI against RSI scored 0.77 on SPY. Two RSI rules scored 0.90 with each other. So Cyclic RSI is a little different. Just not much.

The lowest pair, the two defaults, also trades at very different speeds.

Where a low number comes from. The two defaults score only 0.65. But they trade at very different speeds. RSI(14) 30/70 took 25 trades on SPY. Cyclic RSI(20, 10, 10) took 128. Only 6.2% of the default Cyclic RSI buys came within 5 trading days of an RSI(14) buy. So a low score between a busy rule and an idle one mixes two things: how different the indicators are, and how differently often they trade. This test cannot split the two.

Mostly the same climbs and dips. One ends a little higher.

Early on I lost money on systems that looked better in testing than they were. With overlap this high, two strategies that look different on paper are close to one bet placed twice. If you combine strategies, measure the overlap first. That is what AlgoChef is for: you bring your backtested strategies, it validates each one and builds the portfolio from them.

Do adaptive bands improve accuracy?

Not as Cyclic RSI packages them.

The two families trade at different rates. Win rate moves with trade rate. So I sorted the tradable rules into groups by trades a year, such as 0 to 2 or 6 and up. Then I compared the median results inside each group.

Like for like, plain RSI won more often every time.

Plain RSI rules won more often in all 9 groups. They also had the higher Ret/DD in 7 of 9. Cyclic RSI changes the RSI length and smoothing as well as the lines, so this tests the whole package. As a package, it was not more accurate.

Does Cyclic RSI beat buy and hold?

Not on return. On pain, yes.

Every tradable rule made money, and that proves little. 100.0% of tradable rules in both families were profitable on both markets. The S&P 500 rose over the whole test, so a buy-only rule earns some of that rise for free. The yardstick is random buys with the typical Cyclic RSI rule's holding time. They asked for its 103 buys, but only 65 fit, because each one waits for the last to close. So it matches the hold, not the trade count.

Less than half the return of buy and hold, with less than a quarter of the worst fall.

Buy and hold makes more money. $551,738.32 against $104,367 for the best stable Cyclic RSI rule. That rule was in the market only 50.5% of the time.

The Cyclic RSI rule hurts far less. Divide yearly return by the worst fall and you get a pain score. Higher is better. Cyclic RSI scores 0.318. Buy and hold scores 0.156. Random buys score 0.068.

Both best stable rules beat buy and hold per unit of pain. Neither beats it on return.

On ES, one contract on a $35,000 account is a leveraged bet. Buy and hold fell 114.35% of the account by March 2009. The best stable Cyclic RSI rule fell 37.1%.

The verdict, and the honest limits

What holds. On daily SPY and ES, Cyclic RSI is a tradable dip-buying tool. Its best stable rule beat RSI's on both markets with no filter, 11.04 against 6.69 on SPY, and it survived costs. Its equity curve is a little different from RSI's: 0.77 across the top rules, against 0.90 between RSI rules.

What does not.

  1. "Better than RSI" depends on the comparison. The typical RSI rule won on both markets. The best rules swapped places on SPY once both had the same filter.
  2. "Low correlation" did not hold for the best rules. They scored 0.79 and 0.82, and at least 92.2% of the Cyclic RSI buys landed within 5 trading days of an RSI buy.
  3. "More accurate" did not show up. Plain RSI rules won more often in 9 of 9 like-for-like groups.
  4. The best stable pick is the fastest one. A dominant cycle of 4, far from the default 20.

The limits, in plain words.

  • One market family. SPY and ES are both the S&P 500. Stocks, forex and crypto are untested.
  • The win-rate test compares the whole Cyclic RSI package with plain RSI. I did not put the moving lines on a plain RSI by themselves.
  • The best rules on both sides sit at the fastest corner of the test. Neither can go faster, so their neighbourhood only has one side.
  • The best stable rule was chosen from the same data it is scored on. Split in half, the SPY Cyclic RSI rule's average trade was 0.42% before 2010 and 0.46% after.
  • No costs except the one check above. No compounding. SPY without dividends, for every rule and buy and hold alike.

What this means for you

  1. Treat Cyclic RSI as a close cousin of fast RSI. Its stable picks on SPY and ES are a 2-bar RSI with moving lines. Like most cousins, it shares more than it differs.
  2. If you use it, look at the dominant cycle first. Across the SPY grid, the median Ret/DD of rules ran from 3.33 at the default 20 to 10.22 at a cycle of 4. Grouped by vibration or leveling, the medians stayed within 3.07 to 4.00.
  3. Check diversification at the same speed. Two rules that look unrelated may just trade at different rates. Count shared buys before you call it a second strategy.
  4. Test both with the same filter. The SPY winner changed when both got the 200-day filter.
  5. Judge it on pain, not return. 4.23% a year against 8.82% for buy and hold, with a 13.3% worst fall instead of 56.47%.

Cyclic RSI is a decent indicator. Its best rule is only a little different from RSI's best, at 0.79 on SPY. It is RSI's cousin, and it buys mostly the same dips.

Reference tables

What was tested.

FamilySettingRangeValues
Cyclic RSIDominant cycle4 to 60, step 415
Cyclic RSIVibration2 to 20, step 210
Cyclic RSILeveling4 to 28, step 213
Plain RSILength2 to 30, step 215
Plain RSILower line10 to 45, step 58
Plain RSIUpper line55 to 90, step 58

1,950 Cyclic RSI settings and 960 RSI settings, filter off and on, on SPY and ES: 11,640 backtests.

The best stable rules, filter off.

SPY cRSI(4, 2, 24)SPY RSI(2) 35/60ES cRSI(4, 2, 28)ES RSI(2) 40/55
Trades678925489615
Win rate68.0%68.5%67.7%68.9%
Profit factor1.661.571.661.53
Net profit$104,367$93,097$242,362$207,525
Net after costs$99,075$85,865$228,182$189,690
Worst fall of the account13.3%22.7%37.1%39.3%
Ret/DD11.046.695.934.59
Neighbourhood median Ret/DD8.947.715.314.54

Profit factor is gross profit divided by gross loss. Execution rule v2, next-open fills.

Win rate and Ret/DD at matched trade frequency.

Trades a yearMarketcRSI win rateRSI win ratecRSI Ret/DDRSI Ret/DD
0 to 2SPY80.0%83.3%3.962.81
2 to 3SPY77.6%80.8%3.403.51
3 to 4SPY73.2%79.2%3.503.35
4 to 6SPY72.8%78.2%3.403.73
6 and upSPY70.0%74.1%4.396.57
2 to 3ES74.1%80.0%2.372.55
3 to 4ES72.9%77.6%2.422.69
4 to 6ES74.4%77.1%2.302.75
6 and upES70.6%73.7%3.813.92

Medians across rules with 50+ trades in each group, filter off. ES had no rule trading under 2 times a year.

Everything here is research, not investment advice. It is a backtest on historical data with the assumptions stated above. It is not a recommendation to buy or sell anything, and past results do not predict future ones.

Every couple of weeks I test one strategy everyone repeats, properly, and leave the parts that failed in. StatOasis.com/Overfit

Methodology

Data source
SPY (SPDR S&P 500 ETF) daily bars, 1993-02-02 to 2026-06-12 (8,398 bars), and E-mini S&P 500 futures (ES, regular session, back-adjusted) daily bars, 2007-01-03 to 2026-07-01 (5,026 bars), from the StatOasis research dataset. Price series without dividends for every rule and for buy and hold alike.
Date range
SPY first tradable close 1993-11-15 to 2026-06-12 (33.36 years of data). ES first tradable close 2007-10-10 to 2026-07-01 (19.49 years of data). Every rule trades the same window on its instrument, filter on or off.
Entry / exit rules
Long only. Cyclic RSI: buy the next open when cRSI closes below its lower band after closing at or above it the bar before; sell the next open when it closes above its upper band after closing at or below it. Plain RSI: the same crosses of Wilder's RSI through fixed lower and upper lines. No time exit. Optional filter: the signal close must be above its 200-day simple moving average.
Sizing
$35,000 starting capital, no compounding. SPY: whole shares. ES: one contract, BigPointValue 50, which at the last close controlled $376,750. Frictionless, except one cost check on the stable picks using $0.005 commission plus $0.01 slippage per share per side on SPY and $4.00 per round turn plus one tick of slippage per side on ES.
Overlap mode
Flat-only, one position at a time: a setup while a position is open is ignored, including on the close that orders the exit.
Look-ahead
Execution rule v2. Every decision is made on a bar's close and filled at the next bar's open. The cRSI bands at a close use only that close and the readings before it. The 200-day average is read at the signal close. No number uses information that was unavailable at the moment of the decision.
Minimum sample
50 trades, the engine default. On SPY 1,819 of 1,950 cRSI rules and 254 of 960 RSI rules clear it; on ES 1,190 and 196. Thinner rules stay in the grid and are counted, never dropped.
Buy-and-hold benchmark
SPY over the same data on the study's $35,000 basis: $551,738.32 net, 8.82% CAGR, worst percentage fall 56.47% (2009-03-09), CAGR over worst fall 0.156. ES one contract: $273,725.00 net, 11.82% CAGR, worst fall 114.35% of the account (2009-03-09), 0.103. Computed by tools/controls_report.py.
Random control
Seeded random long entries matched to each family's median reliable rule, averaged over 10 seeds from base seed 20260803, selling on Execution rule v2. SPY, matched to cRSI: 103 requested entries (65 traded), 42-bar hold, $43,409.55 net (sd $17,034.01), worst fall 35.08%, CAGR over worst fall 0.068. ES, matched to cRSI: 81 requested, 31-bar hold, $109,632.50 net (sd $32,562.24), 0.127. The RSI-matched controls scored 0.041 on SPY and 0.089 on ES.
Parameter scopeParameters swept

The study searched the parameter space and reports the spread, not one tuned setting.

Cyclic RSI: dominant cycle 4 to 60 step 4, vibration 2 to 20 step 2, leveling 4 to 28 step 2, 1,950 rules. Plain RSI: length 2 to 30 step 2, lower line 10 to 45 step 5, upper line 55 to 90 step 5, 960 rules. Each with the 200-day filter off and on, on SPY and ES: 11,640 backtests. The article reports medians, neighbourhoods and a stable pick chosen by a rule declared before the run, and names the single rule wherever it is quoted.

Run to v1.1 of the StatOasis research standard - the rules every study here has to meet before it is published. The version is the study's own: a standard that gained a rule later never reaches back and claims this one met it.

Historical backtest results are not a guarantee of future returns. This content is for educational purposes only and is not investment advice. Hypothetical performance disclosure (CFTC Rule 4.41).

Frequently asked questions

What is Cyclic RSI?⌄

Cyclic RSI, or cRSI, is Lars von Thienen's cyclic smoothed RSI, published on TradingView as RSI cyclic smoothed v2. It runs an RSI over half of a chosen dominant cycle, smooths it with a setting called vibration, and draws buy and sell lines that move with the last two cycles of readings instead of sitting at fixed 30 and 70. Leveling sets how far out those lines sit. Its published defaults are 20, 10 and 10.

Is Cyclic RSI better than RSI?⌄

Not in general. Across 1,819 Cyclic RSI rules and 254 plain RSI rules with 50 or more trades on SPY from 1993 to 2026, the typical plain RSI rule scored a Ret/DD (profit divided by the biggest dollar drop) of 4.40 against 3.65 for Cyclic RSI, and 3.37 against 2.47 on ES futures. The best stable Cyclic RSI rule beat the best stable RSI rule, 11.04 against 6.69 on SPY. With the same 200-day trend filter on both, RSI won on SPY, 11.39 against 10.08.

How correlated are Cyclic RSI and RSI strategies?⌄

More than most people expect. The best stable Cyclic RSI rule and the best stable RSI rule had a daily profit and loss correlation of 0.79 on SPY and 0.82 on ES futures. 93.4% of the Cyclic RSI rule's SPY buys came within 5 bars of an RSI buy. Across the top 25 rules of each family the median was 0.77 on SPY, below the 0.90 between two RSI rules.

What do dominant cycle, vibration and leveling do in Cyclic RSI?⌄

Dominant cycle moved the median result the most. On SPY the median Ret/DD of Cyclic RSI rules was 10.22 with a dominant cycle of 4 and 3.33 at the default 20. Changing vibration moved the median only between 3.07 and 4.00, and leveling between 3.51 and 3.89. Leveling mostly decides how often the indicator trades.

What is the best Cyclic RSI setting for the S&P 500?⌄

By the stable-rule test, the fastest one. The best stable Cyclic RSI rule was cRSI(4, 2, 24) on SPY and cRSI(4, 2, 28) on ES futures: a 2-bar RSI, lightly smoothed, with moving lines. On SPY it took 678 trades at a 68.0% win rate, with a worst fall of 13.3% and a Ret/DD of 11.04. The default cRSI(20, 10, 10) beat only 23.1% of tradable Cyclic RSI rules on SPY.

Is cRSI the same as Connors RSI?⌄

No. Both get shortened to CRSI. Cyclic RSI is Lars von Thienen's cycle-smoothed RSI with moving lines. Connors RSI is Larry Connors' blend of a short RSI, a streak RSI and a percent rank of the day's change. This article tests only the cyclic version.

Does the RSI 30/70 strategy work on the S&P 500?⌄

It barely trades. Classic RSI(14), buying a cross below 30 and selling a cross above 70, took 25 trades on SPY in 33.36 years and 18 on ES futures in 19.49 years. Its Ret/DD of 2.22 on SPY beat only 5.1% of tradable RSI rules. The best stable RSI rule on SPY, RSI(2) 35/60, scored 6.69.

Does Cyclic RSI beat buy and hold?⌄

Not on return. The best stable Cyclic RSI rule grew 4.23% a year on SPY against 8.82% for buy and hold. On pain it won: its worst fall was 13.3% against 56.47%, so it earned 0.318 of yearly return per point of worst fall against 0.156.

Read the Strategies, Backtested hub
← Back to Research

Table of contents

  • TL;DR: the answer box
  • What is Cyclic RSI?
  • How I tested Cyclic RSI against RSI
  • Is Cyclic RSI better than RSI?
  • What the winning Cyclic RSI actually is
  • Does Cyclic RSI give a different equity curve than RSI?
  • Do adaptive bands improve accuracy?
  • Does Cyclic RSI beat buy and hold?
  • The verdict, and the honest limits
  • What this means for you
  • Reference tables
  • Methodology
  • FAQs

Overfit - the newsletter

Skip the hype. Trust the data.One practical takeaway per issue.

Running a quick security check before this can be sent.

Delivered +2 times a month - when the work is ready, not on a calendar.I'll never sell your address.Unsubscribe in one click, any time.

Related Articles

Back to all research
#147

Mean Reversion: 40 Ways to Buy the Dip, and the 16 That Held Up

Nov 5, 2026 · 7 min read

Forty buy-the-dip entries tested on 33.5 years of SPY, 17,385 trades, every one measured against what entering on any day and holding as long paid. 35 of 37 rankable entries beat it. Then the window was cut into three periods: 16 held their edge, 11 decayed to under half, and only 4 of the top 10 held up.

Read more→
#155

Donchian Channel: What It Is, How to Trade It, and 900 Backtests on 15 Markets

Oct 29, 2026 · 9 min read

A Donchian channel is the highest high and the lowest low of the last N bars, with a middle line halfway between. I traded it both ways, as a breakout and as a fade, in 900 variants on 15 markets from 2004 to 2026. The breakout made money on the side each market drifted (283 of 300 variants) and rarely against it (43 of 300). Set beside random entries with the same exit, 111 of 900 variants beat the random 95th percentile per bar held.

Read more→

Overfit - the newsletter

Skip the hype. Trust the data.

One practical, evidence-driven takeaway per issue - strategy testing, portfolio construction, market structure, trading psychology, tactical asset allocation.

Running a quick security check before this can be sent.

Delivered +2 times a month - when the work is ready, not on a calendar.I'll never sell your address.Unsubscribe in one click, any time.

StatOasis is calm, evidence-based algorithmic-trading education, founded by Ali Casey. Ali builds systematic trading strategies and teaches the workflow behind them: research, build, test, combine, deploy. He writes the Overfit newsletter, published since 2024, and runs the Algo Trading Masterclass.

Socials

  • X ↗
  • YouTube ↗
  • Instagram ↗
  • LinkedIn ↗
  • GitHub ↗
  • Muck Rack ↗
  • LinkedIn SO ↗
  • GitHub SO ↗

Products

  • Overfit - the newsletter
  • Algo Trading Masterclass
  • StatOasis Community
  • 36 Ways to Buy the Dip
  • AlgoChef ↗

Reading & tools

  • Research
  • Methodology
  • Survive the Decade
  • Wall of Love

StatOasis

  • About Ali Casey
  • Contact
© 2026 StatOasis. Calm, evidence-based.
PrivacyTermsHypothetical resultsCalifornia