SOFR-EFFR with Spread Histogram & TableThis indicator visualizes the spread between SOFR (Secured Overnight Financing Rate) and EFFR (Effective Federal Funds Rate), two of the most important short-term USD funding rates.
The spread (SOFR - EFFR) is plotted as a histogram to highlight potential dislocations in the dollar liquidity structure. Green bars indicate an increasing spread (more stress on secured funding), while red bars suggest a decreasing spread (possible flight to safety or credit risk aversion).
An info table in the top-right corner displays real-time values for:
- SOFR
- EFFR
- Their spread (with emoji arrow showing trend direction 💚 / 💔 / 🤍)
This tool can be used to monitor dollar funding pressures, repo market behavior, and potential macro stress signals — often preceding equity or credit market volatility.
Ciclos
@ZB MTF 10 MAs Directional@ZB MTF 10 MAs Directional
This indicator plots 10 different Moving Averages (MAs) on your chart, providing a clear and flexible tool for analyzing price trends across multiple timeframes. Each MA can be customized in type, length, and timeframe to suit different trading strategies and preferences.
Key Features:
Multiple MA Types: Choose from several MA types including Simple Moving Average (SMA), Exponential Moving Average (EMA), Weighted Moving Average (WMA), Hull Moving Average (HMA), Running Moving Average (RMA), Volume Weighted Moving Average (VWMA), and Smoothed Moving Average (SMMA).
Customizable Parameters: Set the length and timeframe for each of the 10 MAs individually. You can display or hide each MA depending on your analysis needs.
Directional Color Coding: Each MA is color-coded to indicate its trend direction—bullish (green) or bearish (red). The color changes dynamically based on whether the MA is rising or falling.
Trend Fill Color: Between adjacent MAs, the area is filled with a color that visually represents whether the market is trending upwards (bullish) or downwards (bearish).
Multi-Timeframe Analysis: View MAs from different timeframes on the same chart, providing a comprehensive overview of price action across various periods.
Trend Direction Table: A table on your chart displays the current trend direction for each MA, making it easier to track the market’s trend status across different lengths.
Customization Options:
MA Type: Choose from 7 different types of MAs to fit your trading style.
Length: Set custom lengths for each MA, from short-term to long-term, with the option to display up to 10 different MAs.
Timeframe: Select a specific timeframe for each MA to allow for multi-timeframe analysis directly on your chart.
Color Settings: Adjust the colors for both bullish and bearish MAs, and the fill colors between them to match your chart's aesthetic.
This script is perfect for traders looking for a detailed trend analysis tool that adapts to a variety of strategies, helping you make more informed decisions based on multiple MAs and timeframes.
Filtered Swing Pivot S&R )Pivot support and resis🔍 Filtered Swing Pivot S&R - Overview
This indicator identifies and plots tested support and resistance levels using a filtered swing pivot strategy. It focuses on high-probability zones where price has reacted before, helping traders better anticipate future price behavior.
It filters out noise using:
Customizable pivot detection logic
Minimum price level difference
ATR (Average True Range) volatility filter
Confirmation by price retesting the level before plotting
⚙️ Core Logic Explained
✅ 1. Pivot Detection
The script uses Pine Script's built-in ta.pivothigh() and ta.pivotlow() functions to find local highs (potential resistance) and lows (potential support).
Pivot Lookback/Lookahead (pivotLen):
A pivot is confirmed if it's the highest (or lowest) point within a lookback and lookahead range of pivotLen bars.
Higher values = fewer, stronger pivots.
Lower values = more, but potentially noisier levels.
✅ 2. Pending Pivot Confirmation
Once a pivot is detected:
It is not drawn immediately.
The script waits until price re-tests that pivot level. This retest confirms the market "respects" the level.
For example: if price hits a previous high again, it's treated as a valid resistance.
✅ 3. Dual-Level Filtering System
To reduce chart clutter and ignore insignificant levels, two filters are applied:
Fixed Threshold (Minimum Level Difference):
Ensures a new pivot level is not too close to the last one.
ATR-Based Filter:
Dynamically adjusts sensitivity based on current volatility using the formula:
java
Copy
Edit
Minimum distance = ATR × ATR Multiplier
Only pivots that pass both filters are plotted.
✅ 4. Line Drawing
Once a pivot is:
Detected
Retested
Filtered
…a horizontal dashed line is drawn at that level to highlight support or resistance.
Resistance: Red (default)
Support: Green (default)
These lines are:
Dashed for clarity
Extended for X bars into the future (user-defined) for forward visibility
🎛️ Customizable Inputs
Parameter Description
Pivot Lookback/Lookahead Bars to the left and right of a pivot to confirm it
Minimum Level Difference Minimum price difference required between plotted levels
ATR Length Number of bars used in ATR volatility calculation
ATR Multiplier for Pivot Multiplies ATR to determine volatility-based pivot separation
Line Extension (bars) How many future bars the level line will extend for better visibility
Resistance Line Color Color for resistance lines (default: red)
Support Line Color Color for support lines (default: green)
📈 How to Use It
This indicator is ideal for:
Identifying dynamic support & resistance zones that adapt to volatility.
Avoiding false levels by waiting for pivot confirmation.
Visual guidance for entries, exits, stop placements, or take-profits.
🔑 Trade Ideas:
Use support/resistance retests for entry confirmations.
Combine with candlestick patterns or volume spikes near drawn levels.
Use in confluence with trendlines or moving averages.
🚫 What It Does Not Do (By Design)
Does not repaint or remove past levels once confirmed.
Does not include labels or alerts (but can be added).
Does not auto-scale based on timeframes (manual tuning recommended).
🛠️ Possible Enhancements (Optional)
If desired, you could extend the functionality to include:
Labels with “S” / “R”
Alert when a new level is tested or broken
Toggle for support/resistance visibility
Adjustable line width or style
tance indicator
Stoch_RSIStochastic RSI – Advanced Divergence Indicator
This custom indicator is an advanced version of the Stochastic RSI that not only smooths and refines the classic RSI input but also automatically detects both regular and hidden divergences using two powerful methods: fractal-based and pivot-based detection. Originally inspired by contributions from @fskrypt, @RicardoSantos, and later improved by developers like @NeoButane and @FYMD, this script has been fully refined for clarity and ease-of-use.
Key Features:
Dual Divergence Detection:
Fractal-Based Divergence: Uses a four-candle pattern to confirm top and bottom fractals for bullish and bearish divergences.
Pivot-Based Divergence: Employs TradingView’s built-in pivot functions for an alternate view of divergence conditions.
Customizable Settings:
The inputs are organized into logical groups (Stoch RSI settings, Divergence Options, Labels, and Market Open Settings) allowing you to adjust smoothing periods, RSI and Stochastic lengths, and divergence thresholds with a user-friendly interface.
Visual Enhancements:
Plots & Fills: The indicator plots both the K and D lines with corresponding fills and horizontal bands for quick visual reference.
Divergence Markers: Diamond shapes and labeled markers indicate regular and hidden divergences on the chart.
Market Open Highlighting: Optional histogram plots highlight the market open candle based on different timeframes for stocks versus non-forex symbols.
Long Short Momentum with Signals
Long and Short momentum
WHEN SHORT MOMENTUM CHANGES 2.0 POINTS and long term changes 5 points on day basis write A for Bullish and B for Bearish on Main Price chart
WHEN SHORT MOMENTUM CHANGES .30 per hour POINTS and long term changes 1 points on 1 hour basis. Put a green dot for Bull and red for bear in short term and for long termRespectively on price chart
DT_KEY_LEVELSDT_Key_Levels: Powerful Market Structure Analysis Indicator
DT_Key_Levels is an advanced indicator for fundamental market structure analysis, optimized for higher timeframes (D1, W, M). The indicator combines three powerful technical analysis tools — fractals, Fair Value Gaps (FVG), and psychological levels — in one comprehensive solution.
Three Components of the Indicator
1. Enhanced Fractal System
The indicator uses an improved version of Bill Williams' classic fractals, allowing for deeper market structure analysis:
Dual Identification System:
Standard 5-bar fractals (displayed with thick lines) for analyzing reliable support/resistance levels
Light 3-bar fractals (displayed with thin lines) for early identification of potential reversal points
Intelligent Tracking System:
Automatic detection and filtering of completed fractals
Marking fractals with corresponding timeframe designation (HTF-1D, HTF-1W, HTF-1M)
Tracking and marking the All-Time High (ATH)
2. Fair Value Gaps (FVG) System
The indicator identifies and visualizes price gaps in market structure — zones that often act as magnets for future price movements:
Precise Identification of Inefficient Zones:
Bullish FVG: when the current candle's low is above the -2 candle's high
Bearish FVG: when the current candle's high is below the -2 candle's low
Detailed Visualization:
Clear display of upper and lower boundaries of each FVG
Midline (0.5 FVG) for determining key reaction levels within the gap
Marking each FVG with "FF" (Fair value Fill) label for quick identification
Dynamic Management:
Automatic removal of FVGs when they are filled by price movement
Customizable line extension for improved tracking of target zones
3. Intelligent Psychological Levels
The indicator automatically determines key psychological levels with adaptation to the type of instrument being traded:
Specialized Calibration for Various Assets:
Forex (EUR/USD, GBP/USD, USD/JPY): optimization for standard figures and round values
Precious metals (XAUUSD): adaptation to typical gold reaction zones with a $50 step
Cryptocurrencies (BTC, ETH): dynamic step adjustment depending on current price zone
Stock indices (NASDAQ, S&P500, DAX): accounting for the movement characteristics of each index
Smart Adaptation System:
Automatic determination of the optimal step for any instrument
Generation of up to 24 key levels, evenly distributed around the current price
Intelligent filtering to display only significant levels
Practical Application
Strategic Analysis
Identifying Key Structural Levels:
Use monthly and weekly fractals to determine strategic support/resistance zones
Look for coincidences of fractals with psychological levels to identify particularly strong zones of interest
Determine long-term barriers using type 5 fractals on higher timeframes
Analysis of Market Inefficiencies:
Track the formation of FVGs as potential targets for future movements
Use FVG midlines (0.5) as important internal reaction levels
Analyze the speed of FVG filling to understand trend strength
Tactical Trading Decisions
Entry Points and Risk Management:
Use bounces from fractals in the direction of the larger trend as a signal for entry
Place stop-losses behind fractal levels or key psychological levels
Monitor the formation of new fractals as a signal of potential reversal
Determining Target Levels:
Use unfilled FVGs as natural price targets
Apply nearby psychological levels for partial position closing
Project higher timeframe fractals to determine long-term goals
Indicator Advantages
Comprehensive Approach: combining three methodologies for a complete understanding of market structure
Intelligent Adaptation: automatic adjustment to the characteristics of different types of assets
Clean Visual Presentation: despite the abundance of information, the indicator maintains clarity of display
Effective Signal Filtering: automatic removal of completed levels to reduce visual noise
Higher Timeframe Optimization: specifically designed for daily, weekly and monthly charts
Usage Recommendations
Use the indicator only on D1, W, and M timeframes for the most reliable signals
Pay special attention to areas where different types of signals coincide (e.g., fractal + psychological level)
Use higher timeframe fractals as key zones for medium and long-term trading
Track FVGs as potential target zones and focus on their filling
PMO + Daily SMA(55)PMO + Daily SMA(55)
This script plots the Price Momentum Oscillator (PMO) using the classic DecisionPoint methodology, along with its signal line and the 55-period Simple Moving Average (SMA) of the daily PMO.
PMO is a smoothed momentum indicator that measures the rate of change and helps identify trend direction and strength. The signal line is an EMA of the PMO, commonly used for crossover signals.
The 55-period SMA of the daily PMO is added as a longer-term trend filter. It remains based on daily data, even when applied to intraday charts, making it useful for aligning lower timeframe trades with higher timeframe momentum.
Ideal for swing and position traders looking to combine short-term momentum with broader trend context.
TCloud Future📘 Tcloud Future – Indicator Description & How to Use
Tcloud Future is a trend-based indicator that creates a forward-projected cloud between:
A customizable Exponential Moving Average (EMA)
A dynamic McGinley Moving Average
The cloud is shifted into the future (like the Ichimoku Cloud), giving traders a visual projection of potential trend direction.
🔧 Components:
EMA (default: 19-period) – fast-reacting average to short-term price action
McGinley Dynamic (default: 26-period) – smoother, adaptive average that reacts to volatility
Forward Projection (default: 26 candles) – pushes the cloud into the future to help anticipate trend continuation or reversal
Cloud Color
Green when EMA is above McGinley (bullish bias)
Red when EMA is below McGinley (bearish bias)
🟢 How to Trade with Tcloud Future
✅ Trend Confirmation
Use the cloud color and slope to confirm the current trend.
Green cloud sloping up → bullish momentum
Red cloud sloping down → bearish momentum
🟩 Entry Strategy (Trend-Following)
Go long when price is above the green cloud and the cloud is rising.
Go short when price is below the red cloud and the cloud is falling.
🔁 Cloud Crossovers (Trend Shift)
A color change in the projected cloud can signal a potential trend reversal.
Use this as a heads-up to prepare for position changes or tighten stops.
🛡️ Support/Resistance Zones
The cloud often acts as a dynamic support/resistance zone.
During an uptrend, pullbacks to the top or middle of the green cloud can be good entries.
During a downtrend, rallies into the red cloud can offer shorting opportunities.
🧠 Tips
Combine with RSI, MACD, or Volume for confirmation.
Avoid using it alone in sideways markets — it performs best in trending conditions.
Adjust projection and smoothing settings to fit the asset/timeframe you're trading.
Rotation Phase TriggerHow to Use the Full Rotation Phase Trigger Tool (non-floating version)
This version is ideal for macro-level market context, helping you decide when to rotate between growth, income, and defensive positions using visual cues directly on the chart.
🧱 Components Recap (Non-Floating Version)
ROC Histograms:
SPY:TLT ROC (green bars): Measures equity strength vs. bonds
QQQ:XLU ROC (blue bars): Measures growth vs. defensive rotation
EMA Trend Filter:
Uses a fast/slow EMA crossover on both ratios to confirm the trend
When both are rising → confirms GROWTH phase
Phase Background Colors:
🟩 Green = GROWTH
🟧 Orange = INCOME
🟥 Red = DEFENSIVE
No color = NEUTRAL
Instruction Labels:
Show what sectors to add and what to sell (with ETF tickers)
Alert Conditions:
Can be linked to email, SMS, or app notifications
Triggered when phase changes
✅ Weekly Workflow
Every Monday (or Weekend Prep)
1. Open SPY on a Weekly Chart
This tool is designed around the U.S. equity vs bond regime
Always keep SPY as the main chart for best alignment
2. Check the Background Color
Instantly tells you what regime you're in:
Green → rotate into growth ETFs
Orange → stick to or buy income-generating ETFs
Red → get defensive, raise cash, or buy bond/hedge ETFs
3. Read the Labels
Top label = phase status (e.g., GROWTH)
Bottom label = action instructions:
What ETFs to accumulate (MTUM, VUN, HYLD, etc.)
What sectors or funds to rotate out of
4. Look at Momentum Histograms
Confirms whether the regime shift is gaining strength
Larger bars = stronger conviction
Diverging directions? Wait for confirmation
🔁 Tactical Rotation Plan
Phase Add Trim/Sell
GROWTH MTUM, VUN, XMTM, HXS, VTI HYLD, HHIS, HPYT
INCOME HYLD, HHIS, QQQY, DFN, DGS MTUM, VUN
DEFENSIVE HPYT, HPYT.U, ZGLD, GDE All equities
NEUTRAL Nothing new, rebalance if needed Excess risk positions
🔔 Alert Setup (Optional)
You can create alerts in TradingView using:
Right-click chart → "Add Alert"
Use condition: "Rotation Phase Trigger" → "GROWTH" / "INCOME" / "DEFENSIVE"
Choose notification method (popup, app, email, etc.)
💡 Pro Tips
Use this version on SPY weekly only — for best signal clarity
Goichi Hosoda TheoryGreetings to traders. I offer you an indicator for trading according to the Ichimoku Kinho Hyo trading system. This indicator determines possible time cycles of price reversal and expected asset price values based on the theory of waves and time cycles by Goichi Hosoda.
The indicator contains classic price levels N, V, E and NT, and is supplemented with intermediate levels V+E, V+N, N+NT and x2, x3, x4 for levels V and E, which are used in cases where the wave does not contain corrections and there is no possibility to update the impulse-corrective wave.
A function for counting bars from points A B and C has also been added.
Larsson Line Replica (Yellow = Bullish, Blue = Bearish)📘 Interpretation with Flipped Colors
🟨 Yellow Zones – Bullish Trend
• Signals uptrend confirmation.
• SMMA(15) > SMMA(29) indicates upward momentum.
• Ideal for:
• Holding or adding to long positions
• Buying pullbacks within or near the band
• Ignoring short setups on lower timeframes unless reversal signals show up
🟦 Blue Zones – Bearish Trend
• SMMA(15) < SMMA(29) confirms a downtrend.
• Useful for:
• Risk-off posture: take profits, reduce exposure
• Considering short trades
• Waiting out until trend flips yellow again before longing
🩶 Gray Zones – Transition / Unclear
• Represents possible trend change or indecision.
• Appears around crossovers.
• Great time to be cautious — wait for confirmation (either yellow or blue)
• Often coincides with low-volatility consolidation zones or false breakouts
📊 Timeframe Interpretation Tips (with Updated Colors)
🕰️ Weekly – Macro Regime Filter
• 🟨 Yellow = Swing longs allowed
• 🟦 Blue = Risk-off, short setups more reliable
• Use this timeframe as your macro bias anchor
• Combine with higher timeframe market structure, moving averages, or on-chain trends
⸻
📅 Daily – Tactical Entry & Position Management
• Use the slope of the bands for early momentum detection
• 🟦 Blue to Yellow flips = potential trend reversal to the upside → re-enter longs, cut shorts
• 🟨 Yellow to Blue flips = trend weakness or downtrend return → consider profit-taking or short setups
• Great timeframe for:
• Refining entries
• Managing exits
• Spotting trend shifts before weekly confirms
⸻
⏱ Lower Timeframes (4H, 1H) – Execution
• Treat the band like a dynamic trend channel
• Enter trades in direction of the current color:
• 🟨 Yellow → Buy pullbacks to the midline
• 🟦 Blue → Sell bounces into the midline
• Avoid trading against the band unless clear structure or divergence forms
• Pair with RSI/MACD for confluence
Mercury Venus Conjunction Sextiles 2019-2026How to Use It and What It Means Astrologically
How to Use the Script in TradingView
This Pine Script, called "Mercury Venus Aspects 2019–2026," is made to highlight the dates of Mercury-Venus conjunctions (0°) and sextiles (60°) from 2019 to 2026 on TradingView charts. Here's how to use it:
click “Add to Chart.” It will apply to any chart you have open—stocks, forex, crypto, etc.
Customize the Display
You can turn on/off the visibility of conjunctions and sextiles using checkboxes under "Inputs" in the settings.
You can also adjust the label size (small, normal, large, or huge) for better readability on your chart.
What You’ll See on the Chart
Conjunctions appear as blue shaded zones with labels like “C1,” “C2,” etc. These mark dates when Mercury and Venus are at the same degree.
Sextiles show up in orange with labels like “S1,” “S2,” marking when they’re about 60° apart.
Each event spans a 2-day window (one day before and after the exact aspect).
How to Use It Practically
You can overlay the script on market charts to look for any patterns between these planetary aspects and price movements.
You can also use it to plan personal or financial activities, since these aspects often affect communication, money, and relationships.
What to Keep in Mind
Dates are approximate and based on average planetary cycles (Mercury: ~88 days, Venus: ~225 days). For exact timing, use an ephemeris.
Only conjunctions and sextiles are shown. Oppositions, squares, and trines aren’t included because Mercury and Venus never get far enough apart (more than 75°).
This script is great for astrologers, traders, and enthusiasts who want to see Mercury-Venus aspects directly on their charts and explore their possible effects.
Astrological Meaning of Mercury-Venus Aspects
What Mercury and Venus Represent
Mercury rules communication, thinking, technology, travel, and trade. In global events (mundane astrology), it affects media, markets, and movement of information.
Venus is about love, beauty, money, and pleasure. It influences relationships, aesthetics, and finance. In the world stage, it’s linked to luxury, art, fashion, and economic balance.
When Mercury and Venus form aspects (like conjunctions or sextiles), their energies mix in helpful ways that can affect people and events.
Conjunction (0°) – Mercury and Venus Together
These two planets are in the same sign and degree, so their qualities merge.
For people:
Positive: Smooth communication, charm, creativity, and better relationships. Great for romance, art, and social interaction.
Negative: Too much focus on appearances, sweet talk, or pleasure can cloud judgment. Decisions may lack depth.
For the economy:
Positive: Boosts in media, entertainment, fashion, and tech. Good for trade, deals, and optimism in financial markets.
Negative: Risk of overspending or unrealistic expectations. May cause small market bubbles or misleading hype.
Sextile (60°) – Mercury and Venus in Harmony
These two planets are two signs apart, creating a smooth, supportive energy.
For people:
Positive: Easy conversations, creative teamwork, small financial wins, and pleasant social experiences.
Negative: Energy is mild, so opportunities might be missed if not acted on. People may avoid hard decisions.
For the economy:
Positive: Gradual improvements in areas like marketing, social media, hospitality, and design. Good for diplomacy.
Negative: Lack of strong initiative could limit bigger gains. Minor missteps are possible due to a laid-back attitude.
General Effects
These aspects are mostly beneficial. They support creativity, financial thinking, and social harmony.
Downsides: Conjunctions may lead to overindulgence or shallow choices, while sextiles may cause missed chances due to low energy.
These aspects rarely cause major economic shifts on their own but can amplify trends depending on other planetary influences (like Saturn or Uranus).
Zodiac Sign Influence
Fire signs (Aries, Leo, Sagittarius): Bold communication, energetic spending, gains in media or entertainment.
Earth signs (Taurus, Virgo, Capricorn): Practical results, stable finances, growth in real-world assets like property or food.
Air signs (Gemini, Libra, Aquarius): Intellectual growth, tech innovation, and social ideas flourish.
Water signs (Cancer, Scorpio, Pisces): Emotional depth in conversations, artistic growth, and financial sensitivity.
Mercury-Venus aspects are gentle but helpful. They combine logic (Mercury) with emotion and value (Venus). They’re good times for love, communication, and money—but their benefits depend on how we use the energy. This script lets you easily track these moments on a chart and explore how they might align with real-life trends or decisions.
Disclaimer: This script and its interpretations are for informational and educational purposes only. They do not constitute financial, trading, or professional astrological advice. Always conduct your own research and consult qualified professionals before making any financial or personal decisions. Use at your own discretion.
Stochastic Order Flow Momentum [ScorsoneEnterprises]This indicator implements a stochastic model of order flow using the Ornstein-Uhlenbeck (OU) process, combined with a Kalman filter to smooth momentum signals. It is designed to capture the dynamic momentum of volume delta, representing the net buying or selling pressure per bar, and highlight potential shifts in market direction. The volume delta data is sourced from TradingView’s built-in functionality:
www.tradingview.com
For a deeper dive into stochastic processes like the Ornstein-Uhlenbeck model in financial contexts, see these research articles: arxiv.org and arxiv.org
The SOFM tool aims to reveal the momentum and acceleration of order flow, modeled as a mean-reverting stochastic process. In markets, order flow often oscillates around a baseline, with bursts of buying or selling pressure that eventually fade—similar to how physical systems return to equilibrium. The OU process captures this behavior, while the Kalman filter refines the signal by filtering noise. Parameters theta (mean reversion rate), mu (mean level), and sigma (volatility) are estimated by minimizing a squared-error objective function using gradient descent, ensuring adaptability to real-time market conditions.
How It Works
The script combines a stochastic model with signal processing. Here’s a breakdown of the key components, including the OU equation and supporting functions.
// Ornstein-Uhlenbeck model for volume delta
ou_model(params, v_t, lkb) =>
theta = clamp(array.get(params, 0), 0.01, 1.0)
mu = clamp(array.get(params, 1), -100.0, 100.0)
sigma = clamp(array.get(params, 2), 0.01, 100.0)
error = 0.0
v_pred = array.new(lkb, 0.0)
array.set(v_pred, 0, array.get(v_t, 0))
for i = 1 to lkb - 1
v_prev = array.get(v_pred, i - 1)
v_curr = array.get(v_t, i)
// Discretized OU: v_t = v_{t-1} + theta * (mu - v_{t-1}) + sigma * noise
v_next = v_prev + theta * (mu - v_prev)
array.set(v_pred, i, v_next)
v_curr_clean = na(v_curr) ? 0 : v_curr
v_pred_clean = na(v_next) ? 0 : v_next
error := error + math.pow(v_curr_clean - v_pred_clean, 2)
error
The ou_model function implements a discretized Ornstein-Uhlenbeck process:
v_t = v_{t-1} + theta (mu - v_{t-1})
The model predicts volume delta (v_t) based on its previous value, adjusted by the mean-reverting term theta (mu - v_{t-1}), with sigma representing the volatility of random shocks (approximated in the Kalman filter).
Parameters Explained
The parameters theta, mu, and sigma represent distinct aspects of order flow dynamics:
Theta:
Definition: The mean reversion rate, controlling how quickly volume delta returns to its mean (mu). Constrained between 0.01 and 1.0 (e.g., clamp(array.get(params, 0), 0.01, 1.0)).
Interpretation: A higher theta indicates faster reversion (short-lived momentum), while a lower theta suggests persistent trends. Initial value is 0.1 in init_params.
In the Code: In ou_model, theta scales the pull toward \mu, influencing the predicted v_t.
Mu:
Definition: The long-term mean of volume delta, representing the equilibrium level of net buying/selling pressure. Constrained between -100.0 and 100.0 (e.g., clamp(array.get(params, 1), -100.0, 100.0)).
Interpretation: A positive mu suggests a bullish bias, while a negative mu indicates bearish pressure. Initial value is 0.0 in init_params.
In the Code: In ou_model, mu is the target level that v_t reverts to over time.
Sigma:
Definition: The volatility of volume delta, capturing the magnitude of random fluctuations. Constrained between 0.01 and 100.0 (e.g., clamp(array.get(params, 2), 0.01, 100.0)).
Interpretation: A higher sigma reflects choppier, noisier order flow, while a lower sigma indicates smoother behavior. Initial value is 0.1 in init_params.
In the Code: In the Kalman filter, sigma contributes to the error term, adjusting the smoothing process.
Summary:
theta: Speed of mean reversion (how fast momentum fades).
mu: Baseline order flow level (bullish or bearish bias).
sigma: Noise level (variability in order flow).
Other Parts of the Script
Clamp
A utility function to constrain parameters, preventing extreme values that could destabilize the model.
ObjectiveFunc
Defines the objective function (sum of squared errors) to minimize during parameter optimization. It compares the OU model’s predicted volume delta to observed data, returning a float to be minimized.
How It Works: Calls ou_model to generate predictions, computes the squared error for each timestep, and sums it. Used in optimization to assess parameter fit.
FiniteDifferenceGradient
Calculates the gradient of the objective function using finite differences. Think of it as finding the "slope" of the error surface for each parameter. It nudges each parameter (theta, mu, sigma) by a small amount (epsilon) and measures the change in error, returning an array of gradients.
Minimize
Performs gradient descent to optimize parameters. It iteratively adjusts theta, mu, and sigma by stepping down the "hill" of the error surface, using the gradients from FiniteDifferenceGradient. Stops when the gradient norm falls below a tolerance (0.001) or after 20 iterations.
Kalman Filter
Smooths the OU-modeled volume delta to extract momentum. It uses the optimized theta, mu, and sigma to predict the next state, then corrects it with observed data via the Kalman gain. The result is a cleaner momentum signal.
Applied
After initializing parameters (theta = 0.1, mu = 0.0, sigma = 0.1), the script optimizes them using volume delta data over the lookback period. The optimized parameters feed into the Kalman filter, producing a smoothed momentum array. The average momentum and its rate of change (acceleration) are calculated, though only momentum is plotted by default.
A rising momentum suggests increasing buying or selling pressure, while a flattening or reversing momentum indicates fading activity. Acceleration (not plotted here) could highlight rapid shifts.
Tool Examples
The SOFM indicator provides a dynamic view of order flow momentum, useful for spotting directional shifts or consolidation.
Low Time Frame Example: On a 5-minute chart of SEED_ALEXDRAYM_SHORTINTEREST2:NQ , a rising momentum above zero with a lookback of 5 might signal building buying pressure, while a drop below zero suggests selling dominance. Crossings of the zero line can mark transitions, though the focus is on trend strength rather than frequent crossovers.
High Time Frame Example: On a daily chart of NYSE:VST , a sustained positive momentum could confirm a bullish trend, while a sharp decline might warn of exhaustion. The mean-reverting nature of the OU process helps filter out noise on longer scales. It doesn’t make the most sense to use this on a high timeframe with what our data is.
Choppy Markets: When momentum oscillates near zero, it signals indecision or low conviction, helping traders avoid whipsaws. Larger deviations from zero suggest stronger directional moves to act on, this is on $STT.
Inputs
Lookback: Users can set the lookback period (default 5) to adjust the sensitivity of the OU model and Kalman filter. Shorter lookbacks react faster but may be noisier; longer lookbacks smooth more but lag slightly.
The user can also specify the timeframe they want the volume delta from. There is a default way to lower and expand the time frame based on the one we are looking at, but users have the flexibility.
No indicator is 100% accurate, and SOFM is no exception. It’s an estimation tool, blending stochastic modeling with signal processing to provide a leading view of order flow momentum. Use it alongside price action, support/resistance, and your own discretion for best results. I encourage comments and constructive criticism.
Probability Grid [LuxAlgo]The Probability Grid tool allows traders to see the probability of where and when the next reversal would occur, it displays a 10x10 grid and/or dashboard with the probability of the next reversal occurring beyond each cell or within each cell.
🔶 USAGE
By default, the tool displays deciles (percentiles from 0 to 90), users can enable, disable and modify each percentile, but two of them must always be enabled or the tool will display an error message alerting of it.
The use of the tool is quite simple, as shown in the chart above, the further the price moves on the grid, the higher the probability of a reversal.
In this case, the reversal took place on the cell with a probability of 9%, which means that there is a probability of 91% within the square defined by the last reversal and this cell.
🔹 Grid vs Dashboard
The tool can display a grid starting from the last reversal and/or a dashboard at three predefined locations, as shown in the chart above.
🔶 DETAILS
🔹 Raw Data vs Normalized Data
By default the tool displays the normalized data, this means that instead of using the raw data (price delta between reversals) it uses the returns between each reversal, this is useful to make an apples to apples comparison of all the data in the dataset.
This can be seen in the left side of the chart above (BTCUSD Daily chart) where normalize data is disabled, the percentiles from 0 to 40 overlap and are indistinguishable from each other because the tool uses the raw price delta over the entire bitcoin history, with normalize data enabled as we can see in the right side of the chart we can have a fair comparison of the data over the entire history.
🔹 Probability Beyond or Within Each Cell
Two different probability modes are available, the default mode is Probability Beyond Each Cell, the number displayed in each cell is the probability of the next reversal to be located in the area beyond the cell, for example, if the cell displays 20%, it means that in the area formed by the square starting from the last reversal and ending at the cell, there is an 80% probability and outside that square there is a 20% probability for the location of the next reversal.
The second probability mode is the probability within each cell, this outlines the chance that the next reversal will be within the cell, as we can see on the right chart above, when using deciles as percentiles (default settings), each cell has the same 1% probability for the 10x10 grid.
🔶 SETTINGS
Swing Length: The maximum length in bars used to identify a swing
Maximum Reversals: Maximum number of reversals included in calculations
Normalize Data: Use returns between swings instead of raw price
Probability: Choose between two different probability modes: beyond and inside each cell
Percentiles: Enable/disable each of the ten percentiles and select the percentile number and line style
🔹 Dashboard
Show Dashboard: Enable or disable the dashboard
Position: Choose dashboard location
Size: Choose dashboard size
🔹 Style
Show Grid: Enable or disable the grid
Size: Choose grid text size
Colors: Choose grid background colors
Show Marks: Enable/disable reversal markers
Sessions with Mausa session high/low tracker that draws flat, horizontal lines for Asia, London, and New York trading sessions. It updates those levels in real time during each session, locks them in once the session ends, and keeps them on the chart for context.
At a glance, you always know:
Where each session’s highs and lows were set
Which session produced them (ASIA, LDN, NY labels float cleanly above the highs)
When price is approaching or reacting to prior session levels
🔹 Use Cases:
• Key Levels – See where Asia, London, or NY set boundaries, and watch how price respects or rejects them
• Breakout Zones – Monitor when price breaks above/below session highs/lows
• Session Structure – Know instantly if a move happened during London or NY without squinting at the clock
• Backtesting – Keep historic session levels on the chart for reference — nothing gets deleted
• Confluence – Align these levels with support/resistance, fibs, or liquidity zones
Simple, visual, no distractions — just session structure at a glance.
Half Causal EstimatorOverview
The Half Causal Estimator is a specialized filtering method that provides responsive averages of market variables (volume, true range, or price change) with significantly reduced time delay compared to traditional moving averages. It employs a hybrid approach that leverages both historical data and time-of-day patterns to create a timely representation of market activity while maintaining smooth output.
Core Concept
Traditional moving averages suffer from time lag, which can delay signals and reduce their effectiveness for real-time decision making. The Half Causal Estimator addresses this limitation by using a non-causal filtering method that incorporates recent historical data (the causal component) alongside expected future behavior based on time-of-day patterns (the non-causal component).
This dual approach allows the filter to respond more quickly to changing market conditions while maintaining smoothness. The name "Half Causal" refers to this hybrid methodology—half of the data window comes from actual historical observations, while the other half is derived from time-of-day patterns observed over multiple days. By incorporating these "future" values from past patterns, the estimator can reduce the inherent lag present in traditional moving averages.
How It Works
The indicator operates through several coordinated steps. First, it stores and organizes market data by specific times of day (minutes/hours). Then it builds a profile of typical behavior for each time period. For calculations, it creates a filtering window where half consists of recent actual data and half consists of expected future values based on historical time-of-day patterns. Finally, it applies a kernel-based smoothing function to weight the values in this composite window.
This approach is particularly effective because market variables like volume, true range, and price changes tend to follow recognizable intraday patterns (they are positive values without DC components). By leveraging these patterns, the indicator doesn't try to predict future values in the traditional sense, but rather incorporates the average historical behavior at those future times into the current estimate.
The benefit of using this "average future data" approach is that it counteracts the lag inherent in traditional moving averages. In a standard moving average, recent price action is underweighted because older data points hold equal influence. By incorporating time-of-day averages for future periods, the Half Causal Estimator essentially shifts the center of the filter window closer to the current bar, resulting in more timely outputs while maintaining smoothing benefits.
Understanding Kernel Smoothing
At the heart of the Half Causal Estimator is kernel smoothing, a statistical technique that creates weighted averages where points closer to the center receive higher weights. This approach offers several advantages over simple moving averages. Unlike simple moving averages that weight all points equally, kernel smoothing applies a mathematically defined weight distribution. The weighting function helps minimize the impact of outliers and random fluctuations. Additionally, by adjusting the kernel width parameter, users can fine-tune the balance between responsiveness and smoothness.
The indicator supports three kernel types. The Gaussian kernel uses a bell-shaped distribution that weights central points heavily while still considering distant points. The Epanechnikov kernel employs a parabolic function that provides efficient noise reduction with a finite support range. The Triangular kernel applies a linear weighting that decreases uniformly from center to edges. These kernel functions provide the mathematical foundation for how the filter processes the combined window of past and "future" data points.
Applicable Data Sources
The indicator can be applied to three different data sources: volume (the trading volume of the security), true range (expressed as a percentage, measuring volatility), and change (the absolute percentage change from one closing price to the next).
Each of these variables shares the characteristic of being consistently positive and exhibiting cyclical intraday patterns, making them ideal candidates for this filtering approach.
Practical Applications
The Half Causal Estimator excels in scenarios where timely information is crucial. It helps in identifying volume climaxes or diminishing volume trends earlier than conventional indicators. It can detect changes in volatility patterns with reduced lag. The indicator is also useful for recognizing shifts in price momentum before they become obvious in price action, and providing smoother data for algorithmic trading systems that require reduced noise without sacrificing timeliness.
When volatility or volume spikes occur, conventional moving averages typically lag behind, potentially causing missed opportunities or delayed responses. The Half Causal Estimator produces signals that align more closely with actual market turns.
Technical Implementation
The implementation of the Half Causal Estimator involves several technical components working together. Data collection and organization is the first step—the indicator maintains a data structure that organizes market data by specific times of day. This creates a historical record of how volume, true range, or price change typically behaves at each minute/hour of the trading day.
For each calculation, the indicator constructs a composite window consisting of recent actual data points from the current session (the causal half) and historical averages for upcoming time periods from previous sessions (the non-causal half). The selected kernel function is then applied to this composite window, creating a weighted average where points closer to the center receive higher weights according to the mathematical properties of the chosen kernel. Finally, the kernel weights are normalized to ensure the output maintains proper scaling regardless of the kernel type or width parameter.
This framework enables the indicator to leverage the predictable time-of-day components in market data without trying to predict specific future values. Instead, it uses average historical patterns to reduce lag while maintaining the statistical benefits of smoothing techniques.
Configuration Options
The indicator provides several customization options. The data period setting determines the number of days of observations to store (0 uses all available data). Filter length controls the number of historical data points for the filter (total window size is length × 2 - 1). Filter width adjusts the width of the kernel function. Users can also select between Gaussian, Epanechnikov, and Triangular kernel functions, and customize visual settings such as colors and line width.
These parameters allow for fine-tuning the balance between responsiveness and smoothness based on individual trading preferences and the specific characteristics of the traded instrument.
Limitations
The indicator requires minute-based intraday timeframes, securities with volume data (when using volume as the source), and sufficient historical data to establish time-of-day patterns.
Conclusion
The Half Causal Estimator represents an innovative approach to technical analysis that addresses one of the fundamental limitations of traditional indicators: time lag. By incorporating time-of-day patterns into its calculations, it provides a more timely representation of market variables while maintaining the noise-reduction benefits of smoothing. This makes it a valuable tool for traders who need to make decisions based on real-time information about volume, volatility, or price changes.
Sun Moon Conjunctions Trine Oppositions 2025this script is an astrological tool designed to overlay significant Sun-Moon aspect events for 2025 on a Bitcoin chart. It highlights key lunar phases and aspects—Conjunctions (New Moon) in blue, Squares in red, Oppositions (Full Moon) in purple, and Trines in green—using background colors and labeled markers. Users can toggle visibility for each aspect type and adjust label sizes via customizable inputs. The script accurately marks events from January through December 2025, with labels appearing once per event, making it a valuable resource for exploring potential correlations between lunar cycles and Bitcoin price movements.
Gold Opening 15-Min ORB INDICATOR by AdéThis indicator is designed for trading Gold (XAUUSD) during the first 15 minutes of major market openings: Asian, European, and US sessions. It highlights these key time windows, plots the high and low ranges of each session, and generates breakout-based buy/sell signals. Ideal for traders focusing on volatility at market opens.
Features:Session Windows:
Asian: 1:00–1:15 AM Barcelona time (23:00–23:15 UTC, CEST-adjusted).
European: 9:00–9:15 AM Barcelona time (07:00–07:15 UTC).
US: 3:30–3:45 PM Barcelona time (13:30–13:45 UTC).
Marked with yellow (Asian), green (Europe), and blue (US) triangles below bars.
High/Low Ranges:Plots horizontal lines showing the highest high and lowest low of each session’s first 15 minutes.Lines appear after each session ends and persist until the next day, color-coded to match the sessions.Breakout Signals:Buy (Long): Triggers when the closing price breaks above the highest high of the previous 5 bars during a session window (lime triangle above bar).Sell (Short): Triggers when the closing price breaks below the lowest low of the previous 5 bars during a session window (red triangle below bar).
Signals are restricted to the 15-minute session periods for focused trading.Usage:Timeframe: Optimized for 1-minute XAUUSD charts.Timezone: Set your chart to UTC for accurate session timing (script uses UTC internally, based on Barcelona CEST, UTC+2 in April).Strategy:
Use buy/sell signals for breakout trades during volatile market opens, with session ranges as support/resistance levels.Customization: Adjust the lookback variable (default: 5) to tweak signal sensitivity.Notes:Tested for April 2025 (CEST, UTC+2).
Adjust timestamp values if using outside daylight saving time (CET, UTC+1) or for different broker timezones.Best for scalping or short-term trades during high-volatility periods. Combine with other indicators for confirmation if desired.How to Use:Apply to a 1-minute XAUUSD chart.Watch for session markers (triangles) and breakout signals during the 15-minute windows.Use the high/low lines to gauge potential breakout targets or reversals.
Kondratieff Wave & Benner Business CyclesKondratieff Wave Theory
Description: The Kondratieff Wave, also known as K-Waves or Long Waves, is an economic theory that posits long-term cycles of approximately 40-60 years in capitalist economies. These cycles consist of four phases: Spring (expansion and recovery), Summer (prosperity and peak), Autumn (stagnation and recession), and Winter (depression and restructuring). The theory suggests that technological innovations and major economic shifts drive these waves, influencing periods of growth and decline over decades.
Creator Bio: Nikolai Dmitriyevich Kondratieff (1892–1938) was a Russian economist born in the Kostroma Governorate. He studied at the University of St. Petersburg and became a prominent figure in Soviet economics. Kondratieff developed his long-wave theory in the 1920s while analyzing historical economic data, publishing works like The Major Economic Cycles (1925). His ideas clashed with Soviet ideology, leading to his arrest in 1930 during Stalin’s purges. He was executed in 1938, but his work gained recognition posthumously, influencing modern economic cycle analysis.
Benner Cycle Theory
Description: The Benner Cycle, proposed by Samuel Benner, is a predictive model for business and commodity price cycles, focusing on shorter-term economic fluctuations. Benner identified recurring patterns in market peaks (highs), panics (crashes), and buying opportunities (lows), with cycles averaging 8-10 years for highs, 7-8 years for panics, and 8-9 years for buys. His theory, based on historical observations of U.S. markets, aimed to guide farmers and investors by forecasting periods of prosperity and distress.
Creator Bio: Samuel T. Benner (1830s–unknown) was an American farmer and businessman from Ohio, not a formally trained economist. After losing his fortune in the Panic of 1873, Benner turned to studying economic patterns. In 1875, he self-published Benner’s Prophecies of Future Ups and Downs in Prices, a book that charted cycles in pig iron prices and other commodities. His work gained a cult following among traders and remains studied for its empirical approach, despite Benner’s lack of academic credentials and limited biographical records.
Order Flow Hawkes Process [ScorsoneEnterprises]This indicator is an implementation of the Hawkes Process. This tool is designed to show the excitability of the different sides of volume, it is an estimation of bid and ask size per bar. The code for the volume delta is from www.tradingview.com
Here’s a link to a more sophisticated research article about Hawkes Process than this post arxiv.org
This tool is designed to show how excitable the different sides are. Excitability refers to how likely that side is to get more activity. Alan Hawkes made Hawkes Process for seismology. A big earthquake happens, lots of little ones follow until it returns to normal. Same for financial markets, big orders come in, causing a lot of little orders to come. Alpha, Beta, and Lambda parameters are estimated by minimizing a negative log likelihood function.
How it works
There are a few components to this script, so we’ll go into the equation and then the other functions used in this script.
hawkes_process(params, events, lkb) =>
alpha = clamp(array.get(params, 0), 0.01, 1.0)
beta = clamp(array.get(params, 1), 0.1, 10.0)
lambda_0 = clamp(array.get(params, 2), 0.01, 0.3)
intensity = array.new_float(lkb, 0.0)
events_array = array.new_float(lkb, 0.0)
for i = 0 to lkb - 1
array.set(events_array, i, array.get(events, i))
for i = 0 to lkb - 1
sum_decay = 0.0
current_event = array.get(events_array, i)
for j = 0 to i - 1
time_diff = i - j
past_event = array.get(events_array, j)
decay = math.exp(-beta * time_diff)
past_event_val = na(past_event) ? 0 : past_event
sum_decay := sum_decay + (past_event_val * decay)
array.set(intensity, i, lambda_0 + alpha * sum_decay)
intensity
The parameters alpha, beta, and lambda all represent a different real thing.
Alpha (α):
Definition: Alpha represents the excitation factor or the magnitude of the influence that past events have on the future intensity of the process. In simpler terms, it measures how much each event "excites" or triggers additional events. It is constrained between 0.01 and 1.0 (e.g., clamp(array.get(params, 0), 0.01, 1.0)). A higher alpha means past events have a stronger influence on increasing the intensity (likelihood) of future events. Initial value is set to 0.1 in init_params. In the hawkes_process function, alpha scales the contribution of past events to the current intensity via the term alpha * sum_decay.
Beta (β):
Definition: Beta controls the rate of exponential decay of the influence of past events over time. It determines how quickly the effect of a past event fades away. It is constrained between 0.1 and 10.0 (e.g., clamp(array.get(params, 1), 0.1, 10.0)). A higher beta means the influence of past events decays faster, while a lower beta means the influence lingers longer. Initial value is set to 0.1 in init_params. In the hawkes_process function, beta appears in the decay term math.exp(-beta * time_diff), which reduces the impact of past events as the time difference (time_diff) increases.
Lambda_0 (λ₀):
Definition: Lambda_0 is the baseline intensity of the process, representing the rate at which events occur in the absence of any excitation from past events. It’s the "background" rate of the process. It is constrained between 0.01 and 0.3 .A higher lambda_0 means a higher natural frequency of events, even without the influence of past events. Initial value is set to 0.1 in init_params. In the hawkes_process function, lambda_0 sets the minimum intensity level, to which the excitation term (alpha * sum_decay) is added: lambda_0 + alpha * sum_decay
Alpha (α): Strength of event excitation (how much past events boost future events).
Beta (β): Rate of decay of past event influence (how fast the effect fades).
Lambda_0 (λ₀): Baseline event rate (background intensity without excitation).
Other parts of the script.
Clamp
The clamping function is a simple way to make sure parameters don’t grow or shrink too much.
ObjectiveFunction
This function defines the objective function (negative log-likelihood) to minimize during parameter optimization.It returns a float representing the negative log-likelihood (to be minimized).
How It Works:
Calls hawkes_process to compute the intensity array based on current parameters.Iterates over the lookback period:lambda_t: Intensity at time i.event: Event magnitude at time i.Handles na values by replacing them with 0.Computes log-likelihood: event_clean * math.log(math.max(lambda_t_clean, 0.001)) - lambda_t_clean.Ensures lambda_t_clean is at least 0.001 to avoid log(0).Accumulates into log_likelihood.Returns -log_likelihood (negative because the goal is to minimize, not maximize).
It is used in the optimization process to evaluate how well the parameters fit the observed event data.
Finite Difference Gradient:
This function calculates the gradient of the objective function we spoke about. The gradient is like a directional derivative. Which is like the direction of the rate of change. Which is like the direction of the slope of a hill, we can go up or down a hill. It nudges around the parameter, and calculates the derivative of the parameter. The array of these nudged around parameters is what is returned after they are optimized.
Minimize:
This is the function that actually has the loop and calls the Finite Difference Gradient each time. Here is where the minimizing happens, how we go down the hill. If we are below a tolerance, we are at the bottom of the hill.
Applied
After an initial guess the parameters are optimized with a mix of bid and ask levels to prevent some over-fitting for each side while keeping some efficiency. We initialize two different arrays to store the bid and ask sizes. After we optimize the parameters we clamp them for the calculations. We then get the array of intensities from the Hawkes Process of bid and ask and plot them both. When the bids are greater than the ask it represents a bullish scenario where there are likely to be more buy than sell orders, pushing up price.
Tool examples:
The idea is that when the bid side is more excitable it is more likely to see a bullish reaction, when the ask is we see a bearish reaction.
We see that there are a lot of crossovers, and I picked two specific spots. The idea of this isn’t to spot crossovers but avoid chop. The values are either close together or far apart. When they are far, it is a classification for us to look for our own opportunities in, when they are close, it signals the market can’t pick a direction just yet.
The value works just as well on a higher timeframe as on a lower one. Hawkes Process is an estimate, so there is a leading value aspect of it.
The value works on equities as well, here is NASDAQ:TSLA on a lower time frame with a lookback of 5.
Inputs
Users can enter the lookback value and timeframe.
No tool is perfect, the Hawkes Process value is also not perfect and should not be followed blindly. It is good to use any tool along with discretion and price action.
Fibonacci Levels with SMA SignalsThis strategy leverages Fibonacci retracement levels along with the 100-period and 200-period Simple Moving Averages (SMAs) to generate robust entry and exit signals for long-term swing trades, particularly on the daily timeframe. The combination of Fibonacci levels and SMAs provides a powerful way to capitalize on major trend reversals and market retracements, especially in stocks and major crypto assets.
The core of this strategy involves calculating key Fibonacci retracement levels (23.6%, 38.2%, 61.8%, and 78.6%) based on the highest high and lowest low over a 365-day lookback period. These Fibonacci levels act as potential support and resistance zones, indicating areas where price may retrace before continuing its trend. The 100-period SMA and 200-period SMA are used to define the broader market trend, with the strategy favoring uptrend conditions for buying and downtrend conditions for selling.
This indicator highlights high-probability zones for long or short swing setups based on Fibonacci retracements and the broader trend, using the 100 and 200 SMAs.
In addition, this strategy integrates alert conditions to notify the trader when these key conditions are met, providing real-time notifications for optimal entry and exit points. These alerts ensure that the trader does not miss significant trade opportunities.
Key Features:
Fibonacci Retracement Levels: The Fibonacci levels provide natural price zones that traders often watch for potential reversals, making them highly relevant in the context of swing trading.
100 and 200 SMAs: These moving averages help define the overall market trend, ensuring that the strategy operates in line with broader price action.
Buy and Sell Signals: The strategy generates buy signals when the price is above the 200 SMA and retraces to the 61.8% Fibonacci level. Sell signals are triggered when the price is below the 200 SMA and retraces to the 38.2% Fibonacci level.
Alert Conditions: The alert conditions notify traders when the price is at the key Fibonacci levels in the context of an uptrend or downtrend, allowing for efficient monitoring of trade opportunities.
Application:
This strategy is ideal for long-term swing trades in both stocks and major cryptocurrencies (such as BTC and ETH), particularly on the daily timeframe. The daily timeframe allows for capturing broader, more sustained trends, making it suitable for identifying high-quality entries and exits. By using the 100 and 200 SMAs, the strategy filters out noise and focuses on larger, more meaningful trends, which is especially useful for longer-term positions.
This script is optimized for swing traders looking to capitalize on retracements and trends in markets like stocks and crypto. By combining Fibonacci levels with SMAs, the strategy ensures that traders are not only entering at optimal levels but also trading in the direction of the prevailing trend.
US Recessions with SPX reversals v3 [FornaxTV]In addition to highlighting periods of official US recessions (as defined by the NBER) this script also displays vertical lines for the SPX market top and bottom associated with each recession .
This facilitates more detailed analysis of potential leading and coincident indicators for market tops and bottoms. This is particularly relevant for market tops, which typically precede the start of a recession by several months.
In addition to recessions with SPX market tops and market bottoms:
- A horizontal line can optionally be displayed for the last market top . (NOTE: this line will only be displayed for SPX tickers.)
- Labels can optionally be displayed for market tops & bottoms, plus the start and end of recessions. If the statistics are enabled (see below) these labels will also indicate the number of weeks between key market events, e.g. a market top and the start of a recession.
- A statistics table can optionally be displayed, contained statistics such as the number of weeks wince the last recession & market bottom, as well as averages for all recessions included in the analysis set.
For the recession statistics:
- "Outlier" recessions such as 1945 (WWII, where the market top occurred well after the recession itself) and 2020 (COVID pandemic, which was arguably not a "true" economic recession) can optionally be excluded.
- You can choose to exclude recessions occurring before a specific year.
RSI Support & Resistance Breakouts with OrderblocksThis tool is an overly simplified method of finding market squeeze and breakout completely based on a dynamic RSI calculation. It is designed to draw out areas of price levels where the market is pushing back against price action leaving behind instances of short term support and resistance levels you otherwise wouldn't see with the common RSI.
It uses the changes in market momentum to determine support and resistance levels in real time while offering price zone where order blocks exist in the short term.
In ranging markets we need to know a couple things.
1. External Zone - It's important to know where the highs and lows were left behind as they hold liquidity. Here you will have later price swings and more false breakouts.
2. Internal Zone - It's important to know where the highest and lowest closing values were so we can see the limitations of that squeeze. Here you will find the stronger cluster of orders often seen as orderblocks.
In this tool I've added a 200 period Smoothed Moving Average as a trend filter which causes the RSI calculation to change dynamically.
Regular Zones - without extending
The Zones draw out automatically but are often too small to work with.
To solve this problem, you can extend the zones into the future up to 40 bars.
This allows for more visibility against future price action.
--------------------------------------------
Two Types of Zones
External Zones - These zones give you positioning of the highest and lowest price traded within the ranging market. This is where liquidity will be swept and often is an ultimate breaking point for new price swings.
How to use them :
External Zones - External zones form at the top of a pullback. After this price should move back into its impulsive wave.
During the next corrective way, if price breaches the top of the previous External Zone, this is a sign of trend weakness. Expect a divergence and trend reversal.
Internal Zones - (OrderBlocks) Current price will move in relation to previous internal zones. The internal zone is where a majority of price action and trading took place. It's a stronger SQUEEZE area. Current price action will often have a hard time closing beyond the previous Internal Zones high or low. You can expect these zones to show you where the market will flip over. In these same internal zones you'll find large rejection candles.
**Important Note** Size Doesn't Matter
The size of the internal zone does not matter. It can be very small and still very powerful.
Once an internal zone has been hit a few times, its often not relevant any longer.
Order Block Zone Examples
In this image you can see the Internal Zone that was untouched had a STRONG price reaction later on.
Internal Zones that were touched multiple times had weak reactions later as price respected them less over time.
Zone Overlay Breakdown
The Zones form and update in real time until momentum has picked up and price begins to trend. However it leaves behind the elements of the inducement area and all the key levels you need to know about for future price action.
Resistance Fakeout : Later on after the zone has formed, price will return to this upper zone of price levels and cause fakeouts. A close above this zone implies the market moves long again.
Midline Equilibrium : This is simply the center of the strongest traded area. We can call this the Point of Control within the orderblock. If price expands through both extremes of this zone multiple times in the future, it eliminates the orderblock.
Support Fakeout : Just like its opposing brother, price will wick through this zone and rip back causing inducement to trap traders. You would need a clear close below this zone to be in a bearish trend.
BARCOLOR or Candle Color: (Optional)
Bars are colored under three conditions
Bullish Color = A confirmed bullish breakout of the range.
Bearish Color = A confirmed bearish breakout of the range.
Squeeze Color = Even if no box is formed a candle or candles can have a squeeze color. This means the ranging market happened within the high and low of that singular candle.
(US) Historical Trade WarsHistorical U.S. Trade Wars Indicator
Overview
This indicator visualizes major U.S. trade wars and disputes throughout modern economic history, from the McKinley Tariff of 1890 to recent U.S.-China tensions. This U.S.-focused timeline is perfect for macro traders, economic historians, and anyone looking to understand how America's trade conflicts correlate with market movements.
Features
Comprehensive U.S. Timeline: Covers 130+ years of U.S.-centered trade disputes with historically accurate dates.
Color-Coded Events:
🔴 Red: Marks the beginning of a U.S. trade war or major dispute.
🟡 Yellow: Highlights significant events within a trade conflict.
🟢 Green: Shows resolutions or ends of trade disputes.
Global Partners/Rivals: Tracks U.S. trade relations with China, Japan, EU, Canada, Mexico, Brazil, Argentina, and others.
Country Flags: Uses emoji flags for easy visual identification of nations in trade relations with the U.S.
Major Trade Wars Covered:
McKinley Tariff (1890-1894)
Smoot-Hawley Tariff Act (1930-1934)
U.S.-Europe Chicken War (1962-1974)
Multifiber Arrangement Quotas (1974-2005)
Japan-U.S. Trade Disputes (1981-1989)
NAFTA and Softwood Lumber Disputes
Clinton and Bush-Era Steel Tariffs
Obama-Era China Tire Tariffs
Rare Earth Minerals Dispute (2012-2014)
Solar Panel Dispute (2012-2015)
TPP and TTIP Negotiations
U.S.-China Trade War (2018-present)
Airbus-Boeing Dispute
Usage
Analyze how markets historically responded to trade war initiations and resolutions.
Identify patterns in market behavior during periods of trade tensions.
Use as an overlay with price action to examine correlations.
Perfect companion for macro analysis on daily, weekly, or monthly charts.
About
This indicator is designed as a historical reference tool for traders and economic analysts focusing on U.S. trade policy and its global impact. The dates and events have been thoroughly researched for accuracy. Each label includes emojis to indicate the U.S. and its trade partners/rivals, making it easy to track America's evolving trade relationships across time.
Note: This indicator works best on larger timeframes (daily, weekly, monthly) due to the historical span covered.