Z-Score Adaptive Connors RSIZ-Score Adaptive Connors RSI blends the classic three-component Connors RSI (RSI, Up/Down streak RSI, and Percentile Rank of 1-bar ROC) with a dynamic z-score filter that distinguishes trending vs. mean-reverting market regimes.
When the indicator detects an extreme deviation (|z-score| > threshold) , it switches to “trending” mode and tightens entry thresholds for capturing momentum. When markets are in a more neutral regime, it reverts to wider thresholds, hunting for overbought/oversold reversals.
Key Features
Connors RSI Core: Combines price momentum, streak measurements, and velocity for a robust baseline oscillator. Z-Score Regime Filter: Computes the z-score of the Connors RSI over a lookback window to adapt your trading style to trending vs. reverting environments.
Dynamic Thresholds: Separate user-configurable thresholds for trending (“tight” entries) and mean-reverting (“wide” entries) scenarios.
Inputs & Parameters
Connors RSI Settings
RSI Source: Price series for RSI calculation (default: Close)
RSI Length: Period for price‐change RSI (default: 24)
Up/Down Length: Period for streak RSI (default: 20)
ROC Length: Period for percentile‐rank of 1-bar return (default: 75)
Z-Score Filter
Lookback: Number of bars to compute mean and standard deviation of Connors RSI (default: 14)
Threshold: Minimum |z-score| to enter “trending” mode (default: 1.5)
Entry Thresholds
Trending Long/Short: Upper and lower RSI Thresholds when trending
Reverting Long/Short: Upper and lower RSI Thresholds when reverting
Komut dosyalarını "roc" için ara
Canuck Trading IndicatorOverview
The Canuck Trading Indicator is a versatile, overlay-based technical analysis tool designed to assist traders in identifying potential trading opportunities across various timeframes and market conditions. By combining multiple technical indicators—such as RSI, Bollinger Bands, EMAs, VWAP, MACD, Stochastic RSI, ADX, HMA, and candlestick patterns—the indicator provides clear visual signals for bullish and bearish entries, breakouts, long-term trends, and options strategies like cash-secured puts, straddles/strangles, iron condors, and short squeezes. It also incorporates 20-day and 200-day SMAs to detect Golden/Death Crosses and price positioning relative to these moving averages. A dynamic table displays key metrics, and customizable alerts help traders stay informed of market conditions.
Key Features
Multi-Timeframe Adaptability: Automatically adjusts parameters (e.g., ATR multiplier, ADX period, HMA length) based on the chart's timeframe (minute, hourly, daily, weekly, monthly) for optimal performance.
Comprehensive Signal Generation: Identifies short-term entries, breakouts, long-term bullish trends, and options strategies using a combination of momentum, trend, volatility, and candlestick patterns.
Candlestick Pattern Detection: Recognizes bullish/bearish engulfing, hammer, shooting star, doji, and strong candles for precise entry/exit signals.
Moving Average Analysis: Plots 20-day and 200-day SMAs, detects Golden/Death Crosses, and evaluates price position relative to these averages.
Dynamic Table: Displays real-time metrics, including zone status (bullish, bearish, neutral), RSI, MACD, Stochastic RSI, short/long-term trends, candlestick patterns, ADX, ROC, VWAP slope, and MA positioning.
Customizable Alerts: Over 20 alert conditions for entries, exits, overbought/oversold warnings, and MA crosses, with actionable messages including ticker, price, and suggested strategies.
Visual Clarity: Uses distinct shapes, colors, and sizes to plot signals (e.g., green triangles for bullish entries, red triangles for bearish entries) and overlays key levels like EMA, VWAP, Bollinger Bands, support/resistance, and HMA.
Options Strategy Signals: Suggests opportunities for selling cash-secured puts, straddles/strangles, iron condors, and capitalizing on short squeezes.
How to Use
Add to Chart: Apply the indicator to any TradingView chart by selecting "Canuck Trading Indicator" from the Pine Script library.
Interpret Signals:
Bullish Signals: Green triangles (short-term entry), lime diamonds (breakout), blue circles (long-term entry).
Bearish Signals: Red triangles (short-term entry), maroon diamonds (breakout).
Options Strategies: Purple squares (cash-secured puts), yellow circles (straddles/strangles), orange crosses (iron condors), white arrows (short squeezes).
Exits: X-cross shapes in corresponding colors indicate exit signals.
Monitor: Gray circles suggest holding cash or monitoring for setups.
Review Table: Check the top-right table for real-time metrics, including zone status, RSI, MACD, trends, and MA positioning.
Set Alerts: Configure alerts for specific signals (e.g., "Short-Term Bullish Entry" or "Golden Cross") to receive notifications via TradingView.
Adjust Inputs: Customize input parameters (e.g., RSI period, EMA length, ATR period) to suit your trading style or market conditions.
Input Parameters
The indicator offers a wide range of customizable inputs to fine-tune its behavior:
RSI Period (default: 14): Length for RSI calculation.
RSI Bullish Low/High (default: 35/70): RSI thresholds for bullish signals.
RSI Bearish High (default: 65): RSI threshold for bearish signals.
EMA Period (default: 15): Main EMA length (15 for day trading, 50 for swing).
Short/Long EMA Length (default: 3/20): For momentum oscillator.
T3 Smoothing Length (default: 5): Smooths momentum signals.
Long-Term EMA/RSI Length (default: 20/15): For long-term trend analysis.
Support/Resistance Lookback (default: 5): Periods for support/resistance levels.
MACD Fast/Slow/Signal (default: 12/26/9): MACD parameters.
Bollinger Bands Period/StdDev (default: 15/2): BB settings.
Stochastic RSI Period/Smoothing (default: 14/3/3): Stochastic RSI settings.
Uptrend/Short-Term/Long-Term Lookback (default: 2/2/5): Candles for trend detection.
ATR Period (default: 14): For volatility and price targets.
VWAP Sensitivity (default: 0.1%): Threshold for VWAP-based signals.
Volume Oscillator Period (default: 14): For volume surge detection.
Pattern Detection Threshold (default: 0.3%): Sensitivity for candlestick patterns.
ROC Period (default: 3): Rate of change for momentum.
VWAP Slope Period (default: 5): For VWAP trend analysis.
TradingView Publishing Compliance
Originality: The Canuck Trading Indicator is an original script, combining multiple technical indicators and custom logic to provide unique trading signals. It does not replicate existing public scripts.
No Guaranteed Profits: This indicator is a tool for technical analysis and does not guarantee profits. Trading involves risks, and users should conduct their own research and risk management.
Clear Instructions: The description and usage guide are detailed and accessible, ensuring users understand how to apply the indicator effectively.
No External Dependencies: The script uses only built-in Pine Script functions (e.g., ta.rsi, ta.ema, ta.vwap) and requires no external libraries or data sources.
Performance: The script is optimized for performance, using efficient calculations and adaptive parameters to minimize lag on various timeframes.
Visual Clarity: Signals are plotted with distinct shapes and colors, and the table provides a concise summary of market conditions, enhancing usability.
Limitations and Risks
Market Conditions: The indicator may generate false signals in choppy or low-liquidity markets. Always confirm signals with additional analysis.
Timeframe Sensitivity: Performance varies by timeframe; test settings on your preferred chart (e.g., 5-minute for day trading, daily for swing trading).
Risk Management: Use stop-losses and position sizing to manage risk, as suggested in alert messages (e.g., "Stop -20%").
Options Trading: Options strategies (e.g., straddles, iron condors) carry unique risks; consult a financial advisor before trading.
Feedback and Support
For questions, suggestions, or bug reports, please leave a comment on the TradingView script page or contact the author via TradingView. Your feedback helps improve the indicator for the community.
Disclaimer
The Canuck Trading Indicator is provided for educational and informational purposes only. It is not financial advice. Trading involves significant risks, and past performance is not indicative of future results. Always perform your own due diligence and consult a qualified financial advisor before making trading decisions.
Combined Up down with volumeIndicator Description: "Combined Up/Down with Volume"
This Pine Script indicator combines price momentum and volume spikes to identify potential trend reversals or breakouts. It checks two key conditions:
Price Movement – A minimum percentage change (% check) in closing price.
Volume Spike – Trading volume exceeding a user-defined threshold (Volume above).
How It Works
1. Price Momentum Check
Calculates the 1-period Rate of Change (ROC) of the closing price.
Triggers when the absolute ROC ≥ % check (e.g., 5%).
2. Volume Spike Check
Compares current volume against a threshold (e.g., 1,000,000).
Triggers when volume exceeds this level.
3. Signal Plotting
If use = true:
Plots a purple circle below the bar when both conditions are met.
If use = false:
Plots a circle below the bar for price momentum alone.
Plots a circle (default position) for high volume alone.
Math by Thomas Order Blocks🔥 Description:
🚀 Math by Thomas Order Blocks is a precision tool for Smart Money Concept (SMC) and price action traders, designed to automatically detect Bullish and Bearish Order Blocks (OBs). It highlights key institutional trading zones where large orders are placed, helping you identify potential reversal and continuation areas.
⚙️ Key Features:
✅ Automatic Order Block Detection:
Detects Bearish OBs when price sharply reverses after a significant bullish move.
Identifies Bullish OBs following a sharp reversal from a bearish push.
✅ Dynamic Sensitivity & Volume Filter:
Sensitivity Control: Customize OB detection precision.
Minimum Volume Filter: Ensures OBs form only on significant volume spikes.
✅ Flexible OB Mitigation:
Choose between "Close" or "Wick" mitigation for OB invalidation.
Mitigated OBs are automatically removed from the chart.
✅ Adaptive Swing & Price Change Detection:
Adjusts OB detection logic based on timeframe for flexibility.
Uses adaptive rate of change (ROC) calculations to spot momentum shifts.
✅ Visual Customization:
OBs are displayed as shaded boxes with configurable background and border colors.
Bullish OBs = Green (support zones).
Bearish OBs = Red (resistance zones).
✅ Alerts for OB Touch:
Get real-time alerts when price touches a Bullish or Bearish OB.
Helps you catch potential reversal points without constant chart monitoring.
📊 How It Works:
Bullish OB Logic:
Detected when price crosses over a positive momentum threshold (ROC) with high volume.
Plots a green OB box from the low of the swing candle.
Bearish OB Logic:
Identified when price crosses under a negative momentum threshold with high volume.
Plots a red OB box from the high of the swing candle.
Mitigation Rules:
OBs are removed once invalidated by price action based on your chosen mitigation type (Close or Wick).
📈 Usage Tips:
Use Bullish OBs as potential support areas for buy entries.
Treat Bearish OBs as resistance zones for sell setups.
Combine with Fair Value Gaps, volume profile, and RSI for confluence.
Adjust sensitivity and volume filters to fine-tune OB detection.
✅ Chart Example:
The script displays:
Bullish OBs in green, marking potential support zones.
Bearish OBs in red, indicating resistance zones.
Real-time alerts when price touches OBs.
🔥 Why Use This Indicator?
Designed for intraday and swing traders aiming to identify institutional trading zones.
Helps you spot reversal and continuation setups with precision.
Ideal for Smart Money Concept (SMC), price action, and order flow traders.
Fuzzy SMA with DCTI Confirmation[FibonacciFlux]FibonacciFlux: Advanced Fuzzy Logic System with Donchian Trend Confirmation
Institutional-grade trend analysis combining adaptive Fuzzy Logic with Donchian Channel Trend Intensity for superior signal quality
Conceptual Framework & Research Foundation
FibonacciFlux represents a significant advancement in quantitative technical analysis, merging two powerful analytical methodologies: normalized fuzzy logic systems and Donchian Channel Trend Intensity (DCTI). This sophisticated indicator addresses a fundamental challenge in market analysis – the inherent imprecision of trend identification in dynamic, multi-dimensional market environments.
While traditional indicators often produce simplistic binary signals, markets exist in states of continuous, graduated transition. FibonacciFlux embraces this complexity through its implementation of fuzzy set theory, enhanced by DCTI's structural trend confirmation capabilities. The result is an indicator that provides nuanced, probabilistic trend assessment with institutional-grade signal quality.
Core Technological Components
1. Advanced Fuzzy Logic System with Percentile Normalization
At the foundation of FibonacciFlux lies a comprehensive fuzzy logic system that transforms conventional technical metrics into degrees of membership in linguistic variables:
// Fuzzy triangular membership function with robust error handling
fuzzy_triangle(val, left, center, right) =>
if na(val)
0.0
float denominator1 = math.max(1e-10, center - left)
float denominator2 = math.max(1e-10, right - center)
math.max(0.0, math.min(left == center ? val <= center ? 1.0 : 0.0 : (val - left) / denominator1,
center == right ? val >= center ? 1.0 : 0.0 : (right - val) / denominator2))
The system employs percentile-based normalization for SMA deviation – a critical innovation that enables self-calibration across different assets and market regimes:
// Percentile-based normalization for adaptive calibration
raw_diff = price_src - sma_val
diff_abs_percentile = ta.percentile_linear_interpolation(math.abs(raw_diff), normLookback, percRank) + 1e-10
normalized_diff_raw = raw_diff / diff_abs_percentile
normalized_diff = useClamping ? math.max(-clampValue, math.min(clampValue, normalized_diff_raw)) : normalized_diff_raw
This normalization approach represents a significant advancement over fixed-threshold systems, allowing the indicator to automatically adapt to varying volatility environments and maintain consistent signal quality across diverse market conditions.
2. Donchian Channel Trend Intensity (DCTI) Integration
FibonacciFlux significantly enhances fuzzy logic analysis through the integration of Donchian Channel Trend Intensity (DCTI) – a sophisticated measure of trend strength based on the relationship between short-term and long-term price extremes:
// DCTI calculation for structural trend confirmation
f_dcti(src, majorPer, minorPer, sigPer) =>
H = ta.highest(high, majorPer) // Major period high
L = ta.lowest(low, majorPer) // Major period low
h = ta.highest(high, minorPer) // Minor period high
l = ta.lowest(low, minorPer) // Minor period low
float pdiv = not na(L) ? l - L : 0 // Positive divergence (low vs major low)
float ndiv = not na(H) ? H - h : 0 // Negative divergence (major high vs high)
float divisor = pdiv + ndiv
dctiValue = divisor == 0 ? 0 : 100 * ((pdiv - ndiv) / divisor) // Normalized to -100 to +100 range
sigValue = ta.ema(dctiValue, sigPer)
DCTI provides a complementary structural perspective on market trends by quantifying the relationship between short-term and long-term price extremes. This creates a multi-dimensional analysis framework that combines adaptive deviation measurement (fuzzy SMA) with channel-based trend intensity confirmation (DCTI).
Multi-Dimensional Fuzzy Input Variables
FibonacciFlux processes four distinct technical dimensions through its fuzzy system:
Normalized SMA Deviation: Measures price displacement relative to historical volatility context
Rate of Change (ROC): Captures price momentum over configurable timeframes
Relative Strength Index (RSI): Evaluates cyclical overbought/oversold conditions
Donchian Channel Trend Intensity (DCTI): Provides structural trend confirmation through channel analysis
Each dimension is processed through comprehensive fuzzy sets that transform crisp numerical values into linguistic variables:
// Normalized SMA Deviation - Self-calibrating to volatility regimes
ndiff_LP := fuzzy_triangle(normalized_diff, norm_scale * 0.3, norm_scale * 0.7, norm_scale * 1.1)
ndiff_SP := fuzzy_triangle(normalized_diff, norm_scale * 0.05, norm_scale * 0.25, norm_scale * 0.5)
ndiff_NZ := fuzzy_triangle(normalized_diff, -norm_scale * 0.1, 0.0, norm_scale * 0.1)
ndiff_SN := fuzzy_triangle(normalized_diff, -norm_scale * 0.5, -norm_scale * 0.25, -norm_scale * 0.05)
ndiff_LN := fuzzy_triangle(normalized_diff, -norm_scale * 1.1, -norm_scale * 0.7, -norm_scale * 0.3)
// DCTI - Structural trend measurement
dcti_SP := fuzzy_triangle(dcti_val, 60.0, 85.0, 101.0) // Strong Positive Trend (> ~85)
dcti_WP := fuzzy_triangle(dcti_val, 20.0, 45.0, 70.0) // Weak Positive Trend (~30-60)
dcti_Z := fuzzy_triangle(dcti_val, -30.0, 0.0, 30.0) // Near Zero / Trendless (~+/- 20)
dcti_WN := fuzzy_triangle(dcti_val, -70.0, -45.0, -20.0) // Weak Negative Trend (~-30 - -60)
dcti_SN := fuzzy_triangle(dcti_val, -101.0, -85.0, -60.0) // Strong Negative Trend (< ~-85)
Advanced Fuzzy Rule System with DCTI Confirmation
The core intelligence of FibonacciFlux lies in its sophisticated fuzzy rule system – a structured knowledge representation that encodes expert understanding of market dynamics:
// Base Trend Rules with DCTI Confirmation
cond1 = math.min(ndiff_LP, roc_HP, rsi_M)
strength_SB := math.max(strength_SB, cond1 * (dcti_SP > 0.5 ? 1.2 : dcti_Z > 0.1 ? 0.5 : 1.0))
// DCTI Override Rules - Structural trend confirmation with momentum alignment
cond14 = math.min(ndiff_NZ, roc_HP, dcti_SP)
strength_SB := math.max(strength_SB, cond14 * 0.5)
The rule system implements 15 distinct fuzzy rules that evaluate various market conditions including:
Established Trends: Strong deviations with confirming momentum and DCTI alignment
Emerging Trends: Early deviation patterns with initial momentum and DCTI confirmation
Weakening Trends: Divergent signals between deviation, momentum, and DCTI
Reversal Conditions: Counter-trend signals with DCTI confirmation
Neutral Consolidations: Minimal deviation with low momentum and neutral DCTI
A key innovation is the weighted influence of DCTI on rule activation. When strong DCTI readings align with other indicators, rule strength is amplified (up to 1.2x). Conversely, when DCTI contradicts other indicators, rule impact is reduced (as low as 0.5x). This creates a dynamic, self-adjusting system that prioritizes high-conviction signals.
Defuzzification & Signal Generation
The final step transforms fuzzy outputs into a precise trend score through center-of-gravity defuzzification:
// Defuzzification with precise floating-point handling
denominator = strength_SB + strength_WB + strength_N + strength_WBe + strength_SBe
if denominator > 1e-10
fuzzyTrendScore := (strength_SB * STRONG_BULL + strength_WB * WEAK_BULL +
strength_N * NEUTRAL + strength_WBe * WEAK_BEAR +
strength_SBe * STRONG_BEAR) / denominator
The resulting FuzzyTrendScore ranges from -1.0 (Strong Bear) to +1.0 (Strong Bull), with critical threshold zones at ±0.3 (Weak trend) and ±0.7 (Strong trend). The histogram visualization employs intuitive color-coding for immediate trend assessment.
Strategic Applications for Institutional Trading
FibonacciFlux provides substantial advantages for sophisticated trading operations:
Multi-Timeframe Signal Confirmation: Institutional-grade signal validation across multiple technical dimensions
Trend Strength Quantification: Precise measurement of trend conviction with noise filtration
Early Trend Identification: Detection of emerging trends before traditional indicators through fuzzy pattern recognition
Adaptive Market Regime Analysis: Self-calibrating analysis across varying volatility environments
Algorithmic Strategy Integration: Well-defined numerical output suitable for systematic trading frameworks
Risk Management Enhancement: Superior signal fidelity for risk exposure optimization
Customization Parameters
FibonacciFlux offers extensive customization to align with specific trading mandates and market conditions:
Fuzzy SMA Settings: Configure baseline trend identification parameters including SMA, ROC, and RSI lengths
Normalization Settings: Fine-tune the self-calibration mechanism with adjustable lookback period, percentile rank, and optional clamping
DCTI Parameters: Optimize trend structure confirmation with adjustable major/minor periods and signal smoothing
Visualization Controls: Customize display transparency for optimal chart integration
These parameters enable precise calibration for different asset classes, timeframes, and market regimes while maintaining the core analytical framework.
Implementation Notes
For optimal implementation, consider the following guidance:
Higher timeframes (4H+) benefit from increased normalization lookback (800+) for stability
Volatile assets may require adjusted clamping values (2.5-4.0) for optimal signal sensitivity
DCTI parameters should be aligned with chart timeframe (higher timeframes require increased major/minor periods)
The indicator performs exceptionally well as a trend filter for systematic trading strategies
Acknowledgments
FibonacciFlux builds upon the pioneering work of Donovan Wall in Donchian Channel Trend Intensity analysis. The normalization approach draws inspiration from percentile-based statistical techniques in quantitative finance. This indicator is shared for educational and analytical purposes under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.
Past performance does not guarantee future results. All trading involves risk. This indicator should be used as one component of a comprehensive analysis framework.
Shout out @DonovanWall
Geometric Momentum Breakout with Monte CarloOverview
This experimental indicator uses geometric trendline analysis combined with momentum and Monte Carlo simulation techniques to help visualize potential breakout areas. It calculates support, resistance, and an aggregated trendline using a custom Geo library (by kaigouthro). The indicator also tracks breakout signals in a way that a new buy signal is triggered only after a sell signal (and vice versa), ensuring no repeated signals in the same direction.
Important:
This script is provided for educational purposes only. It is experimental and should not be used for live trading without proper testing and validation.
Key Features
Trendline Calculation:
Uses the Geo library to compute support and resistance trendlines based on historical high and low prices. The midpoint of these trendlines forms an aggregated trendline.
Momentum Analysis:
Computes the Rate of Change (ROC) to determine momentum. Breakout conditions are met only if the price and momentum exceed a user-defined threshold.
Monte Carlo Simulation:
Simulates future price movements to estimate the probability of bullish or bearish breakouts over a specified horizon.
Signal Tracking:
A persistent variable ensures that once a buy (or sell) signal is triggered, it won’t repeat until the opposite signal occurs.
Geometric Enhancements:
Calculates an aggregated trend angle and channel width (distance between support and resistance), and draws a perpendicular “breakout zone” line.
Table Display:
A built-in table displays key metrics including:
Bullish probability
Bearish probability
Aggregated trend angle (in degrees)
Channel width
Alerts:
Configurable alerts notify when a new buy or sell breakout signal occurs.
Inputs
Resistance Lookback & Support Lookback:
Number of bars to look back for determining resistance and support points.
Momentum Length & Threshold:
Period for ROC calculation and the minimum percentage change required for a breakout confirmation.
Monte Carlo Simulation Parameters:
Simulation Horizon: Number of future bars to simulate.
Simulation Iterations: Number of simulation runs.
Table Position & Text Size:
Customize where the table is displayed on the chart and the size of the text.
How to Use
Add the Script to Your Chart:
Copy the code into the Pine Script editor on TradingView and add it to your chart.
Adjust Settings:
Customize the inputs (e.g., lookback periods, momentum threshold, simulation parameters) to fit your analysis or educational requirements.
Interpret Signals:
A buy signal is plotted as a green triangle below the bar when conditions are met and the state transitions from neutral or sell.
A sell signal is plotted as a red triangle above the bar when conditions are met and the state transitions from neutral or buy.
Alerts are triggered only on the bar where a new signal is generated.
Examine the Table:
The table displays key metrics (breakout probabilities, aggregated trend angle, and channel width) to help evaluate current market conditions.
Disclaimer
This indicator is experimental and provided for educational purposes only. It is not intended as a trading signal or financial advice. Use this script at your own risk, and always perform your own research and testing before using any experimental tools in live trading.
Credit
This indicator uses the Geo library by kaigouthro. Special thanks to Cryptonerds and @Hazzantazzan for their contributions and insights.
XGBoost Approximation Indicator with HTF Filter Ver. 3.2XGBoost Approx Indicator with Higher Timeframe Filter Ver. 3.2
What It Is
The XGBoost Approx Indicator is a technical analysis tool designed to generate trading signals based on a composite of multiple indicators. It combines Simple Moving Average (SMA), Relative Strength Index (RSI), MACD, Rate of Change (ROC), and Volume to create a composite indicator score. Additionally, it incorporates a higher timeframe filter (HTF) to enhance trend confirmation and reduce false signals.
This indicator helps traders identify long (buy) and short (sell) opportunities based on a weighted combination of trend-following and momentum indicators.
How to Use It Properly
Setup and Configuration:
Add the indicator to your TradingView chart.
Customize input settings based on your trading strategy. Key configurable inputs include:
HTF filter (default: 1-hour)
SMA, RSI, MACD, and ROC lengths
Custom weightings for each component
Thresholds for buy and sell signals
Understanding the Signals:
Green "Long" Label: Appears when the composite indicator crosses above the buy threshold, signaling a potential buy opportunity.
Red "Short" Label: Appears when the composite indicator crosses below the sell threshold, signaling a potential sell opportunity.
These signals are filtered by a higher timeframe SMA trend to improve accuracy.
Alerts:
The indicator provides alert conditions for long and short entries.
Traders can enable alerts in TradingView to receive real-time notifications when a new signal is triggered.
Safety and Best Practices
Use in Conjunction with Other Analysis: Do not rely solely on this indicator. Combine it with price action, support/resistance levels, and fundamental analysis for better decision-making.
Adjust Settings for Your Strategy: The default settings may not suit all markets or timeframes. Test different configurations before trading live.
Backtest Before Using in Live Trading: Evaluate the indicator’s past performance on historical data to assess its effectiveness in different market conditions.
Avoid Overtrading: False signals can occur, especially in low volatility or choppy markets. Use additional confirmation (e.g., trendlines or moving averages).
Risk Management: Always set stop-loss levels and position sizes to limit potential losses.
Dynamic Ticks Oscillator Model (DTOM)The Dynamic Ticks Oscillator Model (DTOM) is a systematic trading approach grounded in momentum and volatility analysis, designed to exploit behavioral inefficiencies in the equity markets. It focuses on the NYSE Down Ticks, a metric reflecting the cumulative number of stocks trading at a lower price than their previous trade. As a proxy for market sentiment and selling pressure, this indicator is particularly useful in identifying shifts in investor behavior during periods of heightened uncertainty or volatility (Jegadeesh & Titman, 1993).
Theoretical Basis
The DTOM builds on established principles of momentum and mean reversion in financial markets. Momentum strategies, which seek to capitalize on the persistence of price trends, have been shown to deliver significant returns in various asset classes (Carhart, 1997). However, these strategies are also susceptible to periods of drawdown due to sudden reversals. By incorporating volatility as a dynamic component, DTOM adapts to changing market conditions, addressing one of the primary challenges of traditional momentum models (Barroso & Santa-Clara, 2015).
Sentiment and Volatility as Core Drivers
The NYSE Down Ticks serve as a proxy for short-term negative sentiment. Sudden increases in Down Ticks often signal panic-driven selling, creating potential opportunities for mean reversion. Behavioral finance studies suggest that investor overreaction to negative news can lead to temporary mispricings, which systematic strategies can exploit (De Bondt & Thaler, 1985). By incorporating a rate-of-change (ROC) oscillator into the model, DTOM tracks the momentum of Down Ticks over a specified lookback period, identifying periods of extreme sentiment.
In addition, the strategy dynamically adjusts entry and exit thresholds based on recent volatility. Research indicates that incorporating volatility into momentum strategies can enhance risk-adjusted returns by improving adaptability to market conditions (Moskowitz, Ooi, & Pedersen, 2012). DTOM uses standard deviations of the ROC as a measure of volatility, allowing thresholds to contract during calm markets and expand during turbulent ones. This approach helps mitigate false signals and aligns with findings that volatility scaling can improve strategy robustness (Barroso & Santa-Clara, 2015).
Practical Implications
The DTOM framework is particularly well-suited for systematic traders seeking to exploit behavioral inefficiencies while maintaining adaptability to varying market environments. By leveraging sentiment metrics such as the NYSE Down Ticks and combining them with a volatility-adjusted momentum oscillator, the strategy addresses key limitations of traditional trend-following models, such as their lagging nature and susceptibility to reversals in volatile conditions.
References
• Barroso, P., & Santa-Clara, P. (2015). Momentum Has Its Moments. Journal of Financial Economics, 116(1), 111–120.
• Carhart, M. M. (1997). On Persistence in Mutual Fund Performance. The Journal of Finance, 52(1), 57–82.
• De Bondt, W. F., & Thaler, R. (1985). Does the Stock Market Overreact? The Journal of Finance, 40(3), 793–805.
• Jegadeesh, N., & Titman, S. (1993). Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency. The Journal of Finance, 48(1), 65–91.
• Moskowitz, T. J., Ooi, Y. H., & Pedersen, L. H. (2012). Time Series Momentum. Journal of Financial Economics, 104(2), 228–250.
Trend Stability Index (TSI)Overview
The Trend Stability Index (TSI) is a technical analysis tool designed to evaluate the stability of a market trend by analyzing both price movements and trading volume. By combining these two crucial elements, the TSI provides traders with insights into the strength and reliability of ongoing trends, assisting in making informed trading decisions.
Key Features
• Dual Analysis: Integrates price changes and volume fluctuations to assess trend stability.
• Customizable Periods: Allows users to set evaluation periods for both trend and volume based on their trading preferences.
• Visual Indicators: Displays the Trend Stability Index as a line chart, highlights neutral zones, and uses background colors to indicate trend stability or instability.
Configuration Settings
1. Trend Length (trendLength)
• Description: Determines the number of periods over which the price stability is evaluated.
• Default Value: 15
• Usage: A longer trend length smooths out short-term volatility, providing a clearer picture of the overarching trend.
2. Volume Length (volumeLength)
• Description: Sets the number of periods over which trading volume changes are assessed.
• Default Value: 15
• Usage: Adjusting the volume length helps in capturing significant volume movements that may influence trend strength.
Calculation Methodology
The Trend Stability Index is calculated through a series of steps that analyze both price and volume changes:
1. Price Change Rate (priceChange)
• Calculation: Utilizes the Rate of Change (ROC) function on the closing prices over the specified trendLength.
• Purpose: Measures the percentage change in price over the trend evaluation period, indicating the direction and momentum of the price movement.
2. Volume Change Rate (volumeChange)
• Calculation: Applies the Rate of Change (ROC) function to the trading volume over the specified volumeLength.
• Purpose: Assesses the percentage change in trading volume, providing insight into the conviction behind price movements.
3. Trend Stability (trendStability)
• Calculation: Multiplies priceChange by volumeChange.
• Purpose: Combines price and volume changes to gauge the overall stability of the trend. A higher positive value suggests a strong and stable trend, while negative values may indicate trend weakness or reversal.
4. Trend Stability Index (TSI)
• Calculation: Applies a Simple Moving Average (SMA) to the trendStability over the trendLength period.
• Purpose: Smooths the trend stability data to create a more consistent and interpretable index.
Trend/Ranging Determination
• Stable Trend (isStable)
• Condition: When the TSI value is greater than 0.
• Interpretation: Indicates that the current trend is stable and likely to continue in its direction.
• Unstable Trend / Range-bound Market
• Condition: When the TSI value is less than or equal to 0.
• Interpretation: Suggests that the trend may be weakening, reversing, or that the market is moving sideways without a clear direction.
Visualization
The TSI indicator employs several visual elements to convey information effectively:
1. TSI Line
• Representation: Plotted as a blue line.
• Purpose: Displays the Trend Stability Index values over time, allowing traders to observe trend stability dynamics.
2. Neutral Horizontal Line
• Representation: A gray horizontal line at the 0 level.
• Purpose: Serves as a reference point to distinguish between stable and unstable trends.
3. Background Color
• Stable Trend: Green background with 80% transparency when isStable is true.
• Unstable Trend: Red background with 80% transparency when isStable is false.
• Purpose: Provides an immediate visual cue about the current trend’s stability, enhancing the interpretability of the indicator.
Usage Guidelines
• Identifying Trend Strength: Utilize the TSI to confirm the strength of existing trends. A consistently positive TSI suggests strong trend momentum, while a negative TSI may signal caution or a potential reversal.
• Volume Confirmation: The integration of volume changes helps in validating price movements. Significant price changes accompanied by corresponding volume shifts can reinforce the reliability of the trend.
• Entry and Exit Signals: Traders can use crossovers of the TSI with the neutral line (0 level) as potential entry or exit points. For instance, a crossover from below to above 0 may indicate a bullish trend initiation, while a crossover from above to below 0 could suggest bearish momentum.
• Combining with Other Indicators: To enhance trading strategies, consider using the TSI in conjunction with other technical indicators such as Moving Averages, RSI, or MACD for comprehensive market analysis.
Example Scenario
Imagine analyzing a stock with the following observations using the TSI:
• The TSI has been consistently above 0 for the past 30 periods, accompanied by increasing trading volume. This scenario indicates a strong and stable uptrend, suggesting that buying opportunities may be favorable.
• Conversely, if the TSI drops below 0 while the price remains relatively flat and volume decreases, it may imply that the current trend is losing momentum, and the market could be entering a consolidation phase or preparing for a trend reversal.
Conclusion
The Trend Stability Index is a valuable tool for traders seeking to assess the reliability and strength of market trends by integrating price and volume dynamics. Its customizable settings and clear visual indicators make it adaptable to various trading styles and market conditions. By incorporating the TSI into your trading analysis, you can enhance your ability to identify and act upon stable and profitable trends.
Momentum-Based Buy/Sell SignalsBuy Signal:
Triggered when ROC > threshold and the MACD line crosses above the Signal line.
Sell Signal:
Triggered when ROC < threshold and the MACD line crosses below the Signal line.
Visual Elements:
Green labels with "Buy" are displayed below the bars for buy signals.
Red labels with "Sell" are displayed above the bars for sell signals.
The background turns green during a buy signal and red during a sell signal for better visual clarity.
Support Resistance base Volume RSIThe indicator displays support and resistance levels based on volume and the Relative Strength Index (RSI).
Variable and Input Assignment:
lookback: Determines the period for data lookback.
RsiVisible, RsilabelSize, OversoldForRsi, OverboughtForRsi: Various inputs to adjust RSI indicator parameters.
Indicator Calculation:
highestVol: Finds the highest volume within a certain period.
Rsi: Calculates the RSI value with a period of 14.
roc: Calculates the Rate of Change.
Support and Resistance Level Determination:
Uses a comparison between price change (roc) and RSI value to determine whether the price is rising or falling.
If the price is rising and the current volume is greater than the previous highest volume, a new resistance level is established.
If the price is falling and the current volume is greater than the previous highest volume, a new support level is established.
Support and Resistance Lines:
Creates lines indicating the latest support and resistance levels.
These lines are updated whenever there is a change in support or resistance levels.
RSI Labels:
Displays the RSI value above or below the price chart depending on whether the RSI is above or below the overbought or oversold levels.
If the RSI value is above the overbought level, the label is displayed above the price.
If the RSI value is below the oversold level, the label is displayed below the price.
Labels are removed if the corresponding conditions are not met.
Additional RSI Label:
Adds an additional label displaying the RSI value next to the price chart on the last bar.
The main purpose of this script is to assist traders in identifying support and resistance levels based on price movement, volume, and the RSI indicator. Thus, traders can use this information to make better trading decisions.
Reversal Pivot PointsThis indicator aims to identify price levels where price action has quickly reversed from. These "pivots" establish major levels where major liquidity is located. Unlike standard support and resistance levels, when price breaks below or above a pivot, these pivots disappear from the chart. Comes with various customization features built to fit all.
Features
Pivot Timeframe: Identify and plot pivots from one specific timeframe and see it from all lower timeframes
Pivot left/right bar limit: A feature aimed at preventing false pivots identification
Remove On Close (ROC): Feature to only remove pivots once price close under it
ROC Timeframe: The timeframe the script uses to determine if the candle closed under the level
Wait For Close: Will only remove the pivot after the current candle closes
Line Extension Type: The extension of the line. None - extends line to current time, left - only extends line to the left, right - only extends line to the right, both - extends line both directions
Line Offset: How much to offset (in bars) the line and label from the current candle
Line Type: The style of line when plotted. Solid (─), dotted (┈), dashed (╌), arrow left (←), arrow right (→), arrows both (↔)
Display Level: Whether to or not to display the price of the pivot
Display Perfect Level: Whether to or not to display levels where price perfectly rejected off of
Alerts: Creates an alert when a level has been crossed
How to trade
1. Pivots can be traded to or from. The stock market (market makers) will tend to "chase" liquidity in order to fill orders at better averages. This allows us retail traders to to participate alongside these moves to these pivots. Once price action hits a pivot, it can do two things: break the pivot and continue or bounce off it. We can participate alongside these bounces after confirmation of a reversal (doji, volume, etc). These bounce plays are high risk as it's generally 50-50, but the risk to reward is typically also very high, making them very valuable to take.
2. Typically, the market is a fluid environment and should be "natural," so perfect things (manmade and filled with liquidity) should not occur. With this knowledge, we can expect these perfect levels, "PDT/PDB," to break as they are not natural occurrence and have heavy liquidity on and above/below them. We can trade to these levels and expect them to break/sweep if price action comes near them again.
DynamicFunctionsLibrary "DynamicFunctions"
Custom Dynamic functions that allow an adaptive calculation beginning from the first bar
RoC(src, period)
Dynamic RoC
Parameters:
src (float) : and period
Custom function to calculate the actual period considering non-na source values
period (int)
dynamicMedian(src, length)
Dynamic Median
Parameters:
src (float) : and length
length (int)
kernelRegression(src, bandwidth, kernel_type)
Dynamic Kernel Regression Calculation \n Uses either of the following inputs for kernel_type:\nEpanechnikov\nLogistic\nWave
Parameters:
src (float)
bandwidth (int)
kernel_type (string)
waveCalculation(source, bandwidth, width)
Use together with kernelRegression function to get chart applicable band
Parameters:
source (float)
bandwidth (int)
width (float)
Rsi(src, length)
Dynamic RSI function
Parameters:
src (float)
length (int)
dynamicStdev(src, period)
Dynamic SD function
Parameters:
src (float)
period (int)
stdv_bands(src, length, mult)
Dynamic SD Bands
Parameters:
src (float)
length (int)
mult (float)
Returns: Basis, Positive SD, Negative SD
Adx(dilen, adxlen)
Dynamic ADX
Parameters:
dilen (int)
adxlen (int)
Returns: adx
Atr(length)
Dynamic ATR
Parameters:
length (int)
Returns: ATR
Macd(source, fastLength, slowLength, signalSmoothing)
Dynamic MACD
Parameters:
source (float)
fastLength (int)
slowLength (int)
signalSmoothing (int)
Returns: macdLine, signalLine, histogram
Change in DominanceTitle: Change in Dominance Indicator
Description:
This is a tool designed to gauge the prevailing trend in the cryptocurrency market. By analyzing the Rate of Change (ROC) in percentage terms over the previous 9 bars for BTC Dominance (BTC.D), Ethereum Dominance (ETH.D), Other Altcoins Dominance (OTHER.D), and USDT Dominance (USDT.D).
How It Works:
The indicator calculates the ROC for BTC.D, ETH.D (aggregated as part of the Altcoin market), OTHER.D (also included in the Altcoin calculation), and USDT.D.
Three lines represent the trends for Bitcoin (BTC), Altcoins (ETH and OTHER combined), and USDT respectively:
Green Line: Represents the trend for BTC. A higher green line indicates a dominance of BTC in the market trend, suggesting money flow into Bitcoin.
Silver Line: Indicates the Altcoin trend (combining ETH and OTHER). When the silver line is the highest among the three, it signals that Altcoins are leading the market, which can be considered bullish as it suggests money is flowing into Altcoins.
Red Line: Represents the USDT trend. A dominant red line over others implies a bearish market sentiment, indicating money flow out of cryptocurrencies and into USDT.
Usage Tips:
Altcoin Bullishness: When the silver line is above both the red and green lines, it suggests a bullish trend for Altcoins, indicating that money is flowing into the Altcoin sector of the market.
Market Bearishness: If the red line surpasses the silver and green lines, it could be a signal that investors are moving their funds into USDT, often a sign of bearish market sentiment.
BTC Bullishness: A higher green line compared to the silver and red lines implies that Bitcoin is the dominant force in the market, suggesting a bullish sentiment for BTC.
Greenblatts Magic Formula - A multiple approachThis indicator is supposed to help find undervalued stocks. Inspired by Joel Greenblatt's strategy where he ranks stocks with the lowest EV/EBIT and the highest ROC. Inspired by the ERP5 strategy I have added Earnings Yield together with ROC.
My approach and how I use the indicator is to see Magic Formula score as a multiple, rather than ranking the numbers between different stocks. Like P/E for comparison. Different kinds of companies trades at different multiples so you have to compare the current MF Score in relation to historical MF Score to get an idea if it truly is undervalued. You also want to see that price actually reacts to a low MF Score.
As i general rule for myself I stay away from companies with EV/EBIT above 13 and generally want to see MF Score below 6-7. A company trading at a negative MF Score indicates that the company may be heavily undervalued.
Red line = EV/EBIT
Green line = ROC + EY / 2
Yellow line = "MF Score" EVEBIT - (ROC+EY/2)
Blue line = The 50 EMA of MF score
The strategy is simple. Look for companies which might be undervalued. Compare the current MF score to it's history. If it's trading near a previous bottom it indicates that the company might be undervalued. You can also use the MF EMA to see a more smooth curve to interpret the multiple.
Crypto Market OverviewCrypto Market Overview
The Crypto Market Overview (CMO) indicator is your one-stop tool for keeping tabs on the cryptocurrency market. It provides a comprehensive snapshot of key data and trends, helping you make informed decisions in the fast-paced world of crypto trading. Here's what this indicator offers:
1. Lookback Period Control:
You can customize the lookback period for percentage change calculations, tailoring it to your specific analysis needs.
2. Currency Selection:
Choose your preferred currency to view market data in your desired denomination.
3. Major Market Cap Data:
Real-time information on Bitcoin (BTC) and Ethereum (ETH) market caps.
Total market capitalization data for the entire crypto market.
4. Stablecoin Market Cap Data:
Keep track of stablecoin market caps, including USDT, USDC, DAI, TUSD, and BUSD.
Get a clear picture of the stablecoin segment of the market.
5. Shitcoin Market Cap Data:
An interesting category that represents the market cap of all cryptocurrencies not classified as major or stable.
6. Dominance Data:
Dominance percentages for BTC, ETH, stablecoins and shitcoins.
Total market dominance, allowing you to gauge the influence of major cryptocurrencies.
7. Rate of Change (RoC) Metrics:
Monitor the RoC for market caps and dominance percentages.
Positive or negative trends are clearly highlighted with color-coded indicators.
8. Intuitive Table Layout:
A user-friendly table layout displays all the data.
Key assets such as Bitcoin and Ethereum are listed along with their market caps and dominance.
9. Color Coding:
Upward and downward trends are easily identifiable with color-coded cells.
A white background with bold text ensures readability.
The Crypto Market Overview indicator is an invaluable tool for cryptocurrency traders and enthusiasts, offering a quick and convenient way to stay updated on market dynamics. It's perfect for making data-driven decisions in the ever-changing world of digital assets.
ROCkin RSIROCkin RSI Indicator
Overview
The "ROCkin RSI" indicator combines the traditional Relative Strength Index (RSI) with an innovative approach using the Rate of Change (ROC) to offer a new way to visualize and interpret market momentum. By averaging the slope of the RSI over time and allowing for different types of moving averages, this indicator aims to help traders identify trending and reversal patterns more efficiently.
Features
RSI Calculations: The core of the indicator is based on the standard Relative Strength Index, an oscillator that measures the speed and change of price movements. The RSI oscillates between 0 and 100 and is usually used to identify overbought or oversold conditions.
Rate of Change of Price (ROC): Instead of simply plotting the RSI, this indicator calculates the Rate of Change of the closing price, essentially looking at how steep the RSI curve is over a user-defined period.
Smoothing: To reduce noise and make the curve smoother, the slope of the RSI is averaged over a given number of periods, which can either be a Simple Moving Average (SMA) or an Exponential Moving Average (EMA).
Column Plots: The smoothed RSI slope is plotted as columns, where the color of the columns (red or green) indicates whether the slope is positive or negative.
Optional RSI Moving Average: The indicator also offers an optional feature to plot a moving average of the smoothed RSI slope, aiding in trend identification.
Inputs
RSI Periods: The number of periods used to calculate the RSI.
Slope Periods: The number of periods used for calculating the Rate of Change.
Average Periods: The number of periods used for smoothing the RSI slope.
Type of Average: Choose between EMA (Exponential Moving Average) and SMA (Simple Moving Average) for smoothing.
Show RSI Moving Average: Toggle this to either show or hide the moving average of the smoothed RSI slope.
Moving Average Period: The period used for calculating the RSI Moving Average.
Moving Average Type: Choose between EMA and SMA for the RSI Moving Average.
How to Interpret
Positive Slope (Red Columns): Indicates upward momentum in the RSI, which may imply a bullish trend.
Negative Slope (Green Columns): Indicates downward momentum in the RSI, suggesting a possible bearish trend.
RSI Moving Average: Acts as a signal line to confirm the trend. When the smoothed RSI slope is above its moving average, it confirms the bullish trend, and when it's below, it confirms the bearish trend.
Practical Use
Entry/Exit Signals: Consider entering a long position when the columns of the green histogram cross above the moving average. Conversely, consider entering a short position when the columns cross under when red. The higher the columns the more likely the trade will be a good one.
Fine-Tuning and Optimization
It's crucial to understand that the default settings might not be optimal for all trading scenarios. The effectiveness of the ROCkin RSI indicator can vary based on the asset you're trading, the market conditions, and your trading style. Therefore, it's highly recommended to play with the settings and study the historical performance on the chart to grasp how the indicator behaves.
By experimenting with different periods for RSI, the Rate of Change, and the moving averages, you can tailor the indicator to better suit your needs. Studying how the indicator would have performed in the past can help you understand its potential strengths and weaknesses. Once you've got a feel for how it operates, you can then optimize the settings to align with your trading strategy and risk tolerance.
peacefulIndicatorsWe are delighted to present the PeacefulIndicators library, a modest yet powerful collection of custom technical indicators created to enhance your trading analysis. The library features an array of practical tools, including MACD with Dynamic Length, Stochastic RSI with ATR Stop Loss, Bollinger Bands with RSI Divergence, and more.
The PeacefulIndicators library offers the following functions:
macdDynamicLength: An adaptive version of the classic MACD indicator, which adjusts the lengths of the moving averages based on the dominant cycle period, providing a more responsive signal.
rsiDivergence: A unique implementation of RSI Divergence detection that identifies potential bullish and bearish divergences using a combination of RSI and linear regression.
trendReversalDetection: A helpful tool for detecting trend reversals using the Rate of Change (ROC) and Moving Averages, offering valuable insights into possible market shifts.
volume_flow_oscillator: A custom oscillator that combines price movement strength and volume to provide a unique perspective on market dynamics.
weighted_volatility_oscillator: Another custom oscillator that factors in price volatility and volume to deliver a comprehensive view of market fluctuations.
rvo: The Relative Volume Oscillator highlights changes in volume relative to historical averages, helping to identify potential breakouts or reversals.
acb: The Adaptive Channel Breakout indicator combines a moving average with an adjustable volatility multiplier to create dynamic channels, useful for identifying potential trend shifts.
We hope this library proves to be a valuable addition to your trading toolbox.
Library "peacefulIndicators"
A custom library of technical indicators for trading analysis, including MACD with Dynamic Length, Stochastic RSI with ATR Stop Loss, Bollinger Bands with RSI Divergence, and more.
macdDynamicLength(src, shortLen, longLen, signalLen, dynLow, dynHigh)
Moving Average Convergence Divergence with Dynamic Length
Parameters:
src (float) : Series to use
shortLen (int) : Shorter moving average length
longLen (int) : Longer moving average length
signalLen (int) : Signal line length
dynLow (int) : Lower bound for the dynamic length
dynHigh (int) : Upper bound for the dynamic length
Returns: tuple of MACD line and Signal line
Computes MACD using lengths adapted based on the dominant cycle period
rsiDivergence(src, rsiLen, divThreshold, linRegLength)
RSI Divergence Detection
Parameters:
src (float) : Series to use
rsiLen (simple int) : Length for RSI calculation
divThreshold (float) : Divergence threshold for RSI
linRegLength (int) : Length for linear regression calculation
Returns: tuple of RSI Divergence (positive, negative)
Computes RSI Divergence detection that identifies bullish (positive) and bearish (negative) divergences
trendReversalDetection(src, rocLength, maLength, maType)
Trend Reversal Detection (TRD)
Parameters:
src (float) : Series to use
rocLength (int) : Length for Rate of Change calculation
maLength (int) : Length for Moving Average calculation
maType (string) : Type of Moving Average to use (default: "sma")
Returns: A tuple containing trend reversal direction and the reversal point
Detects trend reversals using the Rate of Change (ROC) and Moving Averages.
volume_flow_oscillator(src, length)
Volume Flow Oscillator
Parameters:
src (float) : Series to use
length (int) : Period for the calculation
Returns: Custom Oscillator value
Computes the custom oscillator based on price movement strength and volume
weighted_volatility_oscillator(src, length)
Weighted Volatility Oscillator
Parameters:
src (float) : Series to use
length (int) : Period for the calculation
Returns: Custom Oscillator value
Computes the custom oscillator based on price volatility and volume
rvo(length)
Relative Volume Oscillator
Parameters:
length (int) : Period for the calculation
Returns: Custom Oscillator value
Computes the custom oscillator based on relative volume
acb(price_series, ma_length, vol_length, multiplier)
Adaptive Channel Breakout
Parameters:
price_series (float) : Price series to use
ma_length (int) : Period for the moving average calculation
vol_length (int) : Period for the volatility calculation
multiplier (float) : Multiplier for the volatility
Returns: Tuple containing the ACB upper and lower values and the trend direction (1 for uptrend, -1 for downtrend)
Exhaustion Improved Scalping Consolidation and Squeeze IndicatorThis custom indicator, called " Exhaustion & Improved Scalping Consolidation and Squeeze Indicator," is designed to help traders identify potential trading opportunities in the context of price consolidations, squeezes, and momentum exhaustion. It is an overlay indicator that combines several popular technical analysis tools, including the Relative Strength Index (RSI), Moving Average Convergence Divergence (MACD), Bollinger Bands, Keltner Channels, and Rate of Change (ROC). By analyzing these metrics, the indicator aims to provide visual cues on price charts to support better decision-making in the markets.
Use Case for Trading:
Consolidation Detection: The indicator identifies periods of price consolidation, which typically occur when a market is experiencing low volatility and trading in a narrow range. During these periods, the RSI value is between 45 and 55, the MACD histogram is close to zero, and the ROC value is low. The indicator highlights these consolidation periods by coloring the price bars yellow. Traders can use this information to anticipate potential breakouts and prepare for a possible trend initiation.
Squeeze Detection: The indicator detects squeezes by comparing the Bollinger Bands and Keltner Channels. A squeeze occurs when the Bollinger Bands are within the Keltner Channels, indicating that price volatility is decreasing. The indicator colors the price bars orange during a squeeze, which can be a signal for traders to watch for an upcoming increase in volatility and potential trend expansion.
Momentum Exhaustion Detection: The indicator identifies exhaustion in momentum by analyzing the RSI and MACD histogram. When the RSI is above 70, indicating overbought conditions, and the MACD histogram is decreasing, it may signal that the current upward momentum is losing strength. The indicator colors the price bars white in these situations. Traders can use this information to potentially exit long positions or prepare for a trend reversal.
Improved Scalping Consolidation and Squeeze IndicatorThe Improved Scalping Consolidation and Squeeze Indicator (Improved Scalp C&S) is a custom TradingView indicator designed for short-term trading, specifically scalping. It detects price consolidation and potential breakout scenarios using a combination of technical analysis tools, such as the Rate of Change (ROC), Relative Strength Index (RSI), Moving Average Convergence Divergence (MACD), Bollinger Bands, and Keltner Channels. To reduce the number of false signals, this improved version introduces a "consolidation strength" parameter, which represents the minimum number of consecutive bars required for a valid consolidation or squeeze signal.
How it works:
Consolidation Detection:
The indicator identifies price consolidation when the following conditions are met:
a. RSI is between 45 and 55, indicating a lack of strong momentum.
b. The absolute value of the MACD histogram is less than 0.1% of the closing price, suggesting a lack of directional movement.
c. The Rate of Change (ROC) is less than 1.5%, indicating relatively stable prices over the specified period.
Squeeze Detection:
The indicator detects a squeeze (a potential breakout scenario) when the Bollinger Bands are within the Keltner Channels, represented by the following conditions:
a. The lower Bollinger Band is above the lower Keltner Channel.
b. The upper Bollinger Band is below the upper Keltner Channel.
Consolidation Strength:
The consolidation strength parameter filters out weaker signals by requiring a minimum number of consecutive bars for a valid consolidation or squeeze signal. By adjusting this parameter, traders can control the sensitivity of the indicator to short-term price movements and potentially reduce the number of false signals.
When the consolidation strength criteria are met, the indicator colors the price bars within the pattern yellow for consolidation and orange for a squeeze, signaling potential trading opportunities.
Trading Strategy:
The Improved Scalping Consolidation and Squeeze Indicator can be used in various ways, depending on the trader's strategy and risk appetite. Here are some suggestions:
Range trading: During consolidation (yellow bars), traders can buy at support levels and sell at resistance levels within the range, using stop-loss orders to manage risk. However, this approach might not work well in the case of a sudden breakout.
Breakout trading: When a squeeze is detected (orange bars), traders can wait for a confirmed breakout from the consolidation pattern before entering a trade. A breakout can be confirmed by a strong price move accompanied by increased volume, a significant change in momentum, or a breach of important support or resistance levels.
Momentum-based strategies: Traders can use other momentum-based indicators (e.g., Stochastic Oscillator, On Balance Volume) in conjunction with the Improved Scalp C&S indicator to identify potential entry and exit points during consolidation or breakout scenarios.
Fine-tuning the consolidation strength: Adjust the "consolidation strength" input to find the optimal balance between the number of signals and their accuracy. A higher value will result in fewer signals, potentially reducing the number of false signals, but it may also make the indicator less sensitive to short-term price movements.
Stock Relative Strength Power IndexAs always, this is not financial advice and use at your own risk. Trading is risky and can cost you significant sums of money if you are not careful. Make sure you always have a proper entry and exit plan that includes defining your risk before you enter a trade.
This idea recently came out of some discussions I stumbled across in a trading group I am a part of regarding Relative Strength and Relative Weakness (shortened to RS and RW from here on out). The whole mechanism behind this trading system is to filter out underperforming securities relative to the current market direction to be in only the strongest or weakest stocks when the market is currently experiencing a bullish or bearish cycle. The idea behind this is there is no point in parking your money into a stock that is treading water or even going down if the market is making strong moves upwards. At that point, you are at worst losing money, and at best trading equal to the index/ETF, in which case the argument is why are you not just trading the index/ETF instead? RS or RW will filter out these sector laggards and allow you to position yourself into strong (or the strongest) stocks at any given time to help improve portfolio performance. Further, not only does it protect your position should the market shift against you briefly, it also often sees exceptional performance in the same cycle. For example, if $SPY makes a 5% move over the course of a month, a stock with RS/RW may make a 10% move, or more, allowing you to see increased profit potential.
RS/RW is based on the idea of performance, that is the raw percent change of a security over a given time period relative to a benchmark. This benchmark is often the S&P500 (ES/SPX/SPY and their derivatives). I have to stress that this is not beta, which measures the volatility of a stock over a given period (i.e. if $SPY moves $1, $NVDA will often move $1.74). This is a measurement of the market (i.e. $SPY) has moved 1% over the course of a day, $NVDA has moved 8% over the course of the day. This is very often used as a signal of institutional interest as apart from some very unique moments, retail traders cannot and will not provide enough market pressure to move a market outside of a stock's normal trading range, nor will they outperform the sector or market as a whole consistently over time without some big money to make them move. The problem with running strict performance analysis (i.e. % change from period T ago to period T + n at present) is that while it gives us a baseline of how much the stock has moved, it doesn't overall mean much. For instance, if a $100 stock has moved 5% today, but has been experiencing a period of increased volatility and it's Average True Range (ATR) (the amount a stock will move over X number of periods, on average) is $7, performance seems impressive but is actually generally fairly weak to what the stock has been doing recently. Conversely, if we take a second stock, this time worth $20, and it too has moved 5% in one day but has an ATR of only $0.25, that stock has made an exceptional move and we want to be part of that.
Here, I have created an indicator called the Stock Relative Strength Power Index. This takes the stock's rate of change (ROC) (the % move it has made over X number of periods), the stock's normalized ATR (the ATR represented as a percentage instead of a raw value), and compares these to one another to get the "Power Rating": a representation of the true strength of a stock over X number of periods. The indicator does two things. First, the raw ROC is divided by the stock's normalized ATR to assess whether the stock is moving outside of its normal range of variation or not. Second, since we are interested in trading only stocks with exceptional RS/RW to the market, I have also applied this same calculation to the S&P500 ($SPY) and the various SPDR sector indexes. These comparisons allow for a rapid and accurate assessment of the true strength of a stock at any given time on any given time frame. To cycle back above to our examples, the $100 stock has a Power Rating of only 0.71 (i.e. it is trading less than its current average), while our $20 stock has a Power Rating of 5. If we then compare these to both the market as a whole and the sector that the stock is a part of, we get a much clearer indication of the true buying or selling pressure imposed on the stock at any given time.
Use:
The indicator has 3 lines. The blue line is the security of interest, the red line is the market baseline (i.e. the sector ETF $SPY), and the white line is the sector index. I have given an example above on the semiconductor/tech stock $NVDA on a 30min timeframe. You can see that since the start of 2023, $NVDA has generally been strong to the market and its own sector since the blue line is greater than both the red and white lines over many days. This would have provided some nice day trading opportunities, or even some nice short term swing trades. The values themselves are generally meaningless outside of either the 1 or -1 value lines. All that matters is that the current ticker is surpassing both the market and the sector while being > 1.0 for a long trade or less than -1.0 for a short trade. However, I must stress this indicator gives no trade signals on its own, it is purely a confirmation indicator. An example of a trade would be if you had a trade signal given by either an indicator or by price action suggesting to buy some $NVDA for a trade to the upside, the Power Rating indicator would confirm this by showing if $NVDA was actually showing true strength by being both greater than 1 (the cutoff for it surpassing its ATR) and being above both the red and white lines. Further, you can see $NVDA has been stronger than the market when using the comparison function as well, but the has fluxed in and out of strength intraday when using the actual indicator vs. the static performance ratio chart (plotted as line graphs on the chart).
I have made it possible to change the colour of the plots and the line levels. The adjustment of the line levels gives the trader the flexibility to change their target breakout level (i.e. only trading stocks that have a Power Rating > 2, for example, meaning they are trading at least 2X their normal trading range). The third security comparison is flexible and can be used to compare to the sector ETF (initial intention) or it can be used to compare to other tickers within the same sector, for example. The trader should select the appropriate ETF for the given security of interest to avoid false confirmation if they want to use an ETF as their third input. The proper sector should be readily available on most online websites and accessible in a matter of seconds meaning that the delay is minimal, at worst. If a trader wishes to add additional functionality, such as a crypto trader using BTCUSD as the benchmark instead of $SPY, I encourage them to copy and paste this script and modify as needed since I have made this open source.
This indicator works on all timeframes. The lookback period can be changed, so a day trader who may use a 5min chart (and use a period of 12 to get the hourly Power Rating) will find this equally useful as someone who may be a core trader who wants to look at the performance over the course of years and may use a 60 period on a monthly chart.
Happy trading and I hope this helps!
CMO with ATR and LagF Filtering - RevNR - 12-27-22Rev NR of the CMO ATR, with LagF Filtering - Released 12-27-22 by @Hockeydude84
This code takes Chande Momentum Oscillator (CMO), adds a coded ATR option and then filters the result through a Laguerre Filter (LagF) to reduce erroneous signals.
This code also has an option for self adjusting alpha on the Lag, via a lookback table and monitoring the price rate of change (ROC) in the lookback length.
Faster ROC will allow the LagF to move faster, slower price action will slow down LagF reaction. Pausing of signals is also present based on Rate of Change of the LagF Curve
Aggressive signals and Base signaling is allowed - aggressive bases signals on increase/decrease of previous LagF curve value point, Base is greater or less than 0
Original Code credits; Lost some of this due to time and multiple script manipulations, I believe the CMO origin code is from @TradingView House Code, and the LagF from @KıvançÖzbilgiç
Sharpe Ratio v4I'm publishing this indicator freely, because I'd like to get it reviewed by other people. This indicator was written whilst reading the book Systematic Trading by Robert Carver. In this book Carver describes trading rules that use a "dynamic" position size based on something like an evolving Sharpe Ratio . There are only a few other Sharpe indicators on TradingView, but they are either undocumented or use closed source code. You can use the following code as you wish for your own projects.
I'd like to let other people see this work, and let me know where they think this script is wrong, so that I can improve it.
Here's a basic rundown of Sharpe Ratio and its calculation.
SR is defined as: (excess) return minus the risk free rate divided by standard deviation of those returns. (This is where we're uncertain. Is the standard deviation of the returns, or just the closes?) But anyway the calculation itself is pretty simple:
SR = (r – b) ÷ s
Where r is the return of the asset over a certain period.
b is the interest rate of the risk-free asset.
s is the standard deviation of the returns over the same period.
For this indicator to "work" correctly, we're assuming the risk-free rate is 0. In fact, I did not include b at all in the indicator because it would make things too complicated, and go beyond the aim of this work.
To calculate the returns over a certain period, I'm using Rate of Change. Then calculating the standard deviation of those returns is pretty easy because we can use the same lookback period we used for ROC for the StDev calculation, thus:
averageReturn = ta.roc(close, lookbackLength)
stdev = ta.stdev(averageReturn, lookbackLength)
sharpe = (averageReturn / stdev)
Please leave a comment below if you believe this is incorrect. The chart shows a normal ROC indicator for comparison. I've also created a "bands" version of this indicator, which I'm planning to also release. The Keltner channel is just for comparing it with the StDev bands.