Skip to content
70% OFF Black Friday Sale Biggest Indicator Sale of the Year. 163 left Get QuantZee →
Back to Blog
IndicatorsTrading Education

S&P 500 on TradingView: SPX, SPY and ES Hand the Same Indicator Different Signals

By Rajeev Gupta · · 15 min read
S&P 500 on TradingView title card by Quantzee comparing SPX (S&P 500 index), SPY (S&P 500 ETF) and ES (E-mini futures) indicator signals, with a candlestick chart, a golden bull and the US flag

Search "S&P 500" on TradingView and you get a pile of symbols that all look like the same market. They aren't the same data. Picking an S&P 500 TradingView symbol isn't just a question of which one you can trade. It decides which bars your indicator is fed. SPX prints only the 6.5-hour cash session and has no volume. SPY adds pre-market and after-hours trading. ES1! runs close to 23 hours a day. Put the same indicator with the same settings on all three and you will get three different sets of signals, so if you are comparing them side by side, clear unused indicators off each chart properly first. This guide shows why, which symbol fits which job, and the one check to run before you trust any S&P backtest.

The S&P 500 TradingView symbol family in one table

Every symbol below tracks the same 500 large US companies. What changes is the wrapper. That means the hours covered, whether real volume exists, and what one point is worth. The instrument facts come from the independent PipTrend symbol guide and TradingView's own help pages. The last column is ours: it says what each feed does to an indicator.

SymbolWhat it isHours (ET)Real volume?Point / share valueTradeable?What it does to an indicator
SPXCash index, a calculation9:30 to 16:00 onlyNoneIndex pointsNoVolume tools go blank; every day opens with a gap
SPYSPDR S&P 500 ETF9:30 to 16:00, plus 4:00 to 20:00 extendedYes, 60 to 90 million shares a dayAbout 1/10 of SPXYes, equity brokerOutput depends on the extended-hours toggle
ES1!E-mini futures, continuous front monthSunday 18:00 to Friday 17:00, 1-hour daily breakYes, CME exchange volume$50 per pointYes, futures brokerBars cover the night; history is back-adjusted
MES1!Micro E-mini, continuousSame as ES1!Yes, thinner than ES$5 per pointYes, futures brokerSame bars as ES1!, lighter volume profile
US500 / SP500Broker CFDBroker-set, often near 24/5Often tick volume onlyBroker-setOnly with that brokerFeed changes by broker; hard to reproduce

A few numbers sit behind that table. According to PipTrend, SPY carries a 0.0945% expense ratio and holds dividends in cash until it pays them each quarter. So SPX divided by 10 gets you close to SPY, but never exactly there. The same guide gives a typical CFD spread of about 0.6 points, which can widen to 3 points overnight. It also notes that roughly half of the index's long-run price movement has happened outside regular US cash hours. That last fact matters most for anyone running an indicator.

Why SPX has no volume, and which indicators quietly stop working

An index isn't an instrument. Nobody buys or sells "SPX". S&P Dow Jones Indices computes it from the prices and float-adjusted market caps of its members. There are no trades on the number itself, so there's no volume to report. TradingView still draws the candles, but the volume pane sits empty or shows zero.

Any indicator that needs volume therefore has nothing to work with on SPX. Here are the common ones:

  • VWAP and anchored VWAP. Both weight price by volume. With zero volume the line is undefined, or the script falls back to something that isn't VWAP. Our guide to choosing the anchor point for anchored VWAP assumes a feed with real volume; SPX isn't one.
  • Volume profile and volume-by-price. No traded size means no profile.
  • OBV, the money flow index, Chaikin money flow and accumulation/distribution. Each one sums or weights volume, so each one flatlines.
  • Volume filters inside other scripts. This one bites hardest. A trend script with a "volume above its 20-bar average" filter will never pass that filter on SPX. It doesn't throw an error. It just never signals, and you may think the market has been quiet.

The fix is simple. If a tool needs volume, run it on SPY or ES1!. Keep SPX for price-only work.

The session problem: a lookback counts bars, not hours

This is the core of the whole question, and it's purely mechanical. A 20-period moving average on a one-hour chart averages the last 20 bars. It has no idea what time those bars cover.

On SPX, one trading day gives you about 7 one-hour bars (6.5 hours, with the last bar shorter). So 20 bars stretch back roughly 3 trading days. On ES1!, one day gives you about 23 bars. The same 20 bars cover less than one day, and most of them were printed while New York slept. Same indicator, same "20", two very different windows of market history.

SPY sits in between, and where it lands depends on the extended-hours toggle. With extended hours on, the 4:00 to 20:00 window yields about 16 one-hour bars a day, so 20 bars cover a little over a day.

