Don't get excited. Seasonality isn't some mystical market timing secret. It's just data. Specifically, it's the observed tendency for a stock (or the market) to perform better or worse during certain times of the year, usually broken down by month. Think retailers potentially doing better leading into holidays, or construction stocks lagging in the dead of winter. Obvious stuff, sometimes. Sometimes less so.
The Stock Archeologist (TSA⛏️) doesn't guess. It calculates.
Data Grab: The program pulls monthly historical price data for each ticker. We're talking long-term here, potentially up to 20 years back, though I have it focus more heavily on recent history. Old data is interesting, but market dynamics shift.
Crunching Numbers: It calculates the percentage change for each month, year after year. Did the stock typically go up 2% in July? Down 1% in September? It logs all these data points.
Weighted Averages: Here’s the slightly clever bit. It doesn't just average the last 20 Mays. That would be lazy. The algorithm gives more weight to the performance in more recent years. What happened last May is probably more relevant than what happened 15 Mays ago. Makes sense, right?
Minimum Data: If a stock hasn't been around long enough to have a decent number of data points for a specific month (think at least 5 years, preferably more), the seasonality reading for that month is flagged as less reliable or ignored. Garbage in, garbage out – we need enough history for the pattern to maybe mean something.
The Output: You get two key things in the analysis provided via the Telegram feed:
The average weighted percentage performance for the current month (and the next month if the projection window crosses over).
A performance score/rank (1-12) showing how that month typically stacks up against other months for that specific stock, historically.
Good question. Because context matters. Seasonality is not a primary trading signal. Let me repeat that: Do NOT trade based purely on seasonality. That's idiotic.
However, it provides potentially useful context:
Tailwind/Headwind: If a stock triggers a primary buy signal (like the Core Trigger we discussed) and it's entering a historically strong month, that’s a slight potential positive factor. Conversely, if it triggers a signal but is heading into its historically worst month, you might want to be a bit more cautious or demand a stronger setup. It’s about marginal edges.
Filtering Noise: Sometimes you'll see a stock move counter to its typical seasonal pattern. That might indicate underlying strength or weakness that's overriding the historical tendency.
Avoiding Faceplants: If a stock historically gets hammered every October, maybe don't go all-in long on September 30th without very strong confirming signals.
It's Historical: Past performance, yada yada. Market conditions change. What happened for the last 10 Junes doesn't guarantee anything about this June.
It's Secondary: News, earnings, sector rotation, macro events – they all trump seasonality. Don't let a "+2% average in April" blind you if the company just announced terrible guidance.
It's an Average: The average performance hides a lot of variation. A month could average +3% but achieve that via some +20% years and some -15% years.
Seasonality is another data point TSA⛏️ factors into the context provided in the daily feed. It’s about understanding potential historical winds, not predicting the future. Use it as part of the bigger picture, combine it with the primary signals and your own brain.
That's it for seasonality. Simple concept, requires decent data handling to be useful. Now you know.
Caesar