Bull/Bear Candle % Oscillator█ OVERVIEW
This script determines the proportion of bullish and bearish candles in a given sample size. It will produce an oscillator that fluctuates between 100 and -100, where values > 0 indicate more bullish candles in the sample and values < 0 indicate more bearish candles in the sample. Data produced by this oscillator is normalized around the 50% value, meaning that an even 50/50 split between bullish and bearish candles makes this oscillator produce 0; this oscillator indirectly represents the percent proportion of bullish and bearish candles in the sample (see HOW TO USE/INTERPRETATION OF DATA ).
It has two overarching settings: 'classic' and 'range'.
█ CONCEPTS
This script will cover concepts related to candlestick analysis, volumetric analysis, and lower timeframes.
Candlestick Analysis - The idea behind this script is to solely look at the candlesticks themselves and derive information from them in a given sample. It separates candles into two categories, bullish (close > open) and bearish (close < open).
If the indicator's setting is set to 'classic', the size of candles do not matter and all are assigned a value of 1 or 0.
If the indicator's setting is set to 'range', specific candle ranges modify the proportion of bullish/bearish values. Bullish candle values include all bullish candles in the set from their lows to the close, plus the lower wicks of all bearish candles. Bearish candle values include all bearish candles in the set from their highs to the close, plus the upper wicks of all bullish candles.
Volumetric Analysis - One of this script's features allows the user to modify the bullish and bearish candle proportions by its 'weight' determined by its volume compared to the sample set's total volume. Volumetric analysis for the 'range' setting are more complex than 'classic' as described below.
Lower Timeframes - For volumetric analysis to be done on candle wicks, there needed to be a way to determine how much volume had occurred in the wick by itself to find the weight of upper and lower wicks. To accomplish this, I employed PineScrypt's request.security_lower_tf function to grab OHLC values of lower timeframe candles (as well as volume) to determine how much volume had occurred in the wicks of the chart resolution's candle. The default OHLC values used here are the lows for upper wicks and highs for lower wicks. These OHLC values are then compared to the chart resolution candle's close to determine if the volume of that lower timeframe candle should be shifted to the wick weight or stay in the current weight of that candle. The reason 'low' and 'high' are used here is to guarantee that 100% of the volume of a lower timeframe candle had occurred in the wick of the candle at the current resolution (see LIMITATIONS ).
Bullish candles will exclude volume of all lower timeframe candles whose lows were greater than that candle's close. Bearish candles will exclude volume of all lower timeframe candles whose highs were less than that candle's close. These wick volumes are then divided by the volume of the sample set, and wick sizes are then multiplied by this weight before being added to their specific bullish/bearish sums (lower wicks to bullish and upper wicks to bearish).
█ FEATURES
There are 13 inputs for the user to modify the behavior/visual representation of this script.
Sample Length - This determines how many candles are in the sample set to find the proportion of bullish and bearish candles.
Colors and Invert Colors - There are three colors set by the user: a bullish color, neutral color, and bearish color. The oscillator plots two lines, one at 0 and another that represents the proportion of bullish or bearish candles in the sample set (we'll call this the 'signal line'). If the oscillator is above 0, bullish color is used, bearish otherwise. This script generates a gradient to color a filled area between the 0 line and the signal line based on the historical values of the oscillator itself and the signal line. For bullish values, the closer the signal line is to the max (or restricted max described below) that the oscillator has experienced, the more colored toward bullish color the shaded area will be, using the neutral color as a starting point. The same is applied to the bearish values using the bearish color.
There is an additional input to invert the colors so that the bearish color is associated with bullish values and vise-versa.
Calculation Type - This determines the overarching behavior of the oscillator and has two settings:
Classic - The weight of candles are either 1 if they occurred and 0 if not.
Range - The weight of candles is determined by the size of specific sections as described in CONCEPTS - Candlestick Analysis .
Volume Weighted - This enables modifying the weights of candles as described in CONCEPTS - Volumetric Analysis and Lower Timeframes based on which Calculation Type is used.
Wick Slice Resolution - This is the lower timeframe resolution that will be used to slice the chart resolution's candle when determining the volumetric weight of wicks. Lower timeframe resolutions like '1 minute' will yield more precise results as they will give more data points to go off of (see LIMITATIONS ).
Upper/Lower Wick Source - These two inputs allow the user to select which OHLC values to compare against the chart resolution's candle close when determining which lower timeframe candles will have their volumes associated with the wicks of candles being analyzed at the chart's resolution.
Restrict Min/Max Data and Restriction - This will restrict the maximum and minimum values that will be used for the signal line when comparing its value to previous oscillator values and change how the color gradient is generated for the indicator. Restriction is the number of candles back that will determine these maximum and minimum values.
Display Min/Max Guide - This will plot two lines that are colored the corresponding bullish and bearish colors which follow what the maximum and minimum values are currently for the oscillator.
█ HOW TO USE/INTERPRETATION OF DATA
As mentioned in the OVERVIEW section, this oscillator provides an indirect representation of the percent proportion of bullish or bearish candles in a given sample. If the oscillator reads 80, this does not mean that 80% of all candles in the sample were bullish . To find the percentage of candles that were bullish or bearish, the user needs to perform the following:
50% + ((|oscillator value| / 100) * 50)%
If the oscillator value is negative, the value from above will represent the percentage of bearish candles in the sample. If it is positive, this value represents the percentage of bullish candles in the sample.
Example 1 (oscillator value = 80):
50% + ((|80| / 100) * 50)%
50% + ((0.80) * 50)%
50% + 40% = 90%
90% of the candles in the sample were bullish.
Example 2 (oscillator value = -43):
50% + ((|-43| / 100) * 50)%
50% + ((0.43) * 50)%
50% + 21.5% = 71.5%
71.5% of the candles in the sample were bearish.
An example use of this indicator would be to put in a 'buy' order when its value shows a significant proportion of the sampled candles were bearish, and put in a 'sell' order when a significant proportion of candles were bullish. Potential divergences of this oscillator may also be used to plan trades accordingly such as bearish divergence - price continues higher as the oscillator decreases in value and vise-versa.*
* Nothing in this script constitutes any form of financial advice. The user is solely responsible for their trading decisions and I will not be held liable for any losses or gains incurred with the use of this script. Please proceed with caution when using this script to assist with trading decisions.
█ LIMITATIONS
Range Volumetric Weights :
Because of the conditions that must be met in order for volume to be considered part of wicks, it is possible that the default settings and their intended reasoning will not produce reliable results. If all lower timeframe candles have highs or lows that are within the body of the candle at the chart's resolution, the volume for the wicks will effectively be 0, which is not an accurate representation of those wicks. This is one of the reasons why I included the ability to change the source values used for these conditions as certain OHLC values may produce more reliable/intended results under these conditions.
Wick Slice Resolution :
PineScript restricts the number of intrabar references to 100,000 total. This script uses 3 separate request.security_lower_tf calls and has a default resolution of 1 minute. This means that if the user were to set the oscillator to the Range setting, enable volume weighted, and had the Wick Slice Resolution set to 1 minute, this script will exceed this 100,000 reference restriction within 24 days of data and will not produce any results beyond the previous 23.14 days.
Below are example uses of all the different settings of this script, these are done on the 1D chart of COINBASE:BTCUSD :
Default Settings:
Classic - Volume Weighted:
Range - no Volume Weight:
Range - Volume Weighted (1 min slices):
Range - Volume Weighted (1 hour slices):
Display Min/Max Guide - No Restriction:
Display Min/Max Guide - Restriction:
Invert Colors:
在腳本中搜尋"oscillator"
Infiten's Return Candle OscillatorInfiten's Return Candle Oscillator is an oscillator which shows the percentage return on the open, high, close and low over a customizable period in the form of candlesticks. It may be helpful for seeing volatility, swing trading, or mean reversion trading.
The RCO consists of two plotted elements :
RCO Candles (short length): candlesticks which are plotted with low = the product of the percentage changes in the low over a period, high = the product of the percentage changes in the high over a period, close = the product of the percent changes in close over a period, and open = the product of the percentage changes in return over a period. Similarly to with standard candlesticks, if the percentage change on the close is higher than the percentage change on the open, the candlestick is green, otherwise it is red.
Smoothed RCO Line (long length) : a moving average of the average of the low, close, open and high calculated for the RCO Candles. The line's transparency is determined by the percentage difference between the RCO and the highest or lowest RCO over the long length. A more transparent line means that the RCO is closer to the highest or lowest RCO, and may be indicative of a reversal, or weakening trend.
MACD-RSI Divergence OscillatorMACD-RSI Divergence Oscillator: Dual Confirmation with Momentum + Divergence Signals
This powerful oscillator combines MACD and RSI into a single normalized visual tool, enriched with automatic divergence detection and smart signal alerts. It’s designed to give traders advanced insights into momentum shifts and trend reversals.
Key Features:
• MACD + RSI Combo: Both indicators are scaled and merged into one oscillator for clearer interpretation.
• Automatic Divergence Detection:
• Bullish & Bearish divergences on both MACD and RSI
• Highlights strong divergences when both confirm
• Trading Signals:
• Detects MACD crossovers and RSI reversals
• Smart buy/sell signals based on momentum + divergence
• Custom Oscillator View:
• Plots MACD and RSI on the same scale
• Visual zero-line, overbought/oversold levels, and customizable colors
• Optional Dashboard Table:
• Displays live indicator values, signal states, and divergence status
Ideal For:
• Spotting early trend reversals
• Confirming trade entries/exits
• Avoiding false signals using dual indicator logic
Highly customizable and suitable for all timeframes and asset types.
Momentum Trail Oscillator [AlgoAlpha]🟠 OVERVIEW
This script builds a Momentum Trail Oscillator designed to measure directional momentum strength and dynamically track shifts in trend bias using a combination of smoothed price change calculations and adaptive trailing bands. The oscillator aims to help traders visualize when momentum is expanding or contracting and to identify transitions between bullish and bearish conditions.
🟠 CONCEPTS
The core idea combines two methods. First, the script calculates a normalized momentum measure by smoothing price changes relative to their absolute values, which creates a bounded oscillator that highlights whether moves are directional or choppy. Second, it uses a trailing band mechanism inspired by volatility stops, where bands adapt to the oscillator’s volatility, adjusting the thresholds that define a shift in directional bias. This dual approach seeks to address both the magnitude and persistence of momentum, reducing false signals in ranging markets.
🟠 FEATURES
The momentum calculation applies Hull Moving Averages and double EMA smoothing to price changes, producing a smooth, responsive oscillator.
The trailing bands are derived by offsetting a weighted moving average of the oscillator by a multiple of recent momentum volatility. A directional state variable tracks whether the oscillator is above or below the bands, updating when the momentum crosses these dynamic thresholds.
Overbought and oversold zones are visually marked between fixed levels (+30/+40 and -30/-40), with color fills to highlight when momentum is in extreme areas. The script plots signals on both the oscillator pane and optionally overlays markers on the main price chart for clarity.
🟠 USAGE
To use the indicator, apply it to any symbol and timeframe. The “Oscillator Length” controls how sensitive the momentum line is to recent price changes—lower values react faster, higher values smooth out noise. The “Trail Multiplier” sets how far the adaptive bands sit from the oscillator mid-line, which affects how often trend state changes occur. When the momentum line rises into the upper filled area and then crosses back below +40, it signals potential overbought exhaustion. The opposite applies for the oversold zone below -40. The plotted trailing bands switch visibility depending on the current directional state: when momentum is trending up, the lower band acts as the active trailing stop, and when trending down, the upper band becomes active. Trend changes are marked with circular symbols when the direction variable flips, and optional overlay arrows appear on the price chart to highlight overbought or oversold reversals. Traders can combine these signals with their own price action or volume analysis to confirm entries or exits.
Bitcoin Polynomial Regression OscillatorThis is the oscillator version of the script. Click here for the other part of the script.
💡Why this model was created:
One of the key issues with most existing models, including our own Bitcoin Log Growth Curve Model , is that they often fail to realistically account for diminishing returns. As a result, they may present overly optimistic bull cycle targets (hence, we introduced alternative settings in our previous Bitcoin Log Growth Curve Model).
This new model however, has been built from the ground up with a primary focus on incorporating the principle of diminishing returns. It directly responds to this concept, which has been briefly explored here .
📉The theory of diminishing returns:
This theory suggests that as each four-year market cycle unfolds, volatility gradually decreases, leading to more tempered price movements. It also implies that the price increase from one cycle peak to the next will decrease over time as the asset matures. The same pattern applies to cycle lows and the relationship between tops and bottoms. In essence, these price movements are interconnected and should generally follow a consistent pattern. We believe this model provides a more realistic outlook on bull and bear market cycles.
To better understand this theory, the relationships between cycle tops and bottoms are outlined below:https://www.tradingview.com/x/7Hldzsf2/
🔧Creation of the model:
For those interested in how this model was created, the process is explained here. Otherwise, feel free to skip this section.
This model is based on two separate cubic polynomial regression lines. One for the top price trend and another for the bottom. Both follow the general cubic polynomial function:
ax^3 +bx^2 + cx + d.
In this equation, x represents the weekly bar index minus an offset, while a, b, c, and d are determined through polynomial regression analysis. The input (x, y) values used for the polynomial regression analysis are as follows:
Top regression line (x, y) values:
113, 18.6
240, 1004
451, 19128
655, 65502
Bottom regression line (x, y) values:
103, 2.5
267, 211
471, 3193
676, 16255
The values above correspond to historical Bitcoin cycle tops and bottoms, where x is the weekly bar index and y is the weekly closing price of Bitcoin. The best fit is determined using metrics such as R-squared values, residual error analysis, and visual inspection. While the exact details of this evaluation are beyond the scope of this post, the following optimal parameters were found:
Top regression line parameter values:
a: 0.000202798
b: 0.0872922
c: -30.88805
d: 1827.14113
Bottom regression line parameter values:
a: 0.000138314
b: -0.0768236
c: 13.90555
d: -765.8892
📊Polynomial Regression Oscillator:
This publication also includes the oscillator version of the this model which is displayed at the bottom of the screen. The oscillator applies a logarithmic transformation to the price and the regression lines using the formula log10(x) .
The log-transformed price is then normalized using min-max normalization relative to the log-transformed top and bottom regression line with the formula:
normalized price = log(close) - log(bottom regression line) / log(top regression line) - log(bottom regression line)
This transformation results in a price value between 0 and 1 between both the regression lines.
🔍Interpretation of the Model:
In general, the red area represents a caution zone, as historically, the price has often been near its cycle market top within this range. On the other hand, the green area is considered an area of opportunity, as historically, it has corresponded to the market bottom.
The top regression line serves as a signal for the absolute market cycle peak, while the bottom regression line indicates the absolute market cycle bottom.
Additionally, this model provides a predicted range for Bitcoin's future price movements, which can be used to make extrapolated predictions. We will explore this further below.
🔮Future Predictions:
Finally, let's discuss what this model actually predicts for the potential upcoming market cycle top and the corresponding market cycle bottom. In our previous post here , a cycle interval analysis was performed to predict a likely time window for the next cycle top and bottom:
In the image, it is predicted that the next top-to-top cycle interval will be 208 weeks, which translates to November 3rd, 2025. It is also predicted that the bottom-to-top cycle interval will be 152 weeks, which corresponds to October 13th, 2025. On the macro level, these two dates align quite well. For our prediction, we take the average of these two dates: October 24th 2025. This will be our target date for the bull cycle top.
Now, let's do the same for the upcoming cycle bottom. The bottom-to-bottom cycle interval is predicted to be 205 weeks, which translates to October 19th, 2026, and the top-to-bottom cycle interval is predicted to be 259 weeks, which corresponds to October 26th, 2026. We then take the average of these two dates, predicting a bear cycle bottom date target of October 19th, 2026.
Now that we have our predicted top and bottom cycle date targets, we can simply reference these two dates to our model, giving us the Bitcoin top price prediction in the range of 152,000 in Q4 2025 and a subsequent bottom price prediction in the range of 46,500 in Q4 2026.
For those interested in understanding what this specifically means for the predicted diminishing return top and bottom cycle values, the image below displays these predicted values. The new values are highlighted in yellow:
And of course, keep in mind that these targets are just rough estimates. While we've done our best to estimate these targets through a data-driven approach, markets will always remain unpredictable in nature. What are your targets? Feel free to share them in the comment section below.
Dynamic Volume Profile Oscillator | AlphaAlgosDynamic Volume Profile Oscillator | AlphaAlgos
Overview
The Dynamic Volume Profile Oscillator is an advanced technical analysis tool that transforms traditional volume analysis into a responsive oscillator. By creating a dynamic volume profile and measuring price deviation from volume-weighted equilibrium levels, this indicator provides traders with powerful insights into market momentum and potential reversals.
Key Features
• Volume-weighted price deviation analysis
• Adaptive midline that adjusts to changing market conditions
• Beautiful gradient visualization with 10-level intensity zones
• Fast and slow signal lines for trend confirmation
• Mean reversion mode that identifies price extremes relative to volume
• Fully customizable sensitivity and smoothing parameters
Technical Components
1. Volume Profile Analysis
The indicator builds a dynamic volume profile by:
• Collecting recent price and volume data within a specified lookback period
• Calculating a volume-weighted mean price (similar to VWAP)
• Measuring how far current price has deviated from this weighted average
• Adjusting this deviation based on historical volatility
2. Oscillator Calculation
The oscillator offers two calculation methods:
• Mean Reversion Mode (default): Measures deviation from volume-weighted mean price, normalized to reflect potential overbought/oversold conditions
• Standard Mode : Normalizes volume activity to identify unusual volume patterns
3. Adaptive Zones
The indicator features dynamic zones that:
• Center around an adaptive midline that reflects the average oscillator value
• Expand and contract based on recent volatility (standard deviation)
• Visually represent intensity through multi-level gradient coloring
• Provide clear visualization of bullish/bearish extremes
4. Signal Generation
Trading signals are generated through:
• Main oscillator line position relative to the adaptive midline
• Crossovers between fast (5-period) and slow (15-period) signal lines
• Color changes that instantly identify trend direction
• Distance from the midline indicating trend strength
Configuration Options
Volume Analysis Settings:
• Price Source - Select which price data to analyze
• Volume Source - Define volume data source
• Lookback Period - Number of bars for main calculations
• Profile Calculation Periods - Frequency of profile recalculation
Oscillator Settings:
• Smoothing Length - Controls oscillator smoothness
• Sensitivity - Adjusts responsiveness to price/volume changes
• Mean Reversion Mode - Toggles calculation methodology
Threshold Settings:
• Adaptive Midline - Uses dynamic midline based on historical values
• Midline Period - Lookback period for midline calculation
• Zone Width Multiplier - Controls width of bullish/bearish zones
Display Settings:
• Color Bars - Option to color price bars based on trend direction
Trading Strategies
Trend Following:
• Enter long positions when the oscillator crosses above the adaptive midline
• Enter short positions when the oscillator crosses below the adaptive midline
• Use signal line crossovers for entry timing
• Monitor gradient intensity to gauge trend strength
Mean Reversion Trading:
• Look for oscillator extremes shown by intense gradient colors
• Prepare for potential reversals when the oscillator reaches upper/lower zones
• Use divergences between price and oscillator for confirmation
• Consider scaling positions based on gradient intensity
Volume Analysis:
• Use Standard Mode to identify unusual volume patterns
• Confirm breakouts when accompanied by strong oscillator readings
• Watch for divergences between price and volume-based readings
• Use extended periods in extreme zones as trend confirmation
Best Practices
• Adjust sensitivity based on the asset's typical volatility
• Use longer smoothing for swing trading, shorter for day trading
• Combine with support/resistance levels for optimal entry/exit points
• Consider multiple timeframe analysis for comprehensive market view
• Test different profile calculation periods to match your trading style
This indicator is provided for informational purposes only. Always use proper risk management when trading based on any technical indicator. Not financial advise.
GMO (Gyroscopic Momentum Oscillator) GMO
Overview
This indicator fuses multiple advanced concepts to give traders a comprehensive view of market momentum, volatility, and potential turning points. It leverages the Gyroscopic Momentum Oscillator (GMO) foundation and layers on IQR-based bands, dynamic ATR-adjusted OB/OS levels, torque filtering, and divergence detection. The outcome is a versatile tool that can assist in identifying both short-term squeezes and long-term reversal zones while detecting subtle shifts in momentum acceleration.
Key Components:
Gyroscopic Momentum Oscillator (GMO) – A physics-inspired metric capturing trend stability and momentum by treating price dynamics as “angle,” “angular velocity,” and “inertia.”
IQR Bands – Highlight statistically typical oscillation ranges, providing insight into short-term squeezes and potential near-term trend shifts.
ATR-Adjusted OB/OS Levels – Dynamic thresholds for overbought/oversold conditions, adapting to volatility, aiding in identifying long-term potential reversal zones.
Torque Filtering & Scaling – Smooths and thresholds torque (the rate of change of momentum) and visually scales it for clarity, indicating sudden force changes that may precede volatility adjustments.
Divergence Detection – Highlights potential reversal cues by comparing oscillator swings against price swings, revealing regular and hidden bullish/bearish divergences.
Conceptual Insights
IQR Bands (Short-Term Squeeze & Trend Direction):
Short-Term Momentum and Squeeze: The IQR (Interquartile Range) bands show where the oscillator tends to “live” statistically. When the GMO line hovers within compressed IQR bands, it can signal a momentum squeeze phase. Exiting these tight ranges often correlates with short-term breakout opportunities.
Trend Reversals: If the oscillator pushes beyond these IQR ranges, it may indicate an emerging short-term trend change. Traders can watch for GMO escaping the IQR “comfort zone” to anticipate a new directional move.
Dynamic OB/OS Levels (Long-Term Reversal Zones):
ATR-Based Adaptive Thresholds: Instead of static overbought/oversold lines, this tool uses ATR to adjust OB/OS boundaries. In calm markets, these lines remain closer to ±90. As volatility rises, they approach ±100, reflecting greater permissible swings.
Long-Term Trend Reversal Potential: If GMO hits these dynamically adjusted OB/OS extremes, it suggests conditions ripe for possible long-term trend reversals. Traders seeking major inflection points may find these adaptive levels more reliable than fixed thresholds.
Torque (Sudden Force & Directional Shifts):
Momentum Acceleration Insight: Torque represents the second derivative of momentum, highlighting how quickly momentum is changing. High positive torque suggests a rapidly strengthening bullish force, while high negative torque warns of sudden bearish pressure.
Early Warning & Stability/Volatility Adjustments: By monitoring torque spikes, traders can anticipate momentum shifts before price fully confirms them. This can signal imminent changes in stability or increased volatility phases.
Indicator Parameters and Usage
GMO-Related Inputs:
lenPivot (Default 100): Length for calculating the pivot line (slow market axis).
lenSmoothAngle (Default 200): Smooths the angle measure, reducing noise.
lenATR (Default 14): ATR period for scaling factor, linking price changes to volatility.
useVolatility (Default true): If true, volatility (ATR) influences inertia, adjusting momentum calculations.
useVolume (Default false): If true, volume affects inertia, adding a liquidity dimension to momentum.
lenVolSmoothing (Default 50): Smooths volume calculations if useVolume is enabled.
lenMomentumSmooth (Default 20): EMA smoothing of GMO for a cleaner oscillator line.
normalizeRange (Default true): Normalizes GMO to a fixed range for consistent interpretation.
lenNorm (Default 100): Length for normalization window, ensuring GMO’s scale adapts to recent extremes.
IQR Bands Settings:
iqrLength (Default 14): Period to compute the oscillator’s statistical IQR.
iqrMult (Default 1.5): Multiplier to define the upper and lower IQR-based bands.
ATR-Adjusted OB/OS Settings:
baseOBLevel (Fixed at 90) and baseOSLevel (Fixed at 90): Base lines for OB/OS.
atrPeriodForOBOS (Default 50): ATR length for adjusting OB/OS thresholds dynamically.
atrScaling (Default 0.2): Controls how strongly volatility affects OB/OS lines.
Torque Filtering & Visualization:
torqueSmoothLength (Default 10): EMA length to smooth raw torque values.
atrPeriodForTorque (Default 14): ATR period to determine torque threshold.
atrTorqueScaling (Default 0.5): Scales ATR for determining torque’s “significant” threshold.
torqueScaleFactor (Default 10.0): Multiplies the torque values for better visual prominence on the chart.
Divergence Inputs:
showDivergences (Default true): Toggles divergence signals.
lbR, lbL (Defaults 5): Pivot lookback periods to identify swing highs and lows.
rangeUpper, rangeLower: Bar constraints to validate potential divergences.
plotBull, plotHiddenBull, plotBear, plotHiddenBear: Toggles for each divergence type.
Visual Elements on the Chart
GMO Line (Blue) & Zero Line (Gray):
GMO line oscillates around zero. Positive territory hints bullish momentum, negative suggests bearish.
IQR Bands (Teal Lines & Yellow Fill):
Upper/lower bands form a statistical “normal range” for GMO. The median line (purple) provides a central reference. Contraction near these bands indicates a short-term squeeze, expansions beyond them can signal emerging short-term trend changes.
Dynamic OB/OS (Red & Green Lines):
Red line near +90 to +100: Overbought zone (dynamic).
Green line near -90 to -100: Oversold zone (dynamic).
Movement into these zones may mark significant, longer-term reversal potential.
Torque Histogram (Colored Bars):
Plotted below GMO. Green bars = torque above positive threshold (bullish acceleration).
Red bars = torque below negative threshold (bearish acceleration).
Gray bars = neutral range.
This provides early warnings of momentum shifts before price responds fully.
Precession (Orange Line):
Scaled for visibility, adds context to long-term angular shifts in the oscillator.
Divergence Signals (Shapes):
Circles and offset lines highlight regular or hidden bullish/bearish divergences, offering potential reversal signals.
Practical Interpretation & Strategy
Short-Term Opportunities (IQR Focus):
If GMO compresses within IQR bands, the market might be “winding up.” A break above/below these bands can signal a short-term trade opportunity.
Long-Term Reversal Zones (Dynamic OB/OS):
When GMO approaches these dynamically adjusted extremes, conditions may be ripe for a major trend shift. This is particularly useful for swing or position traders looking for significant turnarounds.
Monitoring Torque for Acceleration Cues:
Torque spikes can precede price action, serving as an early catalyst signal. If torque turns strongly positive, anticipate bullish acceleration; strongly negative torque may warn of upcoming bearish pressure.
Confirm with Divergences:
Divergences between price and GMO reinforce potential reversal or continuation signals identified by IQR, OB/OS, or torque. Use them to increase confidence in setups.
Tips and Best Practices
Combine with Price & Volume Action:
While the indicator is powerful, always confirm signals with actual price structure, volume patterns, or other trend-following tools.
Adjust Lengths & Periods as Needed:
Shorter lengths = more responsiveness but more noise. Longer lengths = smoother signals but greater lag. Tune parameters to match your trading style and timeframe.
Use ATR and Volume Settings Wisely:
If markets are highly volatile, consider useVolatility to refine momentum readings. If liquidity is key, enable useVolume.
Scaling Torque:
If torque bars are hard to read, increase torqueScaleFactor further. The scaling doesn’t affect logic—only visibility.
Conclusion
The “GMO + IQR Bands + ATR-Adjusted OB/OS + Torque Filtering (Scaled)” indicator presents a holistic framework for understanding market momentum across multiple timescales and conditions. By interpreting short-term squeezes via IQR bands, long-term reversal zones via adaptive OB/OS, and subtle acceleration changes through torque, traders can gain advanced insights into when to anticipate breakouts, manage risk around potential reversals, and fine-tune timing for entries and exits.
This integrated approach helps navigate complex market dynamics, making it a valuable addition to any technical analysis toolkit.
Standardized PSAR Oscillator [AlgoAlpha]Enhance your trading experience with the "Standardized PSAR Oscillator" 🪝, a powerful tool that combines the Parabolic Stop and Reverse (PSAR) with standardization techniques to offer more nuanced insights into market trends and potential reversals.
🔑 Key Features:
- 🛠 Customizable PSAR Settings: Adjust the starting point, increment, and maximum values for the PSAR to tailor the indicator to your strategy.
- 📏 Standardization: Smooth out volatility by standardizing the PSAR values using a customizable EMA, making reversals easier to identify.
- 🎨 Dynamic Color-Coding: The oscillator changes colors based on market conditions, helping you quickly spot bullish and bearish trends.
- 🔄 Divergence Detection: Automatic detection of bullish and bearish divergences with customizable sensitivity and confirmation settings.
- 🔔 Alerts: Set up alerts for key events like zero-line crossovers and trend weakening, ensuring you never miss a critical market move.
🚀 How to Use:
✨ Add the Indicator: Add the indicator to favorites by pressing the star icon, adjust the settings to suite your needs.
👀 Monitor Signals: Watch for the automatic plotting of divergences and reversal signals to identify potential market entries and exits.
🔔 Set Alerts: Configure alerts to get notified of key changes without constantly monitoring the charts.
🔍 How It Works:
The Standardized PSAR Oscillator is an advanced trading tool that refines the traditional PSAR (Parabolic Stop and Reverse) indicator by incorporating several key enhancements to improve trend analysis and signal accuracy. The script begins by calculating the PSAR, a widely used indicator known for its effectiveness in identifying trend reversals. To make the PSAR more adaptive and responsive to market conditions, it is standardized using an Exponential Moving Average (EMA) of the high-low range over a user-defined period. This standardization helps to normalize the PSAR values, making them more comparable across different market conditions.
To further enhance signal clarity, the standardized PSAR is then smoothed using a Weighted Moving Average (WMA). This combination of EMA and WMA creates an oscillator that not only captures trend direction but also smooths out market noise, providing a cleaner signal. The oscillator's values are color-coded to visually indicate its position relative to the zero line, with additional emphasis on whether the WMA is rising or falling—this helps traders quickly interpret the trend’s strength and direction.
The oscillator also includes built-in divergence detection by comparing pivot points in price action with those in the oscillator. This feature helps identify potential discrepancies between the price and the oscillator, signaling possible trend reversals. Alerts can be configured for when the oscillator crosses the zero line or when a trend shows signs of weakening, ensuring that traders receive timely notifications to act on emerging opportunities. These combined elements make the Standardized PSAR Oscillator a robust tool for enhancing your trading strategy with more reliable and actionable signals
Chande Momentum Oscillator (CMO) Buy Sell Strategy [TradeDots]The "Chande Momentum Oscillator (CMO) Buy Sell Strategy" leverages the CMO indicator to identify short-term buy and sell opportunities.
HOW DOES IT WORK
The standard CMO indicator measures the difference between recent gains and losses, divided by the total price movement over the same period. However, this version of the CMO has some limitations.
The primary disadvantage of the original CMO is its responsiveness to short-term volatility, making the signals less smooth and more erratic, especially in fluctuating markets. This instability can lead to misleading buy or sell signals.
To address this, we integrated the concept from the Moving Average Convergence Divergence (MACD) indicator. By applying a 9-period exponential moving average (EMA) to the CMO line, we obtained a smoothed signal line. This line acts as a filter, identifying confirmed overbought or oversold states, thereby reducing the number of false signals.
Similar to the MACD histogram, we generate columns representing the difference between the CMO and its signal line, reflecting market momentum. We use this momentum indicator as a criterion for entry and exit points. Trades are executed when there's a convergence of CMO and signal lines during an oversold state, and they are closed when the CMO line diverges from the signal line, indicating increased selling pressure.
APPLICATION
Since the 9-period EMA smooths the CMO line, it's less susceptible to extreme price fluctuations. However, this smoothing also makes it more challenging to breach the original +50 and -50 benchmarks.
To increase trading opportunities, we've tightened the boundary ranges. Users can customize the target benchmark lines in the settings to adjust for the volatility of the underlying asset.
The 'cool down period' is essentially the number of bars that await before the next signal generation. This feature is employed to dodge the occurrence of multiple signals in a short period.
DEFAULT SETUP
Commission: 0.01%
Initial Capital: $10,000
Equity per Trade: 80%
Signal Cool Down Period: 5
RISK DISCLAIMER
Trading entails substantial risk, and most day traders incur losses. All content, tools, scripts, articles, and education provided by TradeDots serve purely informational and educational purposes. Past performances are not definitive predictors of future results.
Crypto McClellan Oscillator (SLN Fix)This is an adaption of the Mcclellan Oscillator for crypto. Instead of tracking the S&P500 it tracks a selection of cryptos to make sure the indicator follows this sector instead.
Full credit goes to the creator of this indicator: Fadior. It has since been fixed by SLN.
The following description explains the standard McClellan Oscillator. Full credit to Investopedia , my fav source of financial explanations.
The same principles applies to its use in the crypto sector, but please be cautious of the last point, the limitations. Since crypto is more volatile, that could amplify choppy behavior.
This is not financial advice, please be extremely cautious. This indicator is only suitable as a confirmation signal and needs support of other signals to be profitable.
This indicator usually produces the best signals on slightly above daily time frame. I personally like 2 or 3 day, but you have to find the settings suitable for your trading style.
What Is the McClellan Oscillator?
The McClellan Oscillator is a market breadth indicator that is based on the difference between the number of advancing and declining issues on a stock exchange, such as the New York Stock Exchange (NYSE) or NASDAQ.
The indicator is used to show strong shifts in sentiment in the indexes, called breadth thrusts. It also helps in analyzing the strength of an index trend via divergence or confirmation.
The McClellan Oscillator formula can be applied to any stock exchange or group of stocks.
A reading above zero helps confirm a rise in the index, while readings below zero confirm a decline in the index.
When the index is rising but the oscillator is falling, that warns that the index could start declining too. When the index is falling and the oscillator is rising, that indicates the index could start rising soon. This is called divergence.
A significant change, such as moving 100 points or more, from a negative reading to a positive reading is called a breadth thrust. It may indicate a strong reversal from downtrend to uptrend is underway on the stock exchange.
How to Calculate the McClellan Oscillator
To get the calculation started, track Advances - Declines on a stock exchange for 19 and 39 days. Calculate a simple average for these, not exponential moving average (EMA).
Use these simple values as the Prior Day EMA values in the 19- and 39-day EMA formulas.
Calculate the 19- and 39-day EMAs.
Calculate the McClellan Oscillator value.
Now that the value has been calculated, on the next calculation use this value for the Prior Day EMA. Start calculating EMAs for the formula instead of simple averages.
If using the adjusted formula, the steps are the same, except use ANA instead of using Advances - Declines.
What Does the McClellan Oscillator Tell You?
The McClellan Oscillator is an indicator based on market breadth which technical analysts can use in conjunction with other technical tools to determine the overall state of the stock market and assess the strength of its current trend.
Since the indicator is based on all the stocks in an exchange, it is compared to the price movements of indexes that reflect that exchange, or compared to major indexes such as the S&P 500.
Positive and negative values indicate whether more stocks, on average, are advancing or declining. The indicator is positive when the 19-day EMA is above the 39-day EMA, and negative when the 19-day EMA is below the 39-day EMA.
A positive and rising indicator suggests that stocks on the exchange are being accumulated. A negative and falling indicator signals that stocks are being sold. Typically such action confirms the current trend in the index.
Crossovers from positive to negative, or vice versa, may signal the trend has changed in the index or exchange being tracked. When the indicator makes a large move, typically of 100 points or more, from negative to positive territory, that is called a breadth thrust.
It means a large number of stocks moved up after a bearish move. Since the stock market tends to rise over time, this a positive signal and may indicate that a bottom in the index is in and prices are heading higher overall.
When index prices and the indicator are moving in different directions, then the current index trend may lack strength. Bullish divergence occurs when the oscillator is rising while the index is falling. This indicates the index could head higher soon since more stocks are starting to advance.
Bearish divergence is when the index is rising and the indicator is falling. This means fewer stocks are keeping the advance going and prices may start to head lower.
Limitations of Using the McClellan Oscillator
The indicator tends to produce lots of signals. Breadth thrusts, divergence, and crossovers all occur with some frequency, but not all these signals will result in the price/index moving in the expected direction.
The indicator is prone to producing false signals and therefore should be used in conjunction with price action analysis and other technical indicators.
The indicator can also be quite choppy, moving between positive and negative territory rapidly. Such action indicates a choppy market, but this isn't evident until the indicator has made this whipsaw move a few times.
Good luck and a big thanks to Fadior!
[blackcat] L2 Ehlers Universal OscillatorLevel: 2
Background
John F. Ehlers introuced Universal Oscillator in Jan, 2015.
Function
In “Whiter Is Brighter”, in Jan 2015, John Ehlers presented a new indicator he calls the universal oscillator. It is based on his theory that market data resembles pink noise, or as he puts it, “noise with memory.” It could be used to create a short-term trading strategy. I modified it a little bit by changing the scan criteria that is met when the universal oscillator crosses above or below a pair of threshold values e.g. +/- 0.85. Therefore, a straightforward short-term (small time scale) countertrend system could, for example, use the following rules:
## Cover your short position and go long when the universal oscillator crosses below zero or a overbought/oversold threholds e.g. +/- 0.85; sell and go short when the universal oscillator crosses above zero or a overbought threhold e.g. + 0.85.
Since it is really a universal oscillator, the indicator can power up a trend-trading system just as easily:
## Buy when the long-term universal oscillator crosses above zero or a oversold threshold e.g. - 0.85.
## Sell when the long-term universal oscillator crosses below zero or a overbought threshold e.g. 0.85.
Key Signal
Universal --> Universal Oscillator signal
long ---> long entry signal
short ---> short entry signal
Pros and Cons
99% John F. Ehlers definition translation, even variable names are the same. This help readers who would like to use pine to read his book.
Remarks
The 83th script for Blackcat1402 John F. Ehlers Week publication.
Readme
In real life, I am a prolific inventor. I have successfully applied for more than 60 international and regional patents in the past 12 years. But in the past two years or so, I have tried to transfer my creativity to the development of trading strategies. Tradingview is the ideal platform for me. I am selecting and contributing some of the hundreds of scripts to publish in Tradingview community. Welcome everyone to interact with me to discuss these interesting pine scripts.
The scripts posted are categorized into 5 levels according to my efforts or manhours put into these works.
Level 1 : interesting script snippets or distinctive improvement from classic indicators or strategy. Level 1 scripts can usually appear in more complex indicators as a function module or element.
Level 2 : composite indicator/strategy. By selecting or combining several independent or dependent functions or sub indicators in proper way, the composite script exhibits a resonance phenomenon which can filter out noise or fake trading signal to enhance trading confidence level.
Level 3 : comprehensive indicator/strategy. They are simple trading systems based on my strategies. They are commonly containing several or all of entry signal, close signal, stop loss, take profit, re-entry, risk management, and position sizing techniques. Even some interesting fundamental and mass psychological aspects are incorporated.
Level 4 : script snippets or functions that do not disclose source code. Interesting element that can reveal market laws and work as raw material for indicators and strategies. If you find Level 1~2 scripts are helpful, Level 4 is a private version that took me far more efforts to develop.
Level 5 : indicator/strategy that do not disclose source code. private version of Level 3 script with my accumulated script processing skills or a large number of custom functions. I had a private function library built in past two years. Level 5 scripts use many of them to achieve private trading strategy.
[blackcat] L2 Moving Average OscillatorLevel: 2
Background
OsMA is an abbreviation for the term Moving Average Oscillator (MAO). The OsMA is a technical indicator that shows the difference between an oscillator and its moving average over a period of time. The MACD is the most commonly used oscillator in the OsMA display, although any oscillator can be used. The MACD has a built-in moving average, which is the signal line. The signal line is an intersection of the MACD line. The OsMA is the difference or the distance between these two lines, which are usually drawn as a histogram. It can provide both a trend confirmation and possible trading signals.
Function
L2 Moving Average Oscillator combines advantages of moving average and oscillator. It can effectively reduce statruation effect of an oscillator under extreme market conditions.
Key Signal
fastline --> MAO fast line
slowline --> MAO slow line
trendline --> more stable trend line of fastline
Pros and Cons
Pros:
1. filter out oscillator fake signal with moving average processing
2. it is an oscillator that can detect overbought and oversold zones effectively
Cons:
1. need to select proper trading pair and time frame
Remarks
My first MAO indicator
Readme
In real life, I am a prolific inventor. I have successfully applied for more than 60 international and regional patents in the past 12 years. But in the past two years or so, I have tried to transfer my creativity to the development of trading strategies. Tradingview is the ideal platform for me. I am selecting and contributing some of the hundreds of scripts to publish in Tradingview community. Welcome everyone to interact with me to discuss these interesting pine scripts.
The scripts posted are categorized into 5 levels according to my efforts or manhours put into these works.
Level 1 : interesting script snippets or distinctive improvement from classic indicators or strategy. Level 1 scripts can usually appear in more complex indicators as a function module or element.
Level 2 : composite indicator/strategy. By selecting or combining several independent or dependent functions or sub indicators in proper way, the composite script exhibits a resonance phenomenon which can filter out noise or fake trading signal to enhance trading confidence level.
Level 3 : comprehensive indicator/strategy. They are simple trading systems based on my strategies. They are commonly containing several or all of entry signal, close signal, stop loss, take profit, re-entry, risk management, and position sizing techniques. Even some interesting fundamental and mass psychological aspects are incorporated.
Level 4 : script snippets or functions that do not disclose source code. Interesting element that can reveal market laws and work as raw material for indicators and strategies. If you find Level 1~2 scripts are helpful, Level 4 is a private version that took me far more efforts to develop.
Level 5 : indicator/strategy that do not disclose source code. private version of Level 3 script with my accumulated script processing skills or a large number of custom functions. I had a private function library built in past two years. Level 5 scripts use many of them to achieve private trading strategy.
Indicator: Vervoort Smoothed Oscillator [LazyBear]This is Mr. Sylvian Vervoort's take on improving some well-known indicators (%B and Stoch) using smoothing techniques. A combination of TEMA and WMA does a nice job smoothing out %B, derived from zero-lag “Rainbow” data series. The same Rainbow series, averaged with the typical price, smooth the Stochastic K oscillator to produce slowStoch.
Vervroot's strategy for this oscillator (detailed explanation in the reference material below):
- It must be bullish for a buy signal and bearish for a sell signal. This means that both the oscillators must be moving up or down.
- Use the oscillators for detecting divergences. Divergence even in one is still valid.
- Stoch crossing 50 is a good confirmation signal. Momentum usually is an excellent leading indicator, so keep an eye on Stoch.
More info:
www.traders.com
www.scribd.com
Complete list of my indicators (Check the comments, I keep the list updated there):
Momentum Shift Oscillator (MSO) [SharpStrat]Momentum Shift Oscillator (MSO)
The Momentum Shift Oscillator (MSO) is a custom-built oscillator that combines the best parts of RSI, ROC, and MACD into one clean, powerful indicator. Its goal is to identify when momentum shifts are happening in the market, filtering out noise that a single momentum tool might miss.
Why MSO?
Most traders rely on just one momentum indicator like RSI, MACD, or ROC. Each has strengths, but also weaknesses:
RSI → great for overbought/oversold, but often lags in strong trends.
ROC (Rate of Change) → captures price velocity, but can be too noisy.
MACD Histogram → shows trend strength shifts, but reacts slowly at times.
By blending all three (with adjustable weights), MSO gives a balanced view of momentum. It captures trend strength, velocity, and exhaustion in one oscillator.
How MSO Works
Inputs:
RSI, ROC, and MACD Histogram are calculated with user-defined lengths.
Each is normalized (so they share the same scale of -100 to +100).
You can set weights for RSI, ROC, and MACD to emphasize different components.
The components are blended into a single oscillator value.
Smoothing (SMA, EMA, or WMA) is applied.
MSO plots as a smooth line, color-coded by slope (green rising, red falling).
Overbought and oversold levels are plotted (default: +60 / -60).
A zero line helps identify bullish vs bearish momentum shifts.
How to trade with MSO
Zero line crossovers → crossing above zero suggests bullish momentum; crossing below zero suggests bearish momentum.
Overbought and oversold zones → values above +60 may indicate exhaustion in bullish moves; values below -60 may signal exhaustion in bearish moves.
Slope of the line → a rising line shows strengthening momentum, while a falling line signals fading momentum.
Divergences → if price makes new highs or lows but MSO does not, it can point to a possible reversal.
Why MSO is Unique
Combines trend + momentum + velocity into one view.
Filters noise better than standalone RSI/MACD.
Adapts to both trend-following and mean-reversion styles.
Can be used across any timeframe for confirmation.
Chaikin Bull-Power OscillatorThis indicator is given with much love and care to the community to help you in your trading operations.
How to use the "Chaikin-Bull-PW" Indicator
The Chaikin-Bull-PW is an oscillator based on the Accumulation/Distribution (AD) line smoothed by different methods, called here the "Hull Chaikin Oscillator." It compares two smoothed averages of the AD line — a short period and a long period — to indicate the strength and direction of buying and selling pressure in the market.
Adjustable Parameters:
Short Period: Number of bars used to calculate the short smoothed average of the AD line. Shorter periods make the indicator more sensitive.
Long Period: Number of bars used to calculate the long smoothed average of the AD line. Longer periods smooth the indicator more.
Background Offset: Controls the offset of the chart’s background color.
Smoothing Type: Choose the smoothing method for the AD line among HMA, SMA, SMMA, EMA, WMA, and JMA. This affects how the averages are calculated and how the oscillator responds to price.
Indicator Interpretation:
The oscillator is the difference between the short and long smoothed averages of the AD line.
When the oscillator is above zero (green), it indicates increasing buying pressure, suggesting an uptrend.
When the oscillator is below zero (red), it indicates increasing selling pressure, suggesting a downtrend.
The zero line acts as a reference for trend changes.
Usage Suggestions:
Use the oscillator crossing the zero line to identify potential entry or exit points.
Combine with other indicators or chart analysis to confirm signals.
Adjust the periods and smoothing type to fit your asset and timeframe.
Volume & Trend Confluence OscillatorVolume & Trend Confluence Oscillator (VTCO)
Overview:
The Volume & Trend Confluence Oscillator (VTCO) is a technical analysis tool designed to help traders assess market conditions by integrating volume analysis, momentum, and trend direction into a single oscillator. This indicator provides traders with additional confirmation when evaluating potential trade entries and exits.
Key Features:
Volume Analysis: Calculates a Z-score to detect unusual trading activity.
Momentum Measurement: Evaluates the rate of price change to gauge market velocity.
Trend Confirmation: Utilizes an Exponential Moving Average (EMA) to assess overall market direction.
Signal Filtering: Incorporates minimum movement thresholds and a confirmation period to reduce false signals.
Visual Enhancements: Background shading indicates trend direction, and buy/sell markers highlight key signals.
How It Works:
The VTCO applies a volume multiplier to momentum readings when volume activity significantly deviates from its historical norm. Additionally, it prioritizes momentum moves that align with the prevailing market trend. A smoothing mechanism refines the oscillator’s signal line, ensuring a more stable and actionable output. The indicator generates alerts when key conditions are met, assisting traders in identifying potential trend shifts.
Signal Generation:
Buy Signal: Triggered when the oscillator crosses above zero after an oversold condition, ideally within an uptrend.
Sell Signal: Triggered when the oscillator crosses below zero after an overbought condition, ideally within a downtrend.
Alerts: Configurable alerts notify traders when key market conditions are met.
Usage Considerations:
Works effectively across various timeframes but may provide more reliable signals on higher timeframes.
Best utilized in conjunction with additional technical indicators and risk management strategies.
No indicator guarantees future performance; proper analysis and trade management remain essential.
Disclaimer:
This indicator is provided for educational purposes only and should not be considered financial advice. Trading involves risk, and past performance is not indicative of future results. Always conduct independent analysis before making trading decisions.
MultiLayer Awesome Oscillator Saucer Strategy [Skyrexio]Overview
MultiLayer Awesome Oscillator Saucer Strategy leverages the combination of Awesome Oscillator (AO), Williams Alligator, Williams Fractals and Exponential Moving Average (EMA) to obtain the high probability long setups. Moreover, strategy uses multi trades system, adding funds to long position if it considered that current trend has likely became stronger. Awesome Oscillator is used for creating signals, while Alligator and Fractal are used in conjunction as an approximation of short-term trend to filter them. At the same time EMA (default EMA's period = 100) is used as high probability long-term trend filter to open long trades only if it considers current price action as an uptrend. More information in "Methodology" and "Justification of Methodology" paragraphs. The strategy opens only long trades.
Unique Features
No fixed stop-loss and take profit: Instead of fixed stop-loss level strategy utilizes technical condition obtained by Fractals and Alligator to identify when current uptrend is likely to be over (more information in "Methodology" and "Justification of Methodology" paragraphs)
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Multilayer trades opening system: strategy uses only 10% of capital in every trade and open up to 5 trades at the same time if script consider current trend as strong one.
Short and long term trend trade filters: strategy uses EMA as high probability long-term trend filter and Alligator and Fractal combination as a short-term one.
Methodology
The strategy opens long trade when the following price met the conditions:
1. Price closed above EMA (by default, period = 100). Crossover is not obligatory.
2. Combination of Alligator and Williams Fractals shall consider current trend as an upward (all details in "Justification of Methodology" paragraph)
3. Awesome Oscillator shall create the "Saucer" long signal (all details in "Justification of Methodology" paragraph). Buy stop order is placed one tick above the candle's high of last created "Saucer signal".
4. If price reaches the order price, long position is opened with 10% of capital.
5. If currently we have opened position and price creates and hit the order price of another one "Saucer" signal another one long position will be added to the previous with another one 10% of capital. Strategy allows to open up to 5 long trades simultaneously.
6. If combination of Alligator and Williams Fractals shall consider current trend has been changed from up to downtrend, all long trades will be closed, no matter how many trades has been opened.
Script also has additional visuals. If second long trade has been opened simultaneously the Alligator's teeth line is plotted with the green color. Also for every trade in a row from 2 to 5 the label "Buy More" is also plotted just below the teeth line. With every next simultaneously opened trade the green color of the space between teeth and price became less transparent.
Strategy settings
In the inputs window user can setup strategy setting: EMA Length (by default = 100, period of EMA, used for long-term trend filtering EMA calculation). User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Let's go through all concepts used in this strategy to understand how they works together. Let's start from the easies one, the EMA. Let's briefly explain what is EMA. The Exponential Moving Average (EMA) is a type of moving average that gives more weight to recent prices, making it more responsive to current price changes compared to the Simple Moving Average (SMA). It is commonly used in technical analysis to identify trends and generate buy or sell signals. It can be calculated with the following steps:
1.Calculate the Smoothing Multiplier:
Multiplier = 2 / (n + 1), Where n is the number of periods.
2. EMA Calculation
EMA = (Current Price) × Multiplier + (Previous EMA) × (1 − Multiplier)
In this strategy uses EMA an initial long term trend filter. It allows to open long trades only if price close above EMA (by default 50 period). It increases the probability of taking long trades only in the direction of the trend.
Let's go to the next, short-term trend filter which consists of Alligator and Fractals. Let's briefly explain what do these indicators means. The Williams Alligator, developed by Bill Williams, is a technical indicator designed to spot trends and potential market reversals. It uses three smoothed moving averages, referred to as the jaw, teeth, and lips:
Jaw (Blue Line): The slowest of the three, based on a 13-period smoothed moving average shifted 8 bars ahead.
Teeth (Red Line): The medium-speed line, derived from an 8-period smoothed moving average shifted 5 bars forward.
Lips (Green Line): The fastest line, calculated using a 5-period smoothed moving average shifted 3 bars forward.
When these lines diverge and are properly aligned, the "alligator" is considered "awake," signaling a strong trend. Conversely, when the lines overlap or intertwine, the "alligator" is "asleep," indicating a range-bound or sideways market. This indicator assists traders in identifying when to act on or avoid trades.
The Williams Fractals, another tool introduced by Bill Williams, are used to pinpoint potential reversal points on a price chart. A fractal forms when there are at least five consecutive bars, with the middle bar displaying the highest high (for an up fractal) or the lowest low (for a down fractal), relative to the two bars on either side.
Key Points:
Up Fractal: Occurs when the middle bar has a higher high than the two preceding and two following bars, suggesting a potential downward reversal.
Down Fractal: Happens when the middle bar shows a lower low than the surrounding two bars, hinting at a possible upward reversal.
Traders often combine fractals with other indicators to confirm trends or reversals, improving the accuracy of trading decisions.
How we use their combination in this strategy? Let’s consider an uptrend example. A breakout above an up fractal can be interpreted as a bullish signal, indicating a high likelihood that an uptrend is beginning. Here's the reasoning: an up fractal represents a potential shift in market behavior. When the fractal forms, it reflects a pullback caused by traders selling, creating a temporary high. However, if the price manages to return to that fractal’s high and break through it, it suggests the market has "changed its mind" and a bullish trend is likely emerging.
The moment of the breakout marks the potential transition to an uptrend. It’s crucial to note that this breakout must occur above the Alligator's teeth line. If it happens below, the breakout isn’t valid, and the downtrend may still persist. The same logic applies inversely for down fractals in a downtrend scenario.
So, if last up fractal breakout was higher, than Alligator's teeth and it happened after last down fractal breakdown below teeth, algorithm considered current trend as an uptrend. During this uptrend long trades can be opened if signal was flashed. If during the uptrend price breaks down the down fractal below teeth line, strategy considered that uptrend is finished with the high probability and strategy closes all current long trades. This combination is used as a short term trend filter increasing the probability of opening profitable long trades in addition to EMA filter, described above.
Now let's talk about Awesome Oscillator's "Sauser" signals. Briefly explain what is the Awesome Oscillator. The Awesome Oscillator (AO), created by Bill Williams, is a momentum-based indicator that evaluates market momentum by comparing recent price activity to a broader historical context. It assists traders in identifying potential trend reversals and gauging trend strength.
AO = SMA5(Median Price) − SMA34(Median Price)
where:
Median Price = (High + Low) / 2
SMA5 = 5-period Simple Moving Average of the Median Price
SMA 34 = 34-period Simple Moving Average of the Median Price
Now we know what is AO, but what is the "Saucer" signal? This concept was introduced by Bill Williams, let's briefly explain it and how it's used by this strategy. Initially, this type of signal is a combination of the following AO bars: we need 3 bars in a row, the first one shall be higher than the second, the third bar also shall be higher, than second. All three bars shall be above the zero line of AO. The price bar, which corresponds to third "saucer's" bar is our signal bar. Strategy places buy stop order one tick above the price bar which corresponds to signal bar.
After that we can have the following scenarios.
Price hit the order on the next candle in this case strategy opened long with this price.
Price doesn't hit the order price, the next candle set lower low. If current AO bar is increasing buy stop order changes by the script to the high of this new bar plus one tick. This procedure repeats until price finally hit buy order or current AO bar become decreasing. In the second case buy order cancelled and strategy wait for the next "Saucer" signal.
If long trades has been opened strategy use all the next signals until number of trades doesn't exceed 5. All trades are closed when the trend changes to downtrend according to combination of Alligator and Fractals described above.
Why we use "Saucer" signals? If AO above the zero line there is a high probability that price now is in uptrend if we take into account our two trend filters. When we see the decreasing bars on AO and it's above zero it's likely can be considered as a pullback on the uptrend. When we see the stop of AO decreasing and the first increasing bar has been printed there is a high probability that this local pull back is finished and strategy open long trade in the likely direction of a main trend.
Why strategy use only 10% per signal? Sometimes we can see the false signals which appears on sideways. Not risking that much script use only 10% per signal. If the first long trade has been open and price continue going up and our trend approximation by Alligator and Fractals is uptrend, strategy add another one 10% of capital to every next saucer signal while number of active trades no more than 5. This capital allocation allows to take part in long trades when current uptrend is likely to be strong and use only 10% of capital when there is a high probability of sideways.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.11.25. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 10%
Maximum Single Position Loss: -5.10%
Maximum Single Profit: +22.80%
Net Profit: +2838.58 USDT (+28.39%)
Total Trades: 107 (42.99% win rate)
Profit Factor: 3.364
Maximum Accumulated Loss: 373.43 USDT (-2.98%)
Average Profit per Trade: 26.53 USDT (+2.40%)
Average Trade Duration: 78 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 3h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
Rikki's DikFat Bull/Bear OscillatorRikki's DikFat Bull/Bear Oscillator - Trend Identification & Candle Colorization
Rikki's DikFat Bull/Bear Oscillator is a powerful visual tool designed to help traders easily identify bullish and bearish trends on the chart. By analyzing market momentum using specific elements of the Commodity Channel Index (CCI) , this indicator highlights key trend reversals and continuations with color-coded candles, allowing you to quickly spot areas of opportunity.
How It Works
At the heart of this indicator is the Commodity Channel Index (CCI) , a popular momentum-based oscillator. The CCI measures the deviation of price from its average over a specified period (default is 30 bars). This helps identify whether the market is overbought, oversold, or trending.
Here's how the indicator interprets the CCI:
Bullish Trend (Green Candles) : When the market is showing signs of continued upward momentum, the candles turn green. This happens when the current CCI is less than 200 and moves from a value greater than 100 with velocity, signaling that the upward trend is still strong, and the market is likely to continue rising. Green candles indicate bullish price action , suggesting it might be a good time to look for buying opportunities or hold your current long position.
Bearish Trend (Red Candles) : Conversely, when the CCI shows signs of downward momentum (both the current and previous CCI readings are negative), the candles turn red. This signals that the market is likely in a bearish trend , with downward price action expected to continue. Red candles are a visual cue to consider selling opportunities or to stay out of the market if you're risk-averse.
How to Use It
Bullish Market : When you see green candles, the market is in a bullish phase. This suggests that prices are moving upward, and you may want to focus on buying signals . Green candles are your visual confirmation of a strong upward trend.
Bearish Market : When red candles appear, the market is in a bearish phase. This indicates that prices are moving downward, and you may want to consider selling or staying out of long positions. Red candles signal that downward pressure is likely to continue.
Why It Works
This indicator uses momentum to identify shifts in trend. By tracking the movement of the CCI , the oscillator detects whether the market is trending strongly or simply moving in a sideways range. The color changes in the candles help you quickly visualize where the market momentum is headed, giving you an edge in determining potential buy or sell opportunities.
Clear Visual Signals : The green and red candles make it easy to follow market trends, even for beginners.
Identifying Trend Continuations : The oscillator helps spot ongoing trends, whether bullish or bearish, so you can align your trades with the prevailing market direction.
Quick Decision-Making : By using color-coded candles, you can instantly know whether to consider entering a long (buy) or short (sell) position without needing to dive into complex indicators.
NOTES This indicator draws and colors it's own candles bodies, wicks and borders. In order to have the completed visualization of red and green trends, you may need to adjust your TradingView chart settings to turn off or otherwise modify chart candles.
Conclusion
With Rikki's DikFat Bull/Bear Oscillator , you have an intuitive and easy-to-read tool that helps identify bullish and bearish trends based on proven momentum indicators. Whether you’re a novice or an experienced trader, this oscillator allows you to stay in tune with the market’s direction and make more informed, confident trading decisions.
Make sure to use this indicator in conjunction with your own trading strategy and risk management plan to maximize your trading potential and limit your risks.
Regularized-Moving-Average Oscillator SuiteThe Regularized-MA Oscillator Suite is a versatile indicator that transforms any moving average into an oscillator. It comprises up to 13 different moving average types, including KAMA, T3, and ALMA. This indicator serves as a valuable tool for both trend following and mean reversion strategies, providing traders and investors with enhanced insights into market dynamics.
Methodology:
The Regularized MA Oscillator Suite calculates the moving average (MA) based on user-defined parameters such as length, moving average type, and custom smoothing factors. It then derives the mean and standard deviation of the MA using a normalized period. Finally, it computes the Z-Score by subtracting the mean from the MA and dividing it by the standard deviation.
KAMA (Kaufman's Adaptive Moving Average):
KAMA is a unique moving average type that dynamically adjusts its smoothing period based on market volatility. It adapts to changing market conditions, providing a smoother response during periods of low volatility and a quicker response during periods of high volatility. This allows traders to capture trends effectively while reducing noise.
T3 (Tillson's Exponential Moving Average):
T3 is an exponential moving average that incorporates additional smoothing techniques to reduce lag and provide a more responsive indicator. It aims to maintain a balance between responsiveness and smoothness, allowing traders to identify trend reversals with greater accuracy.
ALMA (Arnaud Legoux Moving Average):
ALMA is a moving average type that utilizes a combination of linear regression and exponential moving average techniques. It offers a unique way of calculating the moving average by providing a smoother and more accurate representation of price trends. ALMA reduces lag and noise, enabling traders to identify trend changes and potential entry or exit points more effectively.
Z-Score:
The Z-Score calculation in the Regularized-MA Oscillator Suite standardizes the values of the moving average. It measures the deviation of each data point from the mean in terms of standard deviations. By normalizing the moving average through the Z-Score, the indicator enables traders to assess the relative position of price in relation to its mean and volatility. This information can be valuable for identifying overbought and oversold conditions, as well as potential trend reversals.
Utility:
The Regularized-MA Oscillator Suite with its unique moving average types and Z-Score calculation offers traders and investors powerful analytical tools. It can be used for trend following strategies by analyzing the oscillator's position relative to the midline. Traders can also employ it as a mean reversion tool by identifying peak values above user-defined deviations. These features assist in identifying potential entry and exit points, enhancing trading decisions and market analysis.
Key Features:
Variety of 13 MA types.
Potential reversal point bubbles.
Bar coloring methods - Trend (Midline cross), Extremities, Reversions, Slope
Example Charts:
Normalized KAMA Oscillator | Ikke OmarThis indicator demonstrates the creation of a normalized KAMA (Kaufman Adaptive Moving Average) oscillator with a table display. I will explain how the code works, providing a step-by-step breakdown. This is personally made by me:)
Input Parameters:
fast_period and slow_period: Define the periods for calculating the KAMA.
er_period: Specifies the period for calculating the Efficiency Ratio.
norm_period: Determines the lookback period for normalizing the oscillator.
Efficiency Ratio (ER) Calculation:
Measures the efficiency of price changes over a specified period.
Calculated as the ratio of the absolute price change to the total price volatility.
Smoothing Constant Calculation:
Determines the smoothing constant (sc) based on the Efficiency Ratio (ER) and the fast and slow periods.
The formula accounts for the different periods to calculate an appropriate smoothing factor.
KAMA Calculation:
Uses the Exponential Moving Average (EMA) and the smoothing constant to compute the KAMA.
Combines the fast EMA and the adjusted price change to adapt to market conditions.
Oscillator Normalization:
Normalizes the oscillator values to a range between -0.5 and 0.5 for better visualization and comparison.
Determines the highest and lowest values of the KAMA within the specified normalization period.
Transforms the KAMA values into a normalized range.
By incorporating the Efficiency Ratio, smoothing constant, and normalization techniques, the indicator actually allows for the identification of trends on different timeframes, even in extreme market conditions.
The normalization makes it much more adaptive than if you were to just use a normal KAMA line. This way you actually get a lot more data by looking at the histogram, rather than just the KAMA line.
I essentially made the KAMA into an oscillator! Please ask if you want me to code another indicator
I hope you enjoyed this.
Please ask if you have any questions<3
ATR Oscillator - Index (Average True range Oscillator)The purpose of converting the ATR value indicator to an oscillator;
It is known that the ATR value is not between the two specified values. So it is not compressed between 0 and 100 like RSI and %B etc. Therefore, conditions such as "A condition if ATR value is X, B condition if ATR value is Y" cannot be created. In order to create these conditions, the max and min value range of the ATR value must be determined. This indicator converts the ATR values into a percentage number according to the maximum and minimum ATR values in the period you will choose. Max value is 100, min value is 0. The considered ATR value, on the other hand, corresponds to the % of the difference between the max and min value in the selected period.
In this way, conditions such as "If the ATR Oscillator value is greater than 10 or 20 or 30" can now be created, or the value of another indicator can be calculated based on the ATR Oscillator value. For example; Let's say we want the standard deviation of BBand to change according to the value of the ATR Oscillator. If BBand Standard Deviation is 3 if ATRO value is 100, BBand Standard Deviation is 2 if ATRO value is 0, and BBand Standard Deviation is 2.5 when ATRO value is 50;
We can encode it as BBand_Std_Dev=((ATRO*0.01)+2 )
If the ATRO value is between .... and ...., you can make improvements such as plot color X.
Bollinger Bands Breakout Oscillator [LuxAlgo]The Bollinger Bands Breakout Oscillator is an oscillator returning two series quantifying the significance of breakouts between the price and the extremities of the Bollinger Bands indicator.
Settings
Length: Period of the Bollinger Bands indicator
Mult: Controls the width of the Bollinger Bands
Src: Input source of the indicator
Usage
Each series is calculated by summing the distance between price and a respective Bollinger Bands extremity in the case price is outside this extremity and divided by the sum of the absolute distance between price and a respective extremity. This sum is done over the most recent Length bars.
Bullish breakouts are represented by the green areas of the indicator, while bearish breakouts are represented by the red areas of the indicator.
The oscillator can determine the presence of an uptrend when the bullish area is superior to the bearish area, while a downtrend is indicated by a bearish area being superior to the bullish one. The significance of the breakout is determined by the amplitude of each area, with higher amplitudes indicating more significant breakouts or strong trends.
Using higher Mult values would naturally return wider bands, which would induce less frequent breakouts, this would be highlighted by the oscillator.
In the chart above we can see the oscillator using a multiplicative factor of 2.
[Unxi]McClellan Oscillator for TECDAX [modified]This version is for use with the German TecDax index only!
About McClellan Oscillator
Developed by Sherman and Marian McClellan, the McClellan Oscillator is a breadth indicator derived from Net Advances, the number of advancing issues less the number of declining issues. Subtracting the 39-day exponential moving average of Net Advances from the 19-day exponential moving average of Net Advances forms the oscillator.
As the formula reveals, the McClellan Oscillator is a momentum indicator that works similar to MACD .
McClellan Oscillator signals can be generated with breadth thrusts, centerline crossovers, overall levels and divergences.
About my version
This version here is a modification, though:
- It can only be used on the German TECDAX index
- It only considers the TECDAX stocks
- The data window will provide a summary about rising and declining stocks
- The data window will output the last change for each of the 30 stocks
The script is pretty slow because it has to calculate the change for each bar individually (instead of receiving a complete calculation from the stock exchange).
This script will work on any time period. Just use whatever timeperiod you are comfortable with, the indicator will automatically adjust accordingly. It is recommended to use it with timeperiod = 1d, though.
DISCLAIMER
This script was mainly written for educational purposes (training myself how to write custom indicatotors).
As you can see, the code is really messy. Feel free to provide your feedback in the comments!
Credits
Based on the simple version of aftabmk
You can find the original version by searching for McClellan Oscillator for nifty 50.
Also got some inspiration from lazybear's version and from danarn's "Crypto McClellan Oscillator".