RSI3M3+ v.1.8RSI3M3+ v.1.8 Indicator
This script is an advanced trading indicator based on Walter J. Bressert's cycle analysis methodology, combined with an RSI (Relative Strength Index) variation. Let me break it down and explain how it works.
Core Concepts
The RSI3M3+ indicator combines:
A short-term RSI (3-period)
A 3-period moving average to smooth the RSI
Bressert's cycle analysis principles to identify optimal trading points
RSI3M3+ Indicator VisualizationImage Walter J. Bressert's Cycle Analysis Concepts
Walter Bressert was a pioneer in cycle analysis trading who believed markets move in cyclical patterns that can be measured and predicted. His key principles integrated into this indicator include:
Trading Cycles: Markets move in cycles with measurable time spans from low to low
Timing Bands: Projected periods when the next cyclical low or high is anticipated
Oscillator Use: Using oscillators like RSI to confirm cycle position
Entry/Exit Rules: Specific rules for trade entry and exit based on cycle position
Key Parameters in the Script
Basic RSI Parameters
Required bars: Minimum number of bars needed (default: 20)
Overbought region: RSI level considered overbought (default: 70)
Oversold region: RSI level considered oversold (default: 30)
Bressert-Specific Parameters
Cycle Detection Length: Lookback period for cycle identification (default: 30)
Minimum/Maximum Cycle Length: Expected cycle duration in days (default: 15-30)
Buy Line: Lower threshold for buy signals (default: 40)
Sell Line: Upper threshold for sell signals (default: 60)
How the Indicator Works
RSI3M3 Calculation:
Calculates a 3-period RSI (sRSI)
Smooths it with a 3-period moving average (sMA)
Cycle Detection:
Identifies bottoms: When the RSI is below the buy line (40) and starting to turn up
Identifies tops: When the RSI is above the sell line (60) and starting to turn down
Records these points to calculate cycle lengths
Timing Bands:
Projects when the next cycle bottom or top should occur
Creates visual bands on the chart showing these expected time windows
Signal Generation:
Buy signals occur when the RSI turns up from below the oversold level (30)
Sell signals occur when the RSI turns down from above the overbought level (70)
Enhanced by Bressert's specific timing rules
Bressert's Five Trading Rules (Implemented in the Script)
Cycle Timing: The low must be 15-30 market days from the previous Trading Cycle bottom
Prior Top Validation: A Trading Cycle high must have occurred with the oscillator above 60
Oscillator Behavior: The oscillator must drop below 40 and turn up
Entry Trigger: Entry is triggered by a rise above the price high of the upturn day
Protective Stop: Place stop slightly below the Trading Cycle low (implemented as 99% of bottom price)
How to Use the Indicator
Reading the Chart
Main Plot Area:
Green line: 3-period RSI
Red line: 3-period moving average of the RSI
Horizontal bands: Oversold (30) and Overbought (70) regions
Dotted lines: Buy line (40) and Sell line (60)
Yellow vertical bands: Projected timing windows for next cycle bottom
Signals:
Green up arrows: Buy signals
Red down arrows: Sell signals
Trading Strategy
For Buy Signals:
Wait for the RSI to drop below the buy line (40)
Look for an upturn in the RSI from below this level
Enter the trade when price rises above the high of the upturn day
Place a protective stop at 99% of the Trading Cycle low
For Sell Signals:
Wait for the RSI to rise above the sell line (60)
Look for a downturn in the RSI from above this level
Consider exiting or taking profits when a sell signal appears
Alternative exit: When price moves below the low of the downturn day
Cycle Timing Enhancement:
Pay attention to the yellow timing bands
Signals occurring within these bands have higher probability of success
Signals outside these bands may be less reliable
Practical Tips for Using RSI3M3+
Timeframe Selection:
The indicator works best on daily charts for intermediate-term trading
Can be used on weekly charts for longer-term position trading
On intraday charts, adjust cycle lengths accordingly
Market Applicability:
Works well in trending markets with clear cyclical behavior
Less effective in choppy, non-trending markets
Consider additional indicators for trend confirmation
Parameter Adjustment:
Different markets may have different natural cycle lengths
You may need to adjust the min/max cycle length parameters
Higher volatility markets may need wider overbought/oversold levels
Trade Management:
Enter trades when all Bressert's conditions are met
Use the protective stop as defined (99% of cycle low)
Consider taking partial profits at the projected cycle high timing
Advanced Techniques
Multiple Timeframe Analysis:
Confirm signals with the same indicator on higher timeframes
Enter in the direction of the larger cycle when smaller and larger cycles align
Divergence Detection:
Look for price making new lows while RSI makes higher lows (bullish)
Look for price making new highs while RSI makes lower highs (bearish)
Confluence with Price Action:
Combine with support/resistance levels
Use with candlestick patterns for confirmation
Consider volume confirmation of cycle turns
This RSI3M3+ indicator combines the responsiveness of a short-term RSI with the predictive power of Bressert's cycle analysis, offering traders a sophisticated tool for identifying high-probability trading opportunities based on market cycles and momentum shifts.
THANK YOU FOR PREVIOUS CODER THAT EFFORT TO CREATE THE EARLIER VERSION THAT MAKE WALTER J BRESSERT CONCEPT IN TRADINGVIEW @ADutchTourist
Tìm kiếm tập lệnh với "low"
IU Bigger than range strategyDESCRIPTION
IU Bigger Than Range Strategy is designed to capture breakout opportunities by identifying candles that are significantly larger than the previous range. It dynamically calculates the high and low of the last N candles and enters trades when the current candle's range exceeds the previous range. The strategy includes multiple stop-loss methods (Previous High/Low, ATR, Swing High/Low) and automatically manages take-profit and stop-loss levels based on user-defined risk-to-reward ratios. This versatile strategy is optimized for higher timeframes and assets like BTC but can be fine-tuned for different instruments and intervals.
USER INPUTS:
Look back Length: Number of candles to calculate the high-low range. Default is 22.
Risk to Reward: Sets the target reward relative to the stop-loss distance. Default is 3.
Stop Loss Method: Choose between:(Default is "Previous High/Low")
- Previous High/Low
- ATR (Average True Range)
- Swing High/Low
ATR Length: Defines the length for ATR calculation (only applicable when ATR is selected as the stop-loss method) (Default is 14).
ATR Factor: Multiplier applied to the ATR to determine stop-loss distance(Default is 2).
Swing High/Low Length: Specifies the length for identifying swing points (only applicable when Swing High/Low is selected as the stop-loss method).(Default is 2)
LONG CONDITION:
The current candle’s range (absolute difference between open and close) is greater than the previous range.
The closing price is higher than the opening price (bullish candle).
SHORT CONDITIONS:
The current candle’s range exceeds the previous range.
The closing price is lower than the opening price (bearish candle).
LONG EXIT:
Stop-loss:
- Previous Low
- ATR-based trailing stop
- Recent Swing Low
Take-profit:
- Defined by the Risk-to-Reward ratio (default 3x the stop-loss distance).
SHORT EXIT:
Stop-loss:
- Previous High
- ATR-based trailing stop
- Recent Swing High
Take-profit:
- Defined by the Risk-to-Reward ratio (default 3x the stop-loss distance).
ALERTS:
Long Entry Triggered
Short Entry Triggered
WHY IT IS UNIQUE:
This strategy dynamically adapts to different market conditions by identifying candles that exceed the previous range, ensuring that it only enters trades during strong breakout scenarios.
Multiple stop-loss methods provide flexibility for different trading styles and risk profiles.
The visual representation of stop-loss and take-profit levels with color-coded plots improves trade monitoring and decision-making.
HOW USERS CAN BENEFIT FROM IT:
Ideal for breakout traders looking to capitalize on momentum-driven price moves.
Provides flexibility to customize stop-loss methods and fine-tune risk management parameters.
Helps minimize drawdowns with a strong risk-to-reward framework while maximizing profit potential.
StatPivot- Dynamic Range Analyzer - indicator [PresentTrading]Hello everyone! In the following few open scripts, I would like to share various statistical tools that benefit trading. For this time, it is a powerful indicator called StatPivot- Dynamic Range Analyzer that brings a whole new dimension to your technical analysis toolkit.
This tool goes beyond traditional pivot point analysis by providing comprehensive statistical insights about price movements, helping you identify high-probability trading opportunities based on historical data patterns rather than subjective interpretations. Whether you're a day trader, swing trader, or position trader, StatPivot's real-time percentile rankings give you a statistical edge in understanding exactly where current price action stands within historical contexts.
Welcome to share your opinions! Looking forward to sharing the next tool soon!
█ Introduction and How it is Different
StatPivot is an advanced technical analysis tool that revolutionizes retracement analysis. Unlike traditional pivot indicators that only show static support/resistance levels, StatPivot delivers dynamic statistical insights based on historical pivot patterns.
Its key innovation is real-time percentile calculation - while conventional tools require new pivot formations before updating (often too late for trading decisions), StatPivot continuously analyzes where current price stands within historical retracement distributions.
Furthermore, StatPivot provides comprehensive statistical metrics including mean, median, standard deviation, and percentile distributions of price movements, giving traders a probabilistic edge by revealing which price levels represent statistically significant zones for potential reversals or continuations. By transforming raw price data into statistical insights, StatPivot helps traders move beyond subjective price analysis to evidence-based decision making.
█ Strategy, How it Works: Detailed Explanation
🔶 Pivot Point Detection and Analysis
The core of StatPivot's functionality begins with identifying significant pivot points in the price structure. Using the parameters left and right, the indicator locates pivot highs and lows by examining a specified number of bars to the left and right of each potential pivot point:
Copyp_low = ta.pivotlow(low, left, right)
p_high = ta.pivothigh(high, left, right)
For a point to qualify as a pivot low, it must have left higher lows to its left and right higher lows to its right. Similarly, a pivot high must have left lower highs to its left and right lower highs to its right. This approach ensures that only significant turning points are recognized.
🔶 Percentage Change Calculation
Once pivot points are identified, StatPivot calculates the percentage changes between consecutive pivot points:
For drops (when a pivot low is lower than the previous pivot low):
CopydropPercent = (previous_pivot_low - current_pivot_low) / previous_pivot_low * 100
For rises (when a pivot high is higher than the previous pivot high):
CopyrisePercent = (current_pivot_high - previous_pivot_high) / previous_pivot_high * 100
These calculations quantify the magnitude of each market swing, allowing for statistical analysis of historical price movements.
🔶 Statistical Distribution Analysis
StatPivot computes comprehensive statistics on the historical distribution of drops and rises:
Average (Mean): The arithmetic mean of all recorded percentage changes
CopyavgDrop = array.avg(dropValues)
Median: The middle value when all percentage changes are arranged in order
CopymedianDrop = array.median(dropValues)
Standard Deviation: Measures the dispersion of percentage changes from the average
CopystdDevDrop = array.stdev(dropValues)
Percentiles (25th, 75th): Values below which 25% and 75% of observations fall
Copyq1 = array.get(sorted, math.floor(cnt * 0.25))
q3 = array.get(sorted, math.floor(cnt * 0.75))
VaR95: The maximum expected percentage drop with 95% confidence
Copyvar95D = array.get(sortedD, math.floor(nD * 0.95))
Coefficient of Variation (CV): Measures relative variability
CopycvD = stdDevDrop / avgDrop
These statistics provide a comprehensive view of market behavior, enabling traders to understand the typical ranges and extreme moves.
🔶 Real-time Percentile Ranking
StatPivot's most innovative feature is its real-time percentile calculation. For each current price, it calculates:
The percentage drop from the latest pivot high:
CopycurrentDropPct = (latestPivotHigh - close) / latestPivotHigh * 100
The percentage rise from the latest pivot low:
CopycurrentRisePct = (close - latestPivotLow) / latestPivotLow * 100
The percentile ranks of these values within the historical distribution:
CopyrealtimeDropRank = (count of historical drops <= currentDropPct) / total drops * 100
This calculation reveals exactly where the current price movement stands in relation to all historical movements, providing crucial context for decision-making.
🔶 Cluster Analysis
To identify the most common retracement zones, StatPivot performs a cluster analysis by dividing the range of historical drops into five equal intervals:
CopyrangeSize = maxVal - minVal
For each interval boundary:
Copyboundaries = minVal + rangeSize * i / 5
By counting the number of observations in each interval, the indicator identifies the most frequently occurring retracement zones, which often serve as significant support or resistance areas.
🔶 Expected Price Targets
Using the statistical data, StatPivot calculates expected price targets:
CopytargetBuyPrice = close * (1 - avgDrop / 100)
targetSellPrice = close * (1 + avgRise / 100)
These targets represent statistically probable price levels for potential entries and exits based on the average historical behavior of the market.
█ Trade Direction
StatPivot functions as an analytical tool rather than a direct trading signal generator, providing statistical insights that can be applied to various trading strategies. However, the data it generates can be interpreted for different trade directions:
For Long Trades:
Entry considerations: Look for price drops that reach the 70-80th percentile range in the historical distribution, suggesting a statistically significant retracement
Target setting: Use the Expected Sell price or consider the average rise percentage as a reasonable target
Risk management: Set stop losses below recent pivot lows or at a distance related to the statistical volatility (standard deviation)
For Short Trades:
Entry considerations: Look for price rises that reach the 70-80th percentile range, indicating an unusual extension
Target setting: Use the Expected Buy price or average drop percentage as a target
Risk management: Set stop losses above recent pivot highs or based on statistical measures of volatility
For Range Trading:
Use the most common drop and rise clusters to identify probable reversal zones
Trade bounces between these statistically significant levels
For Trend Following:
Confirm trend strength by analyzing consecutive higher pivot lows (uptrend) or lower pivot highs (downtrend)
Use lower percentile retracements (20-30th percentile) as entry opportunities in established trends
█ Usage
StatPivot offers multiple ways to integrate its statistical insights into your trading workflow:
Statistical Table Analysis: Review the comprehensive statistics displayed in the data table to understand the market's behavior. Pay particular attention to:
Average drop and rise percentages to set reasonable expectations
Standard deviation to gauge volatility
VaR95 for risk assessment
Real-time Percentile Monitoring: Watch the real-time percentile display to see where the current price movement stands within the historical distribution. This can help identify:
Extreme movements (90th+ percentile) that might indicate reversal opportunities
Typical retracements (40-60th percentile) that might continue further
Shallow pullbacks (10-30th percentile) that might represent continuation opportunities in trends
Support and Resistance Identification: Utilize the plotted pivot points as key support and resistance levels, especially when they align with statistically significant percentile ranges.
Target Price Setting: Use the expected buy and sell prices calculated from historical averages as initial targets for your trades.
Risk Management: Apply the statistical measurements like standard deviation and VaR95 to set appropriate stop loss levels that account for the market's historical volatility.
Pattern Recognition: Over time, learn to recognize when certain percentile levels consistently lead to reversals or continuations in your specific market, and develop personalized strategies based on these observations.
█ Default Settings
The default settings of StatPivot have been carefully calibrated to provide reliable statistical analysis across a variety of markets and timeframes, but understanding their effects allows for optimal customization:
Left Bars (30) and Right Bars (30): These parameters determine how pivot points are identified. With both set to 30 by default:
A pivot low must be the lowest point among 30 bars to its left and 30 bars to its right
A pivot high must be the highest point among 30 bars to its left and 30 bars to its right
Effect on performance: Larger values create fewer but more significant pivot points, reducing noise but potentially missing important market structures. Smaller values generate more pivot points, capturing more nuanced movements but potentially including noise.
Table Position (Top Right): Determines where the statistical data table appears on the chart.
Effect on performance: No impact on analytical performance, purely a visual preference.
Show Distribution Histogram (False): Controls whether the distribution histogram of drop percentages is displayed.
Effect on performance: Enabling this provides visual insight into the distribution of retracements but can clutter the chart.
Show Real-time Percentile (True): Toggles the display of real-time percentile rankings.
Effect on performance: A critical setting that enables the dynamic analysis of current price movements. Disabling this removes one of the key advantages of the indicator.
Real-time Percentile Display Mode (Label): Chooses between label display or indicator line for percentile rankings.
Effect on performance: Labels provide precise information at the current price point, while indicator lines show the evolution of percentile rankings over time.
Advanced Considerations for Settings Optimization:
Timeframe Adjustment: Higher timeframes generally benefit from larger Left/Right values to identify truly significant pivots, while lower timeframes may require smaller values to capture shorter-term swings.
Volatility-Based Tuning: In highly volatile markets, consider increasing the Left/Right values to filter out noise. In less volatile conditions, lower values can help identify more potential entry and exit points.
Market-Specific Optimization: Different markets (forex, stocks, commodities) display different retracement patterns. Monitor the statistics table to see if your market typically shows larger or smaller retracements than the current settings are optimized for.
Trading Style Alignment: Adjust the settings to match your trading timeframe. Day traders might prefer settings that identify shorter-term pivots (smaller Left/Right values), while swing traders benefit from more significant pivots (larger Left/Right values).
By understanding how these settings affect the analysis and customizing them to your specific market and trading style, you can maximize the effectiveness of StatPivot as a powerful statistical tool for identifying high-probability trading opportunities.
Enhanced VSA Volume & Candle Colors with MA SelectionOverview:
This script aims to enhance the visualization of volume spikes and price action by coloring volume bars and price candles dynamically based on the volume behavior. It allows traders to customize the type of volume moving average (SMA, EMA, or VWMA) used and apply various color schemes to highlight high, low, and extreme volume conditions. Additionally, alerts are generated when extreme or low-volume conditions occur.
---------------------------------------------------------------------------------------------------------------------
Key Features:
Customizable Volume Lookback Period:
The script allows users to define the period for calculating the moving average of volume (default: 200).
Volume Multiplier Settings:
High and low volume thresholds are defined using multipliers. Users can adjust these to customize how volume is categorized (default multipliers: 1.5 for high volume, 0.5 for low volume).
Percentile-Based Extreme Volume Detection:
The script calculates a percentile threshold for extreme volume (default: 90th percentile) based on the volume data, highlighting exceptionally high volume spikes.
Moving Average Selection:
Users can choose between Simple Moving Average (SMA), Exponential Moving Average (EMA), or Volume Weighted Moving Average (VWMA) to track volume trends over the selected lookback period.
Volume-Based Price Bar Coloring:
Price bars can be colored according to the volume conditions (high, low, or extreme). This feature can be toggled on or off.
Dynamic Transparency and Color Customization:
The script allows users to set custom colors for different volume conditions (high, low, neutral, extreme) and adjusts the transparency of volume bars based on the relative size of the volume.
Alerts:
Alerts can be set for when extreme volume spikes or low volume conditions are detected.
---------------------------------------------------------------------------------------------------------------------
Script Components:
Volume Histogram Plot:
Displays the volume bars with dynamic coloring based on the volume condition (high, low, or extreme). The color of the bars adjusts for clarity, with transparency based on volume levels.
Moving Average Plot:
Plots the selected volume moving average (SMA, EMA, or VWMA) to visualize the trend of volume over the chosen lookback period.
Smoothed Average Volume (EMA of Volume):
A smoothed EMA line is plotted to provide a clear representation of volume trends over time.
Price Bar Coloring:
If enabled, price bars are colored according to the current volume condition, providing immediate visual feedback to the trader.
---------------------------------------------------------------------------------------------------------------------
How It Can Be Used:
Volume Analysis for Entry/Exit Points: Traders can use the volume conditions (high, low, and extreme) to identify potential entry or exit points. High-volume bars often signal strong market activity, while low-volume bars may indicate consolidation or indecision.
Volume Confirmation for Trend Reversal: Extreme volume spikes can sometimes precede significant price movements. Traders can monitor these spikes for potential trend reversal signals.
Customizing Alerts: Alerts based on volume conditions help traders stay updated on important volume events without constantly monitoring the chart.
Color-Coded Price Action: The dynamic coloring of price bars makes it easier to identify periods of strong or weak market participation, allowing traders to make informed decisions quickly.
---------------------------------------------------------------------------------------------------------------------
Compliance with TradingView's House Rules:
No Promotion of Financial Products: The script does not promote any specific financial instruments or products, ensuring compliance with TradingView’s content guidelines.
Clear Functionality: The script provides clear, functional analysis tools without making unsupported claims about predicting market movements.
No Automated Trading: The script does not include any automated trading or order execution features, which complies with TradingView’s policy on non-automated scripts.
This breakdown ensures clarity on the script’s purpose, features, and how it might be used by traders. It's written in a way that fits TradingView's content guidelines, keeping the focus on providing valuable analytical tools rather than making promises or promoting any financial product.
Swing Breakout System (SBS)The Swing Breakout Sequence (SBS) is a trading strategy that focuses on identifying high-probability entry points based on a specific pattern of price swings. This indicator will identify these patterns, then draw lines and labels to show confirmation.
How To Use:
The indicator will show both Bullish and Bearish SBS patterns.
Bullish Pattern is made up of 6 points: Low (0), HH (1), LL (2 | but higher than initial Low), New HH (3), LL (5), LL again (5)
Bearish Patten is made up of 6 points: High (0), LL (1), HH (2 | but lower than initial high), New LL (3), HH (5), HH again (5)
A label with an arrow will appear at the end, showing the completion of a successful sequence
Idea behind the strategy:
The idea behind this strategy, is the accumulation and then manipulation of liquidity throughout the sequence. For example, during SBS sequence, liquidity is accumulated during step (2), then price will push away to make a new high/low (step 3), after making a minor new high/low, price will retrace breaking the key level set up in step (2). This is price manipulating taking liquidity from behind high/low from step (2). After taking liquidity price the idea is price will continue in the original direction.
Step 0 - Setting up initial direction
Step 1 - Setting up initial direction
Step 2 - Key low/high establishing liquidity
Step 3 - Failed New high/low
Step 4 - Taking liquidity from step (2)
Step 5 - Taking liquidity from step 2 and 4
Pattern Detection:
- Uses pivot high/low points to identify swing patterns
- Stores 6 consecutive swing points in arrays
- Identifies two types of patterns:
1. Bullish Pattern: A specific sequence of higher lows and higher highs
2. Bearish Pattern: A specific sequence of lower highs and lower lows
Note: Because the indicator is identifying a perfect sequence of 6 steps, set ups may not appear frequently.
Visualization:
- Draws connecting lines between swing points
- Labels each point numerically (optional)
- Shows breakout arrows (↑ for bullish, ↓ for bearish)
- Generates alerts on valid breakouts
User Input Settings:
Core Parameters
1. Pivot Lookback Period (default: 2)
- Controls how many bars to look back/forward for pivot point detection
- Higher values create fewer but more significant pivot points
2. Minimum Pattern Height % (default: 0.1)
- Minimum required height of the pattern as a percentage of price
- Filters out insignificant patterns
3. Maximum Pattern Width (bars) (default: 50)
- Maximum allowed width of the pattern in bars
- Helps exclude patterns that form over too long a period
Dow Theory Swing Trading-DexterThis Pine Script strategy that implements a basic price action-based trading system inspired by Dow Theory, focusing on swing highs and swing lows. This strategy will generate buy and sell signals based on the formation of higher highs (HH) and higher lows (HL) for an uptrend, and lower highs (LH) and lower lows (LL) for a downtrend.
Swing Highs and Swing Lows:
The script identifies swing highs and swing lows using the ta.highest and ta.lowest functions over a specified lookback period.
A swing high is identified when the high of the current bar is the highest high over the lookback period.
A swing low is identified when the low of the current bar is the lowest low over the lookback period.
Trend Detection:
An uptrend is detected when the current low is higher than the last identified swing low.
A downtrend is detected when the current high is lower than the last identified swing high.
Buy and Sell Signals:
A buy signal is generated when the price closes above the last swing high during an uptrend.
A sell signal is generated when the price closes below the last swing low during a downtrend.
Plotting:
Swing highs and swing lows are plotted on the chart using plotshape.
Buy and sell signals are also plotted on the chart for visual reference.
How to Use:
Copy and paste the script into the Pine Script editor in TradingView.
Adjust the lookback period as needed to suit your trading style and timeframe.
Apply the script to your chart and it will generate buy and sell signals based on the price action.
NOTE: Please uncheck the all the unwanted symbol from chart for clear view .
HTF Hi-Lo Zones [CHE]HTF Hi-Lo Zones Indicator
The HTF Hi-Lo Zones Indicator is a Pine Script tool designed to highlight important high and low values from a selected higher timeframe. It provides traders with clear visual zones where price activity has reached significant points, helping in decision-making by identifying potential support and resistance levels. This indicator is customizable, allowing users to select the resolution type, control the visualization of session ranges, and even display detailed information about the chosen timeframe.
Key Functionalities
1. Timeframe Resolution Selection:
- The indicator offers three modes to determine the resolution:
- Automatic: Dynamically calculates the higher timeframe based on the current chart's resolution.
- Multiplier: Allows users to apply a multiplier to the current chart's timeframe.
- Manual: Enables manual input for custom resolution settings.
- Each resolution type ensures flexibility to suit different trading styles and strategies.
2. Data Fetching for High and Low Values:
- The indicator retrieves the current high and low values for the selected higher timeframe using `request.security`.
- It also calculates the lowest and highest values over a configurable lookback period, providing insights into significant price movements within the chosen timeframe.
3. Session High and Low Detection:
- The indicator detects whether the current value represents a new session high or low by comparing the highest and lowest values with the current data.
- This is crucial for identifying breakouts or significant turning points during a session.
4. Visual Representation:
- When a new session high or low is detected:
- Range Zones: A colored box marks the session's high-to-low range.
- Labels: Optional labels indicate "New High" or "New Low" for clarity.
- Users can customize colors, transparency, and whether range outlines or labels should be displayed.
5. Information Box:
- An optional dashboard displays details about the chosen timeframe resolution and current session activity.
- The box's size, position, and colors are fully customizable.
6. Session Tracking:
- Tracks session boundaries, updating the visualization dynamically as the session progresses.
- Displays session-specific maximum and minimum values if enabled.
7. Additional Features:
- Configurable dividers for session or daily boundaries.
- Transparency and styling options for the displayed zones.
- A dashboard for advanced visualization and information overlay.
Key Code Sections Explained
1. Resolution Determination:
- Depending on the user's input (Auto, Multiplier, or Manual), the script determines the appropriate timeframe resolution for higher timeframe analysis.
- The resolution adapts dynamically based on intraday, daily, or higher-period charts.
2. Fetching Security Data:
- Using the `getSecurityDataFunction`, the script fetches high and low values for the chosen timeframe, including historical and real-time data management to avoid repainting issues.
3. Session High/Low Logic:
- By comparing the highest and lowest values over a lookback period, the script identifies whether the current value is a new session high or low, updating session boundaries and initiating visual indicators.
4. Visualization:
- The script creates visual representations using `box.new` for range zones and `label.new` for session labels.
- These elements update dynamically to reflect the most recent data.
5. Customization Options:
- Users can configure the appearance, behavior, and displayed data through multiple input options, ensuring adaptability to individual trading preferences.
This indicator is a robust tool for tracking higher timeframe activity, offering a blend of automation, customization, and visual clarity to enhance trading strategies.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Best regards and happy trading
Chervolino
[blackat] L1 Funding Bottom Wave█ OVERVIEW
The script "Funding Bottom Wave" is an indicator designed to analyze market conditions based on multiple smoothed price calculations and specific thresholds. It calculates several values such as B-value, VAR2-value, and additional signals like SK and SD to identify buy/sell levels and reversals, aiding traders in making informed decisions.
█ LOGICAL FRAMEWORK
The script consists of several main components:
• Input parameters that allow customization of calculation periods and thresholds.
• A custom function funding_wave that computes various financial metrics and conditions.
• Plotting commands to visualize different aspects of those computations.
Data flows from input parameters into the funding_wave function where calculations are performed. These results are then plotted according to specified conditions. The script uses conditional expressions to define when certain plots should appear based on the computed values.
█ CUSTOM FUNCTIONS
funding_wave Function:
This function takes six arguments: close_price, high_price, low_price, open_price, period_b, and period_var2. It performs several calculations including:
• Price range percentage normalized between lowest and highest prices over 60 bars.
• SMA of this value over periods defined by period_b and period_var2.
• Several moving averages (MA), EMAs, and extreme point markers (highest/lowest).
• Multiple condition checks involving these metrics leading to buy/high signal flags.
Returns: An array containing B-value, VAR2-value, SK-value, SD-value, along with various conditional signal indicators.
█ KEY POINTS AND TECHNIQUES
• Utilizes built-in TA functions (ta.highest, ta.lowest, ta.sma, ta.ema) for smoothing and normalization purposes.
• Implements extensive use of ternary operators and boolean logic to determine plot visibility based on specific criteria.
• Employs column-style plotting which highlights significant transitions in calculated metric levels visually.
• No explicit loops; computations utilize vectorized operations inherent to Pine Script's nature.
█ EXTENDED KNOWLEDGE AND APPLICATIONS
Potential modifications/extensions include:
• Adding alerts for key threshold crossovers or meeting certain conditions.
• Customizing more sophisticated alert messages incorporating current time and symbol details.
• Incorporating stop-loss/take-profit strategies dynamically adjusted by indicator outputs.
Similar techniques can be applied in:
• Developing robust trend-following systems combining momentum oscillators.
• Enhancing basic price action rulesets with statistical filters derived from historical data behaviors.
• Exploring intraday breakout strategies predicated upon sudden changes in market sentiment captured via volatility spikes.
Related concepts/features:
• Using arrays to encapsulate complex return structures for reusability across scripts/functions.
• Leveraging na effectively within plotting constructs ensures cleaner chart presentation avoiding clutter from irrelevant points.
█ MARKET MEANING OF DIFFERENT COLORED COLUMNS
Red Columns ("B above Var2"):
• Market Interpretation: When the red columns appear, it indicates that the B-value is higher than the VAR2-value. This suggests a strengthening upward trend or consolidation phase where the market might be experiencing buying pressure relative to recent trends.
• Trading Implication: Traders may consider this as a potentially bullish sign, indicating strength in the underlying asset.
Green Columns ("B below Var2"):
• Market Interpretation: Green columns indicate that the B-value is lower than the VAR2-value. This could suggest downward trend acceleration or weakening buying pressure compared to recent trends.
• Trading Implication: Traders might interpret this as a bearish signal, suggesting a possible decline in the market.
Aqua Columns ("SK below SD"):
• Market Interpretation: Aqua columns show instances where the SK-value is below the SD-value. This typically signifies that the short-term stochastic oscillator (or similar measure) is signaling oversold conditions but not yet reaching extremes.
• Trading Implication: While not necessarily a strong sell signal, aqua columns might prompt traders to look for further confirmation before entering long positions.
Fuchsia Columns ("SK above SD"):
• Market Interpretation: Fuchsia columns represent situations where the SK-value exceeds the SD-value. This usually indicates overbought conditions in the near term.
• Trading Implication: Traders often view fuchsia columns as cautionary signs, possibly prompting them to exit existing long positions or refrain from adding new ones without further analysis.
Yellow Columns ("High Condition" and "High Condition Both"):
• Market Interpretation: Yellow columns occur when either the SK-value or B-value crosses above predefined high thresholds (e.g., 90). If both cross simultaneously, they form "High Condition Both."
• Trading Implication: Strongly bullish signals indicating overheated markets prone to corrections. Traders may see this as a good opportunity to take profits or prepare for a pullback/corrective move.
Blue Columns ("Low Condition" and "Low Condition Both"):
• Market Interpretation: Blue columns emerge when either the SK-value or B-value drops below predefined low thresholds (e.g., 10). Simultaneous crossing forms "Low Condition Both."
• Trading Implication: Potentially bullish reversal setups once the market starts showing signs of bottoming out after being significantly oversold. Traders might use blue columns as entry points for establishing long positions or hedging against anticipated rebounds.
Light Purple Columns ("Low Condition with Reversal" and "Low Condition Both with Reversal"):
• Market Interpretation: Light purple columns signify moments when the SK-value or B-value falls below their respective thresholds but has started reversing upwards immediately afterward. If both fall and reverse together, it's denoted as "Low Condition Both with Reversal."
• Trading Implication: Suggests a possible early-stage rebound from an extended downtrend or sideways movement. This could be seen as a highly reliable bulls' flag formation setup.
White Columns ("High Condition with Reversal" and "High Condition Both with Reversal"):
• Market Interpretation: White columns denote scenarios where the SK-value or B-value breaches high thresholds (e.g., 90) but begins descending shortly thereafter. Both simultaneously crossing leads to "High Condition Both with Reversal."
• Trading Implication: Indicative of peak overbought conditions followed quickly by exhaustion in buying interest. This warns traders about potential imminent retracements or pullbacks, prompting exits or short positions.
█ SUMMARY TABLE OF COLUMN COLORS AND THEIR MEANINGS
Color Type Market Interpretation Trading Implication
Red B above Var2 Strengthening upward trend/consolidation Bullish sign
Green B below Var2 Downward trend acceleration/weakening buying pressure Bearish sign
Aqua SK below SD Oversold conditions but not extreme Cautionary signal
Fuchsia SK above SD Overbought conditions Take profit/precaution
Yellow High Condition / High Condition Both Overheated market, likely correction coming Good time to exit/additional selling
Blue Low Condition / Low Condition Both Possible bull/rebound setup Entry point/hedging
Light Purple Low Condition with Reversal / Low Condition Both with Reversal Early-stage rebound from downtrend Reliable bulls' flag formation
White High Condition with Reversal / High Condition Both with Reversal Peak overbought with imminent retracement Exit positions/warning
Understanding these color-coded signals can help traders make more informed decisions, whether for entry, exit, or risk management in trading strategies. Each set of colors provides distinct insights into market dynamics and trends, aiding in effective execution of trade plans.
Larry Williams: Market StructureLarry Williams' Three-Bar System of Highs and Lows: A Definition of Market Structure
Larry Williams developed a method of market structure analysis based on identifying local extrema using a sequence of three consecutive bars. This approach helps traders pinpoint significant turning points on the price chart.
Definition of Local Extrema:
Local High:
Consists of three bars where the middle bar has the highest high, while the lows of the bars on either side are lower than the low of the middle bar.
Local Low:
Consists of three bars where the middle bar has the lowest low, while the highs of the bars on either side are higher than the high of the middle bar.
This structure helps identify meaningful reversal points on the price chart.
Constructing the Zigzag Line:
Once the local highs and lows are determined, they are connected with lines to create a zigzag pattern.
This zigzag reflects the major price swings, filtering out minor fluctuations and market noise.
Medium-Term Market Structure:
By analyzing the sequence of local extrema, it is possible to determine the medium-term market trend:
Upward Structure: A sequence of higher highs and higher lows.
Downward Structure: A sequence of lower highs and lower lows.
Sideways Structure (Flat): Lack of a clear trend, where highs and lows remain approximately at the same level.
This method allows traders and analysts to better understand the current market phase and make informed trading decisions.
Built-in Indicator Feature:
The indicator includes a built-in functionality to display Intermediate Term Highs and Lows , which are defined by filtering short-term highs and lows as described in Larry Williams' methodology. This feature is enabled by default, ensuring traders can immediately visualize key levels for support, resistance, and trend assessment.
Quote from Larry Williams' Work on Intermediate Term Highs and Lows:
"Now, the most interesting part! Look, if we can identify a short-term high by defining it as a day with lower highs (excluding inside days) on both sides, we can take a giant leap forward and define an intermediate term high as any short-term high with lower short-term highs on both sides. But that’s not all, because we can take it even further and say that any intermediate term high with lower intermediate term highs on both sides—you see where I’m going—forms a long-term high.
For many years, I made a very good living simply by identifying these points as buy and sell signals. These points are the only valid support and resistance levels I’ve ever found. They are crucial, and the breach of these price levels provides important information about trend development and changes. Therefore, I use them for placing stop loss protection and entry methods into the market."
— Larry Williams
This insightful quote highlights the practical importance of identifying market highs and lows at different timeframes and underscores their role in effective trading strategies.
HOD/LOD/PMH/PML/PDH/PDL Strategy by @tradingbauhaus This script is a trading strategy @tradingbauhaus designed to trade based on key price levels, such as the High of Day (HOD), Low of Day (LOD), Premarket High (PMH), Premarket Low (PML), Previous Day High (PDH), and Previous Day Low (PDL). Below, I’ll explain in detail what the script does:
Core Functionality of the Script:
Calculates Key Price Levels:
HOD (High of Day): The highest price of the current day.
LOD (Low of Day): The lowest price of the current day.
PMH (Premarket High): The highest price during the premarket session (before the market opens).
PML (Premarket Low): The lowest price during the premarket session.
PDH (Previous Day High): The highest price of the previous day.
PDL (Previous Day Low): The lowest price of the previous day.
Draws Horizontal Lines on the Chart:
Plots horizontal lines on the chart for each key level (HOD, LOD, PMH, PML, PDH, PDL) with specific colors for easy visual identification.
Defines Entry and Exit Rules:
Long Entry (Buy): If the price crosses above the PMH (Premarket High) or the PDH (Previous Day High).
Short Entry (Sell): If the price crosses below the PML (Premarket Low) or the PDL (Previous Day Low).
Long Exit: If the price reaches the HOD (High of Day) during a long position.
Short Exit: If the price reaches the LOD (Low of Day) during a short position.
How the Script Works Step by Step:
Calculates Key Levels:
Uses the request.security function to fetch the HOD and LOD of the current day, as well as the highs and lows of the previous day (PDH and PDL).
Calculates the PMH and PML during the premarket session (before 9:30 AM).
Plots Levels on the Chart:
Uses the plot function to draw horizontal lines on the chart representing the key levels (HOD, LOD, PMH, PML, PDH, PDL).
Each level has a specific color for easy identification:
HOD: White.
LOD: Purple.
PDH: Orange.
PDL: Blue.
PMH: Green.
PML: Red.
Defines Trading Rules:
Uses conditions with ta.crossover and ta.crossunder to detect when the price crosses key levels.
Long Entry: If the price crosses above the PMH or PDH, a long position (buy) is opened.
Short Entry: If the price crosses below the PML or PDL, a short position (sell) is opened.
Long Exit: If the price reaches the HOD during a long position, the position is closed.
Short Exit: If the price reaches the LOD during a short position, the position is closed.
Executes Orders Automatically:
Uses the strategy.entry and strategy.close functions to open and close positions automatically based on the defined rules.
Advantages of This Strategy:
Based on Key Levels: Uses important price levels that often act as support and resistance.
Easy to Visualize: Horizontal lines on the chart make it easy to identify levels.
Automated: Entries and exits are executed automatically based on the defined rules.
Limitations of This Strategy:
Dependent on Volatility: Works best in markets with significant price movements.
False Crosses: There may be false crosses that generate incorrect signals.
No Advanced Risk Management: Does not include dynamic stop-loss or take-profit mechanisms.
How to Improve the Strategy:
Add Stop-Loss and Take-Profit: To limit losses and lock in profits.
Filter Signals with Indicators: Use RSI, MACD, or other indicators to confirm signals.
Optimize Levels: Adjust key levels based on the asset’s behavior.
In summary, this script is a trading strategy that operates based on key price levels, such as HOD, LOD, PMH, PML, PDH, and PDL. It is useful for traders who want to trade based on significant support and resistance levels.
CandleCandle: A Comprehensive Pine Script™ Library for Candlestick Analysis
Overview
The Candle library, developed in Pine Script™, provides traders and developers with a robust toolkit for analyzing candlestick data. By offering easy access to fundamental candlestick components like open, high, low, and close prices, along with advanced derived metrics such as body-to-wick ratios, percentage calculations, and volatility analysis, this library enables detailed insights into market behavior.
This library is ideal for creating custom indicators, trading strategies, and backtesting frameworks, making it a powerful resource for any Pine Script™ developer.
Key Features
1. Core Candlestick Data
• Open : Access the opening price of the current candle.
• High : Retrieve the highest price.
• Low : Retrieve the lowest price.
• Close : Access the closing price.
2. Candle Metrics
• Full Size : Calculates the total range of the candle (high - low).
• Body Size : Computes the size of the candle’s body (open - close).
• Wick Size : Provides the combined size of the upper and lower wicks.
3. Wick and Body Ratios
• Upper Wick Size and Lower Wick Size .
• Body-to-Wick Ratio and Wick-to-Body Ratio .
4. Percentage Calculations
• Upper Wick Percentage : The proportion of the upper wick size relative to the full candle size.
• Lower Wick Percentage : The proportion of the lower wick size relative to the full candle size.
• Body Percentage and Wick Percentage relative to the candle’s range.
5. Candle Direction Analysis
• Determines if a candle is "Bullish" or "Bearish" based on its closing and opening prices.
6. Price Metrics
• Average Price : The mean of the open, high, low, and close prices.
• Midpoint Price : The midpoint between the high and low prices.
7. Volatility Measurement
• Calculates the standard deviation of the OHLC prices, providing a volatility metric for the current candle.
Code Architecture
Example Functionality
The library employs a modular structure, exporting various functions that can be used independently or in combination. For instance:
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © DevArjun
//@version=6
indicator("Candle Data", overlay = true)
import DevArjun/Candle/1 as Candle
// Body Size %
bodySize = Candle.BodySize()
// Determining the candle direction
candleDirection = Candle.CandleDirection()
// Calculating the volatility of the current candle
volatility = Candle.Volatility()
// Plotting the metrics (for demonstration)
plot(bodySize, title="Body Size", color=color.blue)
label.new(bar_index, high, candleDirection, style=label.style_circle)
Scalability
The modularity of the Candle library allows seamless integration into more extensive trading systems. Functions can be mixed and matched to suit specific analytical or strategic needs.
Use Cases
Trading Strategies
Developers can use the library to create strategies based on candle properties such as:
• Identifying long-bodied candles (momentum signals).
• Detecting wicks as potential reversal zones.
• Filtering trades based on candle ratios.
Visualization
Plotting components like body size, wick size, and directional labels helps visualize market behavior and identify patterns.
Backtesting
By incorporating volatility and ratio metrics, traders can design and test strategies on historical data, ensuring robust performance before live trading.
Education
This library is a great tool for teaching candlestick analysis and how each component contributes to market behavior.
Portfolio Highlights
Project Objective
To create a Pine Script™ library that simplifies candlestick analysis by providing comprehensive metrics and insights, empowering traders and developers with advanced tools for market analysis.
Development Challenges and Solutions
• Challenge : Achieving high precision in calculating ratios and percentages.
• Solution : Implemented robust mathematical operations and safeguarded against division-by-zero errors.
• Challenge : Ensuring modularity and scalability.
• Solution : Designed functions as independent modules, allowing flexible integration.
Impact
• Efficiency : The library reduces the time required to calculate complex candlestick metrics.
• Versatility : Supports various trading styles, from scalping to swing trading.
• Clarity : Clean code and detailed documentation ensure usability for developers of all levels.
Conclusion
The Candle library exemplifies the power of Pine Script™ in simplifying and enhancing candlestick analysis. By including this project in your portfolio, you showcase your expertise in:
• Financial data analysis.
• Pine Script™ development.
• Creating tools that solve real-world trading challenges.
This project demonstrates both technical proficiency and a keen understanding of market analysis, making it an excellent addition to your professional portfolio.
Library "Candle"
A comprehensive library to access and analyze the basic components of a candlestick, including open, high, low, close prices, and various derived metrics such as full size, body size, wick sizes, ratios, percentages, and additional analysis metrics.
Open()
Open
@description Returns the opening price of the current candle.
Returns: float - The opening price of the current candle.
High()
High
@description Returns the highest price of the current candle.
Returns: float - The highest price of the current candle.
Low()
Low
@description Returns the lowest price of the current candle.
Returns: float - The lowest price of the current candle.
Close()
Close
@description Returns the closing price of the current candle.
Returns: float - The closing price of the current candle.
FullSize()
FullSize
@description Returns the full size (range) of the current candle (high - low).
Returns: float - The full size of the current candle.
BodySize()
BodySize
@description Returns the body size of the current candle (open - close).
Returns: float - The body size of the current candle.
WickSize()
WickSize
@description Returns the size of the wicks of the current candle (full size - body size).
Returns: float - The size of the wicks of the current candle.
UpperWickSize()
UpperWickSize
@description Returns the size of the upper wick of the current candle.
Returns: float - The size of the upper wick of the current candle.
LowerWickSize()
LowerWickSize
@description Returns the size of the lower wick of the current candle.
Returns: float - The size of the lower wick of the current candle.
BodyToWickRatio()
BodyToWickRatio
@description Returns the ratio of the body size to the wick size of the current candle.
Returns: float - The body to wick ratio of the current candle.
UpperWickPercentage()
UpperWickPercentage
@description Returns the percentage of the upper wick size relative to the full size of the current candle.
Returns: float - The percentage of the upper wick size relative to the full size of the current candle.
LowerWickPercentage()
LowerWickPercentage
@description Returns the percentage of the lower wick size relative to the full size of the current candle.
Returns: float - The percentage of the lower wick size relative to the full size of the current candle.
WickToBodyRatio()
WickToBodyRatio
@description Returns the ratio of the wick size to the body size of the current candle.
Returns: float - The wick to body ratio of the current candle.
BodyPercentage()
BodyPercentage
@description Returns the percentage of the body size relative to the full size of the current candle.
Returns: float - The percentage of the body size relative to the full size of the current candle.
WickPercentage()
WickPercentage
@description Returns the percentage of the wick size relative to the full size of the current candle.
Returns: float - The percentage of the wick size relative to the full size of the current candle.
CandleDirection()
CandleDirection
@description Returns the direction of the current candle.
Returns: string - "Bullish" if the candle is bullish, "Bearish" if the candle is bearish.
AveragePrice()
AveragePrice
@description Returns the average price of the current candle (mean of open, high, low, and close).
Returns: float - The average price of the current candle.
MidpointPrice()
MidpointPrice
@description Returns the midpoint price of the current candle (mean of high and low).
Returns: float - The midpoint price of the current candle.
Volatility()
Volatility
@description Returns the standard deviation of the OHLC prices of the current candle.
Returns: float - The volatility of the current candle.
Options Betting Range - Extended# Options Betting Range - Extended
**Options Betting Range - Extended** is a versatile TradingView indicator designed to assist traders in identifying and visualizing optimal options trading ranges for multiple symbols. By leveraging predefined prediction and execution dates along with specific high and low price points, this indicator dynamically draws trendlines to highlight potential options betting zones, enhancing your trading strategy and decision-making process.
## **Key Features**
- **Multi-Symbol Support:** Automatically adapts to popular symbols such as SPY, IWM, QQQ, DIA, TLT, and GOOG, providing tailored options betting ranges for each.
- **Dynamic Trendlines:** Draws both dashed and solid trendlines based on user-defined prediction and execution dates, clearly marking high and low price boundaries.
- **Customizable Parameters:** Easily configure prediction and execution dates, high and low prices, and timezones to suit your specific trading requirements.
- **Single Execution:** Ensures that each trendline is drawn only once per specified prediction date, preventing clutter and maintaining chart clarity.
- **Clear Visual Indicators:** Utilizes color-coded labels to denote high (green) and low (red) price points, making it easy to identify critical trading levels at a glance.
## **How It Works**
1. **Initialization:**
- Upon adding the indicator to your chart, it initializes with predefined symbols and their corresponding high and low price points for two trendlines each.
2. **Configuration:**
- **Trendline 1:**
- **Prediction Date:** Set the year, month, and day when the trendline should be predicted.
- **Execution Date:** Define the year, month, and day when the trendline will be executed.
- **Timezone:** Choose the appropriate timezone to ensure accurate date matching.
- **Trendline 2:**
- Similarly, configure the prediction and execution dates along with the timezone.
3. **Trendline Drawing:**
- On reaching the specified prediction date, the indicator draws dashed trendlines representing the high and low price ranges.
- Solid trendlines are then drawn to solidify the high and low price boundaries.
- Labels are added to clearly mark the high and low price points on the chart.
4. **Visualization:**
- The trendlines and labels provide a visual framework for potential options trading ranges, allowing traders to make informed decisions based on these predefined levels.
## **How to Use**
1. **Add the Indicator:**
- Open your TradingView chart and apply the **Options Betting Range - Extended** indicator.
2. **Select a Symbol:**
- Ensure that the chart is set to one of the supported symbols (e.g., SPY, IWM, QQQ, DIA, TLT, GOOG) to activate the corresponding trendline configurations.
3. **Configure Trendline Parameters:**
- Access the indicator settings to input your desired prediction and execution dates, high and low prices, and select the appropriate timezone for each trendline.
4. **Monitor Trendlines:**
- As the chart progresses to the specified prediction dates, observe the dynamically drawn trendlines and labels indicating the options betting ranges.
5. **Make Informed Trades:**
- Utilize the visual cues provided by the trendlines to identify optimal entry and exit points for your options trading strategies.
## **Benefits**
- **Enhanced Strategy Visualization:** Clearly outlines potential trading ranges, aiding in the formulation and execution of precise options strategies.
- **Time-Saving Automation:** Automatically draws trendlines based on your configurations, reducing the need for manual chart analysis.
- **Improved Decision-Making:** Provides objective price levels for trading, minimizing emotional bias and enhancing analytical precision.
## **Important Considerations**
- **Timezone Accuracy:** Ensure that the timezones selected in the indicator settings align with your chart's timezone to maintain accurate date matching.
- **Chart Timeframe:** The prediction dates should correspond to the timeframe of your chart (e.g., daily, hourly) to ensure that trendlines are triggered correctly.
- **Visible Price Range:** Verify that the high and low prices set for trendlines are within the visible range of your chart to ensure that all trendlines and labels are clearly visible.
## **Conclusion**
**Options Betting Range - Extended** is a powerful tool for traders seeking to automate and visualize their options trading ranges across multiple symbols. By providing clear, customizable trendlines based on specific prediction and execution dates, this indicator enhances your ability to identify and act upon strategic trading opportunities with confidence.
---
supertrendLibrary "supertrend"
supertrend : Library dedicated to different variations of supertrend
supertrend_atr(length, multiplier, atrMaType, source, highSource, lowSource, waitForClose, delayed)
supertrend_atr: Simple supertrend based on atr but also takes into consideration of custom MA Type, sources
Parameters:
length (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
delayed (simple bool) : : if set to true lags supertrend atr stop based on target levels.
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
supertrend_bands(bandType, maType, length, multiplier, source, highSource, lowSource, waitForClose, useTrueRange, useAlternateSource, alternateSource, sticky)
supertrend_bands: Simple supertrend based on atr but also takes into consideration of custom MA Type, sources
Parameters:
bandType (simple string) : : Type of band used - can be bb, kc or dc
maType (simple string) : : Moving Average type for Bands. This can be sma, ema, hma, rma, wma, vwma, swma
length (simple int) : : Band Length
multiplier (float) : : Std deviation or ATR multiplier for Bollinger Bands and Keltner Channel
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
useTrueRange (simple bool) : : Used for Keltner channel. If set to false, then high-low is used as range instead of true range
useAlternateSource (simple bool) : - Custom source is used for Donchian Chanbel only if useAlternateSource is set to true
alternateSource (float) : - Custom source for Donchian channel
sticky (simple bool) : : if set to true borders change only when price is beyond borders.
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
supertrend_zigzag(length, history, useAlternativeSource, alternativeSource, source, highSource, lowSource, waitForClose, atrlength, multiplier, atrMaType)
supertrend_zigzag: Zigzag pivot based supertrend
Parameters:
length (simple int) : : Zigzag Length
history (simple int) : : number of historical pivots to consider
useAlternativeSource (simple bool)
alternativeSource (float)
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
zupertrend(length, history, useAlternativeSource, alternativeSource, source, highSource, lowSource, waitForClose, atrlength, multiplier, atrMaType)
zupertrend: Zigzag pivot based supertrend
Parameters:
length (simple int) : : Zigzag Length
history (simple int) : : number of historical pivots to consider
useAlternativeSource (simple bool)
alternativeSource (float)
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
zsupertrend(zigzagpivots, history, source, highSource, lowSource, waitForClose, atrMaType, atrlength, multiplier)
zsupertrend: Same as zigzag supertrend. But, works on already calculated array rather than Calculating fresh zigzag
Parameters:
zigzagpivots (array) : : Precalculated zigzag pivots
history (simple int) : : number of historical pivots to consider
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
Price Action Dynamics Oscillator (PADO)1 minute ago
Price Action Dynamics Oscillator (PADO)
Indicator Overview and Technical Deep Dive
Concept and Philosophy
The Price Action Dynamics Oscillator (PADO) is a sophisticated technical analysis tool designed to provide multi-dimensional insights into market behavior by decomposing price action into manipulation and distribution metrics. The indicator goes beyond traditional momentum or trend indicators by introducing a nuanced approach to understanding market microstructure.
Key Architectural Components
1. Timeframe and Depth Selection
Pivot Depth Options:
Short Term (Length: 12 periods)
Intermediate Term (Length: 20 periods)
Long Term (Length: 100 periods)
This flexible configuration allows traders to adapt the indicator's sensitivity to different market conditions and trading styles.
2. Core Calculation Methodology
Manipulation Metrics
Calculates manipulation differently for green (bullish) and red (bearish) candles
Normalized against Average True Range (ATR) for consistent comparison across different volatility environments
Green Candle Manipulation: (Open - Low) / ATR
Red Candle Manipulation: (High - Open) / ATR
Distribution Metrics
Measures the directional strength and potential momentum shift
Green Candle Distribution: (Close - Open)
Red Candle Distribution: (Open - Close)
3. Normalization and Smoothing
Uses Simple Moving Average (SMA) for smoothing
Dynamic length calculation based on price range distance
Ensures minimum SMA length of 2 to prevent calculation errors
Unique Features
Visualization Toggles
Traders can selectively display:
Manipulation data
Distribution data
Long-term reference lines
Valuation metrics
Strategy signals
Valuation Comparative Analysis
Compares current manipulation and distribution metrics to 1000-bar long-term averages
Color-coded visualization for quick interpretation
Blue: Manipulation above average
Purple: Manipulation below average
Orange: Distribution above average
Yellow: Distribution below average
Strategy Deployment
Generates a composite strategy signal by comparing manipulation and distribution valuations
Uses Exponential Moving Average (EMA) for smoother signal generation
Incorporates volatility bands for context-aware signal interpretation
Quadrant Analysis
Classifies market state into four quadrants based on manipulation and distribution valuations:
Q1: Low Manipulation, High Distribution
Q2: High Manipulation, High Distribution
Q3: Low Manipulation, Low Distribution
Q4: High Manipulation, Low Distribution
Each quadrant is color-coded to provide visual market state representation.
Warning Signals
Manipulation Warning: When strategy crosses below low volatility band
Distribution Warning: When strategy crosses above high volatility band
Visual Indicators
Bar coloration based on strategy momentum
Multiple color states representing different market dynamics
Recommended Use Cases
Intraday and swing trading
Multi-timeframe market analysis
Volatility and momentum assessment
Trend reversal and continuation identification
Potential Limitations
Complexity might require significant trader education
Performance can vary across different market conditions
Requires careful parameter optimization
Recommended Settings
Best used on liquid markets with clear price action
Ideal for:
Forex
Futures
Large-cap stocks
Cryptocurrency pairs
Customization and Optimization
Traders should:
Backtest across multiple assets
Adjust timeframe settings
Calibrate visualization toggles
Use in conjunction with other technical indicators
Licensing
Mozilla Public License 2.0
Open-source and modification-friendly
Conclusion
The PADO represents an advanced approach to market analysis, blending traditional technical analysis with innovative metrics for deeper market understanding.
PADO Quadrant Color Analysis: Deep Dive
Quadrant Color Scheme Breakdown
Quadrant 1: Lime Green Background (RGB: 0, 255, 21, 90)
Condition: val_manip < 1 AND val_distr > 1
Market Interpretation:
Low Manipulation Pressure
High Distribution Activity
Potential Scenario:
Smart money might be gradually distributing positions
Trading Implications:
Caution for current trend followers
Potential preparation for trend change
Increased probability of consolidation or reversal
Quadrant 2: Bright Blue Background (RGB: 0, 191, 255, 90)
Condition: val_manip > 1 AND val_distr > 1
Market Interpretation:
High Manipulation Pressure
High Distribution Activity
Potential Scenario:
Strong institutional involvement
Potential market transition phase
Significant volume and momentum
Trading Implications:
High volatility expected
Increased market uncertainty
Potential for sharp price movements
Requires careful risk management
Quadrant 3: Light Gray Background (RGB: 252, 252, 252, 90)
Condition: val_manip < 1 AND val_distr < 1
Market Interpretation:
Low Manipulation Pressure
Low Distribution Activity
Potential Scenario:
Market consolidation
Reduced institutional activity
Potential low-volatility period
Trading Implications:
Range-bound market
Reduced trading opportunities
Potential setup for future breakout
Ideal for mean reversion strategies
Quadrant 4: Light Yellow Background (Hex: #f6ff0019)
Condition: val_manip > 1 AND val_distr < 1
Market Interpretation:
High Manipulation Pressure
Low Distribution Activity
Potential Scenario:
Accumulation of positions
Trading Implications:
Increased probability of directional move soon
Color Psychology and Technical Significance
Color Selection Rationale
Lime Green (Q1): Represents potential growth and transition
Bright Blue (Q2): Signifies high energy and institutional activity
Light Gray (Q3): Indicates neutrality and consolidation
Transparent Green (Q4): Suggests emerging trend potential
Advanced Interpretation Guidelines
Color Transition Analysis
Observe how the quadrant colors change
Rapid color shifts might indicate:
Market regime changes
Shifts in institutional sentiment
Potential trend acceleration or reversal
Technical Implementation Notes
Calculation Snippet
pinescriptCopyq1 = (val_manip < 1) and (val_distr > 1)
q2 = (val_manip > 1) and (val_distr > 1)
q3 = (val_manip < 1) and (val_distr < 1)
q4 = (val_manip > 1) and (val_distr < 1)
bgcolor(q1 ? color.rgb(0, 255, 21, 90):
q2 ? color.rgb(0, 191, 255, 90):
q3 ? color.rgb(252, 252, 252, 90):
q4 ? #f6ff0019:na)
Alpha Channel (Transparency)
90 and 0x19 values ensure background color doesn't overwhelm chart
Allows underlying price action to remain visible
Subtle visual cue without significant chart obstruction
Practical Trading Recommendations
Never Trade Solely on Quadrant Colors
Use as a complementary analysis tool
Combine with other technical and fundamental indicators
Timeframe Considerations
Validate quadrant signals across multiple timeframes
Longer timeframes provide more reliable signals
Risk Management
Set appropriate stop-loss levels
Use position sizing strategies
Be prepared for false signals
Recommended Workflow
Identify current quadrant
Assess overall market context
Confirm with other indicators
Execute with proper risk management
Mean Price
^^ Plotting switched to Line.
This method of financial time series (aka bars) downsampling is literally, naturally, and thankfully the best you can do in terms of maximizing info gain. You can finally chill and feed it to your studies & eyes, and probably use nothing else anymore.
(HL2 and occ3 also have use cases, but other aggregation methods? Not really, even if they do, the use cases are ‘very’ specific). Tho in order to understand why, you gotta read the following wall, or just believe me telling you, ‘I put it on my momma’.
The true story about trading volumes and why this is all a big misdirection
Actually, you don’t need to be a quant to get there. All you gotta do is stop blindly following other people’s contextual (at best) solutions, eg OC2 aggregation xD, and start using your own brain to figure things out.
Every individual trade (basically an imprint on 1D price space that emerges when market orders hit the order book) has several features like: price, time, volume, AND direction (Up if a market buy order hits the asks, Down if a market sell order hits the bids). Now, the last two features—volume and direction—can be effectively combined into one (by multiplying volume by 1 or -1), and this is probably how every order matching engine should output data. If we’re not considering size/direction, we’re leaving data behind. Moreover, trades aren’t just one-price dots all the time. One trade can consume liquidity on several levels of the order book, so a single trade can be several ticks big on the price axis.
You may think now that there are no zero-volume ticks. Well, yes and no. It depends on how you design an exchange and whether you allow intra-spread trades/mid-spread trades (now try to Google it). Intra-spread trades could happen if implemented when a matching engine receives both buy and sell orders at the same microsecond period. This way, you can match the orders with each other at a better price for both parties without even hitting the book and consuming liquidity. Also, if orders have different sizes, the remaining part of the bigger order can be sent to the order book. Basically, this type of trade can be treated as an OTC trade, having zero volume because we never actually hit the book—there’s no imprint. Another reason why it makes sense is when we think about volume as an impact or imbalance act, and how the medium (order book in our case) responds to it, providing information. OTC and mid-spread trades are not aggressive sells or buys; they’re neutral ticks, so to say. However huge they are, sometimes many blocks on NYSE, they don’t move the price because there’s no impact on the medium (again, which is the order book)—they’re not providing information.
... Now, we need to aggregate these trades into, let’s say, 1-hour bars (remember that a trade can have either positive or negative volume). We either don’t want to do it, or we don’t have this kind of information. What we can do is take already aggregated OHLC bars and extract all the info from them. Given the market is fractal, bars & trades gotta have the same set of features:
- Highest & lowest ticks (high & low) <- by price;
- First & last ticks (open & close) <- by time;
- Biggest and smallest ticks <- by volume.*
*e.g., in the array ,
2323: biggest trade,
-1212: smallest trade.
Now, in our world, somehow nobody started to care about the biggest and smallest trades and their inclusion in OHLC data, while this is actually natural. It’s the same way as it’s done with high & low and open & close: we choose the minimum and maximum value of a given feature/axis within the aggregation period.
So, we don’t have these 2 values: biggest and smallest ticks. The best we can do is infer them, and given the fact the biggest and smallest ticks can be located with the same probability everywhere, all we can do is predict them in the middle of the bar, both in time and price axes. That’s why you can see two HL2’s in each of the 3 formulas in the code.
So, summed up absolute volumes that you see in almost every trading platform are actually just a derivative metric, something that I call Type 2 time series in my own (proprietary ‘for now’) methods. It doesn’t have much to do with market orders hitting the non-uniform medium (aka order book); it’s more like a statistic. Still wanna use VWAP? Ok, but you gotta understand you’re weighting Type 1 (natural) time series by Type 2 (synthetic) ones.
How to combine all the data in the right way (khmm khhm ‘order’)
Now, since we have 6 values for each bar, let’s see what information we have about them, what we don’t have, and what we can do about it:
- Open and close: we got both when and where (time (order) and price);
- High and low: we got where, but we don’t know when;
- Biggest & smallest trades: we know shit, we infer it the way it was described before.'
By using the location of the close & open prices relative to the high & low prices, we can make educated guesses about whether high or low was made first in a given bar. It’s not perfect, but it’s ultimately all we can do—this is the very last bit of info we can extract from the data we have.
There are 2 methods for inferring volume delta (which I call simply volume) that are presented everywhere, even here on TradingView. Funny thing is, this is actually 2 parts of the 1 method. I wonder how many folks see through it xD. The same method can be used for both inferring volume delta AND making educated guesses whether high or low was made first.
Imagine and/or find the cases on your charts to understand faster:
* Close > open means we have an up bar and probably the volume is positive, and probably high was made later than low.
* Close < open means we have a down bar and probably the volume is negative, and probably low was made later than high.
Now that’s the point when you see that these 2 mentioned methods are actually parts of the 1 method:
If close = open, we still have another clue: distance from open/close pair to high (HC), and distance from open/close pair to low (LC):
* HC < LC, probably high was made later.
* HC > LC, probably low was made later.
And only if close = open and HC = LC, only in this case we have no clue whether high or low was made earlier within a bar. We simply don’t have any more information to even guess. This bar is called a neutral bar.
At this point, we have both time (order) and price info for each of our 6 values. Now, we have to solve another weighted average problem, and that’s it. We’ll weight prices according to the order we’ve guessed. In the neutral bar case, open has a weight of 1, close has a weight of 3, and both high and low have weights of 2 since we can’t infer which one was made first. In all cases, biggest and smallest ticks are modeled with HL2 and weighted like they’re located in the middle of the bar in a time sense.
P.S.: I’ve also included a "robust" method where all the bars are treated like neutral ones. I’ve used it before; obviously, it has lesser info gain -> works a bit worse.
First 15-Min Candle Detector [With Breakout Alerts]Indicator: First 15-Minute Candle Detector
Purpose
This indicator helps traders by identifying and marking the high, low, and mid-point of the first 15-minute candle of the market session. It also provides visual aids and alerts for price breakouts above or below these levels, making it ideal for intraday trading strategies.
This script is suitable for traders focusing on early session momentum or reversal strategies.
Key Features
Market Start Customization: Configure the market start time (hour and minute) to align with your trading session or exchange timezone.
Visual Aids:
Horizontal lines to mark the High , Low , and Mid-point of the first 15-minute candle.
Background highlighting to identify the first 15-minute candle.
Configurable colors and line widths for clear visuals.
Breakout Alerts:
Real-time alerts for breakouts above the high or below the low of the first 15-minute candle.
Customizable alert messages.
Alerts configured using alertcondition .
Dynamic Adjustments:
Adapts dynamically to timeframes of 15 minutes or lower.
Resets and recalculates at the start of each new session.
Inputs and Configurations
Market Settings:
Market Start Hour: Default is 9.
Market Start Minute: Default is 30.
Visual Settings:
Enable/disable background highlighting.
Set colors for the background, high line, low line, and mid-line.
Adjust line width (1 to 5).
Toggle the visibility of the mid-line.
Alert Settings:
Enable breakout alerts.
Set custom alert messages for high and low breakouts.
How It Works
// First 15-Minute Candle Detection
The indicator monitors the first 15-minute candle after the market opens based on the configured start time. It records the high , low , and calculates the mid-point of this candle.
// Visual Markings
Horizontal lines are drawn at the high, low, and mid-point of the first 15-minute candle, extending to the right for the rest of the session.
// Breakout Detection
The indicator checks for price breakouts above the high or below the low of the first 15-minute candle and triggers alerts if enabled.
// Dynamic Reset
The indicator resets values and deletes previous session lines at the start of each new session.
Conditions and Alerts
Breakout Conditions:
High Breakout: The closing price exceeds the high of the first 15-minute candle.
Low Breakout: The closing price falls below the low of the first 15-minute candle.
Alert Triggers: Configurable alerts notify you of breakouts in real-time.
Use Cases
Intraday Traders: Ideal for early-session momentum or reversal strategies.
Breakout Traders: Helps identify entry points when price breaks key levels.
Visual Clarity: Simplifies tracking important session levels.
Limitations
Works only on 15-minute or lower timeframes.
Requires accurate market start time configuration.