Ehlers Even Better Sinewave (EBSW)# EBSW: Ehlers Even Better Sinewave
## Overview and Purpose
The Ehlers Even Better Sinewave (EBSW) indicator, developed by John Ehlers, is an advanced cycle analysis tool. This implementation is based on a common interpretation that uses a cascade of filters: first, a High-Pass Filter (HPF) to detrend price data, followed by a Super Smoother Filter (SSF) to isolate the dominant cycle. The resulting filtered wave is then normalized using an Automatic Gain Control (AGC) mechanism, producing a bounded oscillator that fluctuates between approximately +1 and -1. It aims to provide a clear and responsive measure of market cycles.
## Core Concepts
* **Detrending (High-Pass Filter):** A 1-pole High-Pass Filter removes the longer-term trend component from the price data, allowing the indicator to focus on cyclical movements.
* **Cycle Smoothing (Super Smoother Filter):** Ehlers' Super Smoother Filter is applied to the detrended data to further refine the cycle component, offering effective smoothing with relatively low lag.
* **Wave Generation:** The output of the SSF is averaged over a short period (typically 3 bars) to create the primary "wave".
* **Automatic Gain Control (AGC):** The wave's amplitude is normalized by dividing it by the square root of its recent power (average of squared values). This keeps the oscillator bounded and responsive to changes in volatility.
* **Normalized Oscillator:** The final output is a single sinewave-like oscillator.
## Common Settings and Parameters
| Parameter | Default | Function | When to Adjust |
| ----------- | ------- | --------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| Source | close | Price data used for calculation. | Typically `close`, but `hlc3` or `ohlc4` can be used for a more comprehensive price representation. |
| HP Length | 40 | Lookback period for the 1-pole High-Pass Filter used for detrending. | Shorter periods make the filter more responsive to shorter cycles; longer periods focus on longer-term cycles. Adjust based on observed cycle characteristics. |
| SSF Length | 10 | Lookback period for the Super Smoother Filter used for smoothing the detrended cycle component. | Shorter periods result in a more responsive (but potentially noisier) wave; longer periods provide more smoothing. |
**Pro Tip:** The `HP Length` and `SSF Length` parameters should be tuned based on the typical cycle lengths observed in the market and the desired responsiveness of the indicator.
## Calculation and Mathematical Foundation
**Simplified explanation:**
1. Remove the trend from the price data using a 1-pole High-Pass Filter.
2. Smooth the detrended data using a Super Smoother Filter to get a clean cycle component.
3. Average the output of the Super Smoother Filter over the last 3 bars to create a "Wave".
4. Calculate the average "Power" of the Super Smoother Filter output over the last 3 bars.
5. Normalize the "Wave" by dividing it by the square root of the "Power" to get the final EBSW value.
**Technical formula (conceptual):**
1. **High-Pass Filter (HPF - 1-pole):**
`angle_hp = 2 * PI / hpLength`
`alpha1_hp = (1 - sin(angle_hp)) / cos(angle_hp)`
`HP = (0.5 * (1 + alpha1_hp) * (src - src )) + alpha1_hp * HP `
2. **Super Smoother Filter (SSF):**
`angle_ssf = sqrt(2) * PI / ssfLength`
`alpha2_ssf = exp(-angle_ssf)`
`beta_ssf = 2 * alpha2_ssf * cos(angle_ssf)`
`c2 = beta_ssf`
`c3 = -alpha2_ssf^2`
`c1 = 1 - c2 - c3`
`Filt = c1 * (HP + HP )/2 + c2*Filt + c3*Filt `
3. **Wave Generation:**
`WaveVal = (Filt + Filt + Filt ) / 3`
4. **Power & Automatic Gain Control (AGC):**
`Pwr = (Filt^2 + Filt ^2 + Filt ^2) / 3`
`EBSW_SineWave = WaveVal / sqrt(Pwr)` (with check for Pwr == 0)
> 🔍 **Technical Note:** The combination of HPF and SSF creates a form of band-pass filter. The AGC mechanism ensures the output remains scaled, typically between -1 and +1, making it behave like a normalized oscillator.
## Interpretation Details
* **Cycle Identification:** The EBSW wave shows the current phase and strength of the dominant market cycle as filtered by the indicator. Peaks suggest cycle tops, and troughs suggest cycle bottoms.
* **Trend Reversals/Momentum Shifts:** When the EBSW wave crosses the zero line, it can indicate a potential shift in the short-term cyclical momentum.
* Crossing up through zero: Potential start of a bullish cyclical phase.
* Crossing down through zero: Potential start of a bearish cyclical phase.
* **Overbought/Oversold Levels:** While normalized, traders often establish subjective or statistically derived overbought/oversold levels (e.g., +0.85 and -0.85, or other values like +0.7, +0.9).
* Reaching above the overbought level and turning down may signal a potential cyclical peak.
* Falling below the oversold level and turning up may signal a potential cyclical trough.
## Limitations and Considerations
* **Parameter Sensitivity:** The indicator's performance depends on tuning `hpLength` and `ssfLength` to prevailing market conditions.
* **Non-Stationary Markets:** In strongly trending markets with weak cyclical components, or in very choppy non-cyclical conditions, the EBSW may produce less reliable signals.
* **Lag:** All filtering introduces some lag. The Super Smoother Filter is designed to minimize this for its degree of smoothing, but lag is still present.
* **Whipsaws:** Rapid oscillations around the zero line can occur in volatile or directionless markets.
* **Requires Confirmation:** Signals from EBSW are often best confirmed with other forms of technical analysis (e.g., price action, volume, other non-correlated indicators).
## References
* Ehlers, J. F. (2002). *Rocket Science for Traders: Digital Signal Processing Applications*. John Wiley & Sons.
* Ehlers, J. F. (2013). *Cycle Analytics for Traders: Advanced Technical Trading Concepts*. John Wiley & Sons.
חפש סקריפטים עבור "wave"
Hello Crypto! Modern Combo Snapshot
Unified long/short analyzer blending EMA structure, SuperTrend, WaveTrend, QQE, and volume pressure.
Background shading flags “watch” and “ready” states; optional long/short modules let you focus on one side.
Alerts fire when every checklist item aligns, while the side-panel table summarizes trend, momentum, liquidity, and overall score in real time.
Indicator → Trend Analysis
Indicator → Momentum Oscillators
Indicator → Volume Indicators
Tags:
cryptocurrency, bitcoin, altcoins, trend-following, momentum, volume, ema, supertrend, intraday, swing-trading, alerts, checklist, trading-strategy, risk-management
Modern Combo Crypto SuiteBlends long and short playbooks in one overlay with quick toggles.
Tracks EMA stacks, SuperTrend, WaveTrend, QQE, and volume to score bias.
Colors the chart background when watch/ready conditions align.
Fires alerts for imminent or fully aligned long/short setups.
Displays a live checklist table summarizing trend, momentum, and volume confidence.
Cycle VTLs – with Scaled Channels "Cycle VTLs – with Scaled Channels" for TradingView plots Valid Trend Lines (VTLs) based on Hurst's Cyclic Theory, connecting consecutive price peaks (downward VTLs) or troughs (upward VTLs) for specific cycles. It uses up to eight Simple Moving Averages (SMAs) (default lengths: 25, 50, 100, 200, 400, 800, 1600, 1600 bars) with customizable envelope bands to detect pivots and draw VTLs, enhanced by optional parallel channels scaled to envelope widths.
Key Features:
Valid Trend Lines (VTLs):
Upward VTLs: Connect consecutive cycle troughs, sloping upward.
Downward VTLs: Connect consecutive cycle peaks, sloping downward.
Hurst’s Rules:
Connects consecutive cycle peaks/troughs.
Must not cross price between points.
Downward VTLs:
No longer-cycle trough between peaks.
Invalid if slope is incorrect (upward VTL not up, downward VTL not down).
Expired VTLs: Historical VTLs (crossed by price) from up to three prior cycle waves.
SMA Cycles:
Eight customizable SMAs with envelope bands (offset × multiplier) for pivot detection.
Channels:
Optional parallel lines around VTLs, width set by channelFactor × envelope half-width.
Pivot Detection:
Fractal-based (pivotPeriod) on envelopes or price (usePriceFallback).
Customization:
Toggle cycles, VTLs, and channels.
Adjust SMA lengths, offsets, colors, line styles, and widths.
Enable centered envelopes, slope filtering, and limit stored lines (maxStoredLines).
Usage in Hurst’s Cyclic TheoryAnalysis:
VTLs identify cycle trends; upward VTLs suggest bullish momentum, downward VTLs bearish.
Price crossing below an upward VTL confirms a peak in the next longer cycle; crossing above a downward VTL confirms a trough.
Trading:
Buy: Price bounces off upward VTL or breaks above downward VTL.
Sell: Price rejects downward VTL or breaks below upward VTL.
Use channels for support/resistance, breakouts, or stop-loss/take-profit levels.
Workflow:
Add indicator on TradingView.
Enable desired cycles (e.g., 50-bar, 1600-bar), adjust pivotPeriod, channelFactor, and showOnlyCorrectSlope.
Monitor VTL crossings and channels for trade signals.
NotesOptimized for performance with line limits.
Ideal for cycle-based trend analysis across markets (stocks, forex, crypto).
Debug labels show pivot counts and VTL status.
This indicator supports Hurst’s Cyclic Theory for trend identification and trading decisions with flexible, cycle-based VTLs and channels.
Use global variable to scale to chart. best results use factors of 2 and double. try 2, 4, 8, 16...128, 256, etc until price action fits 95% in smallest cycle.
Pro Momentum Table + Trade Alerts📊 Indicator Name: Pro Momentum Table – ADX + DI + ATR + Astro Timing
🧠 Concept:
This indicator is designed for professional scalpers and intraday traders who want to capture only strong momentum waves — not noise. It combines trend strength, volatility, directional movement, momentum oscillation, vega divergence, and astrological timing into a single compact table on your chart.
⚙️ Components Explained:
Metric Description
ADX (Average Directional Index) Measures the strength of the trend. Values above 20 indicate that a meaningful move is starting.
+DI / -DI (Directional Indicators) Show whether buyers (+DI) or sellers (-DI) are dominating. Increasing +DI with ADX rising = bullish momentum. Increasing -DI with ADX rising = bearish momentum.
ATR (Average True Range) Shows volatility and expected range. Used for setting realistic stop-loss and multi-level targets (1×, 1.5×, 2×, 2.5× ATR).
Price Displays the current price level for quick reference.
CMO (Chande Momentum Oscillator) Measures short-term momentum direction and strength. Helps identify overbought/oversold conditions in trend continuation.
Vega Divergence Shows a synthetic reading of volatility pressure — "Bullish" when volatility expansion supports upward moves, "Bearish" for downward pressure, and "Neutral" otherwise.
Astro Remark Suggests ideal time windows based on planetary cycles for scalping entries. “Bullish Window” often aligns with high-probability long trades; “Bearish Window” favors shorts.
Trade Signal The core momentum condition: “Bullish Momentum” if ADX > 20 and +DI rising, “Bearish Momentum” if ADX > 20 and -DI rising, else “No Clear Momentum.”
📈 How to Use:
Wait for ADX > 20 – This confirms that the market is entering a strong momentum phase.
Check DI direction:
✅ +DI rising: Buyers gaining strength → look for long setups.
✅ -DI rising: Sellers gaining strength → look for short setups.
Use ATR to plan exits:
🎯 TP1 = Entry ± 1 × ATR
🎯 TP2 = Entry ± 1.5 × ATR
🎯 TP3 = Entry ± 2 × ATR
🎯 TP4 = Entry ± 2.5 × ATR
CMO & Vega Divergence: Confirm momentum direction and volatility expansion before committing.
Astro Remark: Align your scalping activity with the planetary support window for higher probability trades.
🪙 Pro Tips for Scalpers:
Only trade when ADX > 20 and DI is consistently rising. Ignore signals in choppy or sideways phases.
Avoid trades if Vega is neutral and CMO is flat – these usually indicate fake breakouts.
If targets aren’t hit within expected ATR-based time, treat the move as false and exit early.
Combine with 9 EMA and 20 EMA (hidden) for wave structure confirmation without cluttering the chart.
💡 Summary:
This indicator acts as a real-time trade decision dashboard. It removes clutter from the chart and delivers everything a professional scalper needs — strength, direction, volatility, momentum, timing, and actionable trade bias — all in one elegant table.
EvoTrend-X Indicator — Evolutionary Trend Learner ExperimentalEvoTrend-X Indicator — Evolutionary Trend Learner
NOTE: This is an experimental Pine Script v6 port of a Python prototype. Pine wasn’t the original research language, so there may be small quirks—your feedback and bug reports are very welcome. The model is non-repainting, MTF-safe (lookahead_off + gaps_on), and features an adaptive (fitness-based) candidate selector, confidence gating, and a volatility filter.
⸻
What it is
EvoTrend-X is adaptive trend indicator that learns which moving-average length best fits the current market. It maintains a small “population” of fast EMA candidates, rewards those that align with price momentum, and continuously selects the best performer. Signals are gated by a multi-factor Confidence score (fitness, strength vs. ATR, MTF agreement) and a volatility filter (ATR%). You get a clean Fast/Slow pair (for the currently best candidate), optional HTF filter, a fitness ribbon for transparency, and a themed info panel with a one-glance STATUS readout.
Core outputs
• Selected Fast/Slow EMAs (auto-chosen from candidates via fitness learning)
• Spread cross (Fast – Slow) → visual BUY/SELL markers + alert hooks
• Confidence % (0–100): Fitness ⊕ Distance vs. ATR ⊕ MTF agreement
• Gates: Trend regime (Kaufman ER), Volatility (ATR%), MTF filter (optional)
• Candidate Fitness Ribbon: shows which lengths the learner currently prefers
• Export plot: hidden series “EvoTrend-X Export (spread)” for downstream use
⸻
Why it’s different
• Evolutionary learning (on-chart): Each candidate EMA length gets rewarded if its slope matches price change and penalized otherwise, with a gentle decay so the model forgets stale regimes. The best fitness wins the right to define the displayed Fast/Slow pair.
• Confidence gate: Signals don’t light up unless multiple conditions concur: learned fitness, spread strength vs. volatility, and (optionally) higher-timeframe trend.
• Volatility awareness: ATR% filter blocks low-energy environments that cause death-by-a-thousand-whipsaws. Your “why no signal?” answer is always visible in the STATUS.
• Preset discipline, Custom freedom: Presets set reasonable baselines for FX, equities, and crypto; Custom exposes all knobs and honors your inputs one-to-one.
• Non-repainting rigor: All MTF calls use lookahead_off + gaps_on. Decisions use confirmed bars. No forward refs. No conditional ta.* pitfalls.
⸻
Presets (and what they do)
• FX 1H (Conservative): Medium candidates, slightly higher MinConf, modest ATR% floor. Good for macro sessions and cleaner swings.
• FX 15m (Active): Shorter candidates, looser MinConf, higher ATR% floor. Designed for intraday velocity and decisive sessions.
• Equities 1D: Longer candidates, gentler volatility floor. Suits index/large-cap trend waves.
• Crypto 1H: Mid-short candidates, higher ATR% floor for 24/7 chop, stronger MinConf to avoid noise.
• Custom: Your inputs are used directly (no override). Ideal for systematic tuning or bespoke assets.
⸻
How the learning works (at a glance)
1. Candidates: A small set of fast EMA lengths (e.g., 8/12/16/20/26/34). Slow = Fast × multiplier (default ×2.0).
2. Reward/decay: If price change and the candidate’s Fast slope agree (both up or both down), its fitness increases; otherwise decreases. A decay constant slowly forgets the distant past.
3. Selection: The candidate with highest fitness defines the displayed Fast/Slow pair.
4. Signal engine: Crosses of the spread (Fast − Slow) across zero mark potential regime shifts. A Confidence score and gates decide whether to surface them.
⸻
Controls & what they mean
Learning / Regime
• Slow length = Fast ×: scales the Slow EMA relative to each Fast candidate. Larger multiplier = smoother regime detection, fewer whipsaws.
• ER length / threshold: Kaufman Efficiency Ratio; above threshold = “Trending” background.
• Learning step, Decay: Larger step reacts faster to new behavior; decay sets how quickly the past is forgotten.
Confidence / Volatility gate
• Min Confidence (%): Minimum score to show signals (and fire alerts). Raising it filters noise; lowering it increases frequency.
• ATR length: The ATR window for both the ATR% filter and strength normalization. Shorter = faster, but choppier.
• Min ATR% (percent): ATR as a percentage of price. If ATR% < Min ATR% → status shows BLOCK: low vola.
MTF Trend Filter
• Use HTF filter / Timeframe / Fast & Slow: HTF Fast>Slow for longs, Fast threshold; exit when spread flips or Confidence decays below your comfort zone.
2) FX index/majors, 15m (active intraday)
• Preset: FX 15m (Active).
• Gate: MinConf 60–70; Min ATR% 0.15–0.30.
• Flow: Focus on session opens (LDN/NY). The ribbon should heat up on shorter candidates before valid crosses appear—good early warning.
3) SPY / Index futures, 1D (positioning)
• Preset: Equities 1D.
• Gate: MinConf 55–65; Min ATR% 0.05–0.12.
• Flow: Use spread crosses as regime flags; add timing from price structure. For adds, wait for ER to remain trending across several bars.
4) BTCUSD, 1H (24/7)
• Preset: Crypto 1H.
• Gate: MinConf 70–80; Min ATR% 0.20–0.35.
• Flow: Crypto chops—volatility filter is your friend. When ribbon and HTF OK agree, favor continuation entries; otherwise stand down.
⸻
Reading the Info Panel (and fixing “no signals”)
The panel is your self-diagnostic:
• HTF OK? False means the higher-timeframe EMAs disagree with your intended side.
• Regime: If “Chop”, ER < threshold. Consider raising the threshold or waiting.
• Confidence: Heat-colored; if below MinConf, the gate blocks signals.
• ATR% vs. Min ATR%: If ATR% < Min ATR%, status shows BLOCK: low vola.
• STATUS (composite):
• BLOCK: low vola → increase Min ATR% down (i.e., allow lower vol) or wait for expansion.
• BLOCK: HTF filter → disable HTF or align with the HTF tide.
• BLOCK: confidence → lower MinConf slightly or wait for stronger alignment.
• OK → you’ll see markers on valid crosses.
⸻
Alerts
Two static alert hooks:
• BUY cross — spread crosses up and all gates (ER, Vol, MTF, Confidence) are open.
• SELL cross — mirror of the above.
Create them once from “Add Alert” → choose the condition by name.
⸻
Exporting to other scripts
In your other Pine indicators/strategies, add an input.source and select EvoTrend-X → “EvoTrend-X Export (spread)”. Common uses:
• Build a rule: only trade when exported spread > 0 (trend filter).
• Combine with your oscillator: oscillator oversold and spread > 0 → buy bias.
⸻
Best practices
• Let it learn: Keep Learning step moderate (0.4–0.6) and Decay close to 1.0 (e.g., 0.99–0.997) for smooth regime memory.
• Respect volatility: Tune Min ATR% by asset and timeframe. FX 1H ≈ 0.10–0.20; crypto 1H ≈ 0.20–0.35; equities 1D ≈ 0.05–0.12.
• MTF discipline: HTF filter removes lots of “almost” trades. If you prefer aggressive entries, turn it off and rely more on Confidence.
• Confidence as throttle:
• 40–60%: exploratory; expect more signals.
• 60–75%: balanced; good daily driver.
• 75–90%: selective; catch the clean stuff.
• 90–100%: only A-setups; patient mode.
• Watch the ribbon: When shorter candidates heat up before a cross, momentum is forming. If long candidates dominate, you’re in a slower trend cycle.
⸻
Non-repainting & safety notes
• All request.security() calls use lookahead=barmerge.lookahead_off, gaps=barmerge.gaps_on.
• No forward references; decisions rely on confirmed bar data.
• EMA lengths are simple ints (no series-length errors).
• Confidence components are computed every bar (no conditional ta.* traps).
⸻
Limitations & tips
• Chop happens: ER helps, but sideways microstructure can still flicker—use Confidence + Vol filter as brakes.
• Presets ≠ oracle: They’re sensible baselines; always tune MinConf and Min ATR% to your venue and session.
• Theme “Auto”: Pine cannot read chart theme; “Auto” defaults to a Dark-friendly palette.
⸻
Publisher’s Screenshots Checklist
1) FX swing — EURUSD 1H
• Preset: FX 1H (Conservative)
• Params: MinConf=70, ATR Len=14, Min ATR%=0.12, MTF ON (TF=4H, 20/50)
• Show: Clear BUY cross, STATUS=OK, green regime background; Fitness Ribbon visible.
2) FX intraday — GBPUSD 15m
• Preset: FX 15m (Active)
• Params: MinConf=60, ATR Len=14, Min ATR%=0.20, MTF ON (TF=60m)
• Show: SELL cross near London session open. HTF lines enabled (translucent).
• Caption: “GBPUSD 15m • Active session sell with MTF alignment.”
3) Indices — SPY 1D
• Preset: Equities 1D
• Params: MinConf=60, ATR Len=14, Min ATR%=0.08, MTF ON (TF=1W, 20/50)
• Show: Longer trend run after BUY cross; regime shading shows persistence.
• Caption: “SPY 1D • Trend run after BUY cross; weekly filter aligned.”
4) Crypto — BINANCE:BTCUSDT 1H
• Preset: Crypto 1H
• Params: MinConf=75, ATR Len=14, Min ATR%=0.25, MTF ON (TF=4H)
• Show: BUY cross + quick follow-through; Ribbon warming (reds/yellows → greens).
• Caption: “BTCUSDT 1H • Momentum break with high confidence and ribbon turning.”
Guppy MMA [Alpha Extract]A sophisticated trend-following and momentum assessment system that constructs dynamic trader and investor sentiment channels using multiple moving average groups with advanced scoring mechanisms and smoothed CCI-style visualizations for optimal market trend analysis. Utilizing enhanced dual-group methodology with threshold-based trend detection, this indicator delivers institutional-grade GMMA analysis that adapts to varying market conditions while providing high-probability entry and exit signals through crossover and extreme value detection with comprehensive visual mapping and alert integration.
🔶 Advanced Channel Construction
Implements dual-group architecture using short-term and long-term moving averages as foundation points, applying customizable MA types to reduce noise and score-based averaging for sentiment-responsive trend channels. The system creates trader channels from shorter periods and investor channels from longer periods with configurable periods for optimal market reaction zones.
// Core Channel Calculation Framework
maType = input.string("EMA", title="Moving Average Type", options= )
// Short-Term Group Construction
stMA1 = ma(close, st1, maType)
stMA2 = ma(close, st2, maType)
// Long-Term Group Construction
ltMA1 = ma(close, lt1, maType)
ltMA2 = ma(close, lt2, maType)
// Smoothing Application
smoothedavg = ma(overallAvg, 10, maType)
🔶 Volatility-Adaptive Zone Framework
Features dynamic score-based averaging that expands sentiment signals during strong trend periods and contracts during consolidation phases, preventing false signals while maintaining sensitivity to genuine momentum shifts. The dual-group averaging system optimizes zone boundaries for realistic market behavior patterns.
// Dynamic Sentiment Adjustment
shortTermAvg = (stScore1 + stScore2 + ... + stScore11) / 11
longTermAvg = (ltScore1 + ltScore2 + ... + ltScore11) / 11
// Dual-Group Zone Optimization
overallAvg = (shortTermAvg + longTermAvg) / 2
allMAAvg = (shortTermAvg * 11 + longTermAvg * 11) / 22
🔶 Step-Like Boundary Evolution
Creates threshold-based trend boundaries that update on smoothed average changes, providing visual history of evolving bullish and bearish levels with performance-optimized threshold management limited to key zones for clean chart presentation and efficient processing.
🔶 Comprehensive Signal Detection
Generates buy and sell signals through sophisticated crossover analysis, monitoring smoothed average interaction with zero-line and thresholds for high-probability entry and exit identification. The system distinguishes between trend continuation and reversal patterns with precision timing.
🔶 Enhanced Visual Architecture
Provides translucent zone fills with gradient intensity scaling, threshold-based historical boundaries, and dynamic background highlighting that activates upon trend changes. The visual system uses institutional color coding with green bullish zones and red bearish zones for intuitive market structure interpretation.
🔶 Intelligent Zone Management
Implements automatic trend relevance filtering, displaying signals only when smoothed average proximity warrants analysis attention. The system maintains optimal performance through smart averaging management and historical level tracking with configurable MA periods for various market conditions.
🔶 Multi-Dimensional Analysis Framework
Combines trend continuation analysis through threshold crossovers with momentum detection via extreme markers, providing comprehensive market structure assessment suitable for both trending and ranging market conditions with score-normalized accuracy.
🔶 Advanced Alert Integration
Features comprehensive notification system covering buy signals, sell signals, strong bull conditions, and strong bear conditions with customizable alert conditions. The system enables precise position management through real-time notifications of critical sentiment interaction events and zone boundary violations.
🔶 Performance Optimization
Utilizes efficient MA smoothing algorithms with configurable types for noise reduction while maintaining responsiveness to genuine market structure changes. The system includes automatic visual level cleanup and performance-optimized visual rendering for smooth operation across all timeframes.
This indicator delivers sophisticated GMMA-based market analysis through score-adaptive averaging calculations and intelligent group construction methodology. By combining dynamic trader and investor sentiment detection with advanced signal generation and comprehensive visual mapping, it provides institutional-grade trend analysis suitable for cryptocurrency, forex, and equity markets. The system's ability to adapt to varying market conditions while maintaining signal accuracy makes it essential for traders seeking systematic approaches to trend trading, momentum reversals, and sentiment continuation analysis with clearly defined risk parameters and comprehensive alert integration.
Swing Oracle Stock// (\_/)
// ( •.•)
// (")_(")
📌 Swing Oracle Stock – Professional Cycle & Trend Detection Indicator
The Swing Oracle Stock is an advanced market analysis tool designed to highlight price cycles, trend shifts, and key trading zones with precision. It combines trendline dynamics, normalized oscillators, and multi-timeframe confirmation into a single comprehensive indicator.
🔑 Key Features
NDOS (Normalized Dynamic Oscillator System):
Measures price strength relative to recent highs and lows to detect overbought, neutral, and oversold zones.
Dynamic Trendline (EMA8 or SMA231):
Flexible source selection for adapting to different trading styles (scalping vs. swing).
Multi-Timeframe H1 Confirmation:
Adds higher-timeframe validation to improve signal reliability.
Automated Buy & Sell Signals:
Triggered only on significant crossovers above/below defined levels.
Weekly Cycles (7-day M5 projection):
Tracks recurring time-based market cycles to anticipate reversal points.
Intuitive Visualization:
Colored zones (high, low, neutral) for quick market context.
Optional background and candlestick coloring for better clarity.
Multi-Timeframe Cross Table:
Automatically compares SMA50 vs. EMA200 across multiple timeframes (1m → 4h), showing clear status:
⭐️⬆️ UP = bullish trend confirmation
💀⬇️ Drop = bearish trend confirmation
📊 Built-in Statistical Tools
Normalized difference between short and long EMA.
Projected normalized mean levels plotted directly on the main chart.
Dynamic analysis of price distance from SMA50 to capture market “waves.”
🎯 Use Cases
Spot trend reversals with multi-timeframe confirmation.
Identify powerful breakout and breakdown zones.
Time entries and exits based on trend + cycle confluence.
Enhance market timing for swing trades, scalps, or long-term positions.
⚡ Swing Oracle Stock brings together cycle detection, oscillator normalization, and multi-timeframe confirmation into one streamlined indicator for traders who want a professional edge.
Divergence TridentA Combination of MACD + VFI + WaveTrend
Tradingview hates me and is making me explain this in greater detail so maybe this is enough????
cd_HTF_bias_CxOverview:
No matter our trading style or model, to increase our success rate, we must move in the direction of the trend and align with the Higher Time Frame (HTF). Trading "gurus" call this the HTF bias. While we small fish tend to swim in all directions, the smart way is to flow with the big wave and the current. This indicator is designed to help us anticipate that major wave.
________________________________________
Details and Usage:
This indicator observes HTF price action across preferably seven different pairs, following specific rules. It confirms potential directional moves using CISD levels on a Medium Time Frame (MTF). In short, it forecasts the likely direction (HTF bias). The user can then search for trade opportunities aligned with this bias on a Lower Time Frame (LTF), using their preferred pair, entry model, and style.
________________________________________
Timeframe Alignment:
The commonly accepted LTF/MTF/HTF combinations include:
• 1m – 15m – H4
• 3m – H1 – Daily / 3m – 30m – Daily
• 5m – H1 – Daily
• 15m – H4 – Weekly
• H1 – Daily – Monthly
• H4 – Weekly – Quarterly
Example: If you're trading with a 3m model on a 30m/3m setup, you should seek trades in the direction of the H1/Daily bias.
________________________________________
How It Works:
The indicator first looks for sweeps on the selected HTF — when any of the last four candles are swept, the first condition is met.
The second step is confirmation with a CISD close on the MTF — once a candle closes above/below the CISD level, the second condition is fulfilled. This suggests the price has made its directional decision.
Example: If a previous HTF candle is swept and we receive a bearish CISD confirmation on H1, the HTF bias becomes bearish.
After this, you may switch to a more granular setup like HTF: 30m and MTF: 3m to look for trade entries aligned with the bias (e.g., 30m sweep + 3m CISD).
________________________________________
How Is Bias Determined?
• HTF Sweep + MTF CISD = SC (Sweep & CISD)
• Latest Bullish SC → Bias: Bullish
• Latest Bearish SC → Bias: Bearish
• Price closes above the last Bearish SC → Bias: Strong Bullish
• Price closes below the last Bullish SC → Bias: Strong Bearish
• Strong Bullish bias + Bearish CISD (without HTF sweep) → Bias: Bullish
• Strong Bearish bias + Bullish CISD (without HTF sweep) → Bias: Bearish
• Bearish price violates SC high, but Bullish SC is untouched → Bias: Bullish
• Bullish price violates SC low, but Bearish SC is untouched → Bias: Bearish
• If neither side generates SC → Bias: No Bias
The logic is built on the idea that a price overcoming resistance is stronger, and encountering resistance is weaker. This model is based on the well-known “Daily Bias” structure, but with personal refinements.
________________________________________
What’s on the Screen?
• Classic HTF zones (boxes)
• Potential MTF CISD levels
• Confirmed MTF lines
• Sweep zones when HTF sweeps occur
• Result table showing current bias status
________________________________________
Usage:
• Select HTF and MTF timeframes aligned with your trading timeframe.
• Adjust color and position settings as needed.
• Enter up to seven pairs to track via the menu.
• Use the checkbox next to each pair to enable/disable them.
• If “Ignore these assets” is checked, all pairs will be disabled, and only the currently open chart pair will be tracked.
________________________________________
Alerts:
You can choose alerts for Bullish, Bearish, Strong Bullish, or Strong Bearish conditions.
There are two types of alert sources:
1. From the indicator’s internal list
2. From TradingView’s watchlist
Visual example:
________________________________________
How I Use It:
• For spot trades, I use HTF: Weekly and MTF: H4 and look for Bullish or Strong Bullish pairs.
• For scalping, I follow bias from HTF: Daily and MTF: H1.
Example: If the indicator shows a Bearish HTF Bias, I switch to HTF: 30m and MTF: 3m and enter trades once bearish conditions are met (timeframe alignment).
________________________________________
Important Notes:
• The indicator defines CISD levels only at HTF high and low levels.
• If your chart is on a higher timeframe than your selected HTF/MTF, no data will appear.
Example: If HTF = H1 and MTF = 5m, opening a chart on H4 will result in a blank screen.
• The drawn CISD level on screen is the MTF CISD level.
• Not every alert should be traded. Always confirm with personal experience and visual validation.
• Receiving multiple Strong Bullish/Bearish alerts is intentional. (Trick 😊)
• Please share your feedback and suggestions!
________________________________________
And Most Importantly:
Don't leave street animals without water and food!
Happy trading!
WT_CROSS Dip Buy Signal(ozkan)This script identifies potential buy opportunities based on WaveTrend (WT_CROSS) momentum crossing below the -60 level — often indicating oversold conditions.
Additional filters include price being above the Kaufman Adaptive Moving Average (KAMA) and volume below the 5-period average, which helps isolate pullbacks within an uptrend.
Buy Signal Conditions:
WT1 < -60
Price > KAMA
Volume < 5-period SMA of volume
Purpose:
To capture early entries at possible local bottoms during bullish trends while avoiding high-volume breakdown traps.
🔔 You can also set an alert based on this condition.
Quantum State Superposition Indicator (QSSI)Quantum State Superposition Indicator (QSSI) - Where Physics Meets Finance
The Quantum Revolution in Market Analysis
After months of research into quantum mechanics and its applications to financial markets, I'm thrilled to present the Quantum State Superposition Indicator (QSSI) - a groundbreaking approach that models price action through the lens of quantum physics. This isn't just another technical indicator; it's a paradigm shift in how we understand market behavior.
The Theoretical Foundation
Quantum Superposition in Markets
In quantum mechanics, particles exist in multiple states simultaneously until observed. Similarly, markets exist in a superposition of potential states (bullish, bearish, neutral) until a significant volume event "collapses" the wave function into a definitive direction.
The mathematical framework:
Wave Function (Ψ): Represents the market's quantum state as a weighted sum of all possible states:
Ψ = Σ(αᵢ × Sᵢ)
Where αᵢ are probability amplitudes and Sᵢ are individual quantum states.
Probability Amplitudes: Calculated using the Born rule, normalized so Σ|αᵢ|² = 1
Observation Operator: Volume/Average Volume ratio determines observation strength
The Five Quantum States
Momentum State: Short-term price velocity (EMA of returns)
Mean Reversion State: Deviation from equilibrium (normalized z-score)
Volatility Expansion State: ATR relative to historical average
Trend Continuation State: Long-term price positioning
Chaos State: Volatility of volatility (market uncertainty)
Each state contributes to the overall wave function based on current market conditions.
Wave Function Collapse
When volume exceeds the observation threshold (default 1.5x average), the wave function "collapses," committing the market to a direction. This models how institutional volume forces markets out of uncertainty into trending states.
Collapse Detection Formula:
Collapse = Volume > (Threshold × Average Volume)
Direction = Sign(Ψ) at collapse moment
Advanced Quantum Concepts
Heisenberg Uncertainty Principle
The indicator calculates market uncertainty as the product of price and momentum
uncertainties:
ΔP × ΔM = ℏ (market uncertainty constant)
This manifests as dynamic uncertainty bands that widen during unstable periods.
Quantum Tunneling
Calculates the probability of price "tunneling" through resistance/support barriers:
P(tunnel) = e^(-2×|barrier_height|×√coherence_length)
Unlike classical technical analysis, this gives probability of breakouts before they occur.
Entanglement
Measures the quantum correlation between price and volume:
Entanglement = |Correlation(Price, Volume, lookback)|
High entanglement suggests coordinated institutional activity.
Decoherence
When market states lose quantum properties and behave classically:
Decoherence = 1 - Σ(amplitude²)
Indicates trend emergence from quantum uncertainty.
Visual Innovation
Probability Clouds
Three-tier probability distributions visualize market uncertainty:
Inner Cloud (68%): One standard deviation - most likely price range
Middle Cloud (95%): Two standard deviations - probable extremes
Outer Cloud (99.7%): Three standard deviations - tail risk zones
Cloud width directly represents market uncertainty - wider clouds signal higher entropy states.
Quantum State Visualization
Colored dots represent individual quantum states:
Green: Momentum state strength
Red: Mean reversion state strength
Yellow: Volatility state strength
Dot brightness indicates amplitude (influence) of each state.
Collapse Events
Aqua Diamonds (Above): Bullish collapse - upward commitment
Pink Diamonds (Below): Bearish collapse - downward commitment
These mark precise moments when markets exit superposition.
Implementation Details
Core Calculations
Feature Extraction: Normalize price returns, volume ratios, and volatility measures
State Calculation: Compute each quantum state's value
Amplitude Assignment: Weight states by market conditions and observation strength
Wave Function: Sum weighted states for final market quantum state
Visualization: Transform quantum values to price space for display
Performance Optimization
- Efficient array operations for state calculations
- Single-pass normalization algorithms
- Optimized correlation calculations for entanglement
- Smart label management to prevent visual clutter
Trading Applications:
Signal Generation
Bullish Signals:
- Positive wave function during collapse
- High tunneling probability at support
- Coherent market state with bullish bias
Bearish Signals:
- Negative wave function during collapse
- High tunneling probability at resistance
- Decoherent state transitioning bearish
Risk Management
Uncertainty-Based Position Sizing:
Narrow clouds: Normal position size
Wide clouds: Reduced position size
Extreme uncertainty: Stay flat
Quantum Stop Losses:
- Place stops outside probability clouds
- Adjust for Heisenberg uncertainty
- Respect quantum tunneling levels
Market Regime Recognition
Quantum Coherent (Superposed):
- Market in multiple states
- Avoid directional trades
- Prepare for collapse
Quantum Decoherent (Classical):
-Clear trend emergence
- Follow directional signals
- Traditional analysis applies
Advanced Features
Adaptive Dashboards
Quantum State Panel: Real-time wave function, dominant state, and coherence status
Performance Metrics: Win rate, signal frequency, and regime analysis
Information Guide: Comprehensive explanation of all quantum concepts
- All dashboards feature adjustable sizing for different screen resolutions.
Multi-Timeframe Quantum Analysis
The indicator adapts to any timeframe:
Scalping (1-5m): Short coherence length, sensitive thresholds
Day Trading (15m-1H): Balanced parameters
Swing Trading (4H-1D): Long coherence, stable states
Alert System
Sophisticated alerts for:
- Wave function collapse events
- Decoherence transitions
- High tunneling probability
- Strong entanglement detection
Originality & Innovation
This indicator introduces several firsts:
Quantum Superposition: First to model markets as quantum systems
Wave Function Collapse: Original volume-triggered state commitment
Tunneling Probability: Novel breakout prediction method
Entanglement Metrics: Unique price-volume quantum correlation
Probability Clouds: Revolutionary uncertainty visualization
Development Journey
Creating QSSI required:
- Deep study of quantum mechanics principles
- Translation of physics equations to market context
- Extensive backtesting across multiple markets
- UI/UX optimization for trader accessibility
- Performance optimization for real-time calculation
- The result bridges cutting-edge physics with practical trading.
Best Practices
Parameter Optimization
Quantum States (2-5):
- 2-3 for simple markets (forex majors)
- 4-5 for complex markets (indices, crypto)
Coherence Length (10-50):
- Lower for fast markets
- Higher for stable markets
Observation Threshold (1.0-3.0):
- Lower for active markets
- Higher for thin markets
Signal Confirmation
Always confirm quantum signals with:
- Market structure (support/resistance)
- Volume patterns
- Correlated assets
- Fundamental context
Risk Guidelines
- Never risk more than 2% per trade
- Respect probability cloud boundaries
- Exit on decoherence shifts
- Scale with confidence levels
Educational Value
QSSI teaches advanced concepts:
- Quantum mechanics applications
- Probability theory
- Non-linear dynamics
- Risk management
- Market microstructure
Perfect for traders seeking deeper market understanding.
Disclaimer
This indicator is for educational and research purposes only. While quantum mechanics provides a fascinating framework for market analysis, no indicator can predict future prices with certainty. The probabilistic nature of both quantum mechanics and markets means outcomes are inherently uncertain.
Always use proper risk management, conduct thorough analysis, and never risk more than you can afford to lose. Past performance does not guarantee future results.
Conclusion
The Quantum State Superposition Indicator represents a revolutionary approach to market analysis, bringing institutional-grade quantum modeling to retail traders. By viewing markets through the lens of quantum mechanics, we gain unique insights into uncertainty, probability, and state transitions that classical indicators miss.
Whether you're a physicist interested in finance or a trader seeking cutting-edge tools, QSSI opens new dimensions in market analysis.
"The market, like Schrödinger's cat, exists in multiple states until observed through volume."
* As you may have noticed, the past two indicators I've released (Lorentzian Classification and Quantum State Superposition) are designed with strategy implementation in mind. I'm currently developing a stable execution platform that's completely unique and moves away from traditional ATR-based position sizing and stop loss systems. I've found ATR-based approaches to be unreliable in volatile markets and regime transitions - they often lag behind actual market conditions and can lead to premature exits or oversized positions during volatility spikes.
The goal is to create something that adapts to market conditions in real-time using the quantum and relativistic principles we've been exploring. Hopefully I'll have something groundbreaking to share soon. Stay tuned!
Trade with quantum insight. Trade with QSSI .
— Dskyz , for DAFE Trading Systems
Macd, Wt Cross & HVPMacd Wt Cross & HVP – Advanced Multi-Signal Indicator
This script is a custom-designed multi-signal indicator that brings together three proven concepts to provide a complete view of market momentum, reversals, and volatility build-ups. It is built for traders who want to anticipate key market moves, not just react to them.
Why This Combination ?
While each tool has its strengths, their combined use creates powerful signal confluence.
Instead of juggling multiple indicators separately, this script synchronizes three key perspectives into a single, intuitive display—helping you trade with greater clarity and confidence.
1. MACD Histogram – Momentum and Trend Clarity
At the core of the indicator is the MACD histogram, calculated as the difference between two exponential moving averages (EMAs).
Color-coded bars represent momentum direction and intensity:
Green / blue bars: bullish momentum
Red / pink bars: bearish momentum
Color intensity shows acceleration or weakening of trend.
This visual makes it easy to detect trend shifts and momentum divergence at a glance.
2. WT Cross Signals – Early Reversal Detection
Overlaid on the histogram are green and red dots, based on the logic of the WaveTrend oscillator cross:
Green dots = potential bullish cross (buy signal)
Red dots = potential bearish cross (sell signal)
These signals are helpful for identifying reversal points during both trending and ranging phases.
3. Historical Volatility Percentile (HVP) – Volatility Compression Zones
Behind the histogram, purple vertical zones highlight periods of low historical volatility, based on the HVP:
When volatility compresses below a specific threshold, these zones appear.
Such periods are often followed by explosive price moves, making them prime areas for pre-breakout positioning.
By integrating HVP, the script doesn’t just tell you where the trend is—it tells you when the trend is likely to erupt.
How to Use This Script
Use the MACD histogram to confirm the dominant trend and its strength.
Watch for WT Cross dots as potential entry/exit signals in alignment or divergence with the MACD.
Monitor HVP purple zones as warnings of incoming volatility expansions—ideal moments to prepare for breakout trades.
Best results occur when all three elements align, offering a high-probability trade setup.
What Makes This Script Original?
Unlike many mashups, this script was not created by simply merging indicators. Each component was carefully integrated to serve a specific, complementary purpose:
MACD detects directional bias
WT Cross adds precision timing
HVP anticipates volatility-based breakout timing
This results in a strategic tool for traders, useful on multiple timeframes and adaptable to different trading styles (trend-following, breakout, swing).
[blackcat] L2 Ehlers Autocorrelation Indicator V2OVERVIEW
The Ehlers Autocorrelation Indicator is a technical analysis tool developed by John F. Ehlers that measures the correlation between price data and its lagged versions to identify potential market cycles and reversals.
BACKGROUND
Originally introduced in Ehlers' "Cycle Analytics for Traders" (2013), this indicator leverages autocorrelation principles to detect patterns in market data that deviate from random noise or perfect sine waves.
FEATURES
• Calculates Pearson correlation coefficients for lags from 0 to 60 bars
• Visualizes correlations using colored bars ranging from red (negative correlation) to yellow (positive correlation)
• Provides minimum averaging option through AvgLength input parameter
• Displays sharp reversal signals at price turning points
• Shows variations in bar thickness and count over time
HOW TO USE
Add the indicator to your chart
Adjust the AvgLength input as needed:
• Set to 0 for no averaging
• Increase value for smoother results
Interpret the colored bars:
• Red: Negative correlation
• Yellow: Positive correlation
• Sharp transitions indicate potential reversal points
LIMITATIONS
• Requires sufficient historical data for accurate calculations
• Performance may vary across different market conditions
• Results depend on proper parameter settings
NOTES
• The indicator uses highpass filtering and super smoother filtering techniques
• Color intensity varies based on correlation strength
• Multiple lag periods are displayed simultaneously for comprehensive analysis
THANKS
This implementation is based on Ehlers' original work and has been adapted for TradingView's Pine Script platform.
Squeeze Momentum Indicator Strategy [LazyBear + PineIndicators]The Squeeze Momentum Indicator Strategy (SQZMOM_LB Strategy) is an automated trading strategy based on the Squeeze Momentum Indicator developed by LazyBear, which itself is a modification of John Carter's "TTM Squeeze" concept from his book Mastering the Trade (Chapter 11). This strategy is designed to identify low-volatility phases in the market, which often precede explosive price movements, and to enter trades in the direction of the prevailing momentum.
Concept & Indicator Breakdown
The strategy employs a combination of Bollinger Bands (BB) and Keltner Channels (KC) to detect market squeezes:
Squeeze Condition:
When Bollinger Bands are inside the Keltner Channels (Black Crosses), volatility is low, signaling a potential upcoming price breakout.
When Bollinger Bands move outside Keltner Channels (Gray Crosses), the squeeze is released, indicating an expansion in volatility.
Momentum Calculation:
A linear regression-based momentum value is used instead of traditional momentum indicators.
The momentum histogram is color-coded to show strength and direction:
Lime/Green: Increasing bullish momentum
Red/Maroon: Increasing bearish momentum
Signal Colors:
Black: Market is in a squeeze (low volatility).
Gray: Squeeze is released, and volatility is expanding.
Blue: No squeeze condition is present.
Strategy Logic
The script uses historical volatility conditions and momentum trends to generate buy/sell signals and manage positions.
1. Entry Conditions
Long Position (Buy)
The squeeze just released (Gray Cross after Black Cross).
The momentum value is increasing and positive.
The momentum is at a local low compared to the past 100 bars.
The price is above the 100-period EMA.
The closing price is higher than the previous close.
Short Position (Sell)
The squeeze just released (Gray Cross after Black Cross).
The momentum value is decreasing and negative.
The momentum is at a local high compared to the past 100 bars.
The price is below the 100-period EMA.
The closing price is lower than the previous close.
2. Exit Conditions
Long Exit:
The momentum value starts decreasing (momentum lower than previous bar).
Short Exit:
The momentum value starts increasing (momentum higher than previous bar).
Position Sizing
Position size is dynamically adjusted based on 8% of strategy equity, divided by the current closing price, ensuring risk-adjusted trade sizes.
How to Use This Strategy
Apply on Suitable Markets:
Best for stocks, indices, and forex pairs with momentum-driven price action.
Works on multiple timeframes but is most effective on higher timeframes (1H, 4H, Daily).
Confirm Entries with Additional Indicators:
The author recommends ADX or WaveTrend to refine entries and avoid false signals.
Risk Management:
Since the strategy dynamically sizes positions, it's advised to use stop-losses or risk-based exits to avoid excessive drawdowns.
Final Thoughts
The Squeeze Momentum Indicator Strategy provides a systematic approach to trading volatility expansions, leveraging the classic TTM Squeeze principles with a unique linear regression-based momentum calculation. Originally inspired by John Carter’s method, LazyBear's version and this strategy offer a refined, adaptable tool for traders looking to capitalize on market momentum shifts.
Sigma 2.0 - Advanced Buy and Sell Signal IndicatorOverview:
Sigma 2.0 is a sophisticated trading indicator designed to help traders identify potential buy and sell opportunities across various financial markets. By leveraging advanced mathematical calculations and incorporating multiple analytical tools, Sigma 2.0 aims to enhance trading strategies by providing precise entry and exit signals.
Key Features:
Advanced Sigma Calculations:
Utilizes a combination of Exponential Moving Averages (EMAs) and price deviations to calculate the Sigma lines (sigma1 and sigma2).
Detects potential trend reversals through the crossover of these Sigma lines.
Customizable Signal Filtering:
Offers the ability to filter buy and sell signals based on user-defined thresholds.
Helps reduce false signals in volatile markets by setting overbought and oversold levels.
Overbought and Oversold Detection:
Identifies extreme market conditions where price reversals are more likely.
Changes the background color of the chart to visually indicate overbought or oversold states.
Integration of Exponential Moving Averages (EMAs):
Includes EMAs of different lengths (10, 21, 55, 200) to assist in identifying market trends.
EMAs act as dynamic support and resistance levels.
Higher Timeframe Signal Incorporation:
Allows users to include signals from a higher timeframe to align trades with the broader market trend.
Enhances the reliability of signals by considering multiple timeframes.
Custom Alerts:
Provides alert conditions for both buy and sell signals.
Enables traders to receive notifications, ensuring timely decision-making.
How It Works:
Sigma Calculation Methodology:
The indicator calculates an average price (ap) and applies EMAs to derive the Sigma lines.
sigma1 represents the smoothed price deviation, while sigma2 is a moving average of sigma1.
A crossover of sigma1 above sigma2 generates a buy signal, indicating potential upward momentum.
Conversely, a crossover of sigma1 below sigma2 generates a sell signal.
Signal Filtering and Thresholds:
Users can enable filtering to only consider signals when sigma1 is below or above certain thresholds.
This helps in focusing on more significant market movements and reducing noise.
Overbought/Oversold Levels:
The indicator monitors sigma1 to detect when the market is in extreme conditions.
Background color changes provide a quick visual cue for these conditions.
EMA Analysis:
The plotted EMAs help in confirming the trend direction.
They can be used alongside Sigma signals to validate trade entries and exits.
Higher Timeframe Signals:
Incorporates signals from a user-selected higher timeframe.
Helps in aligning trades with the overall market trend, increasing the potential success rate.
How to Use:
Adding the Indicator to Your Chart:
Search for "Sigma 2.0" in the TradingView Indicators menu and add it to your chart.
Configuring the Settings:
Adjust the Sigma configurations (Channel Length, Average Length, Signal Line Length) to suit your trading style.
Set the overbought and oversold levels according to your risk tolerance.
Choose whether to filter signals by thresholds.
Select the higher timeframe for additional signal confirmation.
Interpreting the Signals:
Buy Signals:
Indicated by a green triangle below the price bar.
Occur when sigma1 crosses above sigma2 and other conditions are met.
Sell Signals:
Indicated by a red triangle above the price bar.
Occur when sigma1 crosses below sigma2 and other conditions are met.
Higher Timeframe Signals:
Plotted with lime (buy) and maroon (sell) triangles.
Help confirm signals in the current timeframe.
Utilizing EMAs:
Observe the EMAs to gauge the overall trend.
Consider aligning buy signals when the price is above key EMAs and sell signals when below.
Setting Up Alerts:
Use the built-in alert conditions to receive notifications for buy and sell signals.
Customize alert messages as needed.
Credits:
Original Concept Inspiration:
This indicator is inspired by the WaveTrend oscillator and other momentum-based indicators.
Special thanks to the original authors whose work laid the foundation for this enhanced version.
Disclaimer:
Trading involves significant risk, and past performance is not indicative of future results.
This indicator is a tool to assist in analysis and should not be the sole basis for any trading decision.
Always perform thorough analysis and consider multiple factors before entering a trade.
Note:
Ensure your chart is clean and only includes this indicator when publishing.
The script is open-source and can be modified to fit individual trading strategies.
For any questions or support, feel free to reach out or comment.
ABCD Projection [Trendoscope®]Over the years, we have extensively explored and published numerous scripts centered around various chart patterns, including Harmonic Patterns, Reversal Patterns, Elliott Waves, and more. Our expertise in these areas has led to frequent requests for an indicator based on the ABCD pattern. Although we didn't include it as part of our Harmonic Patterns collection, the development of a dedicated ABCD Projection Indicator has always been a priority for us.
🎲 Overview of the ABCD Projection Indicator
The ABCD Projection Indicator is designed to identify and project ABCD patterns using a Zigzag-based approach. This pattern, characterized by alternating pivot highs and lows labeled as A, B, C, and D, is particularly significant in trending markets where it signifies trend continuation following deep pullbacks.
The indicator works by confirming the ABC pivots and projecting the D pivot based on the established price swings. Since ABCD patterns are most effective in trending environments, the indicator focuses on filtering patterns where the retracement from the C pivot has not compromised the trade's potential. Specifically, it ensures that the starting point (S)—where the pattern is detected—has not retraced beyond a defined threshold, preserving the opportunity to execute a trade with the goal of reaching the projected D pivot.
Additionally, the ABCD Projection Indicator considers the retracement ratio from the C pivot, which plays a crucial role in risk management. A higher retracement ratio reduces the stop distance (from pivot A to the entry point S) while increasing the distance to the target (pivot D), thereby enhancing the reward/risk ratio for trades.
🎲 Components of the ABCD Projection Indicator
The ABCD Projection Indicator comprises several key components:
A, B, C Pivots and Zigzag Wave : These elements form the foundational structure of the ABCD pattern.
S Point : This is the location where the pattern is identified, positioned a few bars away from the confirmed C pivot.
Estimated D Pivot : The D pivot is projected based on the A, B, and C price levels. The time or distance to the D pivot is influenced by the starting point S.
Mini Stats Table : Located in the top right corner, this table displays win/loss ratios and risk/reward data for both bullish and bearish scenarios.
Fibonacci Levels : Calculated from the C to D pivots, these levels are provided as a reference for additional analysis.
🎲 Indicator Settings
The settings for the ABCD Projection Indicator are minimal and intuitive, with tooltips provided to guide users through the configuration process.
Harmonic Patterns Library [TradingFinder]🔵 Introduction
Harmonic patterns blend geometric shapes with Fibonacci numbers, making these numbers fundamental to understanding the patterns.
One person who has done a lot of research on harmonic patterns is Scott Carney.Scott Carney's research on harmonic patterns in technical analysis focuses on precise price structures based on Fibonacci ratios to identify market reversals.
Key patterns include the Gartley, Bat, Butterfly, and Crab, each with specific alignment criteria. These patterns help traders anticipate potential market turning points and make informed trading decisions, enhancing the predictability of technical analysis.
🟣 Understanding 5-Point Harmonic Patterns
In the current library version, you can easily draw and customize most XABCD patterns. These patterns often form M or W shapes, or a combination of both. By calculating the Fibonacci ratios between key points, you can estimate potential price movements.
All five-point patterns share a similar structure, differing only in line lengths and Fibonacci ratios. Learning one pattern simplifies understanding others.
🟣 Exploring the Gartley Pattern
The Gartley pattern appears in both bullish (M shape) and bearish (W shape) forms. In the bullish Gartley, point X is below point D, and point A surpasses point C. Point D marks the start of a strong upward trend, making it an optimal point to place a buy order.
The bearish Gartley mirrors the bullish pattern with inverted Fibonacci ratios. In this scenario, point D indicates the start of a significant price drop. Traders can place sell orders at this point and buy at lower prices for profit in two-way markets.
🟣 Analyzing the Butterfly Pattern
The Butterfly pattern also manifests in bullish (M shape) and bearish (W shape) forms. It resembles the Gartley pattern but with point D lower than point X in the bullish version.
The Butterfly pattern involves deeper price corrections than the Gartley, leading to more significant price fluctuations. Point D in the bullish Butterfly indicates the beginning of a sharp price rise, making it an entry point for buy orders.
The bearish Butterfly has inverted Fibonacci ratios, with point D marking the start of a sharp price decline, ideal for sell orders followed by buying at lower prices in two-way markets.
🟣 Insights into the Bat Pattern
The Bat pattern, appearing in bullish (M shape) and bearish (W shape) forms, is one of the most precise harmonic patterns. It closely resembles the Butterfly and Gartley patterns, differing mainly in Fibonacci levels.
The bearish Bat pattern shares the Fibonacci ratios with the bullish Bat, with an inverted structure. Point D in the bearish Bat marks the start of a significant price drop, suitable for sell orders followed by buying at lower prices for profit.
🟣 The Crab Pattern Explained
The Crab pattern, found in both bullish (M shape) and bearish (W shape) forms, is highly favored by analysts. Discovered in 2000, the Crab pattern features a larger final wave correction compared to other harmonic patterns.
The bearish Crab shares Fibonacci ratios with the bullish version but in an inverted form. Point D in the bearish Crab signifies the start of a sharp price decline, making it an ideal point for sell orders followed by buying at lower prices for profitable trades.
🟣 Understanding the Shark Pattern
The Shark pattern appears in bullish (M shape) and bearish (W shape) forms. It differs from previous patterns as point C in the bullish Shark surpasses point A, with unique level measurements.
The bearish Shark pattern mirrors the Fibonacci ratios of the bullish Shark but is inverted. Point D in the bearish Shark indicates the start of a sharp price drop, ideal for placing sell orders and buying at lower prices to capitalize on the pattern.
🟣 The Cypher Pattern Overview
The Cypher pattern is another that appears in both bullish (M shape) and bearish (W shape) forms. It resembles the Shark pattern, with point C in the bullish Cypher extending beyond point A, and point D forming within the XA line.
The bearish Cypher shares the Fibonacci ratios with the bullish Cypher but in an inverted structure. Point D in the bearish Cypher marks the start of a significant price drop, perfect for sell orders followed by buying at lower prices.
🟣 Introducing the Nen-Star Pattern
The Nen-Star pattern appears in both bullish (M shape) and bearish (W shape) forms. In the bullish Nen-Star, point C extends beyond point A, and point D, the final point, forms outside the XA line, making CD the longest wave.
The bearish Nen-Star has inverted Fibonacci ratios, with point D indicating the start of a significant price drop. Traders can place sell orders at point D and buy at lower prices to profit from this pattern in two-way markets.
The 5-point harmonic patterns, commonly referred to as XABCD patterns, are specific geometric price structures identified in financial markets. These patterns are used by traders to predict potential price movements based on historical price data and Fibonacci retracement levels.
Here are the main 5-point harmonic patterns :
Gartley Pattern
Anti-Gartley Pattern
Bat Pattern
Anti-Bat Pattern
Alternate Bat Pattern
Butterfly Pattern
Anti-Butterfly Pattern
Crab Pattern
Anti-Crab Pattern
Deep Crab Pattern
Shark Pattern
Anti- Shark Pattern
Anti Alternate Shark Pattern
Cypher Pattern
Anti-Cypher Pattern
🔵 How to Use
To add "Order Block Refiner Library", you must first add the following code to your script.
import TFlab/Harmonic_Chart_Pattern_Library_TradingFinder/1 as HP
🟣 Parameters
XABCD(Name, Type, Show, Color, LineWidth, LabelSize, ShVF, FLPC, FLPCPeriod, Pivot, ABXAmin, ABXAmax, BCABmin, BCABmax, CDBCmin, CDBCmax, CDXAmin, CDXAmax) =>
Parameters:
Name (string)
Type (string)
Show (bool)
Color (color)
LineWidth (int)
LabelSize (string)
ShVF (bool)
FLPC (bool)
FLPCPeriod (int)
Pivot (int)
ABXAmin (float)
ABXAmax (float)
BCABmin (float)
BCABmax (float)
CDBCmin (float)
CDBCmax (float)
CDXAmin (float)
CDXAmax (float)
🟣 Genaral Parameters
Name : The name of the pattern.
Type: Enter "Bullish" to draw a Bullish pattern and "Bearish" to draw an Bearish pattern.
Show : Enter "true" to display the template and "false" to not display the template.
Color : Enter the desired color to draw the pattern in this parameter.
LineWidth : You can enter the number 1 or numbers higher than one to adjust the thickness of the drawing lines. This number must be an integer and increases with increasing thickness.
LabelSize : You can adjust the size of the labels by using the "size.auto", "size.tiny", "size.smal", "size.normal", "size.large" or "size.huge" entries.
🟣 Logical Parameters
ShVF : If this parameter is on "true" mode, only patterns will be displayed that they have exact format and no noise can be seen in them. If "false" is, the patterns displayed that maybe are noisy and do not exactly correspond to the original pattern.
FLPC : if Turned on, you can see this ability of patterns when their last pivot is formed. If this feature is off, it will see the patterns as soon as they are formed. The advantage of this option being clear is less formation of fielded patterns, and it is accompanied by the lateest pattern seeing and a sharp reduction in reward to risk.
FLPCPeriod : Using this parameter you can determine that the last pivot is based on Pivot period.
Pivot : You need to determine the period of the zigzag indicator. This factor is the most important parameter in pattern recognition.
ABXAmin : Minimum retracement of "AB" line compared to "XA" line.
ABXAmax : Maximum retracement of "AB" line compared to "XA" line.
BCABmin : Minimum retracement of "BC" line compared to "AB" line.
BCABmax : Maximum retracement of "BC" line compared to "AB" line.
CDBCmin : Minimum retracement of "CD" line compared to "BC" line.
CDBCmax : Maximum retracement of "CD" line compared to "BC" line.
CDXAmin : Minimum retracement of "CD" line compared to "XA" line.
CDXAmax : Maximum retracement of "CD" line compared to "XA" line.
🟣 Function Outputs
This library has two outputs. The first output is related to the alert of the formation of a new pattern. And the second output is related to the formation of the candlestick pattern and you can draw it using the "plotshape" tool.
Candle Confirmation Logic :
Example :
import TFlab/Harmonic_Chart_Pattern_Library_TradingFinder/1 as HP
PP = input.int(3, 'ZigZag Pivot Period')
ShowBull = input.bool(true, 'Show Bullish Pattern')
ShowBear = input.bool(true, 'Show Bearish Pattern')
ColorBull = input.color(#0609bb, 'Color Bullish Pattern')
ColorBear = input.color(#0609bb, 'Color Bearish Pattern')
LineWidth = input.int(1 , 'Width Line')
LabelSize = input.string(size.small , 'Label size' , options = )
ShVF = input.bool(false , 'Show Valid Format')
FLPC = input.bool(false , 'Show Formation Last Pivot Confirm')
FLPCPeriod =input.int(2, 'Period of Formation Last Pivot')
//Call function
= HP.XABCD('Bullish Bat', 'Bullish', ShowBull, ColorBull , LineWidth, LabelSize ,ShVF, FLPC, FLPCPeriod, PP, 0.382, 0.50, 0.382, 0.886, 1.618, 2.618, 0.85, 0.9)
= HP.XABCD('Bearish Bat', 'Bearish', ShowBear, ColorBear , LineWidth, LabelSize ,ShVF, FLPC, FLPCPeriod, PP, 0.382, 0.50, 0.382, 0.886, 1.618, 2.618, 0.85, 0.9)
//Alert
if BearAlert
alert('Bearish Harmonic')
if BullAlert
alert('Bulish Harmonic')
//CandleStick Confirm
plotshape(BearCandleConfirm, style = shape.arrowdown, color = color.red)
plotshape(BullCandleConfirm, style = shape.arrowup, color = color.green, location = location.belowbar )
VolumeSpreadAnalysisLibrary "VolumeSpreadAnalysis"
A library for Volume Spread Analysis (VSA).
spread(_barIndex)
Calculates the spread of a bar.
Parameters:
_barIndex (int) : (int) The index of the bar.
Returns: (float) The spread of the bar.
volume(_barIndex)
Retrieves the volume of a bar.
Parameters:
_barIndex (int) : (int) The index of the bar.
Returns: (float) The volume of the bar.
body(_barIndex)
Calculates the body of a bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The body size of the bar.
wickUpper(_barIndex)
Calculates the upper wick of a bar (upper shadow).
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The upper wick size of the bar.
wickLower(_barIndex)
Calculates the lower wick of a bar (lower shadow).
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (float) The lower wick size of the bar.
calcForecastedSMA(_source, _length, _forecastedLevel)
Calculates the forecasted Simple Moving Average (SMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the SMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted SMA value.
calcForecastedEMA(_source, _length, _forecastedLevel)
Calculates the forecasted Exponential Moving Average (EMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the EMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted EMA value.
calcForecastedRMA(_source, _length, _forecastedLevel)
Calculates the forecasted Relative Moving Average (RMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the RMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted RMA value.
calcForecastedWMA(_source, _length, _forecastedLevel)
Calculates the forecasted Weighted Moving Average (WMA).
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the WMA.
_forecastedLevel (float) : (float) The forecasted level to include in the calculation.
Returns: (float) The forecasted WMA value.
calcElapsedTimePercent()
Calculates the elapsed time percent of the current bar.
Returns: (float) The elapsed time percent.
calcForecastedSpread(multiplierAtMidpoints, multiplierAtPeaks)
Calculates the forecasted spread using elapsed time and dynamic multipliers, handling spread's non-linear nature.
Parameters:
multiplierAtMidpoints (float) : (float) The multiplier value at midpoints.
multiplierAtPeaks (float) : (float) The multiplier value at peaks.
Returns: (float) The forecasted spread value.
calcForecastedVolume()
Calculates the forecasted volume using elapsed time, satisfying volume's linear nature.
Returns: (float) The forecasted volume value.
calcForecastedMA(_source, _length, _forecastedSource, _type)
Calculates the forecasted Moving Average (MA) based on the specified type.
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the MA.
_forecastedSource (float) : (float) The forecasted level to include in the calculation.
_type (simple string) : (string) The type of the MA ("SMA", "EMA", "SMMA (RMA)", "WMA").
Returns: (float) The forecasted MA value.
calcMA(_source, _length, _type)
Calculates the Moving Average (MA) based on the specified type.
Parameters:
_source (float) : (series float) Source data for calculation.
_length (simple int) : (int) The length of the MA.
_type (simple string) : (string) The type of the MA ("SMA", "EMA", "SMMA (RMA)", "WMA").
Returns: (float) The MA value.
bullBar(_barIndex)
Determines if the bar is bullish.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if the bar is bullish, otherwise false.
bearBar(_barIndex)
Determines if the bar is bearish.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if the bar is bearish, otherwise false.
breakout(_barIndex)
Determines if there is a breakout above the previous bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if there is a breakout, otherwise false.
breakdown(_barIndex)
Determines if there is a breakdown below the previous bar.
Parameters:
_barIndex (simple int) : (int) The index of the bar.
Returns: (bool) True if there is a breakdown, otherwise false.
rejectionWickUpper(_rejectionWick)
Determines if the upper wick is a rejection wick.
Parameters:
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if the upper wick is a rejection wick, otherwise false.
rejectionWickLower(_rejectionWick)
Determines if the lower wick is a rejection wick.
Parameters:
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if the lower wick is a rejection wick, otherwise false.
setupDataVolume(_data, _mult_Low, _mult_High, _mult_Ultra, _maLengthVolume, _maTypeVolume)
Sets up data for volume levels.
Parameters:
_data (map) : (map) The map to store the levels.
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthVolume (simple int) : (int) The length for MA.
_maTypeVolume (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataSpread(_data, _mult_Low, _mult_High, _mult_Ultra, _maLengthSpread, _maTypeSpread)
Sets up data for spread levels.
Parameters:
_data (map) : (map) The map to store the levels.
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthSpread (simple int) : (int) The length for MA.
_maTypeSpread (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataForecastVolume(_dataForecast, _mult_Low, _mult_High, _mult_Ultra, _maLengthVolume, _predictedLevelVolume, _maTypeVolume)
Sets up data for volume and spread levels for forecast.
Parameters:
_dataForecast (map)
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthVolume (simple int) : (int) The length for MA.
_predictedLevelVolume (float) : (float) The predicted level for MA.
_maTypeVolume (simple string) : (string) The type for MA.
Returns: (void) Nothing.
setupDataForecastSpread(_dataForecast, _mult_Low, _mult_High, _mult_Ultra, _maLengthSpread, _predictedLevelSpread, _maTypeSpread)
Sets up data for spread levels for forecast.
Parameters:
_dataForecast (map)
_mult_Low (simple float) : (float) The multiplier for low level.
_mult_High (simple float) : (float) The multiplier for high level.
_mult_Ultra (simple float) : (float) The multiplier for ultra level.
_maLengthSpread (simple int) : (int) The length for MA.
_predictedLevelSpread (float) : (float) The predicted level for MA.
_maTypeSpread (simple string) : (string) The type for MA.
Returns: (void) Nothing.
isVolumeLow(_data, _barIndex)
Determines if the volume is low.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is low, otherwise false.
isVolumeNormal(_data, _barIndex)
Determines if the volume is normal.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is normal, otherwise false.
isVolumeHigh(_data, _barIndex)
Determines if the volume is high.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is high, otherwise false.
isVolumeUltra(_data, _barIndex)
Determines if the volume is ultra.
Parameters:
_data (map) : (map) The data map with volume levels.
_barIndex (int)
Returns: (bool) True if the volume is ultra, otherwise false.
isSpreadLow(_data, _barIndex)
Determines if the spread is low.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is low, otherwise false.
isSpreadNormal(_data, _barIndex)
Determines if the spread is normal.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is normal, otherwise false.
isSpreadHigh(_data, _barIndex)
Determines if the spread is high.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is high, otherwise false.
isSpreadUltra(_data, _barIndex)
Determines if the spread is ultra.
Parameters:
_data (map) : (map) The data map with spread levels.
_barIndex (int)
Returns: (bool) True if the spread is ultra, otherwise false.
isVolumeText(_data)
Determines text string representing the volume area level.
Parameters:
_data (map) : (map) The data map with volume levels.
Returns: (string) Text string of Low, Normal, High, or Ultra.
isSpreadText(_data)
Determines text string representing the spread area level.
Parameters:
_data (map) : (map) The data map with spread levels.
Returns: (string) Text string of Low, Normal, High, or Ultra.
calcBarColor(_value, _level)
Calculates the color based level.
Parameters:
_value (float) : (float) The value to check.
_level (float) : (float) The value level for comparison.
Returns: (color) The color for the bar.
bullPinBar(_maxBodyPercent, _minWickPercent)
Determines if the bar is a bull pin bar.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
Returns: (bool) True if the bar is a bull pin bar, otherwise false.
bearPinBar(_maxBodyPercent, _minWickPercent)
Determines if the bar is a bear pin bar.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
Returns: (bool) True if the bar is a bear pin bar, otherwise false.
dojiBar(_maxBodyPercent)
Determines if the bar is a doji.
Parameters:
_maxBodyPercent (simple float) : (float) The maximum body percentage.
Returns: (bool) True if the bar is a doji, otherwise false.
spinningTopBar(_minWicksPercent, _emaLength)
Determines if the bar is a spinning top.
Parameters:
_minWicksPercent (simple float) : (float) The minimum wicks percentage.
_emaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if the bar is a spinning top, otherwise false.
highWaveBar(_minBodyPercent, _minWickPercent, _bars)
Determines if the bar is a high wave bar.
Parameters:
_minBodyPercent (simple float) : (float) The minimum body percentage.
_minWickPercent (simple float) : (float) The minimum wick percentage.
_bars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if the bar is a high wave bar, otherwise false.
consolidationBar(_data, _spread, _bars)
Determines if the bars are in consolidation.
Parameters:
_data (map) : (map) The data map with spread levels.
_spread (simple float) : (float) The spread percentage for comparison.
_bars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if the bars are in consolidation, otherwise false.
S_DownThrust(_data, _bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (DownThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (DownThrust), otherwise false.
S_SellingClimax(_data, _rejectionWick)
Determines if there is a sign of strength (Selling Climax).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if there is a sign of strength (Selling Climax), otherwise false.
S_NoEffortBearishResult()
Determines if there is a sign of strength (No Effort Bearish Result).
Returns: (bool) True if there is a sign of strength (No Effort Bearish Result), otherwise false.
S_BearishEffortNoResult()
Determines if there is a sign of strength (Bearish Effort No Result).
Returns: (bool) True if there is a sign of strength (Bearish Effort No Result), otherwise false.
S_InverseDownThrust(_data, _bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of strength (Inverse DownThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of strength (Inverse DownThrust), otherwise false.
S_FailedSellingClimax()
Determines if there is a sign of strength (Failed Selling Climax).
Returns: (bool) True if there is a sign of strength (Failed Selling Climax), otherwise false.
S_BullOutsideReversal(_data)
Determines if there is a sign of strength (Bull Outside Reversal).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of strength (Bull Outside Reversal), otherwise false.
S_EndOfFallingMarket(_data)
Determines if there is a sign of strength (End of Falling Market).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of strength (End of Falling Market), otherwise false.
S_PseudoDownThrust(_bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (Pseudo DownThrust).
Parameters:
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (Pseudo DownThrust), otherwise false.
S_NoSupply(_bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of strength (No Supply).
Parameters:
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of strength (No Supply), otherwise false.
W_UpThrust(_data, _bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (UpThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (UpThrust), otherwise false.
W_BuyingClimax(_data, _rejectionWick)
Determines if there is a sign of weakness (Buying Climax).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_rejectionWick (simple float) : (float) The rejection wick percentage.
Returns: (bool) True if there is a sign of weakness (Buying Climax), otherwise false.
W_NoEffortBullishResult()
Determines if there is a sign of weakness (No Effort Bullish Result).
Returns: (bool) True if there is a sign of weakness (No Effort Bullish Result), otherwise false.
W_BullishEffortNoResult()
Determines if there is a sign of weakness (Bullish Effort No Result).
Returns: (bool) True if there is a sign of weakness (Bullish Effort No Result), otherwise false.
W_InverseUpThrust(_data, _bullPinBarMaxBody, _bullPinBarMinWick)
Determines if there is a sign of weakness (Inverse UpThrust).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_bullPinBarMaxBody (simple float) : (float) The maximum body percentage for bull pin bar.
_bullPinBarMinWick (simple float) : (float) The minimum wick percentage for bull pin bar.
Returns: (bool) True if there is a sign of weakness (Inverse UpThrust), otherwise false.
W_FailedBuyingClimax()
Determines if there is a sign of weakness (Failed Buying Climax).
Returns: (bool) True if there is a sign of weakness (Failed Buying Climax), otherwise false.
W_BearOutsideReversal(_data)
Determines if there is a sign of weakness (Bear Outside Reversal).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of weakness (Bear Outside Reversal), otherwise false.
W_EndOfRisingMarket(_data)
Determines if there is a sign of weakness (End of Rising Market).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
Returns: (bool) True if there is a sign of weakness (End of Rising Market), otherwise false.
W_PseudoUpThrust(_bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (Pseudo UpThrust).
Parameters:
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (Pseudo UpThrust), otherwise false.
W_NoDemand(_bearPinBarMaxBody, _bearPinBarMinWick)
Determines if there is a sign of weakness (No Demand).
Parameters:
_bearPinBarMaxBody (simple float) : (float) The maximum body percentage for bear pin bar.
_bearPinBarMinWick (simple float) : (float) The minimum wick percentage for bear pin bar.
Returns: (bool) True if there is a sign of weakness (No Demand), otherwise false.
N_QuietDoji(_dojiBarMaxBody)
Determines if there is a neutral signal (Quiet Doji).
Parameters:
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Quiet Doji), otherwise false.
N_BalancedDoji(_data, _dojiBarMaxBody)
Determines if there is a neutral signal (Balanced Doji).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Balanced Doji), otherwise false.
N_StrongDoji(_dojiBarMaxBody)
Determines if there is a neutral signal (Strong Doji).
Parameters:
_dojiBarMaxBody (simple float) : (float) The maximum body percentage for doji bar.
Returns: (bool) True if there is a neutral signal (Strong Doji), otherwise false.
N_QuietSpinningTop(_spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Quiet Spinning Top).
Parameters:
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Quiet Spinning Top), otherwise false.
N_BalancedSpinningTop(_data, _spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Balanced Spinning Top).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Balanced Spinning Top), otherwise false.
N_StrongSpinningTop(_spinningTopBarMinWicks, _spinningTopBarEmaLength)
Determines if there is a neutral signal (Strong Spinning Top).
Parameters:
_spinningTopBarMinWicks (simple float) : (float) The minimum wicks percentage for spinning top bar.
_spinningTopBarEmaLength (simple int) : (int) The length for EMA calculation.
Returns: (bool) True if there is a neutral signal (Strong Spinning Top), otherwise false.
N_QuietHighWave(_highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Quiet High Wave).
Parameters:
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Quiet High Wave), otherwise false.
N_BalancedHighWave(_data, _highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Balanced High Wave).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Balanced High Wave), otherwise false.
N_StrongHighWave(_highWaveBarMinBody, _highWaveBarMinWick, _highWaveBarBars)
Determines if there is a neutral signal (Strong High Wave).
Parameters:
_highWaveBarMinBody (simple float) : (float) The minimum body percentage for high wave bar.
_highWaveBarMinWick (simple float) : (float) The minimum wick percentage for high wave bar.
_highWaveBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Strong High Wave), otherwise false.
N_Consolidation(_data, _consolidationBarSpread, _consolidationBarBars)
Determines if there is a neutral signal (Consolidation).
Parameters:
_data (map) : (map) The data map with volume and spread levels.
_consolidationBarSpread (simple float) : (float) The spread percentage for consolidation bar.
_consolidationBarBars (simple int) : (int) The number of bars for comparison.
Returns: (bool) True if there is a neutral signal (Consolidation), otherwise false.
Alligator + MA Trend Catcher [TradeDots]The "Alligator + MA Trend Catcher" is a trading strategy that integrates the William Alligator indicator with a Moving Average (MA) to establish robust entry and exit conditions, optimized for capturing trends.
HOW IT WORKS
This strategy combines the traditional William Alligator set up with an additional Moving Average indicator for enhanced trend confirmation, creating a user-friendly backtesting tool for traders who prefer the Alligator method.
The original Alligator strategy can frequently present fluctuations, even in well-established trends, leading to potentially premature exits. To mitigate this, we incorporate a Moving Average as a secondary confirmation measure to ensure the market trend has indeed shifted.
Here’s the operational flow for long orders:
Entry Signal: When the price rises above the Moving Average, it confirms a bullish market state. Enter if Alligator spread in an upward direction. The trade remains active even if the Alligator indicator suggests a trend reversal.
Exit Signal: The position is closed when the price falls below the Moving Average, and the Alligator spreads in the downward direction. This setup helps traders to maintain positions through the entirety of the trend for maximum gain.
APPLICATION
This strategy is tailored for assets with significant, well-defined trends, such as Bitcoin and Ethereum, which are known for their high volatility and substantial price movements.
This strategy offers a low win-rate but high reward configuration, making asset selection critical for long-term profitability. If you choose assets that lack strong price momentum, there's a high chance that this strategy may not be effective.
For traders seeking to maximize gains from large trends without exiting prematurely, this strategy provides an aggressive yet controlled approach to riding out substantial market waves.
DEFAULT SETUP
Commission: 0.01%
Initial Capital: $10,000
Equity per Trade: 80%
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.
AWR_WaveTrend Multitimeframe [adapted from LazyBear]I've adapted a script from Lazy Bear (WT trend oscillator)
WaveTrend Oscillator is a port of a famous TS/MT indicator.
When the oscillator (WT1 designed as a line) is above the overbought band (50 to 60) and crosses down the WT2 (dotted line), it is usually a good SELL signal. Similarly, when the oscillator crosses above the signal when below the Oversold band ( (-50 to -60)), it is a good BUY signal.
In this indicator, you can display at the same time, different time frames.
Choice possible are 1 mn, 15 mn, 30 mn, 60 mn, 120 mn, 240 mn, 1D, Week, Month.
Small time frames (1 to 30 mn) are represented by a blue lines (light to dark)
1H is in grey
2H & 4H are in purple (light to dark)
1D is in green
1W is in orange
1M is in black
You can choose which timeframes you want to display for the current period or for the last period closed.
In a few seconds, you perfectly see the selected timeframes trends.
There is also at the bottom right a table summing up all the different values of WT1, WT2 and difference between them.
Positive difference means an upside trend
Negative difference means a downside trend.
Another way of using this indicator is displaying only the difference between WT1 & WT2. It's giving the speed & the direction of all trends. Trends are our friends ...
You can observe the significent times frames and look if they are all positives or negatives or if the speed of lower timeframe cross a longer timeframe of if the speed is decreasing or increasing...
Difference values goes generaly from -20 to 20 (it can exceed a bit but really rare). 12 is already high level of speed.
Many uses possible.
In the exemple posted, I've selected WT1 and WT2 for timeframes 4H, Daily & Weekly.
Marker 1:
Orange lines (WT1) are far below - 50 (-67 here) and cross WT2 pointed lines : weekly buy signal
But this buy signal is balanced by 4H & Daily sell signal = it's marking start of hesitations of main trend !!!!
Marker 2 :
Next buy signal in 4H or daily would normaly confirm the start
Marker 3 :
Sell signal in 4H and daily but weekly has an upside trend ! Start of a counter trend in the trend. To find the perfect timing of that you have to look to lower time frames, because 4H and daily are giving many hesitations signals crossing down & crossing up many times in an overbought zone.
Marker 4 :
End of the counter trend. Most of the time, the countertrend don't go in the "over" zone. That's why if you trading in an counter trend, you have to keep it in mind.
Then a few days later you can see the sell signal. And what a sell signal ! 4H & daily are smashed down really fastly ! Trends change warning !
Marker 5
Long hesitation/change of the trend. Daily WT and 4H are below the weekly trends. Weekly start to go down.
Start of a counter trend inside the trend giving us the best selling signal at her end !
Marker 6 :
Long hesitation/change of the trend.
You have to look in lower time frames to identify the short trend. Difficult to find the best timing to get in. ....
I've add many alerts. When a time frame become positive or negative. When many time frames are positive or negative or above or below 47 level...
Please feel free to explore.
Hope it will help you.
Thanks to Lazybear ! Thousands thanks to Lazybear !
Exemple with difference
Squeeze Momentum DeluxeThe Squeeze Momentum Deluxe is a comprehensive trading toolkit built with features of momentum, volatility, and price action. This script offers a suite for both mean reversion and trend-following analysis. Developed based on the original TTM Squeeze implementation by @LazyBear, this indicator introduces several innovative components to enhance your trading insights.
🔲 Components and Features
Momentum Oscillator - as rooted in the TTM Squeeze, quantifies the relationship between price and its extremes over a defined period. By normalizing the calculation, the values become comparable throughout time and across securities, allowing for a nuanced assessment of Bullish and Bearish momentum. Furthermore, by presenting it as a ribbon with a signal line we gain additional information about the direction of price swings.
Squeeze Bars - The original squeeze concept is based on the relationship between the Bollinger Bands and Keltner Channel , once the BB resides inside the KC a squeeze occurs. By understanding their fundamentals a new form of calculation can be inferred.
method bb(float src, simple int len, simple float mult) => method kc(float src, simple int len, simple float mult) =>
float basis = ta.sma (src, len) float basis = ta.sma (src, len)
float dev = ta.stdev(src, len) float rng = ta.atr ( len)
float upper = basis + dev * mult float upper = basis + rng * mult
float lower = basis - dev * mult float lower = basis - rng * mult
Both BB and KC are constructed upon a moving average with the addition of Standard Deviation and Average True Range respectively. Therefore, the calculation can be transformed to when the Stdev is lower than the ATR a squeeze occurs.
method sqz(float src, simple int len) =>
float dev = ta.stdev(src, len)
float atr = ta.atr ( len)
dev < atr ? true : false
This indicator uses three different thresholds for the ATR to gain three levels of price "Squeeze" for further analysis.
Directional Flux- This component measures the overall direction of price volatility, offering insights into trend sentiment. Presented as waves in the background, it includes an OverFlux feature to signal extreme market bias in a particular direction which can signal either exhaustion or vital continuation. Additionally, the user can choose if to base the calculation on Heikin-Ashi Candles to bias the tool toward trend assessment.
Confluence Gauges - Placed at the top and bottom of the indicator, these gauges measure confluence in the relationship between the Momentum Oscillator and Directional Flux. They provide traders with an easily interpretable visual aid for detecting market sentiment. Reversal doritos displayed alongside them contribute to mean reversion analysis.
Divergences (Real-Time) - Equipped with a custom algorithm, the indicator detects real-time divergences between price and the oscillator. This dynamic feature enhances your ability to spot potential trend reversals as they occur.
🔲 Settings
Directional Flux Length - Adjusts the period of which the background volatility waves operate on.
Trend Bias - Bases the calculation of the Flux to HA candles to bias its behavior toward the trend of price action.
Squeeze Momentum Length - Calibrates the length of the main oscillator ribbon as well as the period for the squeeze algorithm.
Signal - Controls the width of the ribbon. Lower values result in faster responsiveness at the cost of premature positives.
Divergence Sensitivity - Adjusts a threshold to limit the amount of divergences detected based on strength. Higher values result in less detections, stronger structure.
🔲 Alerts
Sell Signal
Buy Signal
Bullish Momentum
Bearish Momentum
Bullish Flux
Bearish Flux
Bullish Swing
Bearish Swing
Strong Bull Gauge
Strong Bear Gauge
Weak Bull Gauge
Weak Bear Gauge
High Squeeze
Normal Squeeze
Low Squeeze
Bullish Divergence
Bearish Divergence
As well as the option to trigger 'any alert' call.
The Squeeze Momentum Deluxe is a comprehensive tool that goes beyond traditional momentum indicators, offering a rich set of features to elevate your trading strategy. I recommend using toolkit alongside other indicators to have a wide variety of confluence to therefore gain higher probabilistic and better informed decisions.
Trailing Stop-Loss Indicator (FinnoVent)The Dynamic 9 EMA Trailing Stop-Loss Indicator is a specialized tool designed for the TradingView community to enhance risk management in trading. This script dynamically adjusts a trailing stop-loss level based on the position of the price relative to a 9-period Exponential Moving Average (EMA), offering traders a systematic approach to protect potential profits and limit downside risk.
Functionality:
Adaptive Trailing Stop: The indicator calculates a trailing stop-loss that adjusts with the 9 EMA, providing a responsive method to secure gains or prevent extensive losses.
EMA Trend Indicator: The 9-period EMA serves as a momentum indicator, with the script adjusting the trailing stop-loss accordingly — above the EMA for short positions and below for long positions.
Entry Signal Visualization: Entry signals are visualized on the chart, indicating potential long and short positions based on price crossovers with the EMA.
Application:
This indicator is ideal for traders who utilize technical analysis to make informed decisions. By automatically adjusting the stop-loss level to the evolving market conditions, it is particularly useful for:
Day traders looking to capitalize on short-term price movements.
Swing traders aiming to secure positions during more extended market waves.
Any trading strategy that benefits from dynamic stop-loss management.
Usage:
To use the indicator, simply add it to your TradingView chart, and it will automatically plot the trailing stop levels. The green and red lines represent the trailing stops for long and short positions, respectively, providing clear visual cues for potential exit points.
Compliance with TradingView House Rules:
This script is provided for educational purposes and does not constitute investment advice. It is a unique creation that has been developed to contribute to the TradingView community by offering a tool that helps traders manage their trades more effectively.






















