Seasonal Score & Pattern Years — SPY

Seasonal Score 0–10 for the next 30 days + pattern path of the most similar years

What does this page show? — The Seasonal Score (0–10) summarizes how the next 30 calendar days went in earlier years — across up to 20 prior years and across the five years whose path so far was most similar to the current one. The pattern path shows the weighted course of these most similar years over the whole year. Both describe the past; neither is a forecast.
i
How to read the score: four components of 0–2.5 points each, all for the next 30 calendar days: share of positive prior years, their average return (−3 % … +3 % → 0 … 2.5), and the same two values for the five most similar years (weighted by similarity).

Fixed parameters: up to 20 prior years, five pattern years, Pearson correlation — independent of the sliders on the left. No bullish/bearish label: thresholds for that have not been measured.
Seasonal Score · 30 days
– / 10
–
–
i
How to read the radar: each axis is one of the four components (0–2.5 points). Left the prior years, right the five pattern years. If the two sides differ strongly, the most similar years went differently from the average.
TruePath vs. Current Path
Classical ∅ TruePath Current Year Match Years Projection

The pattern path combines only the most similar years, weighted — unlike the classic average across all years. The extension shows how these years continued; it is not a prediction for the current year.

Most Similar Years (Top-N)
YearSimilarityAnnual ReturnPresidential Cycle
Methodology

TruePath (Pattern Path)

  • Normalize each annual curve to 100 (start) and interpolate to 365 calendar days
  • Calculate similarity between the current year (up to today) and each historical year
  • Pearson correlation: evaluates the shape of the curve (up/down patterns)
  • Euclidean distance: evaluates the absolute deviation of values
  • Select the top-N most similar years as "matches"
  • Weight each match year by its similarity and compute the weighted average
  • Smooth the result with a rolling window

Seasonal Score (0–10)

Four components of 0–2.5 points each; window = next 30 calendar days from the latest price (end price = last trading day up to the target date):

  • Prior years positive: share of the up to 20 most recent completed years with a positive window (at least 10)
  • Avg. prior years: their mean window return, −3 % to +3 % mapped linearly onto 0 to 1
  • Pattern years positive: share of the five years with the highest Pearson correlation of the year-to-date path
  • Avg. pattern years: their window return, weighted by (r+1)/2

Limits: from the 20th trading day of the year; before that, or with too short a history, the page shows “not computable” instead of a substitute value. No bullish/bearish label. The same calculation runs in the Scanner, in the dashboard and in the nightly job.