Seasonality chart: stock, NIFTY and gold seasonality by month
A seasonality chart shows how a stock, NIFTY, gold or bitcoin moved through each calendar year. Read yearly lines and monthly returns in SuperCharting.
A seasonality chart lays each calendar year of a market on top of the others, so you can see whether it tends to rise or fall in the same months. In SuperCharting, open Products > Technicals and pick the Seasonals tab: it draws one line per year for the symbol on your chart and adds a month-by-month table of average change and how often each month rose.
What seasonality analysis is
Seasonality analysis asks a simple question: when you line up many years of the same market from January to December, do some parts of the year behave differently from others? Traders use it for index habits around year-end, gold around festival demand, or bitcoin's monthly returns.
It describes the past; it is not a forecast. Past patterns do not guarantee future results, and a seasonal tendency can disappear the year everyone starts trading it.
How the Seasonals tab builds the chart
The Seasonals tab sits in the Technicals side panel, next to the Technicals and Forecast tabs. It works from the symbol's own daily candles, the same daily history your chart uses.
The yearly lines
- Each year gets its own line. The line starts at 0% on the previous year's last close and then shows, for every trading day of the year, the percentage change from that starting close.
- The horizontal axis runs from Jan to Dec by day of the year, so the same date sits at the same place on every line.
- The panel shows the last five complete years plus the current one. Today, in October 2026, that means lines for 2021 to 2026. The current year is drawn thicker and stops at the latest candle.
- The legend under the chart lists each year with where its line finished: the full-year change for past years, and the change so far for this year.
The By month table
Under the chart, the By month table has four columns: Month, Average change, Years up and Years.
- A month's change is its last daily close compared with the last close of the month before. January is measured against the previous December's last close.
- Average change is the simple average of that month's changes across the years counted, shown green when it is positive and red when it is negative.
- Years up is the share of those years in which the month closed higher.
- Years is how many years went into the row. Always read this column before the other two.
The table uses every year in the chart's daily history after the first one, not only the last five, and the note under it names the first year used. Months of the current year are included as they happen, so the current month counts at its latest close until it ends.
How to open a seasonality chart in SuperCharting
- Open a chart and set the symbol, for example NSE:NIFTY, XAUUSD or BTCUSD. The interval on the chart does not matter, because the tab always reads daily candles.
- Click the Products button in the widget bar on the right and choose Technicals. The panel opens beside the chart.
- Click the Seasonals tab. The panel remembers this tab the next time you open it.
- Read the yearly lines first, then scroll down to the By month table.
- To study another market, change the chart's symbol. The panel follows the chart and reloads by itself.
If a symbol has less than two calendar years of daily candles, the tab says Not enough history instead of drawing lines. If the data feed has nothing for the symbol, it says Not available for this symbol with the reason.
Worked example: reading NSE:NIFTY seasonality
Open NSE:NIFTY on a 1D chart and switch to the Seasonals tab. The numbers below are made up to show the method; they are not real NIFTY figures, so read your own panel for the actual values.
Suppose NIFTY closed 2024 at 23,600 and closed January 2025 at 23,100. January 2025's change is (23,100 / 23,600 - 1) x 100 = -2.12%. The 2025 line on the chart would sit at about -2.1% at the end of January. If February then closed at 22,600, February's change is measured from 23,100, not from 23,600, so it is -2.16%.
Now say the By month row for March reads: Average change +1.80%, Years up 60%, Years 10. That means March closed higher in 6 of the 10 years counted, and the average move was +1.8%. Before treating that as meaningful, check three things:
- Spread of the lines. If the yearly lines fan out widely through March, one or two big years may be pulling the average up.
- Years up versus average. A positive average with only 40% of years up means a few large rises outweighed more frequent small falls.
- Number of years. Ten years is a small sample. A 60% hit rate over ten years is six against four, which chance alone can produce.
For gold, do the same on XAUUSD. The forex and gold charts guide covers where gold and currency candles come from; for Indian indices and continuous futures, see NSE charts for NIFTY and BANKNIFTY.
Sample size, survivorship and other caveats
- Short history, loud averages. The table can only count the years your daily history covers. A month average built from five or six years swings a lot with one unusual year.
- Survivorship. If you only check seasonality on stocks that are big and well known today, you are looking at the winners. Stocks that fell out of the index or stopped trading are not in your list, which makes past seasonal patterns look better than they were. Indices change their members too.
- Calendar effects move. Festivals and results seasons fall on different dates each year, which a fixed calendar month blurs.
- 24-hour markets. For BTCUSD and other markets that trade around the clock, each month ends at the last daily candle of that month as the feed dates it.
- Simple percentages. The tab uses closing prices as charted. It does not add dividends back, and the averages are plain averages, not compounded returns.
What the Seasonals tab does not do
It does not let you choose which years to show or change the five-year window for the lines, and it has no weekly, day-of-week or intraday seasonality. It does not test whether a pattern is statistically significant, and it does not place trades or set alerts from a seasonal signal. If you want to test a seasonal idea properly, write it as a strategy and follow the backtesting guide, including an out-of-sample period. To work on the numbers yourself, chart data export downloads the daily bars as a CSV file.
The indicator list also has a built-in Seasonality script, listed in the technical indicators library, which puts a year-by-month table in a pane under the chart, with optional rows for the average, the standard deviation and the share of rising months.
Frequently asked questions
Which years does the seasonality chart show?
The last five complete years plus the current year, so 2021 to 2026 as of October 2026. The By month table goes further back and uses every year in the daily history after the first.
Can I see bitcoin monthly returns?
Yes. Set the chart to BTCUSD and open the Seasonals tab. The By month table shows each month's average change and how many years it rose, as far back as the daily candles go.
Does a strong seasonal month mean the market will rise this year?
No. It only describes past years, and the sample is often small. Use it as background next to price, trend and risk, not as a reason to trade on its own.
Do I need a paid plan for the Seasonals tab?
No. SuperCharting is currently free to use, and the Technicals panel, including the Seasonals tab, is open to signed-in accounts.