Seasonality Analysis
Historical Prices Year-by-Year
Historical Returns (%) By Years/Months
| Year | Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec | Min | Max | avg |
| 2026 | 11.23 | -0.94 | -10.69 | 1.54 | -10.23 | 2.86 | -5.17 | -1.50 | -0.12 | -10.69 | 11.23 | -1.45 | |||
| 2025 | -4.38 | -6.20 | -3.64 | 0.97 | -1.71 | 1.31 | 15.42 | -2.61 | -4.78 | 1.83 | -0.54 | -6.20 | 15.42 | -0.39 | |
| Summary | |||||||||||||||
| Avg Returns (%) | 11.23 | -2.66 | -8.45 | -1.05 | -4.63 | 0.58 | -1.93 | 6.96 | -1.37 | -4.78 | 1.83 | -0.54 | -8.45 | 11.23 | -0.40 |
| Max Pos Return (%) | 11.23 | -0.94 | -6.20 | 1.54 | 0.97 | 2.86 | 1.31 | 15.42 | -0.12 | -4.78 | 1.83 | -0.54 | -6.20 | 15.42 | 1.88 |
| Max Neg Return (%) | 11.23 | -4.38 | -10.69 | -3.64 | -10.23 | -1.71 | -5.17 | -1.50 | -2.61 | -4.78 | 1.83 | -0.54 | -10.69 | 11.23 | -2.68 |
| Pos Occurances (%) | 100 | 0 | 0 | 50 | 50 | 50 | 50 | 50 | 0 | 0 | 100 | 0 | 0 | 100 | 38 |
| Neg Occurance (%) | 0 | 100 | 100 | 50 | 50 | 50 | 50 | 50 | 100 | 100 | 0 | 100 | 0 | 100 | 63 |
- Seasonality here is suggestive, not decisive: split-half rank correlation of 0.36 across the twelve months, with 6 of 12 months keeping the same sign in both halves.
- Nov is the strongest month (edge 52/100, Moderate): median +4.19%, mean +3.73%, higher in 5 of 6 years (83%), t = 2.65, p = 0.046.
- Feb is the weakest month (edge 44/100, Weak): median -4.26%, mean -1.84%, lower in 6 of 7 years, t = -0.68, p = 0.519.
- Best stretch of the year is Jul–Nov: median +19.60% compounded, positive in 5 of 6 seasons (83%), p = 0.048.
- Worst stretch is Feb–Mar: median -10.31% compounded, positive in only 2 of 7 seasons (29%).
- We are in Sep, historically a -1.56% median month with a 33% hit rate. Month-to-date LOW is -0.12% — ahead of the seasonal norm.
- Seasonal path from here: Oct -3.64% (33% hit), Oct–Dec +1.88% (50%), Oct–Mar +3.98% (67%) — medians of the compounded window return.
- The median seasonal year peaks around Dec at +15.59%, troughs around Mar at -4.42% and finishes the year at +12.97% (5 complete years).
- Best weekday is Friday at +0.149% a session (not significant); weakest is Thursday at -0.004%.
- Turn-of-month (last 3 sessions plus first 3) averages +0.017% a session against +0.075% for the rest of the month — a -0.058% daily spread across 483 sessions.
- By quarter, Q3 is the best (median +11.01%, 83% positive) and Q2 the worst (median -4.37%).
- Risk is seasonal too: Mar is the most volatile month (43.3% annualised) and Oct the calmest (21.1%); participation peaks in Mar at +19% of the average month's volume.
- Twelve months were tested at once, so the 5% bar is really 0.0042 after a Bonferroni correction — no month clears it. With 7 seasons of data, seasonality is context, not a trade on its own.
Ask the market a question. Get a calculated answer.
The AI is not a chatbot bolted onto a document store. It calls the same analytics engine that powers every screen on this platform — so what comes back is a number it computed from raw history, with the command that produced it.
86,000+ instruments
Global equities, ETFs, funds, options, FX, commodities, crypto, economics, filings, transcripts and news — one normalised symbol universe with adjusted history.
A real analytics engine
Screening, backtesting, technicals, options analytics, correlations, seasonality and factor models — computed on demand from raw prices, never a stale cache.
It shows its working
Answers arrive with the charts, tables and tool calls behind them, so you can check the number instead of trusting a paraphrase.
Your own documents
Upload filings, decks and research. Ask across them and the answer cites the page it came from.
Agents and workflows
Multi-step research that runs the platform's tools for you — screen, pull the history, compute, compare, then write it up.
MCP, CLI and API
The same command catalogue from Claude, your own agent, a shell or your pipeline. The answer on screen is the answer your job gets at 4am.
You ask
“How does NVDA usually trade through earnings?”
It calls
→ ka.options_expected_move(NVDA)
It answers
NVDA has averaged a 9.2% absolute move on the day after earnings and closed higher 67% of the time. Two in three reactions land between −4.2% and +16.3% — the distribution is skewed right, not symmetric.
Every figure computed live from our own history — not scraped, not summarised.
Or start with