SOXL Trend Surge v3.0.2 – Profit-Only RunnerSOXL Trend Surge v3.0.2 – Profit-Only Runner
This is a trend-following strategy built for leveraged ETFs like SOXL, designed to ride high-momentum waves with minimal interference. Unlike most short-term scalping scripts, this model allows trades to develop over multiple days to even several months, capitalizing on the full power of extended directional moves — all without using a stop-loss.
🔍 How It Works
Entry Logic:
Price is above the 200 EMA (long-term trend confirmation)
Supertrend is bullish (momentum confirmation)
ATR is rising (volatility expansion)
Volume is above its 20-bar average (liquidity filter)
Price is outside a small buffer zone from the 200 EMA (to avoid whipsaws)
Trades are restricted to market hours only (9 AM to 2 PM EST)
Cooldown of 15 bars after each exit to prevent overtrading
Exit Strategy:
Takes partial profit at +2× ATR if held for at least 2 bars
Rides the remaining position with a trailing stop at 1.5× ATR
No hard stop-loss — giving space for volatile pullbacks
⚙️ Strategy Settings
Initial Capital: $500
Risk per Trade: 100% of equity (fully allocated per entry)
Commission: 0.1%
Slippage: 1 tick
Recalculate after order is filled
Fill orders on bar close
Timeframe Optimized For: 45-minute chart
These parameters simulate an aggressive, high-volatility trading model meant for forward-testing compounding potential under realistic trading costs.
✅ What Makes This Unique
No stop-loss = fewer premature exits
Partial profit-taking helps lock in early wins
Trailing logic gives room to ride large multi-week moves
Uses strict filters (volume, ATR, EMA bias) to enter only during high-probability windows
Ideal for leveraged ETF swing or position traders looking to hold longer than the typical intraday or 2–3 day strategies
⚠️ Important Note
This is a high-risk, high-reward strategy meant for educational and testing purposes. Without a stop-loss, trades can experience deep drawdowns that may take weeks or even months to recover. Always test thoroughly and adjust position sizing to suit your risk tolerance. Past results do not guarantee future returns. Backtest range: May 8, 2020 – May 23, 2025
Search in scripts for "order"
PhenLabs - Market Fluid Dynamics📊 Market Fluid Dynamics -
Version: PineScript™ v6
📌 Description
The Market Fluid Dynamics - Phen indicator is a new thinking regarding market analysis by modeling price action, volume, and volatility using a fluid system. It attempts to offer traders control over more profound market forces, such as momentum (speed), resistance (thickness), and buying/selling pressure. By visualizing such dynamics, the script allows the traders to decide on the prevailing market flow, its power, likely continuations, and zones of calmness and chaos, and thereby allows improved decision-making.
This measure avoids the usual difficulty of reconciling multiple, often contradictory, market indications by including them within a single overarching model. It moves beyond traditional binary indicators by providing a multi-dimensional view of market behavior, employing fluid dynamic analogs to describe complex interactions in an accessible manner.
🚀 Points of Innovation
Integrated Fluid Dynamics Model: Combines velocity, viscosity, pressure, and turbulence into a single indicator.
Normalized Metrics: Uses ATR and other normalization techniques for consistent readings across different assets and timeframes.
Dynamic Flow Visualization: Main flow line changes color and intensity based on direction and strength.
Turbulence Background: Visually represents market stability with a gradient background, from calm to turbulent.
Comprehensive Dashboard: Provides an at-a-glance summary of key fluid dynamic metrics.
Multi-Layer Smoothing: Employs several layers of EMA smoothing for a clearer, more responsive main flow line.
🔧 Core Components
Velocity Component: Measures price momentum (first derivative of price), normalized by ATR. It indicates the speed and direction of price changes.
Viscosity Component: Represents market resistance to price changes, derived from ATR relative to its historical average. Higher viscosity suggests it’s harder for prices to move.
Pressure Component: Quantifies the force created by volume and price range (close - open), normalized by ATR. It reflects buying or selling pressure.
Turbulence Detection: Calculates a Reynolds number equivalent to identify market stability, ranging from laminar (stable) to turbulent (chaotic).
Main Flow Indicator: Combines the above components, applying sensitivity and smoothing, to generate a primary signal of market direction and strength.
🔥 Key Features
Advanced Smoothing Algorithm: Utilizes multiple EMA layers on the raw flow calculation for a fluid and responsive main flow line, reducing noise while maintaining sensitivity.
Gradient Flow Coloring: The main flow line dynamically changes color from light to deep blue for bullish flow and light to deep red for bearish flow, with intensity reflecting flow strength. This provides an immediate visual cue of market sentiment and momentum.
Turbulence Level Background: The chart background changes color based on calculated turbulence (from calm gray to vibrant orange), offering an intuitive understanding of market stability and potential for erratic price action.
Informative Dashboard: A customizable on-screen table displays critical metrics like Flow State, Flow Strength, Market Viscosity, Turbulence, Pressure Force, Flow Acceleration, and Flow Continuity, allowing traders to quickly assess current market conditions.
Configurable Lookback and Sensitivity: Users can adjust the base lookback period for calculations and the sensitivity of the flow to viscosity, tailoring the indicator to different trading styles and market conditions.
Alert Conditions: Pre-defined alerts for flow direction changes (positive/negative crossover of zero line) and detection of high turbulence states.
🎨 Visualization
Main Flow Line: A smoothed line plotted below the main chart, colored blue for bullish flow and red for bearish flow. The intensity of the color (light to dark) indicates the strength of the flow. This line crossing the zero line can signal a change in market direction.
Zero Line: A dotted horizontal line at the zero level, serving as a baseline to gauge whether the market flow is positive (bullish) or negative (bearish).
Turbulence Background: The indicator pane’s background color changes based on the calculated turbulence level. A calm, almost transparent gray indicates low turbulence (laminar flow), while a more vibrant, semi-transparent orange signifies high turbulence. This helps traders visually assess market stability.
Dashboard Table: An optional table displayed on the chart, showing key metrics like ‘Flow State’, ‘Flow Strength’, ‘Market Viscosity’, ‘Turbulence’, ‘Pressure Force’, ‘Flow Acceleration’, and ‘Flow Continuity’ with their current values and qualitative descriptions (e.g., ‘Bullish Flow’, ‘Laminar (Stable)’).
📖 Usage Guidelines
Setting Categories
Show Dashboard - Default: true; Range: true/false; Description: Toggles the visibility of the Market Fluid Dynamics dashboard on the chart. Enable to see key metrics at a glance.
Base Lookback Period - Default: 14; Range: 5 - (no upper limit, practical limits apply); Description: Sets the primary lookback period for core calculations like velocity, ATR, and volume SMA. Shorter periods make the indicator more sensitive to recent price action, while longer periods provide a smoother, slower signal.
Flow Sensitivity - Default: 0.5; Range: 0.1 - 1.0 (step 0.1); Description: Adjusts how much the market viscosity dampens the raw flow. A lower value means viscosity has less impact (flow is more sensitive to raw velocity/pressure), while a higher value means viscosity has a greater dampening effect.
Flow Smoothing - Default: 5; Range: 1 - 20; Description: Controls the length of the EMA smoothing applied to the main flow line. Higher values result in a smoother flow line but with more lag; lower values make it more responsive but potentially noisier.
Dashboard Position - Default: ‘Top Right’; Range: ‘Top Right’, ‘Top Left’, ‘Bottom Right’, ‘Bottom Left’, ‘Middle Right’, ‘Middle Left’; Description: Determines the placement of the dashboard on the chart.
Header Size - Default: ‘Normal’; Range: ‘Tiny’, ‘Small’, ‘Normal’, ‘Large’, ‘Huge’; Description: Sets the text size for the dashboard header.
Values Size - Default: ‘Small’; Range: ‘Tiny’, ‘Small’, ‘Normal’, ‘Large’; Description: Sets the text size for the metric values in the dashboard.
✅ Best Use Cases
Trend Identification: Identifying the dominant market flow (bullish or bearish) and its strength to trade in the direction of the prevailing trend.
Momentum Confirmation: Using the flow strength and acceleration to confirm the conviction behind price movements.
Volatility Assessment: Utilizing the turbulence metric to gauge market stability, helping to adjust position sizing or avoid choppy conditions.
Reversal Spotting: Watching for divergences between price and flow, or crossovers of the main flow line above/below the zero line, as potential reversal signals, especially when combined with changes in pressure or viscosity.
Swing Trading: Leveraging the smoothed flow line to capture medium-term market swings, entering when flow aligns with the desired trade direction and exiting when flow weakens or reverses.
Intraday Scalping: Using shorter lookback periods and higher sensitivity to identify quick shifts in flow and turbulence for short-term trading opportunities, particularly in liquid markets.
⚠️ Limitations
Lagging Nature: Like many indicators based on moving averages and lookback periods, the main flow line can lag behind rapid price changes, potentially leading to delayed signals.
Whipsaws in Ranging Markets: During periods of low volatility or sideways price action (high viscosity, low flow strength), the indicator might produce frequent buy/sell signals (whipsaws) as the flow oscillates around the zero line.
Not a Standalone System: While comprehensive, it should be used in conjunction with other forms of analysis (e.g., price action, support/resistance levels, other indicators) and not as a sole basis for trading decisions.
Subjectivity in Interpretation: While the dashboard provides quantitative values, the interpretation of “strong” flow, “high” turbulence, or “significant” acceleration can still have a subjective element depending on the trader’s strategy and risk tolerance.
💡 What Makes This Unique
Fluid Dynamics Analogy: Its core strength lies in translating complex market interactions into an intuitive fluid dynamics framework, making concepts like momentum, resistance, and pressure easier to visualize and understand.
Market View: Instead of focusing on a single aspect (like just momentum or just volatility), it integrates multiple factors (velocity, viscosity, pressure, turbulence) to provide a more comprehensive picture of market conditions.
Adaptive Visualization: The dynamic coloring of the flow line and the turbulence background provide immediate, adaptive visual feedback that changes with market conditions.
🔬 How It Works
Price Velocity Calculation: The indicator first calculates price velocity by measuring the rate of change of the closing price over a given ‘lookback’ period. The raw velocity is then normalized by the Average True Range (ATR) of the same lookback period. Normalization enables comparison of momentum between assets or timeframes by scaling for volatility. This is the direction and speed of initial price movement.
Viscosity Calculation: Market ‘viscosity’ or resistance to price movement is determined by looking at the current ATR relative to its longer-term average (SMA of ATR over lookback * 2). The further the current ATR is above its average, the lower the viscosity (less resistance to price movement), and vice-versa. The script inverts this relationship and bounds it so that rising viscosity means more resistance.
Pressure Force Measurement: A ‘pressure’ variable is calculated as a function of the ratio of current volume to its simple moving average, multiplied by the price range (close - open) and normalized by ATR. This is designed to measure the force behind price movement created by volume and intraday price thrusts. This pressure is smoothed by an EMA.
Turbulence State Evaluation: A equivalent ‘Reynolds number’ is calculated by dividing the absolute normalized velocity by the viscosity. This is the proclivity of the market to move in a chaotic or orderly fashion. This ‘reynoldsValue’ is smoothed with an EMA to get the ‘turbulenceState’, which indicates if the market is laminar (stable), transitional, or turbulent.
Main Flow Derivation: The ‘rawFlow’ is calculated by taking the normalized velocity, dampening its impact based on the ‘viscosity’ and user-input ‘sensitivity’, and orienting it by the sign of the smoothed ‘pressureSmooth’. The ‘rawFlow’ is then put through multiple layers of exponential moving average (EMA) smoothing (with ‘smoothingLength’ and derived values) to reach the final ‘mainFlow’ line. The extensive smoothing is designed to give a smooth and clear visualization of the overall market direction and magnitude.
Dashboard Metrics Compilation: Additional metrics like flow acceleration (derivative of mainFlow), and flow continuity (correlation between close and volume) are calculated. All primary components (Flow State, Strength, Viscosity, Turbulence, Pressure, Acceleration, Continuity) are then presented in a user-configurable dashboard for ease of monitoring.
💡 Note:
The “Market Fluid Dynamics - Phen” indicator is designed to offer a unique perspective on market behavior by applying principles from fluid dynamics. It’s most effective when used to understand the underlying forces driving price rather than as a direct buy/sell signal generator in isolation. Experiment with the settings, particularly the ‘Base Lookback Period’, ‘Flow Sensitivity’, and ‘Flow Smoothing’, to find what best suits your trading style and the specific asset you are analyzing. Always combine its insights with robust risk management practices.
[TehThomas] - Fair Value GapsThis script is designed to automatically detect and visualize Fair Value Gaps (FVGs) on your chart in a clean, intuitive, and highly responsive way. It’s built with active traders in mind, offering both dynamic updates and customization options that help you stay focused on price action without being distracted by outdated or irrelevant information.
What Are Fair Value Gaps?
Fair Value Gaps are areas on a chart where there’s an inefficiency in price, typically formed when price moves aggressively in one direction, leaving a gap between the wicks of consecutive candles. These gaps represent imbalanced price action where not all buy or sell orders were efficiently matched. As a result, they often become magnet zones where price returns later to "fill" the imbalance before continuing in its intended direction. Many traders use them as points of interest for entries, re-entries, or anticipating reversals and consolidations.
This concept is frequently used in Smart Money and ICT-based trading models, where understanding how price seeks efficiency is crucial to anticipating future moves. When combined with concepts like liquidity, displacement, and market structure, FVGs become powerful tools for technical decision-making.
Script Features & Functionality
1. Live Updating Gaps (Dynamic Shrinking)
One of the core features of this script is its ability to track and dynamically shrink Fair Value Gaps as price trades into them. Instead of leaving a static zone on your chart, the gap will adjust in real-time, reflecting the portion that has been filled. This gives you a much more accurate picture of remaining imbalance and avoids misleading zones.
2. Automatic Cleanup After Fill
Once price fully fills an FVG, the script automatically removes it from the chart. This helps keep your workspace clean and focused only on relevant price zones. There’s no need to manually manage your gaps, everything is handled behind the scenes to reduce clutter and distraction.
3. Static Mode Option
While dynamic updating is the default, some traders may prefer to keep the original size of the gap visible even after partial fills. For that reason, the script includes a toggle to switch from live-updating (shrinking) mode to static mode. In static mode, FVGs stay fixed from the moment they are drawn, giving you a more traditional visual reference point.
4. Multi-Timeframe Support (MTF)
You can now view higher timeframe FVGs, such as those from the 1H or 4H chart, while analyzing lower timeframes like the 5-minute. This allows you to see key imbalances from broader market context without having to flip between charts. FVGs from higher timeframes will be drawn distinctly so you can differentiate them at a glance.
5. Cleaner Visualization
The script is designed with clarity in mind. All drawings are streamlined, and filled gaps are removed to maintain a minimal, distraction-free chart. This makes it easier to combine this tool with other indicators or price-action-based strategies without overloading your workspace.
6. Suitable for All Market Types
This script can be used on any asset that displays candlestick-based price action — including crypto, forex, indices, and stocks. Whether you're scalping low-timeframe setups or swing trading with a higher timeframe bias, FVGs remain a useful concept and this script adapts to your trading style.
Use Case Examples
On a 5-minute chart, display 1-hour FVGs to catch major imbalance zones during intraday trading.
Combine the FVGs with liquidity levels and inducement patterns to build ICT-style trade setups.
Use live-updating gaps to monitor in-progress fills and evaluate whether a zone still holds validity.
Set the script to static mode to perform backtesting or visual replay with historical setups.
Final Notes
Fair Value Gaps are not a standalone trading signal, but when used with market structure, liquidity, displacement, and order flow concepts, they provide high-probability trade locations that align with institutional-style trading models. This script simplifies the visualization of those zones so you can react faster, stay focused on clean setups, and eliminate unnecessary distractions.
Whether you’re trading high volatility breakouts or patiently waiting for retracements into unfilled imbalances, this tool is designed to support your edge with precision and flexibility.
CL Live lotsize ROOSTER📄 Description:
This is a utility script designed for manual futures traders who enter with market orders and want to size their positions precisely based on $ risk.
⚙️ Features:
✅ Calculates live contract size based on:
A fixed dollar risk amount (e.g. $100)
A manually set static stop-loss price
The live market price as your entry
✅ Uses a configurable risk-reward ratio (e.g. 1:3)
✅ Plots entry, stop, and target levels on the chart
✅ Displays calculated contract size as a floating label
🎯 Why this tool?
Built to support fast execution workflows , this tool helps traders who:
Enter trades at candle close or open
Want to pre-calculate their market order size before the signal
Prefer a visual, consistent, real-time R:R validation system
Avoid fumbling with the long/short position tool at the last second
🔧 Settings:
Static Stop-Loss Price: Enter the price level where you'd place your SL
Account Risk ($): How much you’re willing to risk per trade
Risk-Reward Ratio: Set your target multiplier (e.g. 3 for 3R)
DS Gurukul RoundupRoundup (Support & Resistance Indicator) For Bank Nifty
By DS Gurukul
To be used only for Bank Nifty.
Indicator Overview
The Round Figure Indicator identifies key psychological support and resistance levels based on round numbers. These levels often act as strong turning points in price action due to trader psychology and institutional order placement.
How It Works
Key Levels:
Mid Band (Black Solid Line): Major round number
Upper Band (Green Solid Line): Mid Band (resistance)
Lower Band (Red Solid Line): Mid Band (support)
Sub-Bands (Dotted Lines): ±100 levels for tighter zones
Alerts: Triggers when price touches any band, signaling potential reversals or breakouts.
Trading Strategy
✅ Bounce Trades:
Buy near Lower Band or Mid Sub-Lower with bullish confirmation (e.g., hammer candle).
Sell near Upper Band or Mid Sub-Upper with bearish rejection (e.g., shooting star).
✅ Breakout Trades:
Enter long on a close above Upper Band with volume.
Enter short on a close below Lower Band with momentum.
⚠️ Risk Management:
Place stops just beyond the opposite sub-band.
Avoid trading if price is stuck between mid/sub-bands (choppy market).
Why It Works
Round numbers attract limit orders (support/resistance).
Institutions use these levels for stop placements and profit targets.
Works across all timeframes (scalping to swing trading).
🔔 Tip: Combine with RSI/MACD for higher-probability trades!
Kaito Box with RSI Div(Dynamic Adjustment + MA + Long)The script implements a dynamic trading strategy that combines box range detection, RSI divergence signals, and moving average trend analysis. It is designed for use on OKX Signal Bots and includes features for dynamic position scaling and partial position closing. Below is a summary of its key functionalities:
Key Features:
Box Range Detection:
The script identifies price ranges using the highest high and lowest low of a configurable boxLength period.
These levels are plotted on the chart to visualize the price range.
RSI Divergence Detection:
The script calculates RSI using a configurable rsiLength.
Detects bullish divergence when price makes a lower low, but RSI makes a higher low.
Detects bearish divergence when price makes a higher high, but RSI makes a lower high.
Includes separate left and right lookback periods (leftLookback, rightLookback) for precise local extrema detection.
Customizable Moving Averages:
Supports multiple types of Moving Averages (SMA, EMA, SMMA, WMA, VWMA).
Calculates and plots MA20, MA50, MA100, and MA200 on a user-defined timeframe (custom_timeframe).
Identifies uptrends and downtrends based on the alignment of the moving averages and price levels.
Dynamic Position Scaling:
Implements dynamic position sizing for long entries and partial position closing for exits.
The percentage of position size added or closed is based on the difference between the current price and the average position price (avgPrice), with configurable minimum thresholds (minEnterPercent, minExitPercent).
Signal Integration for OKX Bots:
Sends buy/sell signals to OKX Signal Bots using the configured signalToken.
Supports market or limit orders with configurable price offsets and investment types.
Trend-Based Signal Filtering:
Only triggers long signals during downtrends and short signals during uptrends, ensuring trades align with the overall market context.
Visual Annotations:
Plots bullish and bearish divergence signals on the chart.
Displays labels showing dynamic position size adjustments and current average price during trades.
How It Works:
Long Signals:
Triggered when the price breaches the lower box range, and a bullish RSI divergence is detected.
Additional filtering ensures long trades are executed only during downtrend conditions.
Dynamically adjusts the position size based on the price difference from the average entry price.
Short Signals:
Triggered when the price breaches the upper box range, and a bearish RSI divergence is detected.
Additional filtering ensures short trades are executed only during uptrend conditions.
Dynamically closes portions of the position based on price movement relative to the average entry price.
Alerts:
Generates actionable alerts formatted for OKX bots, including order type, signal token, and dynamically calculated position sizes.
Use Case:
This strategy is well-suited for automated trading on platforms like OKX, where it can:
Exploit price ranges and RSI divergences for precise entries and exits.
Dynamically manage position sizes to optimize risk-reward.
Adapt to different market conditions using configurable parameters like moving averages, divergence lookbacks, and trend filters.
This script provides a robust foundation for traders looking to automate their strategies while maintaining flexibility and control over their trading logic.
Dynamic Liquidity Depth [BigBeluga]
Dynamic Liquidity Depth
A liquidity mapping engine that reveals hidden zones of market vulnerability. This tool simulates where potential large concentrations of stop-losses may exist — above recent highs (sell-side) and below recent lows (buy-side) — by analyzing real price behavior and directional volume. The result is a dynamic two-sided volume profile that highlights where price is most likely to gravitate during liquidation events, reversals, or engineered stop hunts.
🔵 KEY FEATURES
Two-Sided Liquidity Profiles:
Plots two separate profiles on the chart — one above price for potential sell-side liquidity , and one below price for potential buy-side liquidity . Each profile reflects the volume distribution across binned zones derived from historical highs and lows.
Real Stop Zone Simulation:
Each profile is offset from the current high or low using an ATR-based buffer. This simulates where traders might cluster their stop-losses above swing highs (short stops) or below swing lows (long stops).
Directional Volume Analysis:
Buy-side volume is accumulated only from bullish candles (close > open), while sell-side volume is accumulated only from bearish candles (close < open). This directional filtering enhances accuracy by capturing genuine pressure zones.
Dynamic Volume Heatmap:
Each liquidity bin is rendered as a horizontal box with a color gradient based on volume intensity:
- Low activity bins are shaded lightly.
- High-volume zones appear more vividly in red (sell) or lime (buy).
- The maximum volume bin in each profile is emphasized with a brighter fill and a volume label.
Extended POC Zones:
The Point of Control (PoC) — the bin with the most volume — is extended backwards across the entire lookback period to mark critical resistance (sell-side) or support (buy-side) levels.
Total Volume Summary Labels:
At the center of each profile, a summary label displays Total Buy Liquidity and Total Sell Liquidity volume.
This metric helps assess directional imbalance — when buy liquidity is dominant, the market may favor upward continuation, and vice versa.
Customizable Profile Granularity:
You can fine-tune both Resolution (Bins) and Offset Distance to adjust how far profiles are displaced from price and how many levels are calculated within the ATR range.
🔵 HOW IT WORKS
The indicator calculates an ATR-based buffer above highs and below lows to define the top and bottom of the liquidity zones.
Using a user-defined lookback period, it scans historical candles and divides the buffered zones into bins.
Each bin checks if bullish (or bearish) candles pass through it based on price wicks and body.
Volume from valid candles is summed into the corresponding bin.
When volume exists in a bin, a horizontal box is drawn with a width scaled by relative volume strength.
The bin with the highest volume is highlighted and optionally extended backward as a zone of importance.
Total buy/sell liquidity is displayed with a summary label at the side of the profile.
🔵 USAGE/b]
Identify Stop Hunt Zones: High-volume clusters near swing highs/lows are likely liquidation zones targeted during fakeouts.
Fade or Follow Reactions: Price hitting a high-volume bin may reverse (fade opportunity) or break with strength (confirmation breakout).
Layer with Other Tools: Combine with market structure, order blocks, or trend filters to validate entries near liquidity.
Adjust Offset for Sensitivity: Use higher offset to simulate wider stop placement; use lower for tighter scalping zones.
🔵 CONCLUSION
Dynamic Liquidity Depth transforms raw price and volume into a spatial map of liquidity. By revealing areas where stop orders are likely hidden, it gives traders insight into price manipulation zones, potential reversal levels, and breakout traps. Whether you're hunting for traps or trading with the flow, this tool equips you to navigate liquidity with precision.
Time-Based Fair Value Gaps (FVG) with Inversions (iFVG)Overview
The Time-Based Fair Value Gaps (FVG) with Inversions (iFVG) (ICT/SMT) indicator is a specialized tool designed for traders using Inner Circle Trader (ICT) methodologies. Inspired by LuxAlgo's Fair Value Gap indicator, this script introduces significant enhancements by integrating ICT principles, focusing on precise time-based FVG detection, inversion tracking, and retest signals tailored for institutional trading strategies. Unlike LuxAlgo’s general FVG approach, this indicator filters FVGs within customizable 10-minute windows aligned with ICT’s macro timeframes and incorporates ICT-specific concepts like mitigation, liquidity grabs, and session-based gap prioritization.
This tool is optimized for 1–5 minute charts, though probably best for 1 minute charts, identifying bullish and bearish FVGs, tracking their mitigation into inverted FVGs (iFVGs) as key support/resistance zones, and generating retest signals with customizable “Close” or “Wick” confirmation. Features like ATR-based filtering, optional FVG labels, mitigation removal, and session-specific FVG detection (e.g., first FVG in AM/PM sessions) make it a powerful tool for ICT traders.
Originality and Improvements
While inspired by LuxAlgo’s FVG indicator (credit to LuxAlgo for their foundational work), this script significantly extends the original concept by:
1. Time-Based FVG Detection: Unlike LuxAlgo’s continuous FVG identification, this script filters FVGs within user-defined 10-minute windows each hour (:00–:10, :10–:20, etc.), aligning with ICT’s emphasis on specific periods of institutional activity, such as hourly opens/closes or kill zones (e.g., New York 7:00–11:00 AM EST). This ensures FVGs are relevant to high-probability ICT setups.
2. Session-Specific First FVG Option: A unique feature allows traders to display only the first FVG in ICT-defined AM (9:30–10:00 AM EST) or PM (1:30–2:00 PM EST) sessions, reflecting ICT’s focus on initial market imbalances during key liquidity events.
3. ICT-Driven Mitigation and Inversion Logic: The script tracks FVG mitigation (when price closes through a gap) and converts mitigated FVGs into iFVGs, which serve as ICT-style support/resistance zones. This aligns with ICT’s view that mitigated gaps become critical reversal points, unlike LuxAlgo’s simpler gap display.
4. Customizable Retest Signals: Retest signals for iFVGs are configurable for “Close” (conservative, requiring candle body confirmation) or “Wick” (faster, using highs/lows), catering to ICT traders’ need for precise entry timing during liquidity grabs or Judas swings.
5. ATR Filtering and Mitigation Removal: An optional ATR filter ensures only significant FVGs are displayed, reducing noise, while mitigation removal declutters the chart by removing filled gaps, aligning with ICT’s principle that mitigated gaps lose relevance unless inverted.
6. Timezone and Timeframe Safeguards: A timezone offset setting aligns FVG detection with EST for ICT’s New York-centric strategies, and a timeframe warning alerts users to avoid ≥1-hour charts, ensuring accuracy in time-based filtering.
These enhancements make the script a distinct tool that builds on LuxAlgo’s foundation while offering ICT traders a tailored, high-precision solution.
How It Works
FVG Detection
FVGs are identified when a candle’s low is higher than the high of two candles prior (bullish FVG) or a candle’s high is lower than the low of two candles prior (bearish FVG). Detection is restricted to:
• User-selected 10-minute windows (e.g., :00–:10, :50–:60) to capture ICT-relevant periods like hourly transitions.
• AM/PM session first FVGs (if enabled), focusing on 9:30–10:00 AM or 1:30–2:00 PM EST for key market opens.
An optional ATR filter (default: 0.25× ATR) ensures only gaps larger than the threshold are displayed, prioritizing significant imbalances.
Mitigation and Inversion
When price closes through an FVG (e.g., below a bullish FVG’s bottom), the FVG is mitigated and becomes an iFVG, plotted as a support/resistance zone. iFVGs are critical in ICT for identifying reversal points where institutional orders accumulate.
Retest Signals
The script generates signals when price retests an iFVG:
• Close: Triggers when the candle body confirms the retest (conservative, lower noise).
• Wick: Triggers when the candle’s high/low touches the iFVG (faster, higher sensitivity). Signals are visualized with triangular markers (▲ for bullish, ▼ for bearish) and can trigger alerts.
Visualization
• FVGs: Displayed as colored boxes (green for bullish, red for bearish) with optional “Bull FVG”/“Bear FVG” labels.
• iFVGs: Shown as extended boxes with dashed midlines, limited to the user-defined number of recent zones (default: 5).
• Mitigation Removal: Mitigated FVGs/iFVGs are removed (if enabled) to keep the chart clean.
How to Use
Recommended Settings
• Timeframe: Use 1–5 minute charts for precision, avoiding ≥1-hour timeframes (a warning label appears if misconfigured).
• Time Windows: Enable :00–:10 and :50–:60 for hourly open/close FVGs, or use the “Show only 1st presented FVG” option for AM/PM session focus.
• ATR Filter: Keep enabled (multiplier 0.25–0.5) for significant gaps; disable on 1-minute charts for more FVGs during volatility.
• Signal Preference: Use “Close” for conservative entries, “Wick” for aggressive setups.
• Timezone Offset: Set to -5 for EST (or -4 for EDT) to align with ICT’s New York session.
Trading Strategy
1. Macro Timeframes: Focus on New York (7:00–11:00 AM EST) or London (2:00–5:00 AM EST) kill zones for high institutional activity.
2. FVG Entries: Trade bullish FVGs as support in uptrends or bearish FVGs as resistance in downtrends, especially in :00–:10 or :50–:60 windows.
3. iFVG Retests: Enter on retest signals (▲/▼) during liquidity grabs or Judas swings, using “Close” for confirmation or “Wick” for speed.
4. Session FVGs: Use the “Show only 1st presented FVG” option to target the first gap in AM/PM sessions, often tied to ICT’s market maker algorithms.
5. Risk Management: Combine with ICT concepts like order blocks or breaker blocks for confluence, and set stops beyond FVG/iFVG boundaries.
Alerts
Set alerts for:
• “Bullish FVG Detected”/“Bearish FVG Detected”: New FVGs in selected windows.
• “Bullish Signal”/“Bearish Signal”: iFVG retest confirmations.
Settings Description
• Show Last (1–100, default: 5): Number of recent iFVGs to display. Lower values reduce clutter.
• Show only 1st presented FVG : Limits FVGs to the first in 9:30–10:00 AM or 1:30–2:00 PM EST sessions (overrides time window checkboxes).
• Time Window Checkboxes: Enable/disable FVG detection in 10-minute windows (:00–:10, :10–:20, etc.). All enabled by default.
• Signal Preference: “Close” (default) or “Wick” for iFVG retest signals.
• Use ATR Filter: Enables ATR-based size filtering (default: true).
• ATR Multiplier (0–∞, default: 0.25): Sets FVG size threshold (higher values = larger gaps).
• Remove Mitigated FVGs: Removes filled FVGs/iFVGs (default: true).
• Show FVG Labels: Displays “Bull FVG”/“Bear FVG” labels (default: true).
• Timezone Offset (-12 to 12, default: -5): Aligns time windows with EST.
• Colors: Customize bullish (green), bearish (red), and midline (gray) colors.
Why Use This Indicator?
This indicator empowers ICT traders with a tool that goes beyond generic FVG detection, offering precise, time-filtered gaps and inversion tracking aligned with institutional trading principles. By focusing on ICT’s macro timeframes, session-specific imbalances, and customizable signal logic, it provides a clear edge for scalping, swing trading, or reversal setups in high-liquidity markets.
Entropy [ScorsoneEnterprises]This indicator calculates the entropy of price log returns over a user-defined lookback period, providing insights into market complexity and unpredictability. Entropy measures the randomness or disorder in price movements, helping traders identify periods of high or low market uncertainty.
How It Works
The indicator computes the entropy of log returns (log(close/close )) using a histogram-based approach with customizable bins. Log returns are stored in an array of size N (lookback period), and entropy is calculated by:
Binning the returns into bins intervals based on their range.
Computing the probability distribution across bins.
Calculating entropy as -Σ(p * log(p)), where p is the probability of each bin.
A reference Simple Moving Average (SMA) of the entropy, with a separate lookback period (SMA_N), is plotted to highlight trends in market complexity. The entropy plot uses a gradient color scheme (red for lower entropy, teal for higher), while the SMA color shifts based on whether entropy is above (teal) or below (red) the SMA.
Key Features
Inputs:
Lookback Period (default: 50): Number of bars for calculating log returns.
Reference SMA Lookback Period (default: 100): Period for the entropy SMA.
Number of Bins (default: 20): Number of histogram bins for entropy calculation.
Plots:
Entropy: Gradient-colored line reflecting market randomness.
Reference SMA: Trend line to compare entropy against its average.
Interpretation
High Entropy: Indicates chaotic, unpredictable price movements, often during volatile or trendless markets.
Low Entropy: Suggests more predictable, ordered price behavior, often in trending or stable markets.
Compare entropy to its SMA to gauge whether current market complexity is above or below its recent average.
Usage
Use this indicator to assess market regimes. High entropy may signal choppy, range-bound conditions, while low entropy could indicate trending opportunities. Combine with price action or other indicators for confirmation.
Examples
We see on this PEPPERSTONE:COCOA chart that when entropy is low it signals a strong trend, either up or down. High entropy signals indecision and choppiness in the market. We can determine this by noticing when the value is above or below its recent average.
Entropy is used in high frequency trading often. It is a nice tool for lower time frames to determine how predictable and strong a trend is.
Inputs
Users can enter the lookback value for entropy, bin count, and the look back for the entropy moving average.
No tool is perfect, the Entropy value is also not perfect and should not be followed blindly. It is good to use any tool along with discretion and price action.
Amihud Liquidity RatioCalculates liquidity as a sort of moving average over time
The Amihud Illiquidity Ratio (ILLIQ) measures the price impact of trading volume. It's calculated as the absolute daily return divided by the daily dollar volume:
𝐼𝐿𝐿𝐼𝑄ₜ = |𝑅ₜ| / 𝑉𝑂𝐿𝐷ₜ
Where:
|𝑅ₜ| is the absolute value on return day t
𝑉𝑂𝐿𝐷ₜ is the dollar trading volume on day t
Here's how you can incorporate this indicator into your analysis:
1. Identifying Liquidity Regimes:
High Liquidity (Low Indicator Values): When the indicator is consistently low, it suggests a market or asset where it's generally easier to enter and exit positions without significant slippage. This might be a more favorable environment for strategies that rely on tight spreads and efficient order execution.
Low Liquidity (High Indicator Values): When the indicator is consistently high or spiking, it signals periods of lower liquidity. This can lead to:
Increased Volatility: Fewer participants and larger bid-ask spreads can amplify price movements.
Higher Slippage: Executing large orders might result in getting a worse price than expected.
Gap Risk: Significant price gaps can occur between trading sessions due to a lack of continuous trading interest.
---------------------------------------------------------------------------------------------------------------------
2. Confirming Trends and Breakouts:
Trend Confirmation:
Uptrend with Increasing Liquidity (Falling Amihud): A healthy uptrend often sees increasing participation and ease of trading. A falling Amihud during an uptrend can provide confidence in the trend's sustainability.
Uptrend with Decreasing Liquidity (Rising Amihud): An uptrend accompanied by rising Amihud might be less stable. It could suggest that the price increase is driven by fewer participants and might be more prone to reversals.
The same logic applies to downtrends, but in reverse.
---------------------------------------------------------------------------------------------------------------------
Breakout Confirmation:
Breakout with Increasing Liquidity (Falling Amihud): A breakout accompanied by increasing liquidity (falling Amihud) can suggest strong conviction and a higher probability of the breakout being sustained.
Breakout with Decreasing Liquidity (Rising Amihud): A breakout on low liquidity might be more suspect and could be a "fakeout" if there isn't enough sustained buying or selling pressure.
---------------------------------------------------------------------------------------------------------------------
3. Identifying Potential Reversal Points:
Liquidity Exhaustion: Sometimes, a prolonged period of low liquidity (high Amihud) might precede a reversal. The lack of active trading interest at those levels could make the price more susceptible to a shift in sentiment.
Liquidity Surges: A sudden spike in liquidity (a sharp drop in Amihud) after a period of low liquidity could indicate renewed interest and potentially the start of a new trend or a reversal of the previous one.
-----------------------------------------------THANK YOU----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------<3-----------------------------------------------
ICT Turtle Soup (Liquidity Reversal)ICT Turtle Soup — Liquidity Reversal Detection
Classic Liquidity Trap Reversal Strategy for Smart Money Traders
This indicator implements the ICT Turtle Soup concept — a classic liquidity-based reversal pattern — which occurs when price runs above or below a recent swing level to grab liquidity, then sharply reverses. This pattern is commonly used in Smart Money Concepts (SMC) and Inner Circle Trader (ICT) strategies to anticipate false breakouts and high-probability reversals.
🔍 What This Script Does:
Identifies Swing Highs & Lows
Detects recent swing highs and lows using a customizable lookback period.
Tracks Liquidity Grabs
A bearish Turtle Soup setup is triggered when price breaks above a recent swing high but closes back below it.
A bullish Turtle Soup setup is triggered when price breaks below a recent swing low but closes back above it.
These conditions often signal liquidity traps, where price sweeps resting orders before reversing.
Plots Signals Directly on the Chart
Turtle Soup setups are marked with 🐢🔻 (bearish) and 🐢🔺 (bullish) labels.
Optional full-text labels can also be displayed for clarity and journaling.
Includes Alert Conditions
Alerts can be enabled to notify you of bullish or bearish Turtle Soup reversals in real-time.
⚙️ Customization Features:
Adjustable swing lookback period
Enable/disable Turtle Soup labels
Set label font size
Choose your preferred bullish/bearish signal colors
💡 How to Use:
Add this script to your chart (ideally on intraday timeframes such as 5m–15m).
Wait for a Turtle Soup signal near a key swing high/low or liquidity zone.
Combine with other confirmation tools (e.g., FVGs, Order Blocks, OTE) for stronger setups.
Use alerts to stay ahead of fast-moving reversals.
🧠 Why It Works:
Turtle Soup setups are rooted in liquidity theory — they exploit the market’s tendency to sweep obvious swing levels before reversing. These moves often trap retail traders and mark the beginning of Smart Money entries.
🔗 Best Used With:
Maximize the edge by combining this with other SMC tools:
✅ First FVG — Opening Range Fair Value Gap Detector
✅ ICT SMC Liquidity Grabs + OB + Fibonacci OTE Levels
✅ Liquidity Levels — Smart Swing Lows
Together, they create a complete ecosystem for identifying, confirming, and executing liquidity-driven trade setups with precision.
[TehThomas] - ICT Inversion Fair value Gap (IFVG) The Inversion Fair Value Gap (IFVG) indicator is a powerful tool designed for traders who utilize ICT (Inner Circle Trader) strategies. It focuses on identifying and displaying Inversion Fair Value Gaps, which are critical zones that emerge when traditional Fair Value Gaps (FVGs) are invalidated by price action. These gaps represent key areas where price often reacts, making them essential for identifying potential reversals, trend continuations, and liquidity zones.
What Are Inversion Fair Value Gaps?
Inversion Fair Value Gaps occur when price revisits a traditional FVG and breaks through it, effectively flipping its role in the market. For example:
A bullish FVG that is invalidated becomes a bearish zone, often acting as resistance.
A bearish FVG that is invalidated transforms into a bullish zone, serving as support.
These gaps are significant because they often align with institutional trading activity. They highlight areas where large orders have been executed or where liquidity has been targeted. Understanding these gaps provides traders with a deeper insight into market structure and helps them anticipate future price movements with greater accuracy.
Why This Strategy Works
The IFVG concept is rooted in ICT principles, which emphasize liquidity dynamics, market inefficiencies, and institutional order flow. Traditional FVGs represent imbalances in price action caused by gaps between candles. When these gaps are invalidated, they become inversion zones that can act as magnets for price. These zones frequently serve as high-probability areas for price reversals or trend continuations.
This strategy works because it aligns with how institutional traders operate. Inversion gaps often mark areas of interest for "smart money," making them reliable indicators of potential market turning points. By focusing on these zones, traders can align their strategies with institutional behavior and improve their overall trading edge.
How the Indicator Works
This indicator simplifies the process of identifying and tracking IFVGs by automating their detection and visualization on the chart. It scans the chart in real-time to identify bullish and bearish FVGs that meet user-defined thresholds for inversion. Once identified, these gaps are dynamically displayed on the chart with distinct colors for bullish and bearish zones.
The indicator also tracks whether these gaps are mitigated or broken by price action. When an IFVG is broken, it extends the zone for a user-defined number of bars to visualize its potential role as a new support or resistance level. Additionally, alerts can be enabled to notify traders when new IFVGs form or when existing ones are broken, ensuring timely decision-making in fast-moving markets.
Key Features
Automatic Detection: The indicator automatically identifies bullish and bearish IFVGs based on user-defined thresholds.
Dynamic Visualization: It displays IFVGs directly on the chart with customizable colors for easy differentiation.
Real-Time Updates: The status of each IFVG is updated dynamically based on price action.
Zone Extensions: Broken IFVGs are extended to visualize their potential as support or resistance levels.
Alerts: Notifications can be set up to alert traders when key events occur, such as the formation or breaking of an IFVG.
These features make the tool highly efficient and reduce the need for manual analysis, allowing traders to focus on execution rather than tedious chart work.
Benefits of Using This Indicator
The IFVG indicator offers several advantages that make it an indispensable tool for ICT traders. By automating the detection of inversion gaps, it saves time and reduces errors in analysis. The clearly defined zones improve risk management by providing precise entry points, stop-loss levels, and profit targets based on market structure.
This tool is also highly versatile and adapts seamlessly across different timeframes. Whether you’re scalping lower timeframes or swing trading higher ones, it provides actionable insights tailored to your trading style. Furthermore, by aligning your strategy with institutional logic, you gain a significant edge in anticipating market movements.
Practical Applications
This indicator can be used across various trading styles:
Scalping: Identify quick reversal points on lower timeframes using real-time alerts.
Day Trading: Use inversion gaps as key levels for intraday support/resistance or trend continuation setups.
Swing Trading: Analyse higher timeframes to identify major inversion zones that could act as critical turning points in larger trends.
By integrating this tool into your trading routine, you can streamline your analysis process and focus on executing high-probability setups.
Conclusion
The Inversion Fair Value Gap (IFVG) indicator is more than just a technical analysis tool—it’s a strategic ally for traders looking to refine their edge in the markets. By automating the detection and tracking of inversion gaps based on ICT principles, it simplifies complex market analysis while maintaining accuracy and depth. Whether you’re new to ICT strategies or an experienced trader seeking greater precision, this indicator will elevate your trading game by aligning your approach with institutional behavior.
If you’re serious about improving your trading results while saving time and effort, this tool is an essential addition to your toolkit. It provides clarity in chaotic markets, enhances precision in trade execution, and ensures you never miss critical opportunities in your trading journey.
__________________________________________
Thanks for your support!
If you found this idea helpful or learned something new, drop a like 👍 and leave a comment, I’d love to hear your thoughts! 🚀
Make sure to follow me for more price action insights, free indicators, and trading strategies. Let’s grow and trade smarter together! 📈
Cartera SuperTrends v4 PublicDescription
This script creates a screener with a list of ETFs ordered by their average ROC in three different periods representing 4, 6 and 8 months by default. The ETF
BIL
is always included as a reference.
The previous average ROC value shows the calculation using the closing price from last month.
The current average ROC value shows the calculation using the current price.
The previous average column background color represents if the ETF average ROC is positive or negative.
The current average column background color represents if the ETF average ROC is positive or negative.
The current average column letters color represents if the current ETF average ROC is improving or not from the previous month.
Changes from V2 to V3
Added the option to make the calculation monthly, weekly or daily
Changes from V3 to V4
Adding up to 25 symbols
Highlight the number of tickers selected
Highlight the sorted column
Complete refactor of the code using a matrix of arrays
Options
The options available are:
Make the calculation monthly, weekly or daily
Adjust Data for Dividends
Manual calculation instead of using ta.roc function
Sort table
Sort table by the previous average ROC or the current average ROC
Number of tickers selected to highlight
First Period in months, weeks or days
Second Period in months, weeks or days
Third Period in months, weeks or days
Select the assets (max 25)
Usage
Just add the indicator to your favorite indicators and then add it to your chart.
Arbitrage Spot-Futures Don++Strategy: Spot-Futures Arbitrage Don++
This strategy has been designed to detect and exploit arbitrage opportunities between the Spot and Futures markets of the same trading pair (e.g. BTC/USDT). The aim is to take advantage of price differences (spreads) between the two markets, while minimizing risk through dynamic position management.
[Operating principle
The strategy is based on calculating the spread between Spot and Futures prices. When this spread exceeds a certain threshold (positive or negative), reverse positions are opened simultaneously on both markets:
- i] Long Spot + Short Futures when the spread is positive.
- i] Short Spot + Long Futures when the spread is negative.
Positions are closed when the spread returns to a value close to zero or after a user-defined maximum duration.
[Strategy strengths
1. Adaptive thresholds :
- Entry/exit thresholds can be dynamic (based on moving averages and standard deviations) or fixed, offering greater flexibility to adapt to market conditions.
2. Robust data management :
- The script checks the validity of data before executing calculations, thus avoiding errors linked to missing or invalid data.
3. Risk limitation :
- A position size based on a percentage of available capital (default 10%) limits exposure.
- A time filter limits the maximum duration of positions to avoid losses due to persistent spreads.
4. Clear visualization :
- Charts include horizontal lines for entry/exit thresholds, as well as visual indicators for spread and Spot/Futures prices.
5. Alerts and logs :
- Alerts are triggered on entries and exits to inform the user in real time.
[Points for improvement or completion
Although this strategy is functional and robust, it still has a few limitations that could be addressed in future versions:
1. [Limited historical data :
- TradingView does not retrieve real-time data for multiple symbols simultaneously. This can limit the accuracy of calculations, especially under conditions of high volatility.
2. [Lack of liquidity management :
- The script does not take into account the volumes available on the order books. In conditions of low liquidity, it may be difficult to execute orders at the desired prices.
3. [Non-dynamic transaction costs :
- Transaction costs (exchange fees, slippage) are set manually. A dynamic integration of these costs via an external API would be more realistic.
4. User-dependency for symbols :
- Users must manually specify Spot and Futures symbols. Automatic symbol validation would be useful to avoid configuration errors.
5. Lack of advanced backtesting :
- Backtesting is based solely on historical data available on TradingView. An implementation with third-party data (via an API) would enable the strategy to be tested under more realistic conditions.
6. [Parameter optimization :
- Certain parameters (such as analysis period or spread thresholds) could be optimized for each specific trading pair.
[How can I contribute?
If you'd like to help improve this strategy, here are a few ideas:
1. Add additional filters:
- For example, a filter based on volume or volatility to avoid false signals.
2. Integrate dynamic costs:
- Use an external API to retrieve actual costs and adjust thresholds accordingly.
3. Improve position management:
- Implement hedging or scalping mechanisms to maximize profits.
4. Test on other pairs:
- Evaluate the strategy's performance on other assets (ETH, SOL, etc.) and adjust parameters accordingly.
5. Publish backtesting results :
- Share detailed analyses of the strategy's performance under different market conditions.
[Conclusion
This Spot-Futures arbitrage strategy is a powerful tool for exploiting price differentials between markets. Although it is already functional, it can still be improved to meet more complex trading scenarios. Feel free to test, modify and share your ideas to make this strategy even more effective!
[Thank you for contributing to this open-source community!
If you have any questions or suggestions, please feel free to comment or contact me directly.
Nirmal Fair Value GapsICT Fair Value Gaps
Trade Wisely
How a Fair Value Gap Works
Formation:
A Fair Value Gap occurs when a strong price movement (usually from institutional orders) creates an imbalance between buyers and sellers.
This is typically seen in a three-candle pattern, where the middle candle has a large body, and the two surrounding candles have wicks but little overlap with the middle candle’s range.
Identification:
The FVG is marked between the high of the first candle and the low of the third candle (for bullish gaps).
For bearish gaps, it’s the low of the first candle and the high of the third candle.
Market Behavior Around FVG:
Price often retraces into the gap before resuming its original direction.
This happens because the market seeks to "fill" the imbalance where few trades occurred.
Traders use FVGs as potential entry zones for trend continuation trades.
Trading Fair Value Gaps
In an Uptrend:
Look for bullish fair value gaps as potential support zones for buy entries.
Price may dip into the gap and then continue upward.
In a Downtrend:
Look for bearish fair value gaps as potential resistance zones for sell entries.
Price may retrace into the gap and then drop further.
Confluence Factors:
FVGs work best when combined with other strategies like order blocks, liquidity zones, or key Fibonacci levels.
capital_managementLibrary "capital_management"
TODO: add library description here
Volume_calculation(precent_risk, order_entry_price, stop_loss_price)
TODO: Volume calculation function by placing orders with fiven % risk
Parameters:
precent_risk (float)
order_entry_price (float)
stop_loss_price (float)
Returns: stop_loss_price: Price that place stop loss order
Arpeet MACDOverview
This strategy is based on the zero-lag version of the MACD (Moving Average Convergence Divergence) indicator, which captures short-term trends by quickly responding to price changes, enabling high-frequency trading. The strategy uses two moving averages with different periods (fast and slow lines) to construct the MACD indicator and introduces a zero-lag algorithm to eliminate the delay between the indicator and the price, improving the timeliness of signals. Additionally, the crossover of the signal line and the MACD line is used as buy and sell signals, and alerts are set up to help traders seize trading opportunities in a timely manner.
Strategy Principle
Calculate the EMA (Exponential Moving Average) or SMA (Simple Moving Average) of the fast line (default 12 periods) and slow line (default 26 periods).
Use the zero-lag algorithm to double-smooth the fast and slow lines, eliminating the delay between the indicator and the price.
The MACD line is formed by the difference between the zero-lag fast line and the zero-lag slow line.
The signal line is formed by the EMA (default 9 periods) or SMA of the MACD line.
The MACD histogram is formed by the difference between the MACD line and the signal line, with blue representing positive values and red representing negative values.
When the MACD line crosses the signal line from below and the crossover point is below the zero axis, a buy signal (blue dot) is generated.
When the MACD line crosses the signal line from above and the crossover point is above the zero axis, a sell signal (red dot) is generated.
The strategy automatically places orders based on the buy and sell signals and triggers corresponding alerts.
Advantage Analysis
The zero-lag algorithm effectively eliminates the delay between the indicator and the price, improving the timeliness and accuracy of signals.
The design of dual moving averages can better capture market trends and adapt to different market environments.
The MACD histogram intuitively reflects the comparison of bullish and bearish forces, assisting in trading decisions.
The automatic order placement and alert functions make it convenient for traders to seize trading opportunities in a timely manner, improving trading efficiency.
Risk Analysis
In volatile markets, frequent crossover signals may lead to overtrading and losses.
Improper parameter settings may cause signal distortion and affect strategy performance.
The strategy relies on historical data for calculations and has poor adaptability to sudden events and black swan events.
Optimization Direction
Introduce trend confirmation indicators, such as ADX, to filter out false signals in volatile markets.
Optimize parameters to find the best combination of fast and slow line periods and signal line periods, improving strategy stability.
Combine other technical indicators or fundamental factors to construct a multi-factor model, improving risk-adjusted returns of the strategy.
Introduce stop-loss and take-profit mechanisms to control single-trade risk.
Summary
The MACD Dual Crossover Zero Lag Trading Strategy achieves high-frequency trading by quickly responding to price changes and capturing short-term trends. The zero-lag algorithm and dual moving average design improve the timeliness and accuracy of signals. The strategy has certain advantages, such as intuitive signals and convenient operation, but also faces risks such as overtrading and parameter sensitivity. In the future, the strategy can be optimized by introducing trend confirmation indicators, parameter optimization, multi-factor models, etc., to improve the robustness and profitability of the strategy.
Finite Difference - Backward (mcbw_)In calculus there exists a 'derivative', which simply just measures the difference between two points on a curve. For well behaved mathematical functions there are infinitely many points and so there exists a derivative at every point. Where there are infinitely many points in a curve that curve is called 'continuous'. Continuous curves are very nice to deal with since each point on it exists almost exactly where its neighbors are. However, if the curve does not have infinitely many points on it, but instead has a finite number of points on it, that curve is called 'discrete' instead of continuous. Taking the derivative of discrete curves is much trickier business since there are none of the mathematical conveniences that a continuous offers. In the real world everything we measure is a discrete curve, including Price (since we measure it a finite number of times, aka each candlestick)!
The branch of Discrete Mathematics has found an approach to measure the derivative along a discrete curve, that approach is aptly called " Finite Difference ". To get a more accurate approximation of a discrete derivative, the finite difference approach uses weighted combinations of neighboring points. The most common type of finite difference is a 'central' difference, this uses a combination of points before and after the point of interest to approximate the discrete derivative. This is great for historical analysis but is not of much use for trading algorithms since it technically means using future prices to calculate the derivative of the current point. Instead we can use a less common variant called a ' Backwards Difference ' that only uses a combination of points before the current one to help approximate the current derivative.
In this script you can choose the " Order " of your derivative and the " Accuracy " of its approximation. This script is for educational purposes for folks building trading algorithms. Many trading algorithms often have an element of seeing how much Price has changed from the previous candle to the current candle. This approach is the lowest accuracy derivative possible, and using the backwards finite differences, made available for the first time on TradingView (!!), algorithms that use derivatives can now have higher orders of accuracy!
Happy Trading/Developing!
John Bob-Trading-BotDeveloped by Ayebale John Bob with the help of his bestie, this innovative strategy combines advanced Smart Money Concepts with practical risk management tools to help traders identify and capitalize on key market moves.
Key Features:
Smart Money Concepts & Fair Value Gaps (FVG):
The strategy monitors price action for fair value gaps, which are visualized as extremely faint horizontal lines on the chart. These FVGs signal potential areas where institutional traders might have entered or exited positions.
Dynamic Entry Signals:
Buy signals are triggered when the price crosses above the 50-bar lowest low or when a bullish FVG is detected. Conversely, sell signals are generated when the price falls below the 50-bar highest high or a bearish FVG is identified. Each signal is visually marked on the chart with clear buy (green) and sell (red) labels.
Multi-Level Order Execution:
Once an entry signal occurs, the strategy places five separate orders, each with its own take-profit (TP) level. The TP levels are calculated dynamically using the Average True Range (ATR) and a set of predefined multipliers. This allows traders to scale out of positions as the market moves favorably.
Dynamic Risk Management:
A stop-loss is automatically set at a distance determined by the ATR, ensuring that risk is managed in accordance with current market volatility.
Real-Time Trade Information Table:
In the bottom-right corner of the chart, a trade information table displays essential details about the current trade:
Side: Displays "BUY NOW" (with a dark green background) for long entries or "SELL NOW" (with a dark red background) for short entries.
Entry Price & Stop-Loss: Shows the entry price (highlighted in green) and the corresponding stop-loss level (highlighted in red).
Take-Profit Levels: Lists the five TP levels, each of which turns green once the market price reaches that target.
Timer: A live timer in minutes counts from the moment the current trade trigger started, helping traders track the duration of their active trades.
Visual Progress Bar:
A histogram-style progress bar is plotted on the chart, visually representing the percentage gain (or loss) relative to the entry price.
This strategy was meticulously designed to incorporate both technical analysis and smart risk management, offering a robust trading solution that adapts to changing market conditions. Whether you're a seasoned trader or just starting out, the AyebaleJohnBob Trading Bot equips you with the tools and visual cues needed to make well-informed trading decisions. Enjoy a seamless blend of strategy and style—crafted with passion by Ayebale John Bob and his bestie!
SPY/TLT Strategy█ STRATEGY OVERVIEW
The "SPY/TLT Strategy" is a trend-following crossover strategy designed to trade the relationship between TLT and its Simple Moving Average (SMA). The default configuration uses TLT (iShares 20+ Year Treasury Bond ETF) with a 20-period SMA, entering long positions on bullish crossovers and exiting on bearish crossunders. **This strategy is NOT optimized and performs best in trending markets.**
█ KEY FEATURES
SMA Crossover System: Uses price/SMA relationship for signal generation (Default: 20-period)
Dynamic Time Window: Configurable backtesting period (Default: 2014-2099)
Equity-Based Position Sizing: Default 100% equity allocation per trade
Real-Time Visual Feedback: Price/SMA plot with trend-state background coloring
Event-Driven Execution: Processes orders at bar close for accurate backtesting
█ SIGNAL GENERATION
1. LONG ENTRY CONDITION
TLT closing price crosses ABOVE SMA
Occurs within specified time window
Generates market order at next bar open
2. EXIT CONDITION
TLT closing price crosses BELOW SMA
Closes all open positions immediately
█ ADDITIONAL SETTINGS
SMA Period: Simple Moving Average length (Default: 20)
Start Time and End Time: The time window for trade execution (Default: 1 Jan 2014 - 1 Jan 2099)
Security Symbol: Ticker for analysis (Default: TLT)
█ PERFORMANCE OVERVIEW
Ideal Market Conditions: Strong trending environments
Potential Drawbacks: Whipsaws in range-bound markets
Backtesting results should be analyzed to optimize the MA Period and EMA Filter settings for specific instruments
Thin Liquidity Zones [PhenLabs]Thin Liquidity Zones with Volume Delta
Our advanced volume analysis tool identifies and visualizes significant liquidity zones using real-time volume delta analysis. This indicator helps traders pinpoint and monitor critical price levels where substantial trading activity occurs, providing precise volume flow measurement through lower timeframe analysis.
The tool works by leveraging the fact that hedge funds, institutions, and other large market participants strategically fill their orders in areas of thin liquidity to minimize slippage and market impact. By detecting these zones, traders gain valuable insights into potential areas of accumulation, distribution, and liquidity traps, allowing for more informed trading decisions.
🔍 Key Features
Real-time volume delta calculation using lower timeframe data
Dynamic zone creation based on volume spikes
Automatic timeframe optimization
Size-filtered zones to avoid noise
Custom delta timeframe scanning
Flexible analysis period selection
📊 Visual Demonstration
💡 How It Works
The indicator continuously scans for high-volume areas where trading activity exceeds the specified threshold (default 6.0x average volume). When detected, it creates zones that display the net volume delta, showing whether buying or selling pressure dominated that price level.
Key zone characteristics:
Size filtering prevents noise from large price swings
Volume delta shows actual buying/selling pressure
Zones automatically expire based on lookback period
Real-time updates as new volume data arrives
⚙️ Settings
Time Settings
Analysis Timeframe: 15M to 1W options
Custom Period: User-defined bar count
Delta Timeframe: Automatic or manual selection
Volume Analysis
Volume Threshold: Minimum spike multiple
Volume MA Length: Averaging period
Maximum Zone Size: Size filter percentage
Display Options
Zone Color: Customizable with transparency
Delta Display: On/Off toggle
Text Position: Left/Center/Right alignment
📌 Tips for Best Results
Adjust volume threshold based on instrument volatility
Monitor zone clusters for potential support/resistance
Consider reducing max zone size in volatile markets
Use in conjunction with price action and other indicators
⚠️ Important Notes
Requires volume data from your data provider
Lower timeframe scanning may impact performance
Maximum 500 zones maintained for optimization
Zone creation is filtered by both volume and size
🔧 Volume Delta Calculation
The indicator uses TradingView’s advanced volume delta calculation, which:
Scans lower timeframe data for precision
Measures actual buying vs selling pressure
Updates in real-time with new data
Provides clear positive/negative flow indication
This tool is ideal for traders focusing on volume analysis and order flow. It helps identify key levels where significant trading activity has occurred and provides insight into the nature of that activity through volume delta analysis.
Note: Performance may vary based on your chart’s timeframe. Adjust settings according to your trading style and the instrument’s characteristics. Past performance is not indicative of future results, DYOR.
metaconnectorLibrary "metaconnector"
metaconnector
buy_market_order(License_ID, symbol, lot)
Places a buy market order
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to buy
Returns: String syntax for the buy market order
sell_market_order(License_ID, symbol, lot)
Places a sell market order
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to sell
Returns: String syntax for the sell market order
buy_limit_order(License_ID, symbol, lot, price)
Places a buy limit order
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to buy
price (float) : Limit price for the order
Returns: String syntax for the buy limit order
sell_limit_order(License_ID, symbol, lot, price)
Places a sell limit order
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to sell
price (float) : Limit price for the order
Returns: String syntax for the sell limit order
stoploss_for_buy_order(License_ID, symbol, lot, stoploss_price)
Places a stop-loss order for a buy position
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to buy
stoploss_price (float)
Returns: String syntax for the buy stop-loss order
stoploss_for_sell_order(License_ID, symbol, lot, stoploss_price)
Places a stop-loss order for a sell position
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to sell
stoploss_price (float)
Returns: String syntax for the sell stop-loss order
takeprofit_for_buy_order(License_ID, symbol, lot, target_price)
Places a take-profit order for a buy position
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to buy
target_price (float)
Returns: String syntax for the buy take-profit order
takeprofit_for_sell_order(License_ID, symbol, lot, target_price)
Places a take-profit order for a sell position
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to sell
target_price (float)
Returns: String syntax for the sell take-profit order
buy_stop_order(License_ID, symbol, lot, price)
Places a buy stop order above the current market price
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to buy
price (float) : Stop order price
Returns: String syntax for the buy stop order
sell_stop_order(License_ID, symbol, lot, price)
Places a sell stop order below the current market price
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to sell
price (float) : Stop order price
Returns: String syntax for the sell stop order
close_all_positions(License_ID, symbol)
Closes all positions for a specific symbol
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
Returns: String syntax for closing all positions
close_buy_positions(License_ID, symbol)
Closes all buy positions for a specific symbol
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
Returns: String syntax for closing all buy positions
close_sell_positions(License_ID, symbol)
Closes all sell positions for a specific symbol
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
Returns: String syntax for closing all sell positions
close_partial_buy_position(License_ID, symbol, lot)
Closes a partial buy position for a specific symbol
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to close
Returns: String syntax for closing a partial buy position
close_partial_sell_position(License_ID, symbol, lot)
Closes a partial sell position for a specific symbol
Parameters:
License_ID (string) : Unique license ID of the user
symbol (string) : Trading symbol
lot (int) : Number of lots to close
Returns: String syntax for closing a partial sell position
Directional Volume IndexDirectional Volume Index (DVI) (buying/selling pressure)
This index is adapted from the Directional Movement Index (DMI), but based on volume instead of price movements. The idea is to detect building directional volume indicating a growing amount of orders that will eventually cause the price to follow. (DVI is not displayed by default)
The rough algorithm for the Positive Directional Volume Index (green bar):
calculate the delta to the previous green bar's volume
if the delta is positive (growing buying pressure) add it to an SMA, else add 0 (also for red bars)
divide these average deltas by the average volume
the result is the Positive Directional Volume Index (DVI+) (vice versa for DVI-)
Differential Directional Volume Index (DDVI) (relative pressure)
Creating the difference of both Directional Volume Indexes (DVI+ - DVI-) creates the Differential Directional Volume Index (DDVI) with rising values indicating a growing buying pressure, falling values a growing selling pressure. (DDVI is displayed by default, smoothed by a custom moving average)
Average Directional Volume Index (ADVX) (pressure strength)
Putting the relative pressure (DDVI) in relation to the total pressure (DVI+ + DVI-) we can determine the strength and duration of the currently building volume change / trend. For the DMI/ADX usually 20 is an indicator for a strong trend, values above 50 suggesting exhaustion and approaching reversals. (ADVX is not displayed by default, smoothed by a custom moving average)
Divergences of the Differential Directional Volume Index (DDVI) (imbalances)
By detecting divergences we can detect situations where e.g. bullish volume starts to build while price is in a downtrend, suggesting that there is growing buying pressure indicating an imminent bullish pullback/order block or reversal. (strong and hidden divergences are displayed by default)
Divergences Overview:
strong bull: higher lows on volume, lower lows on price
medium bull: higher lows on volume, equal lows on price
weak bull: equal lows on volume, lower lows on price
hidden bull: lower lows on volume, higher lows on price
strong bear: lower highs on volume, higher highs on price
medium bear: lower highs on volume, equal highs on price
weak bear: equal highs on volume, higher highs on price
hidden bear: higher highs on volume, lower highs on price
DDVI Bands (dynamic overbought/oversold levels)
Using Bollinger Bands with DDVI as source we receive an averaged relative pressure with stdev band offsets. This can be used as dynamic overbought/oversold levels indicating reversals on sharp crossovers.
Alerts
As of now there are no alerts built in, but all internal data is exposed via plot and plotshape functions, so it can be used for custom crossover conditions in the alert dialog. This is still a personal research project, so if you find good setups, please let me know.






