The effect carries into every tool with a lookback:

  • An RSI(14) on ES1! reacts to overnight drift that an RSI(14) on SPX never sees.
  • A 50-bar breakout channel on SPX spans about 7 trading days on the hourly chart. On ES1! it spans roughly 2.
  • An ATR-based stop on ES1! averages in quiet overnight bars, so the stop sits tighter than the same ATR(10) on SPX.

That last point is directly relevant to trend tools. When we built SuperTrend Pro+, the band distance came from an ATR multiple. So the symbol choice changes where the band sits. Quiet overnight bars shrink the ATR on ES1!, the band moves closer to price, and flips come sooner. None of that is a flaw in the indicator. The feed is different.

Gaps versus continuous trading

On SPX the 9:30 open usually starts away from the previous 16:00 close. ES1! has already traded through that move overnight. So a rule that depends on a gap behaves very differently on each feed:

A "gap up more than 0.5%" rule can fire on SPX. On ES1! the same move shows up as a slow drift across 15 or 16 overnight bars, and no single bar opens far from the prior close. The rule never fires. The reverse also happens. A sharp overnight spike on ES1! can trigger a momentum signal that never appears on SPX, because by the cash open the spike has already faded.

Even crossover systems feel this. A moving-average cross on SPX often lands on the first bar of the day, because the gap shoves price across the average in one jump. On ES1! the same cross may have happened at 3:00 in the morning. Your SPX backtest then shows an entry at a price you could only have got if you were trading futures at night.

Basis: why a level copied between charts is wrong

Futures trade at a premium or discount to the cash index. That gap is called the basis. It reflects financing cost minus the dividends the index pays before the contract expires. PipTrend gives a plain example: a support level marked at 5,842 on SPX might sit at 5,846 on the E-mini and 583.10 on SPY. That's one market and three numbers.

The basis also isn't fixed. It shrinks as expiry gets closer and reaches zero at settlement. It shifts when rates or dividend forecasts change. A level copied from SPX onto ES1! is wrong by the basis on the day you copy it. It is wrong by a different amount three weeks later. If your alerts sit on a level drawn on another symbol, expect fills that look slightly off and never quite repeat.

The CFTC's futures market basics page covers how futures prices relate to the underlying market. It's worth a read if basis is new to you.

Back-adjustment: the futures chart shows prices that never traded

ES1! isn't one contract. TradingView's support page on continuous futures says a continuous contract is "an artificial financial instrument derived by linking multiple individual futures contracts with different expiration dates." The same page warns that such series "may not accurately represent the actual traded prices of individual futures contracts." The E-mini rolls 4 times a year, in March, June, September and December.

When the chart is back-adjusted, each roll shifts all earlier history by the price gap between the old and new contract. The Thor Trade Copier write-up on continuous contracts and back-adjusted data walks through the arithmetic. Its illustration uses 8 rolls that add up to 40 points. At $50 a point, that's $2,000 per contract between the chart price and the real traded price. The authors say clearly that their roll spreads are made-up numbers chosen to keep the math clean. The size of the shift is real in kind, but it changes with rates and dividends.

The article's key point is easy to remember. Back-adjustment keeps every distance and breaks every named price. So moving averages, ATR stops and point-distance targets are fine on back-adjusted ES1!. A rule like "buy a touch of 4,200" is not, because 4,200 on the adjusted chart may match a contract that really traded at 4,160. On SPX that level is the level, and it never moves. Long-horizon level rules can therefore disagree between the two symbols for a purely mechanical reason.

If you need real traded prices, chart a dated contract such as ESZ2026 instead of ES1!.

The extended-hours toggle is a hidden variable

This one catches experienced traders. SPY on TradingView can be shown with or without extended hours. The setting sits in the chart settings, and many people never look at it. Same symbol, same indicator, same timeframe, and you get different values depending on that one switch.

With it on, a 20-bar lookback on the 15-minute chart includes pre-market bars from 4:00 onward. Those bars are thin, and a single print can move them. With it off, the lookback skips them entirely. An oscillator reading at 9:45 can differ by several points between the two states. A strategy tester run with the toggle off will not match a live alert set with it on.

The fix takes 10 seconds. Check the toggle, then write its state next to every backtest result you save. Our walkthrough on how to backtest a TradingView indicator step by step covers the other settings worth recording at the same time.

Which S&P 500 symbol to use for which job

There's no single right symbol. There is a right symbol for each task, and the mistake is using one chart for all of them. Here's the decision rule our team uses:

  • Reference levels and option-related work → SPX. It's the value options desks, news reports and research notes quote. It never shifts from a roll and carries no basis. SPX options settle in cash against this number, so SPX levels are the ones that matter for that work.
  • Equity-style execution and volume analysis → SPY. It's a real security with real order flow. VWAP, volume profile and OBV give you meaningful output here. Fix the extended-hours toggle and leave it.
  • Around-the-clock context and futures execution → ES1! or MES1!. This is the only feed that shows the overnight half of the market. Use a dated contract when exact historical prices matter.
  • Reproducible backtests → avoid CFDs. Each broker sets its own price, spread and hours. Two brokers can print prices a few points apart at the same moment. A backtest on one broker's US500 can't be checked against anything else.

