[blackcat] L1 Adaptive Choppiness Index

Background
I have been working with choppiness index type indicator for long. However, there are several problems in tradintional one.
Function
One of the issue of conventional choppiness index is the noise or ripple is too obvious. I was wondering several ways to smooth it. As you may know, choppiness index is "one line" indicator. There is little room of freedom to change it too much. Then, I introduced adaptation algorithm to make "length" parameter adaptive, which can smooth choppiness index indicator to some degree. Meanwhile, I use ALMA to smooth the output again.
Remarks
I used my published dc_ta lib, which collects several dominant cycle algorithm from Elhers to make many indicator adaptive possible.

Feedbacks are appreciated.
The [blackcat] L1 Adaptive Choppiness Index (ACHI) is designed to help traders gauge market volatility and identify trending versus ranging conditions. By calculating an adaptive measure of choppiness, this indicator provides insights into whether the market is experiencing strong trends or consolidation phases. It plots the ACHI along with customizable bands and generates alerts for better decision-making 📊💹.
FEATURES
Calculates the Adaptive Choppiness Index (ACHI) using advanced algorithms:
Utilizes Ehlers’ Ho-Dy Dominant Cycle (DC) for dynamic length calculation.
Applies Arithmetic Logarithmic Moving Average (ALMA) smoothing for clearer signals.
Plots the ACHI line with customizable offsets and colors 🎨.
Includes three key bands for context:
Upper Band: 61.8 level (dashed blue).
Middle Band: 50 level (gray).
Lower Band: 38.2 level (dashed blue).
Displays trend ('Trend') and sideways ('Sideways') labels on the chart for quick identification 🏷️.
Generates alerts when the market transitions between trending and ranging states 🔔.
HOW TO USE
Add the indicator to your TradingView chart by selecting it from the indicators list.
Adjust the Cycle Participation parameter to fine-tune the sensitivity of the indicator ⚙️.
Monitor the chart for trend and sideways labels indicating current market conditions.
Set up alerts based on the generated signals to receive notifications when conditions change 📲.
Use the bands as additional context for understanding market volatility.
LIMITATIONS
The indicator may not capture all nuances of market behavior, especially in highly volatile conditions 🌪️.
Users should combine this indicator with other forms of analysis for more reliable trading decisions.
The effectiveness of the indicator may vary depending on the asset and timeframe being analyzed.
NOTES
Ensure that you have sufficient historical data available for accurate calculations.
Test the indicator thoroughly on demo accounts before applying it to live trading 🔍.
Customize the appearance and parameters as needed to fit your trading strategy.
Skrip sumber terbuka
Dalam semangat sebenar TradingView, pencipta skrip ini telah menjadikannya sumber terbuka supaya pedagang dapat menilai dan mengesahkan kefungsiannya. Terima kasih kepada penulis! Walaupun anda boleh menggunakannya secara percuma, ingat bahawa menerbitkan semula kod ini adalah tertakluk kepada Peraturan Dalaman kami.
Untuk akses pantas pada carta, tambah skrip ini kepada kegemaran anda — ketahui lebih lanjut di sini.
Penafian
Skrip sumber terbuka
Dalam semangat sebenar TradingView, pencipta skrip ini telah menjadikannya sumber terbuka supaya pedagang dapat menilai dan mengesahkan kefungsiannya. Terima kasih kepada penulis! Walaupun anda boleh menggunakannya secara percuma, ingat bahawa menerbitkan semula kod ini adalah tertakluk kepada Peraturan Dalaman kami.
Untuk akses pantas pada carta, tambah skrip ini kepada kegemaran anda — ketahui lebih lanjut di sini.