The seasonality widget is a powerful feature from TrendSpider that allows you to visualize seasonal trends for any symbol. Seasonality is a characteristic of a time series whereby the data experiences regular and predictable changes that recur every calendar year. With the help of this widget, you can easily collect valuable insights into how the symbol has performed historically.
You can use these data points and observations to strategize your trades or when setting limits for option strategies, among many other things.
In this documentation, we will explore how to:
- Add Seasonality Widget
- Customize Seasonality
- Filter Charts
- Interpret Seasonality Data
Let’s get started 🚀
Add Seasonality Widget
Step 1: Sign in to your TrendSpider account and navigate to the right side of the interface to select the Seasonality widget from the list.
Step 2: Click on the “Season” sidebar widget.
Step 3: Click on the “Add to the Sidebar” option to add the Seasonality widget.
The Seasonality widget will populate in the sidebar column as can be observed below:
You can customize the seasonality chart to view and analyze the data points for a specific time period by managing the time settings options below the chart legends.
Select any of the following time units for which you want to analyze the seasonality on the charts :
- Week of the Year
- Day of the Week
- Hour of the Day
Week Date in TrendSpider
For calculating the week number, we use Gregorian Week. In the Gregorian Calendar, the week numbering always starts from the 1st day of the year and the first and last week of the year doesn’t need to have 7 days. Let’s suppose that 1st Jan of the year is Saturday then, in that case, the first week will have only 2 days and the same with the previous year that it will have only 5 days in the last week.
But some other systems follow the ISO week method to calculate the week number. All weeks in the ISO-8601 Week-Based calendar have exactly 7 days, starting on a Monday, and each week belongs to a single year. Unlike the Gregorian calendar, there are no weeks that extend across years. Each ISO-8601 year is either a Long or a Short year, with 52 or 53 weeks depending on when the ISO-8601 year begins.
For a better understanding, a table has been illustrated below, reflecting different dates expressed in ISO WEEK and GREGORIAN WEEK both.
|DATES||ISO WEEK||GREGORIAN WEEK|
|TUE 1 JAN, 2019||1st of 2019||1st week of 2019|
|WED 2 JAN, 2019||1st of 2019||1st week of 2019|
|THU 3 JAN, 2019||1st of 2019||1st week of 2019|
|FRI 4 JAN, 2019||1st of 2019||1st week of 2019|
|SAT 1 JAN, 2022||52wk of 2021||1st week of 2022|
|SUN 2 JAN, 2022||52wk of 2021||1st week of 2022|
|MON 3 JAN, 2022||1st of 2022||2nd week of 2022|
|TUE 4 JAN, 2022||1st of 2022||2nd week of 2022|
In addition to selecting the time unit, you can also use the date picker to fetch and measure seasonality data falling after a specific date. You can select this particular date either by using the dropdown menu or by manually entering it in the field.
The dates available within the date picker vary based on the aggregation (time unit) selected. For example, the traders shall have comparatively more dates to select from the date picker if the monthly time unit is selected over an hourly aggregation.
Filter Seasonality Data
You can filter the seasonality data appearing in the charts to exclude outliers, such as the 2008 financial crisis or the 2020 COVID-19 outbreak, or anything else of your choice by simply clicking on the filter icon.
By excluding these periods, you may be able to create a more accurate picture of how security behaves during normal times. You can exclude an entire year (i.e., “2008”) or specific months (i.e., “May 2008”).
You can also have more than one exclusion by separating values by commas. For example, if you wanted to exclude the 2008 crisis and the first months of the COVID panic, you could use "2008, 2009, 2010, Mar 2020, Apr 2020, May 2020".
**Note: Seasonality data might be delayed by up to 3 hours. The whole point of Seasonality does not imply real-time updates, since they are not going to change the overall picture.
Interpreting Seasonality Data
Navigate to the chart in the Seasonality widget to view and interpret the seasonality for the following data points:
- Positive Periods (Green Columns)
- Mean Change (Blue Line)
- P25% / P75% (Pale Blue Cloud)
- Raw Data
Tip: You can full-screen the chart by clicking on the full-screen button at the top-right corner of the chart 💡
Toggling to the full-screen mode makes it easy to read and interpret the data points.
Positive Periods (Green Columns)
Toggle on the Positive Periods from the chart legend at the bottom. These periods on the chart reflect the percentage of aggregation periods (days, weeks, months, hours) that closed higher than they opened, depicting “change%>o”.
For example, in the chart below you can observe the reading for the first month of the year where 75% of the first month periods closed higher than they opened.
The chart will change as per the seasonality type you have selected. You can select any type you want by clicking on the caret down option against “change%>0”. A list of metrics will appear.
|Rel.Vol(20)||Relative Volume - 20 period moving average|
|RSI(14)||Relative Strength Indicator - 14 period moving average|
|MFI(14)||Money Flow Index- 14 period moving average|
|SMA(20) Dist% >0||The closing price (on a given time frame) greater than the 20 period simple moving average|
|SMA(50) Dist% >0||The closing price (on a given time frame) greater than the 50 period simple moving average|
|SMA(100) Dist% >0||The closing price (on a given time frame) greater than the 100 period simple moving average|
For example: If you select “RSI(14)>70” - the RSI(14) was greater than a constant value of 70, 20% of the time during the month of March, since 1/1/2019 for KRAKEN: BTCUSD.
Mean Change (Blue Line)
Toggle on the Mean Change % from the chart legend at the bottom. The mean change on the chart reflects the mean (average) percentage change of a time series for the selected time period.
For example, in the chart below you can observe the reading for the first month of the year where the mean change percentage was 17.02%. The mean is equal to the sum of all values divided by the number of values.
P25% / P75% (Pale Blue Cloud)
Toggle on the P25% / P75% from the chart legend at the bottom. The 25% percentile to 75% percentile range is shaded on the chart widget to show where “most” of the percentage changes or volatility took place.
You can use the percentile cloud in cases when you are exploring deeper and want to see the distribution of change%. In example, if you're seeing that 50% of August months were positive for a stock, you might still wonder what was the magnitude of that, and how were the losers looked like. That's where the cloud is useful.
For example, from the cloud on the picture below you can tell that October was not only a good month in 100% of cases, but all the months of October were pretty consolidated in their absolute change% (the cloud is pretty narrow on October).
The raw data in the seasonality chart reflects the distribution of outcomes. For example, if you are looking at the Monthly data for 4 years, then there will be 4 dots for each month with raw data, where each dot would represent the outcome of one of the months in the sample.
Vertical Dashed Line
Every Seasonality chart has a vertical dashed line called "Now", which illustrates what's the corresponding period on your Seasonality chart for the "Now" moment. It's not very useful for Monthly charts, but helps a lot for the Week of Year, for example.