New AI Backtesting Assistant Launch!

Seasonality Widget

May 14, 2024
Static chart image
Time Based
Cycle
Patterns

Works on the Following Platforms

tradingviewSymbolTradingView
For free use on the TradingView platform
ninjatraderNinjaTrader
For free use on the NinjaTrader platform
metatrader4MetaTrader 4
For free use on the MetaTrader 4 platform
metatrader5MetaTrader 5
For free use on the MetaTrader 5 platform
thinkorswimThinkorswim
For free use on the Thinkorswim platform

The Seasonality Widget tool allows users to easily visualize seasonal trends from various data sources.

Users can select different levels of granularity as well as different statistics to express seasonal trends.

USAGE

indicator image

Seasonality allows us to observe general trends occurring at regular intervals. These intervals can be user-selected from the granularity setting and determine how the data is grouped, these include:

  • Hour
  • Day Of Week
  • Day Of Month
  • Month
  • Day Of Year

indicator image

The above seasonal chart shows the BTCUSD seasonal price change for every hour of the day, that is the average price change taken for every specific hour. This allows us to obtain an estimate of the expected price move at specific hours of the day.

Users can select when data should start being collected using the "From Date" setting, any data before the selected date will not be included in the calculation of the Seasonality Widget.

Data To Analyze

indicator image

The Seasonality Widget can return the seasonality for the following data:

  • Price Change

Closing price minus the previous closing price.

  • Price Change (%)

Closing price minus the previous closing price, divided by the previous closing price, then multiplied by 100.

  • Price Change (Sign)

Sign of the price change (-1 for negative change, 1 for positive change), normalized in a range (0, 100). Values above 50 suggest more positive changes on average.

  • Range

High price minus low price.

  • Price - SMA

Price minus its simple moving average. Users can select the SMA period.

  • Volume

Amount of contracts traded. Allow users to see which periods are generally the most /least liquid.

  • Volume - SMA

Volume minus its simple moving average. Users can select the SMA period.

Filter

In addition to the "From Date" threshold users can exclude data from specific periods of time, potentially removing outliers in the final results.

The period type can be specified in the "Filter Granularity" setting. The exact time to exclude can then be specified in the "Numerical Filter Input" setting, multiple values are supported and should be comma separated.

indicator image

For example, if we want to exclude the entire 2008 period we can simply select "Year" as filter granularity, then input 2008 in the "Numerical Filter Input" setting.

Do note that "Sunday" uses the value 1 as a day of the week.

DETAILS

Supported Statistics

Users can apply different statistics to the grouped data to process. These include:

  • Mean
  • Median
  • Max
  • Min
  • Max-Min Average

indicator image

Using the median allows for obtaining a measure more robust to outliers and potentially more representative of the actual central tendency of the data.

Max and Min do not express a general tendency but allow obtaining information on the highest/lowest value of the analyzed data for specific periods.

SETTINGS

  • Granularity: Periods used to group data.
  • From Data: Starting point where data starts being collected

Data

  • Analyze: Specific data to be processed by the seasonality widget.
  • SMA Length: Period of the simple moving average used for "Price - SMA" and "Volume - SMA" options in "Analyze".
  • Statistic: Statistic applied to the grouped data.

Filter

  • Filter Granularity: Period type to exclude in the processed data.
  • Numerical Filter Input: Determines which of the selected hour/day of week/day of month/month/year to exclude depending on the selected Filter Granularity. Only numerical inputs can be provided. Multiple values are supported and must be comma-separated.

Trading is risky and many will lose money in connection with trading activities. All content on this site is not intended to, and should not be, construed as financial advice. Decisions to buy, sell, hold or trade in securities, commodities and other markets involve risk and are best made based on the advice of qualified financial professionals. Past performance does not guarantee future results.

Hypothetical or Simulated performance results have certain limitations. Unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not been executed, the results may have under-or-over compensated for the impact, if any, of certain market factors, including, but not limited to, lack of liquidity. Simulated trading programs in general are designed with the benefit of hindsight, and are based on historical information. No representation is being made that any account will or is likely to achieve profit or losses similar to those shown.

Testimonials appearing on this website may not be representative of other clients or customers and is not a guarantee of future performance or success.

As a provider of technical analysis tools for charting platforms, we do not have access to the personal trading accounts or brokerage statements of our customers. As a result, we have no reason to believe our customers perform better or worse than traders as a whole based on any content or tool we provide.

Charts used on this site are by TradingView in which the majority of our tools are built on. TradingView® is a registered trademark of TradingView, Inc. www.TradingView.com. TradingView® has no affiliation with the owner, developer, or provider of the Services described herein.

This does not represent our full Disclaimer. Please read our full disclaimer.

© 2025 LuxAlgo Global, LLC.