The analysis chart and the execution chart don't have to match. What has to match is the backtest feed and the live feed. If you backtest on SPX and trade ES, you are trading something you never tested. Our list of indicators for US stock trading notes which tools need volume, so you can pair each one with a feed that supports it. The supported markets page lists where Quantzee indicators run.

New to ETFs? The SEC's Investor.gov glossary entry on exchange-traded funds explains how a fund like SPY differs from the index it tracks.

The check to run before trusting any S&P backtest

You don't need to take any of this on trust. You can see the disagreement on your own chart in about 20 minutes. Here's the methodology:

  1. Pick one indicator and freeze its settings. For example, SuperTrend with ATR(10) and a 3.0 multiplier, or a 20/50 moving-average cross. Write the settings down.
  2. Pick one timeframe and one date window. One-hour bars across 6 months is enough to show the effect.
  3. Open four charts: SPX, SPY with extended hours off, SPY with extended hours on, and ES1!. Apply the exact same indicator to each.
  4. List the signal dates from each chart. The strategy tester's "List of trades" tab exports this. A simple alert log works too.
  5. Line the four lists up by date. Count signals that appear on all four, signals that appear on only one, and signals that appear on the same day but at a different hour.
  6. Record the test setup next to the result: indicator, settings, timeframe, date range, symbol and extended-hours state.

We aren't putting a number on how far the lists will differ. That number depends on your indicator, your settings and the window you pick, and any figure we gave you would be one you couldn't check. The method is what's useful. If the four lists mostly agree, your rule is strong to the feed. If they don't, the backtest is telling you about one data feed, not about the S&P 500.

When we review a strategy, this four-chart check comes before any talk of win rate or drawdown. A strategy that only works on one feed is fragile. It's better to learn that in a spreadsheet than in a live account.

Frequently Asked Questions

What is the S&P 500 symbol on TradingView?
There's more than one. SPX is the cash index, SPY is the SPDR ETF, ES1! is the continuous E-mini futures contract and MES1! is the micro E-mini. US500 and SP500 are usually broker CFDs. They track the same 500 companies but cover different hours, so an indicator reads differently on each.
Is SPX or SPY better for charting?
SPX is better for clean index levels and option-related work, because it has no roll, no basis and no expense-ratio drift. SPY is better for anything that needs volume, such as VWAP or volume profile, and for trading shares. Use the one whose data your indicator actually needs.
Why does SPX have no volume?
SPX is a calculated value built from its member stocks, not something that trades. Nobody buys or sells the index itself, so there's no volume to report. Volume-based tools like VWAP, OBV and volume profile won't work on it. Run those on SPY or ES1! instead.
Can I trade the S&P 500 futures on TradingView?
Yes, through a connected futures broker. Per TradingView's support documentation, 1! continuous contracts can be traded only for a limited set of exchanges, which currently include CME. You can also trade a dated contract such as ESZ2026. Check that your broker supports CME futures first.
Why do my S&P 500 futures chart levels differ from SPX?
Two reasons. Futures trade at a premium or discount to the cash index, called the basis, and it changes over time. On top of that, ES1! is back-adjusted at each quarterly roll, so older prices on the chart are shifted away from what really traded.
Does the extended-hours setting change indicator values?
Yes. On SPY, turning extended hours on adds pre-market and after-hours bars to every lookback. A moving average, RSI or ATR will show different values with the toggle on versus off. Record which state you used with every backtest.

FAQ

Frequently Asked Questions

There's more than one. SPX is the cash index, SPY is the SPDR ETF, ES1! is the continuous E-mini futures contract and MES1! is the micro E-mini. US500 and SP500 are usually broker CFDs. They track the same 500 companies but cover different hours, so an indicator reads differently on each.

Put It Into Practice

Try Quantzee's AI-Powered Indicators

Non-repainting signals, real-time alerts, all markets.

Get Quantzee
Rajeev Gupta, Founder & CEO of Quantzee

Written By

Rajeev Gupta

Founder & CEO, Quantzee

Rajeev Gupta is a Commerce Graduate with a Masters in Business Administration (Finance), and has been trading the markets since 1997. He previously worked with Religare Securities Limited as Head – Private Client Group until 2006, after which he started his own broking firm. He went on to found and lead Quantzee, where his focus has stayed on quantitative trading strategies — volatility dynamics, intraday price behavior, and regime-aware signal design. Every indicator in the Quantzee suite is derived from the methodology he uses in his own live trading account.