OPEN-SOURCE SCRIPT
Bull and Bear Market '20% Indicator

This indicator uses the somewhat crude method of calculating bear/bull markets using the following popular '20% rule':
The 1d time-frame should be used, here's why:
So, to capture the mentioned bear and bull market definitions, you'd want to apply the script on a daily (1d/1D) chart.
A bear market begins when an asset trades 20% below its recent high for more than two months, a bear market ends when an asset trades 20% above its recent low for one month or more.
The 1d time-frame should be used, here's why:
"A bear market begins when an asset trades 20% below its recent high for more than two months."
If we take the standard trading month to be around 20-22 days (excluding weekends), then two months would be approximately 40-44 days. This is why we set the `bearDuration` to 60 days in the script to capture the "more than two months" criteria. Using a daily timeframe, 60 bars represent roughly 3 months (since markets are not open every day due to weekends and holidays).
"...a bear market ends when an asset trades 20% above its recent low for one month or more."
This is why the `bullDuration` is set to 20 days in the script, which represents roughly one trading month on a daily timeframe.
So, to capture the mentioned bear and bull market definitions, you'd want to apply the script on a daily (1d/1D) chart.
Script de código abierto
Fiel al espíritu de TradingView, el creador de este script lo ha convertido en código abierto, para que los traders puedan revisar y verificar su funcionalidad. ¡Enhorabuena al autor! Aunque puede utilizarlo de forma gratuita, recuerde que la republicación del código está sujeta a nuestras Normas internas.
Exención de responsabilidad
La información y las publicaciones no constituyen, ni deben considerarse como asesoramiento o recomendaciones financieras, de inversión, de trading o de otro tipo proporcionadas o respaldadas por TradingView. Más información en Condiciones de uso.
Script de código abierto
Fiel al espíritu de TradingView, el creador de este script lo ha convertido en código abierto, para que los traders puedan revisar y verificar su funcionalidad. ¡Enhorabuena al autor! Aunque puede utilizarlo de forma gratuita, recuerde que la republicación del código está sujeta a nuestras Normas internas.
Exención de responsabilidad
La información y las publicaciones no constituyen, ni deben considerarse como asesoramiento o recomendaciones financieras, de inversión, de trading o de otro tipo proporcionadas o respaldadas por TradingView. Más información en Condiciones de uso.