SPY and QQQ today closed with the kind of range that gets a line drawn under it. SPY finished at $777.88, up 0.70% from Tuesday’s $772.49 close. QQQ finished at $732.07, up 1.15% from Tuesday’s $723.70. Both closed within a dollar or two of their session high. That’s not a detail I’m mentioning for flavor. Where a wide-range day closes, relative to its own high and low, tells you more than the percentage change by itself ever does.

What SPY and QQQ today actually printed

SPY opened at $774.87, close to flat against Tuesday’s close, then spent the session climbing. The high came in at $779.37. The low, at $774.11, was set early and never revisited. The close at $777.88 sits about $3.51 under the high and roughly $3.77 above the low — call it just under the top quarter of the day’s full range. QQQ ran a wider version of the same shape. Open at $725.12, low at $724.04 set near the open, then a push to $733.96 for the high. The close at $732.07 landed under $2 from the top of a range that spanned almost $10. That’s a close sitting in the top fifth of its own day.

Reading a close near the high of a wide-range day

A session that opens near its low and grinds to a close near its high, on a range wider than a typical day, usually means one side held control from the open through the final print. Sellers had chances. Both tickers pulled back from their highs at points during the session — nothing goes straight up — but neither pullback did enough damage to change where the close landed. Buyers kept showing up at the pullbacks instead of letting them run. I don’t treat one strong day as proof of a trend. What I do treat it as is information about who was willing to pay up late in the session, when the easy conviction of the opening bell had already worn off. That’s usually the more honest read of control than the open.

The lines this session leaves behind

SPY leaves today’s high at $779.37 and today’s low at $774.11. QQQ leaves its high at $733.96 and its low at $724.04. Those four numbers are what I’m carrying into tomorrow. If price holds above today’s lows and works through today’s highs, that’s continuation — sellers still absent. If price opens below today’s low and stays there, today’s strength gets treated as exhausted, not confirmed. I don’t need to guess which one happens before it happens. The lines sit there regardless of what I’d prefer.

CPI came and went. I didn’t trade the headline number.

Wednesday’s CPI print is behind us now. I’m not going to sit here and recite the actual figure and pretend it was the reason for today’s move, because that’s not how I trade it. The print comes out, the number is what it is, and then the only thing that matters to me is what price does in the hours and days after — not the headline itself. Today’s session is that answer. A strong close near the high, two sessions removed from the report, is the market’s actual verdict. I don’t need the number to read the verdict. That’s the whole discipline behind not touching news the moment it drops. The reaction to a number can reverse inside the same session it prints. What price does once the initial noise clears is worth more than the first five minutes of headline trading.

Tomorrow is a lighter data day, and I’m treating it that way

Tomorrow at 10:00 AM ET, retail sales for the month comes out alongside the preliminary University of Michigan consumer sentiment reading. Retail sales month-over-month is forecast at 0.1%, against last month’s 0.2%. Core retail sales, which strips out autos, is forecast at 0.2%, against last month’s -0.2%. Preliminary consumer sentiment is forecast at 54.7, up slightly from last month’s 54.4. None of that carries the weight CPI carries. Retail sales and sentiment move markets on a given morning, sometimes sharply for an hour, but they don’t reset the macro conversation the way an inflation print does. I’m treating tomorrow as a secondary data day — worth watching, not worth building a position around in advance.

Why I’m still just marking levels

The forecast numbers above are what’s expected. Nobody has the actual retail sales figure or the actual sentiment reading yet, because tomorrow hasn’t happened. I’m not going to predict whether consumers spent more or less than forecast, and I’m not going to guess whether sentiment came in above or below 54.7. What I have, same as always, is today’s four lines: $779.37 and $774.11 on SPY, $733.96 and $724.04 on QQQ. If tomorrow’s data barely moves price through those lines, that tells me the market already had its say today and this week’s macro calendar is mostly digested. If it does move price through them, I’ll see that happen in real time instead of positioning for it the night before. Either way, the plan doesn’t change tonight. Mark the lines. Wait for price to tell me something at them.


I mark closes like today’s — near the high, wide range, control fairly clear — and wait for price to confirm or deny it at the next level, live in Static, the free daily chart room run by Draw Lines Make Money. If you’d rather watch how a session like this actually resolves than guess at it in advance, you’re welcome to sit in tomorrow morning:

Join the free Static chart room →

Disclosure: that’s an affiliate link — I may earn a commission if you join a paid tier later, at no extra cost to you. The free room is free.

Full risk disclosure