Digital Clock with Market Status and AlertsDigital Clock with Market Status and Alerts - 日本語解説は下記
Overview:
The Digital Clock with Market Status and Alerts indicator is designed to display the current time in various global time zones while also providing the status of major financial markets such as Tokyo, London, and New York. This indicator helps traders monitor the open and close times of different markets and alerts them when a market opens. Customizable options are provided for table positioning, background, text colors, and font size.
Key Features:
Real-Time Digital Clock: The indicator shows the current time in your selected time zone (Asia/Tokyo, America/New_York, Europe/London, Australia/Sydney). The time updates in real-time and includes hours, minutes, and seconds, providing a convenient and accurate way to monitor time across different trading sessions.
Global Market Status: Displays the open or closed status of major financial markets.
・Tokyo Market: Open from 9:00 AM to 3:00 PM (JST).
・London Market: Open from 16:00 to 24:00 during summer time and from 17:00 to 1:00 during winter time (JST).
・New York Market: Open from 21:00 to 5:00 during summer time and from 22:00 to 6:00 during winter time (JST).
Customizable Display:
・Background Color: The indicator allows you to set the background color for the clock display, while the leftmost empty cell can be independently customized with its own background color for table alignment.
・Clock and Market Status Colors: Separate color options are available for the clock text, market status during open, and market status during closed periods.
・Text Size: You can adjust the size of the text (small, normal, large) to fit your preferences.
・Table Position: You can position the digital clock and market status table in different locations on the chart: top left, top center, top right, bottom left, bottom center, and bottom right.
Alerts for Market Opening: The indicator will trigger alerts when a market (Tokyo, London, or New York) opens, notifying traders in real-time. This can help ensure that you don't miss any important market openings.
How to Use:
Setup:
Apply the Indicator: Add the Digital Clock with Market Status and Alerts indicator to your chart. Customize the time zone, text size, background colors, and table position based on your preferences.
Monitor Market Status: Watch the market status displayed for Tokyo, London, and New York to keep track of market openings and closings in real-time.
Receive Alerts: The indicator provides built-in alerts for market openings, helping you stay informed when a key market opens for trading.
Time Monitoring:
・Real-Time Clock: The current time is displayed with hours, minutes, and seconds for accurate tracking. The clock updates every second and reflects the selected time zone.
・Global Time Zones: Choose your desired time zone (Tokyo, New York, London, Sydney) to monitor the time most relevant to your trading strategy.
Market Status:
・Tokyo Market: The status will display "Tokyo OPEN" when the Tokyo market is active, and "Tokyo CLOSED" when it is outside of trading hours.
・London Market: Similarly, the indicator will show "London OPEN" or "London CLOSED" depending on whether the London market is currently active.
・New York Market: The New York market status follows the same structure, showing "NY OPEN" or "NY CLOSED."
Customization:
・Table Positioning: Easily move the table to the desired location on the chart to avoid overlap with other chart elements. The leftmost empty cell helps with alignment.
・Text and Background Color: Adjust the text and background colors to suit your personal preferences. You can also set independent colors for open and closed market statuses to easily distinguish between them.
Cautions and Disclaimer:
・Indicator Modifications: This indicator may be updated without prior notice, which could change or remove certain features.
・Trade Responsibility: This indicator is a tool to assist your trading, but responsibility for all trades remains with you. No guarantee of profit or success is implied, and losses can occur. Use it alongside your own analysis and strategy.
Digital Clock with Market Status and Alerts - 解説と使い方
概要:
Digital Clock with Market Status and Alerts インジケーターは、さまざまな世界のタイムゾーンで現在の時刻を表示し、東京、ロンドン、ニューヨークなどの主要な金融市場のステータスを提供します。このインジケーターにより、複数の市場のオープンおよびクローズ時間をリアルタイムで監視でき、市場がオープンする際にアラートを受け取ることができます。テーブルの位置、背景色、テキストカラー、フォントサイズなどのカスタマイズが可能です。
主な機能:
リアルタイムデジタル時計: 選択したタイムゾーン(東京、ニューヨーク、ロンドン、シドニー)の現在時刻を表示します。リアルタイムで更新され、時間、分、秒を正確に表示します。
世界の市場ステータス: 主要な金融市場のオープン/クローズ状況を表示します。
・東京市場: 午前9時~午後3時(日本時間)。
・ロンドン市場: 夏時間では16時~24時、冬時間では17時~1時(日本時間)。
・ニューヨーク市場: 夏時間では21時~5時、冬時間では22時~6時(日本時間)。
カスタマイズ可能な表示設定:
・背景色: 時計表示の背景色を設定できます。また、テーブルの左側に空白のセルを配置し、独立した背景色を設定することでテーブルの配置調整が可能です。
・時計と市場ステータスの色: 時計テキスト、オープン市場、クローズ市場の色を個別に設定できます。
・テキストサイズ: 小、標準、大から選択し、テキストサイズをカスタマイズ可能です。
・テーブル位置: デジタル時計と市場ステータスのテーブルをチャートのさまざまな場所(左上、中央上、右上、左下、中央下、右下)に配置できます。
市場オープン時のアラート: 市場(東京、ロンドン、ニューヨーク)がオープンするときにアラートを発し、リアルタイムで通知されます。これにより、重要な市場のオープン時間を逃さないようサポートします。
使い方:
セットアップ:
インジケーターを適用: チャートに「Digital Clock with Market Status and Alerts」インジケーターを追加し、タイムゾーン、テキストサイズ、背景色、テーブル位置を好みに応じてカスタマイズします。
市場ステータスを確認: 東京、ロンドン、ニューヨークの市場ステータスをリアルタイムで表示し、オープン/クローズ時間を把握できます。
アラートを受け取る: 市場オープン時のアラート機能により、重要な市場のオープンを見逃さないように通知が届きます。
時間管理:
・リアルタイム時計: 現在の時刻が秒単位で表示され、選択したタイムゾーンに基づいて正確に追跡できます。
・グローバルタイムゾーン: 東京、ニューヨーク、ロンドン、シドニーなど、トレードに関連するタイムゾーンを選択して監視できます。
市場ステータス:
・東京市場: 東京市場が開いていると「Tokyo OPEN」と表示され、閉じている場合は「Tokyo CLOSED」と表示されます。
・ロンドン市場: 同様に、「London OPEN」または「London CLOSED」が表示され、ロンドン市場のステータスを確認できます。
・ニューヨーク市場: ニューヨーク市場も「NY OPEN」または「NY CLOSED」で現在の状況が表示されます。
カスタマイズ:
・テーブル位置の調整: テーブルの位置を簡単に調整し、チャート上の他の要素と重ならないように配置できます。左側の空白セルで位置調整が可能です。
・テキストと背景色のカスタマイズ: テキストと背景の色を自分の好みに合わせて調整できます。また、オープン時とクローズ時の市場ステータスを区別するため、独立した色設定が可能です。
注意事項と免責事項:
・インジケーターの変更: このインジケーターは、予告なく変更や機能の削除が行われる場合があります。
・トレード責任: このインジケーターはトレードをサポートするツールであり、トレードに関する全責任はご自身にあります。利益を保証するものではなく、損失が発生する可能性があります。自分の分析や戦略と組み合わせて使用してください。
Cari skrip untuk "text"
High-Low of X BarOverview
The High-Low of X Bar indicator allows traders to visualize historical high and low values from a specific number of bars ago directly on the chart.
Provides insight into past price action by displaying high, low, and their difference at the most recent bar.
Customizable inputs and color settings for labels enhance usability and visual integration with your chart.
Key Features
Historical Data Analysis: Displays the high, low, and the difference between these values from a specified number of bars ago.
Customizable Inputs: Set the number of bars ago to review historical price points, with a range from 1 to 2000 bars. Premium users can exceed this range.
Dynamic Labeling: Option to show high, low, and difference values as labels on the chart, with customizable text and background colors.
Color Customization: Customize label colors for high, low, and difference values, as well as for cases with insufficient bars.
Inputs
Number of Bars Ago: Enter the number of bars back from the current bar to analyze historical high and low values.
Show High Value: Toggle to display the historical high value.
Show Low Value: Toggle to display the historical low value.
Show Difference Value: Toggle to display the difference between high and low values.
Color Settings
High Label Background Color: Set the background color of the high value label.
High Label Text Color: Choose the text color for the high value label.
Low Label Background Color: Set the background color of the low value label.
Low Label Text Color: Choose the text color for the low value label.
Difference Label Background Color: Set the background color of the difference label.
Difference Label Text Color: Choose the text color for the difference label.
Not Enough Bars Label Background Color: Set the background color for the label shown when there are insufficient bars.
Not Enough Bars Label Text Color: Choose the text color for the insufficient bars label.
Usage Instructions
Add to Chart: Apply the High-Low of X Bar indicator to your TradingView chart.
Configure Settings: Adjust the number of bars ago and display options according to your analysis needs.
Customize Appearance: Set the colors for the labels to match your chart's style.
Analyze: Review the high, low, and their difference directly on your chart for immediate insights into past price movements.
Notes
Ensure your chart has sufficient historical data for the indicator to function properly.
Customize label visibility and colors based on your preference and trading strategy.
WaveTrend With Divs & RSI(STOCH) Divs by WeloTradesWaveTrend with Divergences & RSI(STOCH) Divergences by WeloTrades
Overview
The "WaveTrend With Divergences & RSI(STOCH) Divergences" is an advanced Pine Script™ indicator designed for TradingView, offering a multi-dimensional analysis of market conditions. This script integrates several technical indicators—WaveTrend, Money Flow Index (MFI), RSI, and Stochastic RSI—into a cohesive tool that identifies both regular and hidden divergences across these indicators. These divergences can indicate potential market reversals and provide critical trading opportunities.
This indicator is not just a simple combination of popular tools; it offers extensive customization options, organized data presentation, and valuable trading signals that are easy to interpret. Whether you're a day trader or a long-term investor, this script enhances your ability to make informed decisions.
Originality and Usefulness
The originality of this script lies in its integration and the synergy it creates among the indicators used. Rather than merely combining multiple indicators, this script allows them to work together, enhancing each other's strengths. For example, by identifying divergences across WaveTrend, RSI, and Stochastic RSI simultaneously, the script provides multiple layers of confirmation, which reduces the likelihood of false signals and increases the reliability of trading signals.
The usefulness of this script is apparent in its ability to offer a consolidated view of market dynamics. It not only simplifies the analytical process by combining different indicators but also provides deeper insights through its divergence detection features. This comprehensive approach is designed to help traders identify potential market reversals, confirm trends, and ultimately make more informed trading decisions.
How the Components Work Together
1. Cross-Validation of Signals
WaveTrend: This indicator is primarily used to identify overbought and oversold conditions, as well as potential buy and sell signals. WaveTrend's ability to smooth price data and reduce noise makes it a reliable tool for identifying trend reversals.
RSI & Stochastic RSI: These momentum oscillators are used to measure the speed and change of price movements. While RSI identifies general overbought and oversold conditions, Stochastic RSI offers a more granular view by tracking the RSI’s level relative to its high-low range over a period of time. When these indicators align with WaveTrend signals, it adds a layer of confirmation that enhances the reliability of the signals.
Money Flow Index (MFI): This volume-weighted indicator assesses the inflow and outflow of money in an asset, giving insights into buying and selling pressure. By analyzing the MFI alongside WaveTrend and RSI indicators, the script can cross-validate signals, ensuring that buy or sell signals are supported by actual market volume.
Example Bullish scenario:
When a bullish divergence is detected on the RSI and confirmed by a corresponding bullish signal on the WaveTrend, along with an increasing Money Flow Index, the probability of a successful trade setup increases. This cross-validation minimizes the risk of acting on false signals, which might occur when relying on a single indicator.
Example Bearish scenario:
When a bearish divergence is detected on the RSI and confirmed by a corresponding bearish signal on the WaveTrend, along with an decreasing Money Flow Index, the probability of a successful trade setup increases. This cross-validation minimizes the risk of acting on false signals, which might occur when relying on a single indicator.
2. Divergence Detection and Market Reversals
Regular Divergences: Occur when the price action and an indicator (like RSI or WaveTrend) move in opposite directions. Regular bullish divergence signals a potential upward reversal when the price makes a lower low while the indicator makes a higher low. Conversely, regular bearish divergence suggests a downward reversal when the price makes a higher high, but the indicator makes a lower high.
Hidden Divergences: These occur when the price action and indicator move in the same direction, but with different momentum. Hidden bullish divergence suggests the continuation of an uptrend, while hidden bearish divergence suggests the continuation of a downtrend. By detecting these divergences across multiple indicators, the script identifies potential trend reversals or continuations with greater accuracy.
Example: The script might detect a regular bullish divergence on the WaveTrend while simultaneously identifying a hidden bullish divergence on the RSI. This combination suggests that while a trend reversal is possible, the overall market sentiment remains bullish, providing a nuanced view of the market.
A Regular Bullish Divergence Example:
A Hidden Bullish Divergence Example:
A Regular Bearish Divergence Example:
A Hidden Bearish Divergence Example:
3. Trend Strength and Sentiment Analysis
WaveTrend: Measures the strength and direction of the trend. By identifying the extremes of market sentiment (overbought and oversold levels), WaveTrend provides early signals for potential reversals.
Money Flow Index (MFI): Assesses the underlying sentiment by analyzing the flow of money. A rising MFI during an uptrend confirms strong buying pressure, while a falling MFI during a downtrend confirms selling pressure. This helps traders assess whether a trend is likely to continue or reverse.
RSI & Stochastic RSI: Offer a momentum-based perspective on the trend’s strength. High RSI or Stochastic RSI values indicate that the asset may be overbought, suggesting a potential reversal. Conversely, low values indicate oversold conditions, signaling a possible upward reversal.
Example:
During a strong uptrend, the WaveTrend & RSI's might signal overbought conditions, suggesting caution. If the MFI also shows decreasing buying pressure and the RSI reaches extreme levels, these indicators together suggest that the trend might be weakening, and a reversal could be imminent.
Example:
During a strong downtrend, the WaveTrend & RSI's might signal oversold conditions, suggesting caution. If the MFI also shows increasing buying pressure and the RSI reaches extreme levels, these indicators together suggest that the trend might be weakening, and a reversal could be imminent.
Conclusion
The "WaveTrend With Divergences & RSI(STOCH) Divergences" script offers a powerful, integrated approach to technical analysis by combining trend, momentum, and sentiment indicators into a single tool. Its unique value lies in the cross-validation of signals, the ability to detect divergences, and the comprehensive view it provides of market conditions. By offering traders multiple layers of analysis and customization options, this script is designed to enhance trading decisions, reduce false signals, and provide clearer insights into market dynamics.
WAVETREND
Display of WaveTrend:
Display of WaveTrend Setting:
WaveTrend Indicator Explanation
The WaveTrend indicator helps identify overbought and oversold conditions, as well as potential buy and sell signals. Its flexibility allows traders to adapt it to various strategies, making it a versatile tool in technical analysis.
WaveTrend Input Settings:
WT MA Source: Default: HLC3
What it is: The data source used for calculating the WaveTrend Moving Average.
What it does: Determines the input data to smooth price action and filter noise.
Example: Using HLC3 (average of High, Low, Close) provides a smoother data representation compared to using just the closing price.
Length (WT MA Length): Default: 3
What it is: The period used to calculate the Moving Average.
What it does: Adjusts the sensitivity of the WaveTrend indicator, where shorter lengths respond more quickly to price changes.
Example: A length of 3 is ideal for short-term analysis, providing quick reactions to price movements.
WT Channel Length & Average: Default: WT Channel Length = 9, Average = 12
What it is: Lengths used to calculate the WaveTrend channel and its average.
What it does: Smooths out the WaveTrend further, reducing false signals by averaging over a set period.
Example: Higher values reduce noise and help in identifying more reliable trends.
Channel: Style, Width, and Color:
What it is: Customization options for the WaveTrend channel's appearance.
What it does: Adjusts how the channel is displayed, including line style, width, and color.
Example: Choosing an area style with a distinct color can make the WaveTrend indicator clearly visible on the chart.
WT Buy & Sell Signals:
What it is: Settings to enable and customize buy and sell signals based on WaveTrend.
What it does: Allows for the display of buy/sell signals and customization of their shapes and colors.
When it gives a Buy Signal: Generated when the WaveTrend line crosses below an oversold level and then rises back, indicating a potential upward price movement.
When it gives a Sell Signal: Triggered when the WaveTrend line crosses above an overbought level and then declines, suggesting a possible downward trend.
Example: The script identifies these signals based on mean reversion principles, where prices tend to revert to the mean after reaching extremes. Traders can use these signals to time their entries and exits effectively.
WAVETREND OVERBOUGTH AND OVERSOLD LEVELS
Display of WaveTrend with Overbought & Oversold Levels:
Display of WaveTrend Overbought & Oversold Levels Settings:
WaveTrend Overbought & Oversold Levels Explanation
WT OB & OS Levels: Default: OB Level 1 = 53, OB Level 2 = 60, OS Level 1 = -53, OS Level 2 = -60
What it is: The default overbought and oversold levels used by the WaveTrend indicator to signal potential market reversals.
What it does: When the WaveTrend crosses above the OB levels, it indicates an overbought condition, potentially signaling a reversal or selling opportunity. Conversely, when it crosses below the OS levels, it indicates an oversold condition, potentially signaling a reversal or buying opportunity.
Example: A trader might use these levels to time entry or exit points, such as selling when the WaveTrend crosses into the overbought zone or buying when it crosses into the oversold zone.
Show OB/OS Levels: Default: True
What it is: Toggle options to show or hide the overbought and oversold levels on your chart.
What it does: When enabled, these levels will be visually represented on your chart, helping you to easily identify when the market reaches these critical thresholds.
Example: Displaying these levels can help you quickly see when the WaveTrend is approaching or has crossed into overbought or oversold territory, allowing for more informed trading decisions.
Line Style, Width, and Color for OB/OS Levels:
What it is: Options to customize the appearance of the OB and OS levels on your chart, including line style (solid, dotted, dashed), line width, and color.
What it does: These settings allow you to adjust how prominently these levels are displayed on your chart, which can help you better visualize and respond to overbought or oversold conditions.
Example: Setting a thicker, dashed line in a contrasting color can make these levels stand out more clearly, aiding in quick visual identification.
Example of Use:
Scenario: A trader wants to identify potential selling points when the market is overbought. They set the OB levels at 53 and 60, choosing a solid, red line style to make these levels clear on their chart. As the WaveTrend crosses above 53, they monitor for further price action, and upon crossing 60, they consider initiating a sell order.
WAVETREND DIVERGENCES
Display of WaveTrend Divergence:
Display of WaveTrend Divergence Setting:
WaveTrend Divergence Indicator Explanation
The WaveTrend Divergence feature helps identify potential reversal points in the market by highlighting divergences between the price and the WaveTrend indicator. Divergences can signal a shift in market momentum, indicating a possible trend reversal. This component allows traders to visualize and customize divergence detection on their charts.
WaveTrend Divergence Input Settings:
Potential Reversal Range: Default: 28
What it is: The number of bars to look back when detecting potential tops and bottoms.
What it does: Sets the range for identifying possible reversal points based on historical data.
Example: A setting of 28 looks back across the last 28 bars to find reversal points, offering a balance between responsiveness and reliability.
Reversal Minimum LVL OB & OS: Default: OB = 35, OS = -35
What it is: The minimum overbought and oversold levels required for detecting potential reversals.
What it does: Adjusts the thresholds that trigger a reversal signal based on the WaveTrend indicator.
Example: A higher OB level reduces the sensitivity to overbought conditions, potentially filtering out false reversal signals.
Lookback Bar Left & Right: Default: Left = 10, Right = 1
What it is: The number of bars to the left and right used to confirm a top or bottom.
What it does: Helps determine the position of peaks and troughs in the price action.
Example: A larger left lookback captures more extended price action before the peak, while a smaller right lookback focuses on the immediate past.
Lookback Range Min & Max: Default: Min = 5, Max = 60
What it is: The minimum and maximum range for the lookback period when identifying divergences.
What it does: Fine-tunes the detection of divergences by controlling the range over which the indicator looks back.
Example: A wider range increases the chances of detecting divergences across different market conditions.
R.Div Minimum LVL OB & OS: Default: OB = 53, OS = -53
What it is: The threshold levels for detecting regular divergences.
What it does: Adjusts the sensitivity of the regular divergence detection.
Example: Higher thresholds make the detection more conservative, identifying only stronger divergence signals.
H.Div Minimum LVL OB & OS: Default: OB = 20, OS = -20
What it is: The threshold levels for detecting hidden divergences.
What it does: Similar to regular divergence settings but for hidden divergences, which can indicate potential reversals that are less obvious.
Example: Lower thresholds make the hidden divergence detection more sensitive, capturing subtler market shifts.
Divergence Label Options:
What it is: Options to display and customize labels for regular and hidden divergences.
What it does: Allows users to visually differentiate between regular and hidden divergences using customizable labels and colors.
Example: Using different colors and symbols for regular (R) and hidden (H) divergences makes it easier to interpret signals on the chart.
Text Size and Color:
What it is: Customization options for the size and color of divergence labels.
What it does: Adjusts the readability and visibility of divergence labels on the chart.
Example: Larger text size may be preferred for charts with a lot of data, ensuring divergence labels stand out clearly.
FAST & SLOW MONEY FLOW INDEX
Display of Fast & Slow Money Flow:
Display of Fast & Slow Money Flow Setting:
Fast Money Flow Indicator Explanation
The Fast Money Flow indicator helps traders identify the flow of money into and out of an asset over a shorter time frame. By tracking the volume-weighted average of price movements, it provides insights into buying and selling pressure in the market, which can be crucial for making timely trading decisions.
Fast Money Flow Input Settings:
Fast Money Flow: Length: Default: 9
What it is: The period used for calculating the Fast Money Flow.
What it does: Determines the sensitivity of the Money Flow calculation. A shorter length makes the indicator more responsive to recent price changes, while a longer length provides a smoother signal.
Example: A length of 9 is suitable for traders looking to capture quick shifts in market sentiment over a short period.
Fast MFI Area Multiplier: Default: 5
What it is: A multiplier applied to the Money Flow area calculation.
What it does: Adjusts the size of the Money Flow area on the chart, effectively amplifying or reducing the visual impact of the indicator.
Example: A higher multiplier can make the Money Flow more prominent on the chart, aiding in the quick identification of significant money flow changes.
Y Position (Y Pos): Default: 0
What it is: The vertical position adjustment for the Fast Money Flow plot on the chart.
What it does: Allows you to move the Money Flow plot up or down on the chart to avoid overlap with other indicators.
Example: Adjusting the Y Position can be useful if you have multiple indicators on the chart and need to maintain clarity.
Fast MFI Style, Width, and Color:
What it is: Customization options for how the Fast Money Flow is displayed on the chart.
What it does: Enables you to choose between different plot styles (line or area), set the line width, and select colors for positive and negative money flow.
Example: Using different colors for positive (green) and negative (red) money flow helps to visually distinguish between periods of buying and selling pressure.
Slow Money Flow Indicator Explanation
The Slow Money Flow indicator tracks the flow of money into and out of an asset over a longer time frame. It provides a broader perspective on market sentiment, smoothing out short-term fluctuations and highlighting longer-term trends.
Slow Money Flow Input Settings:
Slow Money Flow: Length: Default: 12
What it is: The period used for calculating the Slow Money Flow.
What it does: A longer period smooths out short-term fluctuations, providing a clearer view of the overall money flow trend.
Example: A length of 12 is often used by traders looking to identify sustained trends rather than short-term volatility.
Slow MFI Area Multiplier: Default: 5
What it is: A multiplier applied to the Slow Money Flow area calculation.
What it does: Adjusts the size of the Money Flow area on the chart, helping to emphasize the indicator’s significance.
Example: Increasing the multiplier can help highlight the Money Flow in markets with less volatile price action.
Y Position (Y Pos): Default: 0
What it is: The vertical position adjustment for the Slow Money Flow plot on the chart.
What it does: Allows for vertical repositioning of the Money Flow plot to maintain chart clarity when used with other indicators.
Example: Adjusting the Y Position ensures that the Slow Money Flow indicator does not overlap with other key indicators on the chart.
Slow MFI Style, Width, and Color:
What it is: Customization options for the visual display of the Slow Money Flow on the chart.
What it does: Allows you to choose the plot style (line or area), set the line width, and select colors to differentiate positive and negative money flow.
Example: Customizing the colors for the Slow Money Flow allows traders to quickly distinguish between buying and selling trends in the market.
RSI
Display of RSI:
Display of RSI Setting:
RSI Indicator Explanation
The Relative Strength Index (RSI) is a momentum oscillator that measures the speed and change of price movements. It is typically used to identify overbought or oversold conditions in the market, providing traders with potential signals for buying or selling.
RSI Input Settings:
RSI Source: Default: Close
What it is: The data source used for calculating the RSI.
What it does: Determines which price data (e.g., close, open) is used in the RSI calculation, affecting how the indicator reflects market conditions.
Example: Using the closing price is standard practice, as it reflects the final agreed-upon price for a given time period.
MA Type (Moving Average Type): Default: SMA
What it is: The type of moving average applied to the RSI for smoothing purposes.
What it does: Changes the smoothing technique of the RSI, impacting how quickly the indicator responds to price movements.
Example: Using an Exponential Moving Average (EMA) will make the RSI more sensitive to recent price changes compared to a Simple Moving Average (SMA).
RSI Length: Default: 14
What it is: The period over which the RSI is calculated.
What it does: Adjusts the sensitivity of the RSI. A shorter length (e.g., 7) makes the RSI more responsive to recent price changes, while a longer length (e.g., 21) smooths out the indicator, reducing the number of signals.
Example: A 14-period RSI is commonly used for identifying overbought and oversold conditions, providing a balance between sensitivity and reliability.
RSI Plot Style, Width, and Color:
What it is: Options to customize the appearance of the RSI line on the chart.
What it does: Allows you to adjust the visual representation of the RSI, including the line width and color.
Example: Setting a thicker line width and a bright color like yellow can make the RSI more visible on the chart, aiding in quick analysis.
Display of RSI with RSI Moving Average:
RSI Moving Average Explanation
The RSI Moving Average adds a smoothing layer to the RSI, helping to filter out noise and provide clearer signals. It is particularly useful for confirming trend strength and identifying potential reversals.
RSI Moving Average Input Settings:
MA Length: Default: 14
What it is: The period over which the Moving Average is calculated on the RSI.
What it does: Adjusts the smoothing of the RSI, helping to reduce false signals and provide a clearer trend indication.
Example: A 14-period moving average on the RSI can smooth out short-term fluctuations, making it easier to spot genuine overbought or oversold conditions.
MA Plot Style, Width, and Color:
What it is: Customization options for how the RSI Moving Average is displayed on the chart.
What it does: Allows you to adjust the line width and color, helping to differentiate the Moving Average from the main RSI line.
Example: Using a contrasting color for the RSI Moving Average (e.g., magenta) can help it stand out against the main RSI line, making it easier to interpret the indicator.
STOCHASTIC RSI
Display of Stochastic RSI:
Display of Stochastic RSI Setting:
Stochastic RSI Indicator Explanation
The Stochastic RSI (Stoch RSI) is a momentum oscillator that measures the level of the RSI relative to its high-low range over a set period of time. It is used to identify overbought and oversold conditions, providing potential buy and sell signals based on momentum shifts.
Stochastic RSI Input Settings:
Stochastic RSI Length: Default: 14
What it is: The period over which the Stochastic RSI is calculated.
What it does: Adjusts the sensitivity of the Stochastic RSI. A shorter length makes the indicator more responsive to recent price changes, while a longer length smooths out the fluctuations, reducing noise.
Example: A length of 14 is commonly used to identify momentum shifts over a medium-term period, providing a balanced view of potential overbought or oversold conditions.
Display of Stochastic RSI %K Line:
Stochastic RSI %K Line Explanation
The %K line in the Stochastic RSI is the main line that tracks the momentum of the RSI over the chosen period. It is the faster-moving component of the Stochastic RSI, often used to identify entry and exit points.
Stochastic RSI %K Input Settings:
%K Length: Default: 3
What it is: The period used for smoothing the %K line of the Stochastic RSI.
What it does: Smoothing the %K line helps reduce noise and provides a clearer signal for potential market reversals.
Example: A smoothing length of 3 is common, offering a balance between responsiveness and noise reduction, making it easier to spot significant momentum shifts.
%K Plot Style, Width, and Color:
What it is: Customization options for the visual representation of the %K line.
What it does: Allows you to adjust the appearance of the %K line on the chart, including line width and color, to fit your visual preferences.
Example: Setting a blue color and a medium width for the %K line makes it stand out clearly on the chart, helping to identify key points of momentum change.
%K Fill Color (Above):
What it is: The fill color that appears above the %K line on the chart.
What it does: Adds visual clarity by shading the area above the %K line, making it easier to interpret the direction and strength of momentum.
Example: Using a light blue fill color above the %K line can help emphasize bullish momentum, making it visually prominent.
Display of Stochastic RSI %D Line:
Stochastic RSI %D Line Explanation
The %D line in the Stochastic RSI is a moving average of the %K line and acts as a signal line. It is slower-moving compared to the %K line and is often used to confirm signals or identify potential reversals when it crosses the %K line.
Stochastic RSI %D Input Settings:
%D Length: Default: 3
What it is: The period used for smoothing the %D line of the Stochastic RSI.
What it does: Smooths out the %D line, making it less sensitive to short-term fluctuations and more reliable for identifying significant market signals.
Example: A length of 3 is often used to provide a smoothed signal line that can help confirm trends or reversals indicated by the %K line.
%D Plot Style, Width, and Color:
What it is: Customization options for the visual representation of the %D line.
What it does: Allows you to adjust the appearance of the %D line on the chart, including line width and color, to match your preferences.
Example: Setting an orange color and a thicker line width for the %D line can help differentiate it from the %K line, making crossover points easier to spot.
%D Fill Color (Below):
What it is: The fill color that appears below the %D line on the chart.
What it does: Adds visual clarity by shading the area below the %D line, making it easier to interpret bearish momentum.
Example: Using a light orange fill color below the %D line can highlight bearish conditions, making it visually easier to identify.
RSI & STOCHASTIC RSI OVERBOUGHT AND OVERSOLD LEVELS
Display of RSI & Stochastic with Overbought & Oversold Levels:
Display of RSI & Stochastic Overbought & Oversold Settings:
RSI & Stochastic Overbought & Oversold Levels Explanation
The Overbought (OB) and Oversold (OS) levels for RSI and Stochastic RSI indicators are key thresholds that help traders identify potential reversal points in the market. These levels are used to determine when an asset is likely overbought or oversold, which can signal a potential trend reversal.
RSI & Stochastic Overbought & Oversold Input Settings:
RSI & Stochastic Level 1 Overbought (OB) & Oversold (OS): Default: OB Level = 170, OS Level = 130
What it is: The first set of thresholds for determining overbought and oversold conditions for both RSI and Stochastic RSI indicators.
What it does: When the RSI or Stochastic RSI crosses above the overbought level, it suggests that the asset might be overbought, potentially signaling a sell opportunity. Conversely, when these indicators drop below the oversold level, it suggests the asset might be oversold, potentially signaling a buy opportunity.
Example: If the RSI crosses above 170, traders might look for signs of a potential trend reversal to the downside, while a cross below 130 might indicate a reversal to the upside.
RSI & Stochastic Level 2 Overbought (OB) & Oversold (OS): Default: OB Level = 180, OS Level = 120
What it is: The second set of thresholds for determining overbought and oversold conditions for both RSI and Stochastic RSI indicators.
What it does: These levels provide an additional set of reference points, allowing traders to differentiate between varying degrees of overbought and oversold conditions, potentially leading to more refined trading decisions.
Example: When the RSI crosses above 180, it might indicate an extreme overbought condition, which could be a stronger signal for a sell, while a cross below 120 might indicate an extreme oversold condition, which could be a stronger signal for a buy.
RSI & Stochastic Overbought (OB) Band Customization:
OB Level 1: Width, Style, and Color:
What it is: Customization options for the visual appearance of the first overbought band on the chart.
What it does: Allows you to set the line width, style (solid, dotted, dashed), and color for the first overbought band, enhancing its visibility on the chart.
Example: A dashed red line with medium width can clearly indicate the first overbought level, helping traders quickly identify when this threshold is crossed.
OB Level 2: Width, Style, and Color:
What it is: Customization options for the visual appearance of the second overbought band on the chart.
What it does: Allows you to set the line width, style, and color for the second overbought band, providing a clear distinction from the first band.
Example: A dashed red line with a slightly thicker width can represent a more significant overbought level, making it easier to differentiate from the first level.
RSI & Stochastic Oversold (OS) Band Customization:
OS Level 1: Width, Style, and Color:
What it is: Customization options for the visual appearance of the first oversold band on the chart.
What it does: Allows you to set the line width, style (solid, dotted, dashed), and color for the first oversold band, making it visually prominent.
Example: A dashed green line with medium width can highlight the first oversold level, helping traders identify potential buying opportunities.
OS Level 2: Width, Style, and Color:
What it is: Customization options for the visual appearance of the second oversold band on the chart.
What it does: Allows you to set the line width, style, and color for the second oversold band, providing an additional visual cue for extreme oversold conditions.
Example: A dashed green line with a thicker width can represent a more significant oversold level, offering a stronger visual cue for potential buying opportunities.
RSI DIVERGENCES
Display of RSI Divergence Labels:
Display of RSI Divergence Settings:
RSI Divergence Lookback Explanation
The RSI Divergence settings allow traders to customize the parameters for detecting divergences between the RSI (Relative Strength Index) and price action. Divergences occur when the price moves in the opposite direction to the RSI, potentially signaling a trend reversal. These settings help refine the accuracy of divergence detection by adjusting the lookback period and range. ( NOTE: This setting only imply to the RSI. This doesn't effect the STOCHASTIC RSI. )
RSI Divergence Lookback Input Settings:
Lookback Left: Default: 10
What it is: The number of bars to look back from the current bar to detect a potential divergence.
What it does: Defines the left-side lookback period for identifying pivot points in the RSI, which are used to spot divergences. A longer lookback period may capture more significant trends but could also miss shorter-term divergences.
Example: A setting of 10 bars means the script will consider pivot points up to 10 bars before the current bar to check for divergence patterns.
Lookback Right: Default: 1
What it is: The number of bars to look forward from the current bar to complete the divergence pattern.
What it does: Defines the right-side lookback period for confirming a potential divergence. This setting helps ensure that the identified divergence is valid by allowing the script to check subsequent bars for confirmation.
Example: A setting of 1 bar means the script will look at the next bar to confirm the divergence pattern, ensuring that the signal is reliable.
Lookback Range Min: Default: 5
What it is: The minimum range of bars required to detect a valid divergence.
What it does: Sets a lower bound on the range of bars considered for divergence detection. A lower minimum range might capture more frequent but possibly less significant divergences.
Example: Setting the minimum range to 5 ensures that only divergences spanning at least 5 bars are considered, filtering out very short-term patterns.
Lookback Range Max: Default: 60
What it is: The maximum range of bars within which a divergence can be detected.
What it does: Sets an upper bound on the range of bars considered for divergence detection. A larger maximum range might capture more significant divergences but could also include less relevant long-term patterns.
Example: Setting the maximum range to 60 bars allows the script to detect divergences over a longer timeframe, capturing more extended divergence patterns that could indicate major trend reversals.
RSI Divergence Explanation
RSI divergences occur when the RSI indicator and price action move in opposite directions, signaling potential trend reversals. This section of the settings allows traders to customize the appearance and detection of both regular and hidden bullish and bearish divergences.
RSI Divergence Input Settings:
R. Bullish Div Label: Default: True
What it is: An option to display labels for regular bullish divergences.
What it does: Enables or disables the visibility of labels that mark regular bullish divergences, where the price makes a lower low while the RSI makes a higher low, indicating a potential upward reversal.
Example: A trader might use this to spot buying opportunities in a downtrend when a bullish divergence suggests the trend may be reversing.
Bullish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of regular bullish divergence labels.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: Selecting a green label color and a distinct line width makes bullish divergences easily recognizable on your chart.
R. Bearish Div Label: Default: True
What it is: An option to display labels for regular bearish divergences.
What it does: Enables or disables the visibility of labels that mark regular bearish divergences, where the price makes a higher high while the RSI makes a lower high, indicating a potential downward reversal.
Example: A trader might use this to spot selling opportunities in an uptrend when a bearish divergence suggests the trend may be reversing.
Bearish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of regular bearish divergence labels.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: Choosing a red label color and a specific line width makes bearish divergences clearly stand out on your chart.
H. Bullish Div Label: Default: False
What it is: An option to display labels for hidden bullish divergences.
What it does: Enables or disables the visibility of labels that mark hidden bullish divergences, where the price makes a higher low while the RSI makes a lower low, indicating potential continuation of an uptrend.
Example: A trader might use this to confirm an existing uptrend when a hidden bullish divergence signals continued buying strength.
Hidden Bullish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of hidden bullish divergence labels.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: A softer green color with a thinner line width might be chosen to subtly indicate hidden bullish divergences, keeping the chart clean while providing useful information.
H. Bearish Div Label: Default: False
What it is: An option to display labels for hidden bearish divergences.
What it does: Enables or disables the visibility of labels that mark hidden bearish divergences, where the price makes a lower high while the RSI makes a higher high, indicating potential continuation of a downtrend.
Example: A trader might use this to confirm an existing downtrend when a hidden bearish divergence signals continued selling pressure.
Hidden Bearish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of hidden bearish divergence labels.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: A muted red color with a thinner line width might be selected to indicate hidden bearish divergences without overwhelming the chart.
Divergence Text Size and Color: Default: S (Small)
What it is: Settings to adjust the size and color of text labels for RSI divergences.
What it does: Allows you to customize the size and color of text labels that display the divergence information on the chart.
Example: Choosing a small text size with a bright white color can make divergence labels easily readable without taking up too much space on the chart.
STOCHASTIC DIVERGENCES
Display of Stochastic RSI Divergence Labels:
Display of Stochastic RSI Divergence Settings:
Stochastic RSI Divergence Explanation
Stochastic RSI divergences occur when the Stochastic RSI indicator and price action move in opposite directions, signaling potential trend reversals. These settings allow traders to customize the detection and visual representation of both regular and hidden bullish and bearish divergences in the Stochastic RSI.
Stochastic RSI Divergence Input Settings:
R. Bullish Div Label: Default: True
What it is: An option to display labels for regular bullish divergences in the Stochastic RSI.
What it does: Enables or disables the visibility of labels that mark regular bullish divergences, where the price makes a lower low while the Stochastic RSI makes a higher low, indicating a potential upward reversal.
Example: A trader might use this to spot buying opportunities in a downtrend when a bullish divergence in the Stochastic RSI suggests the trend may be reversing.
Bullish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of regular bullish divergence labels in the Stochastic RSI.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: Selecting a blue label color and a distinct line width makes bullish divergences in the Stochastic RSI easily recognizable on your chart.
R. Bearish Div Label: Default: True
What it is: An option to display labels for regular bearish divergences in the Stochastic RSI.
What it does: Enables or disables the visibility of labels that mark regular bearish divergences, where the price makes a higher high while the Stochastic RSI makes a lower high, indicating a potential downward reversal.
Example: A trader might use this to spot selling opportunities in an uptrend when a bearish divergence in the Stochastic RSI suggests the trend may be reversing.
Bearish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of regular bearish divergence labels in the Stochastic RSI.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: Choosing an orange label color and a specific line width makes bearish divergences in the Stochastic RSI clearly stand out on your chart.
H. Bullish Div Label: Default: False
What it is: An option to display labels for hidden bullish divergences in the Stochastic RSI.
What it does: Enables or disables the visibility of labels that mark hidden bullish divergences, where the price makes a higher low while the Stochastic RSI makes a lower low, indicating potential continuation of an uptrend.
Example: A trader might use this to confirm an existing uptrend when a hidden bullish divergence in the Stochastic RSI signals continued buying strength.
Hidden Bullish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of hidden bullish divergence labels in the Stochastic RSI.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: A softer blue color with a thinner line width might be chosen to subtly indicate hidden bullish divergences, keeping the chart clean while providing useful information.
H. Bearish Div Label: Default: False
What it is: An option to display labels for hidden bearish divergences in the Stochastic RSI.
What it does: Enables or disables the visibility of labels that mark hidden bearish divergences, where the price makes a lower high while the Stochastic RSI makes a higher high, indicating potential continuation of a downtrend.
Example: A trader might use this to confirm an existing downtrend when a hidden bearish divergence in the Stochastic RSI signals continued selling pressure.
Hidden Bearish Label Color, Line Width, and Line Color:
What it is: Settings to customize the appearance of hidden bearish divergence labels in the Stochastic RSI.
What it does: Allows you to choose the color of the labels, adjust the width of the divergence lines, and select the color for these lines.
Example: A muted orange color with a thinner line width might be selected to indicate hidden bearish divergences without overwhelming the chart.
Divergence Text Size and Color: Default: S (Small)
What it is: Settings to adjust the size and color of text labels for Stochastic RSI divergences.
What it does: Allows you to customize the size and color of text labels that display the divergence information on the chart.
Example: Choosing a small text size with a bright white color can make divergence labels easily readable without taking up too much space on the chart.
Alert System:
Custom Alerts for Divergences and Reversals:
What it is: The script includes customizable alert conditions to notify you of detected divergences or potential reversals based on WaveTrend, RSI, and Stochastic RSI.
What it does: Helps you stay informed of key market movements without constantly monitoring the charts, enabling timely decisions.
Example: Setting an alert for regular bearish divergence on the WaveTrend could notify you of a potential sell opportunity as soon as it is detected.
How to Use Alerts:
Set up custom alerts in TradingView based on these conditions to be notified of potential trading opportunities. Alerts are triggered when the indicator detects conditions that match the selected criteria, such as divergences or potential reversals.
By following the detailed guidelines and examples above, you can effectively use and customize this powerful indicator to suit your trading strategy.
For further understanding and customization, refer to the input settings within the script and adjust them to match your trading style and preferences.
How Components Work Together
Synergy and Cross-Validation: The indicator combines multiple layers of analysis to validate trading signals. For example, a WaveTrend buy signal that coincides with a bullish divergence in RSI and positive fast money flow is likely to be more reliable than any single indicator’s signal. This cross-validation reduces the likelihood of false signals and enhances decision-making.
Comprehensive Market Analysis: Each component plays a role in analyzing different aspects of the market. WaveTrend focuses on trend strength, Money Flow indicators assess market sentiment, while RSI and Stochastic RSI offer detailed views of price momentum and potential reversals.
Ideal For
Traders who require a reliable, multifaceted tool for detecting market trends and reversals.
Investors seeking a deeper understanding of market dynamics across different timeframes and conditions, whether in forex, equities, or cryptocurrency markets.
This script is designed to provide a comprehensive tool for technical analysis, combining multiple indicators and divergence detection into one versatile and customizable script. It is especially useful for traders who want to monitor various indicators simultaneously and look for convergence or divergence signals across different technical tools.
Acknowledgements
Special thanks to these amazing creators for inspiration and their creations:
I want to thank these amazing creators for creating there amazing indicators , that inspired me and also gave me a head start by making this indicator! Without their amazing indicators it wouldn't be possible!
vumanchu: VuManChu Cipher B Divergences.
MisterMoTa: RSI + Divergences + Alerts .
DevLucem: Plain Stochastic Divergence.
Note
This indicator is designed to be a powerful tool in your trading arsenal. However , it is essential to backtest and adjust the settings according to your trading strategy before applying it to live trading . If you have any questions or need further assistance, feel free to reach out.
Position Size Calculator for ContractDescription:
Position Size Calculator is a versatile Pine Script tool designed to help traders manage their risk and position sizing effectively. This script calculates essential trading metrics and visualizes them directly on your chart, helping you make informed trading decisions.
Features:
- Account Size & Risk Management:
- Account Size: Input your total account balance to calculate position sizes.
- Maximum Risk: Define how much of your account you are willing to risk per trade in dollars.
- Pip Value: Set the value of a single pip for one contract, which is crucial for calculating risk
and position size.
Trade Setup Visualization:
- Entry Price: Specify the price at which you plan to enter the trade.
- Stop Loss: Define your stop loss level to manage your risk.
- Take Profit: Set your target profit level for the trade.
- Visualize the Entry, Stop Loss, and Take Profit levels on your chart with customizable line
colors and text sizes.
- View the distance in pips between the Entry, Stop Loss, and Take Profit levels.
Position Size Calculation:
- Calculates the number of contracts to open based on your risk tolerance and the pip value.
- Displays the maximum number of contracts you can open given your risk parameters.
Customizable Table Display:
- Table Position: Choose the position of the summary table on the chart (Top-Left, Top-Right,
Bottom-Left, Bottom-Right, etc.).
- Table Text Size: Adjust the text size for the summary table.
- Table Background Color: Set the background color for the summary table.
- Table Border Color: Customize the border color of the summary table.
How to Use:
1- Input your Account Size: Enter your current account balance.
2- Set Maximum Risk and Pip Value: Define how much you're willing to risk per trade and the
pip value for your contract.
3- Define Trade Levels: Input your desired Entry Price, Stop Loss, and Take Profit levels.
4- Customize Visuals: Adjust the line styles and table settings to fit your preferences.
5- View Calculations: The script will display the distance in pips and the calculated position
size directly on your chart.
Example Usage:
Example to calculate the value of 1 pips with 1 contract:
Inputs:
Account Size: Your total trading account balance.
Maximum Risk: Risk amount per trade in dollars.
Pip Value: Value of one pip for a single contract.
Entry Price: The price at which you plan to enter the trade.
Stop Loss: The level at which you will exit the trade to cut losses.
Take Profit: The target price to lock in profits.
Line Text Size: Size of the text for the Entry, Stop Loss, and Take Profit lines.
Line Extend: Option to extend the lines for visual clarity.
Table Position: Position of the summary table on the chart.
Table Text Size: Size of the text in the summary table.
Table Background Color: Background color of the summary table.
Table Border Color: Border color of the summary table.
Visuals:
Entry Price, Stop Loss, and Take Profit levels are clearly marked on the chart.
Summary Table with important trade metrics displayed.
CPR by MTThe CPR indicator, or Central Pivot Range indicator, is a technical analysis tool used in trading to identify potential support and resistance levels based on the price action of a security. Developed by pivot point theory, it is particularly popular among day traders and swing traders. The CPR indicator consists of three lines:
1. **Pivot Point (PP):** This is the central line and is calculated as the average of the high, low, and closing prices from the previous trading period.
\
2. **Top Central Pivot (TC):** This is calculated by subtracting the low from the PP and then adding the result to the PP.
\
3. **Bottom Central Pivot (BC):** This is calculated by subtracting the high from the PP and then adding the result to the PP.
\
### How to Use the CPR Indicator
- **Trend Identification:** A wide CPR range indicates low volatility and a potential sideways or consolidation phase. A narrow CPR range indicates high volatility and a potential strong trending move.
- **Support and Resistance:** The top and bottom central pivots act as immediate resistance and support levels. If the price is above the TC, it indicates a bullish sentiment, while if it is below the BC, it indicates a bearish sentiment.
- **Entry and Exit Points:** Traders use the CPR lines to determine optimal entry and exit points. For example, if the price breaks above the TC and sustains, it may signal a buy opportunity, whereas a drop below the BC may signal a sell opportunity.
### Practical Example
Suppose a stock had a high of $105, a low of $95, and a closing price of $100 on the previous day. The CPR levels for the next day would be calculated as follows:
1. **Pivot Point (PP):**
\
2. **Top Central Pivot (TC):**
\
3. **Bottom Central Pivot (BC):**
\
The levels for the next day would be PP = $100, TC = $110, and BC = $90. Traders would then use these levels to assess potential trading strategies based on where the price moves relative to these levels.
### Conclusion
The CPR indicator is a useful tool for traders looking to understand market conditions and make informed decisions about entry and exit points. Its effectiveness comes from its ability to highlight key price levels derived from historical price data, helping traders predict potential market movements.
TRADINGLibrary "TRADING"
This library is a client script for making a webhook signal formatted string to PoABOT server.
entry_message(password, percent, leverage, margin_mode, kis_number)
Create a entry message for POABOT
Parameters:
password (string) : (string) The password of your bot.
percent (float) : (float) The percent for entry based on your wallet balance.
leverage (int) : (int) The leverage of entry. If not set, your levereage doesn't change.
margin_mode (string) : (string) The margin mode for trade(only for OKX). "cross" or "isolated"
kis_number (int) : (int) The number of koreainvestment account. Default 1
Returns: (string) A json formatted string for webhook message.
order_message(password, percent, leverage, margin_mode, kis_number)
Create a order message for POABOT
Parameters:
password (string) : (string) The password of your bot.
percent (float) : (float) The percent for entry based on your wallet balance.
leverage (int) : (int) The leverage of entry. If not set, your levereage doesn't change.
margin_mode (string) : (string) The margin mode for trade(only for OKX). "cross" or "isolated"
kis_number (int) : (int) The number of koreainvestment account. Default 1
Returns: (string) A json formatted string for webhook message.
close_message(password, percent, margin_mode, kis_number)
Create a close message for POABOT
Parameters:
password (string) : (string) The password of your bot.
percent (float) : (float) The percent for close based on your wallet balance.
margin_mode (string) : (string) The margin mode for trade(only for OKX). "cross" or "isolated"
kis_number (int) : (int) The number of koreainvestment account. Default 1
Returns: (string) A json formatted string for webhook message.
exit_message(password, percent, margin_mode, kis_number)
Create a exit message for POABOT
Parameters:
password (string) : (string) The password of your bot.
percent (float) : (float) The percent for exit based on your wallet balance.
margin_mode (string) : (string) The margin mode for trade(only for OKX). "cross" or "isolated"
kis_number (int) : (int) The number of koreainvestment account. Default 1
Returns: (string) A json formatted string for webhook message.
manual_message(password, exchange, base, quote, side, qty, price, percent, leverage, margin_mode, kis_number, order_name)
Create a manual message for POABOT
Parameters:
password (string) : (string) The password of your bot.
exchange (string) : (string) The exchange
base (string) : (string) The base
quote (string) : (string) The quote of order message
side (string) : (string) The side of order messsage
qty (float) : (float) The qty of order message
price (float) : (float) The price of order message
percent (float) : (float) The percent for order based on your wallet balance.
leverage (int) : (int) The leverage of entry. If not set, your levereage doesn't change.
margin_mode (string) : (string) The margin mode for trade(only for OKX). "cross" or "isolated"
kis_number (int) : (int) The number of koreainvestment account.
order_name (string) : (string) The name of order message
Returns: (string) A json formatted string for webhook message.
in_trade(start_time, end_time, hide_trade_line)
Create a trade start line
Parameters:
start_time (int) : (int) The start of time.
end_time (int) : (int) The end of time.
hide_trade_line (bool) : (bool) if true, hide trade line. Default false.
Returns: (bool) Get bool for trade based on time range.
real_qty(qty, precision, leverage, contract_size, default_qty_type, default_qty_value)
Get exchange specific real qty
Parameters:
qty (float) : (float) qty
precision (float) : (float) precision
leverage (int) : (int) leverage
contract_size (float) : (float) contract_size
default_qty_type (string)
default_qty_value (float)
Returns: (float) exchange specific qty.
method set(this, password, start_time, end_time, leverage, initial_capital, default_qty_type, default_qty_value, margin_mode, contract_size, kis_number, entry_percent, close_percent, exit_percent, fixed_qty, fixed_cash, real, auto_alert_message, hide_trade_line)
Set bot object.
Namespace types: bot
Parameters:
this (bot)
password (string) : (string) password for poabot.
start_time (int) : (int) start_time timestamp.
end_time (int) : (int) end_time timestamp.
leverage (int) : (int) leverage.
initial_capital (float)
default_qty_type (string)
default_qty_value (float)
margin_mode (string) : (string) The margin mode for trade(only for OKX). "cross" or "isolated"
contract_size (float)
kis_number (int) : (int) kis_number for poabot.
entry_percent (float) : (float) entry_percent for poabot.
close_percent (float) : (float) close_percent for poabot.
exit_percent (float) : (float) exit_percent for poabot.
fixed_qty (float) : (float) fixed qty.
fixed_cash (float) : (float) fixed cash.
real (bool) : (bool) convert qty for exchange specific.
auto_alert_message (bool) : (bool) convert alert_message for exchange specific.
hide_trade_line (bool) : (bool) if true, Hide trade line. Default false.
Returns: (void)
method print(this, message)
Print message using log table.
Namespace types: bot
Parameters:
this (bot)
message (string)
Returns: (void)
method start_trade(this)
start trade using start_time and end_time
Namespace types: bot
Parameters:
this (bot)
Returns: (void)
method entry(this, id, direction, qty, limit, stop, oca_name, oca_type, comment, alert_message, when)
It is a command to enter market position. If an order with the same ID is already pending, it is possible to modify the order. If there is no order with the specified ID, a new order is placed. To deactivate an entry order, the command strategy.cancel or strategy.cancel_all should be used. In comparison to the function strategy.order, the function strategy.entry is affected by pyramiding and it can reverse market position correctly. If both 'limit' and 'stop' parameters are 'NaN', the order type is market order.
Namespace types: bot
Parameters:
this (bot)
id (string) : (string) A required parameter. The order identifier. It is possible to cancel or modify an order by referencing its identifier.
direction (string) : (string) A required parameter. Market position direction: 'strategy.long' is for long, 'strategy.short' is for short.
qty (float) : (float) An optional parameter. Number of contracts/shares/lots/units to trade. The default value is 'NaN'.
limit (float) : (float) An optional parameter. Limit price of the order. If it is specified, the order type is either 'limit', or 'stop-limit'. 'NaN' should be specified for any other order type.
stop (float) : (float) An optional parameter. Stop price of the order. If it is specified, the order type is either 'stop', or 'stop-limit'. 'NaN' should be specified for any other order type.
oca_name (string) : (string) An optional parameter. Name of the OCA group the order belongs to. If the order should not belong to any particular OCA group, there should be an empty string.
oca_type (string) : (string) An optional parameter. Type of the OCA group. The allowed values are: "strategy.oca.none" - the order should not belong to any particular OCA group; "strategy.oca.cancel" - the order should belong to an OCA group, where as soon as an order is filled, all other orders of the same group are cancelled; "strategy.oca.reduce" - the order should belong to an OCA group, where if X number of contracts of an order is filled, number of contracts for each other order of the same OCA group is decreased by X.
comment (string) : (string) An optional parameter. Additional notes on the order.
alert_message (string) : (string) An optional parameter which replaces the {{strategy.order.alert_message}} placeholder when it is used in the "Create Alert" dialog box's "Message" field.
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
method order(this, id, direction, qty, limit, stop, oca_name, oca_type, comment, alert_message, when)
It is a command to place order. If an order with the same ID is already pending, it is possible to modify the order. If there is no order with the specified ID, a new order is placed. To deactivate order, the command strategy.cancel or strategy.cancel_all should be used. In comparison to the function strategy.entry, the function strategy.order is not affected by pyramiding. If both 'limit' and 'stop' parameters are 'NaN', the order type is market order.
Namespace types: bot
Parameters:
this (bot)
id (string) : (string) A required parameter. The order identifier. It is possible to cancel or modify an order by referencing its identifier.
direction (string) : (string) A required parameter. Market position direction: 'strategy.long' is for long, 'strategy.short' is for short.
qty (float) : (float) An optional parameter. Number of contracts/shares/lots/units to trade. The default value is 'NaN'.
limit (float) : (float) An optional parameter. Limit price of the order. If it is specified, the order type is either 'limit', or 'stop-limit'. 'NaN' should be specified for any other order type.
stop (float) : (float) An optional parameter. Stop price of the order. If it is specified, the order type is either 'stop', or 'stop-limit'. 'NaN' should be specified for any other order type.
oca_name (string) : (string) An optional parameter. Name of the OCA group the order belongs to. If the order should not belong to any particular OCA group, there should be an empty string.
oca_type (string) : (string) An optional parameter. Type of the OCA group. The allowed values are: "strategy.oca.none" - the order should not belong to any particular OCA group; "strategy.oca.cancel" - the order should belong to an OCA group, where as soon as an order is filled, all other orders of the same group are cancelled; "strategy.oca.reduce" - the order should belong to an OCA group, where if X number of contracts of an order is filled, number of contracts for each other order of the same OCA group is decreased by X.
comment (string) : (string) An optional parameter. Additional notes on the order.
alert_message (string) : (string) An optional parameter which replaces the {{strategy.order.alert_message}} placeholder when it is used in the "Create Alert" dialog box's "Message" field.
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
method close_all(this, comment, alert_message, immediately, when)
Exits the current market position, making it flat.
Namespace types: bot
Parameters:
this (bot)
comment (string) : (string) An optional parameter. Additional notes on the order.
alert_message (string) : (string) An optional parameter which replaces the {{strategy.order.alert_message}} placeholder when it is used in the "Create Alert" dialog box's "Message" field.
immediately (bool) : (bool) An optional parameter. If true, the closing order will be executed on the tick where it has been placed, ignoring the strategy parameters that restrict the order execution to the open of the next bar. The default is false.
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
method cancel(this, id, when)
It is a command to cancel/deactivate pending orders by referencing their names, which were generated by the functions: strategy.order, strategy.entry and strategy.exit.
Namespace types: bot
Parameters:
this (bot)
id (string) : (string) A required parameter. The order identifier. It is possible to cancel an order by referencing its identifier.
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
method cancel_all(this, when)
It is a command to cancel/deactivate all pending orders, which were generated by the functions: strategy.order, strategy.entry and strategy.exit.
Namespace types: bot
Parameters:
this (bot)
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
method close(this, id, comment, qty, qty_percent, alert_message, immediately, when)
It is a command to exit from the entry with the specified ID. If there were multiple entry orders with the same ID, all of them are exited at once. If there are no open entries with the specified ID by the moment the command is triggered, the command will not come into effect. The command uses market order. Every entry is closed by a separate market order.
Namespace types: bot
Parameters:
this (bot)
id (string) : (string) A required parameter. The order identifier. It is possible to close an order by referencing its identifier.
comment (string) : (string) An optional parameter. Additional notes on the order.
qty (float) : (float) An optional parameter. Number of contracts/shares/lots/units to exit a trade with. The default value is 'NaN'.
qty_percent (float) : (float) Defines the percentage (0-100) of the position to close. Its priority is lower than that of the 'qty' parameter. Optional. The default is 100.
alert_message (string) : (string) An optional parameter which replaces the {{strategy.order.alert_message}} placeholder when it is used in the "Create Alert" dialog box's "Message" field.
immediately (bool) : (bool) An optional parameter. If true, the closing order will be executed on the tick where it has been placed, ignoring the strategy parameters that restrict the order execution to the open of the next bar. The default is false.
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
ticks_to_price(ticks, from)
Converts ticks to a price offset from the supplied price or the average entry price.
Parameters:
ticks (float) : (float) Ticks to convert to a price.
from (float) : (float) A price that can be used to calculate from. Optional. The default value is `strategy.position_avg_price`.
Returns: (float) A price level that has a distance from the entry price equal to the specified number of ticks.
method exit(this, id, from_entry, qty, qty_percent, profit, limit, loss, stop, trail_price, trail_points, trail_offset, oca_name, comment, comment_profit, comment_loss, comment_trailing, alert_message, alert_profit, alert_loss, alert_trailing, when)
It is a command to exit either a specific entry, or whole market position. If an order with the same ID is already pending, it is possible to modify the order. If an entry order was not filled, but an exit order is generated, the exit order will wait till entry order is filled and then the exit order is placed. To deactivate an exit order, the command strategy.cancel or strategy.cancel_all should be used. If the function strategy.exit is called once, it exits a position only once. If you want to exit multiple times, the command strategy.exit should be called multiple times. If you use a stop loss and a trailing stop, their order type is 'stop', so only one of them is placed (the one that is supposed to be filled first). If all the following parameters 'profit', 'limit', 'loss', 'stop', 'trail_points', 'trail_offset' are 'NaN', the command will fail. To use market order to exit, the command strategy.close or strategy.close_all should be used.
Namespace types: bot
Parameters:
this (bot)
id (string) : (string) A required parameter. The order identifier. It is possible to cancel or modify an order by referencing its identifier.
from_entry (string) : (string) An optional parameter. The identifier of a specific entry order to exit from it. To exit all entries an empty string should be used. The default values is empty string.
qty (float) : (float) An optional parameter. Number of contracts/shares/lots/units to exit a trade with. The default value is 'NaN'.
qty_percent (float) : (float) Defines the percentage of (0-100) the position to close. Its priority is lower than that of the 'qty' parameter. Optional. The default is 100.
profit (float) : (float) An optional parameter. Profit target (specified in ticks). If it is specified, a limit order is placed to exit market position when the specified amount of profit (in ticks) is reached. The default value is 'NaN'.
limit (float) : (float) An optional parameter. Profit target (requires a specific price). If it is specified, a limit order is placed to exit market position at the specified price (or better). Priority of the parameter 'limit' is higher than priority of the parameter 'profit' ('limit' is used instead of 'profit', if its value is not 'NaN'). The default value is 'NaN'.
loss (float) : (float) An optional parameter. Stop loss (specified in ticks). If it is specified, a stop order is placed to exit market position when the specified amount of loss (in ticks) is reached. The default value is 'NaN'.
stop (float) : (float) An optional parameter. Stop loss (requires a specific price). If it is specified, a stop order is placed to exit market position at the specified price (or worse). Priority of the parameter 'stop' is higher than priority of the parameter 'loss' ('stop' is used instead of 'loss', if its value is not 'NaN'). The default value is 'NaN'.
trail_price (float) : (float) An optional parameter. Trailing stop activation level (requires a specific price). If it is specified, a trailing stop order will be placed when the specified price level is reached. The offset (in ticks) to determine initial price of the trailing stop order is specified in the 'trail_offset' parameter: X ticks lower than activation level to exit long position; X ticks higher than activation level to exit short position. The default value is 'NaN'.
trail_points (float) : (float) An optional parameter. Trailing stop activation level (profit specified in ticks). If it is specified, a trailing stop order will be placed when the calculated price level (specified amount of profit) is reached. The offset (in ticks) to determine initial price of the trailing stop order is specified in the 'trail_offset' parameter: X ticks lower than activation level to exit long position; X ticks higher than activation level to exit short position. The default value is 'NaN'.
trail_offset (float) : (float) An optional parameter. Trailing stop price (specified in ticks). The offset in ticks to determine initial price of the trailing stop order: X ticks lower than 'trail_price' or 'trail_points' to exit long position; X ticks higher than 'trail_price' or 'trail_points' to exit short position. The default value is 'NaN'.
oca_name (string) : (string) An optional parameter. Name of the OCA group (oca_type = strategy.oca.reduce) the profit target, the stop loss / the trailing stop orders belong to. If the name is not specified, it will be generated automatically.
comment (string) : (string) Additional notes on the order. If specified, displays near the order marker on the chart. Optional. The default is na.
comment_profit (string) : (string) Additional notes on the order if the exit was triggered by crossing `profit` or `limit` specifically. If specified, supercedes the `comment` parameter and displays near the order marker on the chart. Optional. The default is na.
comment_loss (string) : (string) Additional notes on the order if the exit was triggered by crossing `stop` or `loss` specifically. If specified, supercedes the `comment` parameter and displays near the order marker on the chart. Optional. The default is na.
comment_trailing (string) : (string) Additional notes on the order if the exit was triggered by crossing `trail_offset` specifically. If specified, supercedes the `comment` parameter and displays near the order marker on the chart. Optional. The default is na.
alert_message (string) : (string) Text that will replace the '{{strategy.order.alert_message}}' placeholder when one is used in the "Message" field of the "Create Alert" dialog. Optional. The default is na.
alert_profit (string) : (string) Text that will replace the '{{strategy.order.alert_message}}' placeholder when one is used in the "Message" field of the "Create Alert" dialog. Only replaces the text if the exit was triggered by crossing `profit` or `limit` specifically. Optional. The default is na.
alert_loss (string) : (string) Text that will replace the '{{strategy.order.alert_message}}' placeholder when one is used in the "Message" field of the "Create Alert" dialog. Only replaces the text if the exit was triggered by crossing `stop` or `loss` specifically. Optional. The default is na.
alert_trailing (string) : (string) Text that will replace the '{{strategy.order.alert_message}}' placeholder when one is used in the "Message" field of the "Create Alert" dialog. Only replaces the text if the exit was triggered by crossing `trail_offset` specifically. Optional. The default is na.
when (bool) : (bool) An optional parmeter. Condition, deprecated.
Returns: (void)
percent_to_ticks(percent, from)
Converts a percentage of the supplied price or the average entry price to ticks.
Parameters:
percent (float) : (float) The percentage of supplied price to convert to ticks. 50 is 50% of the entry price.
from (float) : (float) A price that can be used to calculate from. Optional. The default value is `strategy.position_avg_price`.
Returns: (float) A value in ticks.
percent_to_price(percent, from)
Converts a percentage of the supplied price or the average entry price to a price.
Parameters:
percent (float) : (float) The percentage of the supplied price to convert to price. 50 is 50% of the supplied price.
from (float) : (float) A price that can be used to calculate from. Optional. The default value is `strategy.position_avg_price`.
Returns: (float) A value in the symbol's quote currency (USD for BTCUSD).
bot
Fields:
password (series__string)
start_time (series__integer)
end_time (series__integer)
leverage (series__integer)
initial_capital (series__float)
default_qty_type (series__string)
default_qty_value (series__float)
margin_mode (series__string)
contract_size (series__float)
kis_number (series__integer)
entry_percent (series__float)
close_percent (series__float)
exit_percent (series__float)
log_table (series__table)
fixed_qty (series__float)
fixed_cash (series__float)
real (series__bool)
auto_alert_message (series__bool)
hide_trade_line (series__bool)
Visible Range Streaks of Unbroken Prior Highs/Lows [vnhilton](OVERVIEW)
This indicator keeps track of the number of unbroken prior highs/lows (unbroken being no price closes above/below the prior high/low). Great for entries and take profits. The indicator calculates on visible bars for convenience when looking back into the history without having to use bar replay, which those on the TradingView free plan cannot use intraday bar replay, so the visible range is a perfect work-around. The 2 minute chart above shows NASDAQ:NKLA on Thursday 13th July, 2023, with a significant level of $1.5 leading to a breakout. Streaks lower than 10 were hidden in the chart.
(FEATURES)
- Custom minimum streak size to start displaying plots (the smaller the size the more signals)
- Ability to show/hide numbers (that keep count of unbroken streaks), text signals (for when a streak is broken), break shapes (where the prior high/low was broken), and Zig Zag (lines between break shapes)
- Customisable Zig Zag line width, style, and colours (1 colour for a positive gradient line, and another for a negative gradient line)
- Customisable text signal text
- Customisable numbers, text signal, break shape, number label & text signal label colours
- Customisable number label, text signal label and break shape styles and sizes (number and text signal label share the same size)
FinandyHookLibLibrary "FinandyHookLib"
TODO: add library description here
createOrderJson(model, hook_secret, options)
Parameters:
model (orderModel type from Hamster-Coder/OrderLib/7)
hook_secret (string)
options (textFormatOptions)
textFormatOptions
Fields:
price_format (series__string)
percent_format (series__string)
Multi IND Dashboard [Skiploss]Multi IND Dashboard is dashboard combine with price change, RSI, ATR, Alligator and Supertrend. With a maximum of 10 timeframes, I think it's going to make your life easier. In looking at the momentum of each chart.
How it work??
Change :
It is the distance from the close price of previous candlestick and shows the movement value of the candlestick in that timeframe.
RSI :
Default setting are 14 and source close
Value >= 75 : Fill text color maximum overbought
Value >= 65 : Fill text color medium overbought
Value >= 55 : Fill text color minimum overbought
Value >= 45 : Fill text color minimum overbought
Value >= 35 : Fill text color medium overbought
Value >= 25 : Fill text color maximum overbought
ATR :
Default setting are 14 length and RMA smoothing, It like the average swing of the candlesticks.
Alligator :
Default setting are 13, 8 and 5
Bullish status is value lips > teeth and teeth > jaw
Bearish status is value lips < teeth and teeth < jaw
Neutral status status is value lips > teeth and teeth < jaw or lips < teeth and teeth > jaw
Supertrend :
Default setting are 8 and 3.0
Bullish status is uptrend
Bearish status is downtrend
Traders_Reality_LibLibrary "Traders_Reality_Lib"
This library contains common elements used in Traders Reality scripts
calcPvsra(pvsraVolume, pvsraHigh, pvsraLow, pvsraClose, pvsraOpen, redVectorColor, greenVectorColor, violetVectorColor, blueVectorColor, darkGreyCandleColor, lightGrayCandleColor)
calculate the pvsra candle color and return the color as well as an alert if a vector candle has apperared.
Situation "Climax"
Bars with volume >= 200% of the average volume of the 10 previous chart TFs, or bars
where the product of candle spread x candle volume is >= the highest for the 10 previous
chart time TFs.
Default Colors: Bull bars are green and bear bars are red.
Situation "Volume Rising Above Average"
Bars with volume >= 150% of the average volume of the 10 previous chart TFs.
Default Colors: Bull bars are blue and bear are violet.
Parameters:
pvsraVolume : the instrument volume series (obtained from request.sequrity)
pvsraHigh : the instrument high series (obtained from request.sequrity)
pvsraLow : the instrument low series (obtained from request.sequrity)
pvsraClose : the instrument close series (obtained from request.sequrity)
pvsraOpen : the instrument open series (obtained from request.sequrity)
redVectorColor : red vector candle color
greenVectorColor : green vector candle color
violetVectorColor : violet/pink vector candle color
blueVectorColor : blue vector candle color
darkGreyCandleColor : regular volume candle down candle color - not a vector
lightGrayCandleColor : regular volume candle up candle color - not a vector
@return
adr(length, barsBack)
Parameters:
length : how many elements of the series to calculate on
barsBack : starting possition for the length calculation - current bar or some other value eg last bar
@return adr the adr for the specified lenght
adrHigh(adr, fromDo)
Calculate the ADR high given an ADR
Parameters:
adr : the adr
fromDo : boolean flag, if false calculate traditional adr from high low of today, if true calcualte from exchange midnight
@return adrHigh the position of the adr high in price
adrLow(adr, fromDo)
Parameters:
adr : the adr
fromDo : boolean flag, if false calculate traditional adr from high low of today, if true calcualte from exchange midnight
@return adrLow the position of the adr low in price
splitSessionString(sessXTime)
given a session in the format 0000-0100:23456 split out the hours and minutes
Parameters:
sessXTime : the session time string usually in the format 0000-0100:23456
@return
calcSessionStartEnd(sessXTime, gmt)
calculate the start and end timestamps of the session
Parameters:
sessXTime : the session time string usually in the format 0000-0100:23456
gmt : the gmt offset string usually in the format GMT+1 or GMT+2 etc
@return
drawOpenRange(sessXTime, sessXcol, showOrX, gmt)
draw open range for a session
Parameters:
sessXTime : session string in the format 0000-0100:23456
sessXcol : the color to be used for the opening range box shading
showOrX : boolean flag to toggle displaying the opening range
gmt : the gmt offset string usually in the format GMT+1 or GMT+2 etc
@return void
drawSessionHiLo(sessXTime, show_rectangleX, show_labelX, sessXcolLabel, sessXLabel, gmt, sessionLineStyle)
Parameters:
sessXTime : session string in the format 0000-0100:23456
show_rectangleX : show the session high and low lines
show_labelX : show the session label
sessXcolLabel : the color to be used for the hi/low lines and label
sessXLabel : the session label text
gmt : the gmt offset string usually in the format GMT+1 or GMT+2 etc
sessionLineStyle : the line stile for the session high low lines
@return void
calcDst()
calculate market session dst on/off flags
@return indicating if DST is on or off for a particular region
timestampPreviousDayOfWeek(previousDayOfWeek, hourOfDay, gmtOffset, oneWeekMillis)
Timestamp any of the 6 previous days in the week (such as last Wednesday at 21 hours GMT)
Parameters:
previousDayOfWeek : Monday or Satruday
hourOfDay : the hour of the day when psy calc is to start
gmtOffset : the gmt offset string usually in the format GMT+1 or GMT+2 etc
oneWeekMillis : the amount if time for a week in milliseconds
@return the timestamp of the psy level calculation start time
getdayOpen()
get the daily open - basically exchange midnight
@return the daily open value which is float price
newBar(res)
new_bar: check if we're on a new bar within the session in a given resolution
Parameters:
res : the desired resolution
@return true/false is a new bar for the session has started
toPips(val)
to_pips Convert value to pips
Parameters:
val : the value to convert to pips
@return the value in pips
rLabel(ry, rtext, rstyle, rcolor, valid, labelXOffset)
a function that draws a right aligned lable for a series during the current bar
Parameters:
ry : series float the y coordinate of the lable
rtext : the text of the label
rstyle : the style for the lable
rcolor : the color for the label
valid : a boolean flag that allows for turning on or off a lable
labelXOffset : how much to offset the label from the current position
rLabelOffset(ry, rtext, rstyle, rcolor, valid, labelXOffset)
a function that draws a right aligned lable for a series during the current bar
Parameters:
ry : series float the y coordinate of the lable
rtext : the text of the label
rstyle : the style for the lable
rcolor : the color for the label
valid : a boolean flag that allows for turning on or off a lable
labelXOffset : how much to offset the label from the current position
rLabelLastBar(ry, rtext, rstyle, rcolor, valid, labelXOffset)
a function that draws a right aligned lable for a series only on the last bar
Parameters:
ry : series float the y coordinate of the lable
rtext : the text of the label
rstyle : the style for the lable
rcolor : the color for the label
valid : a boolean flag that allows for turning on or off a lable
labelXOffset : how much to offset the label from the current position
drawLine(xSeries, res, tag, xColor, xStyle, xWidth, xExtend, isLabelValid, labelXOffset, validTimeFrame)
a function that draws a line and a label for a series
Parameters:
xSeries : series float the y coordinate of the line/label
res : the desired resolution controlling when a new line will start
tag : the text for the lable
xColor : the color for the label
xStyle : the style for the line
xWidth : the width of the line
xExtend : extend the line
isLabelValid : a boolean flag that allows for turning on or off a label
labelXOffset : how much to offset the label from the current position
validTimeFrame : a boolean flag that allows for turning on or off a line drawn
drawLineDO(xSeries, res, tag, xColor, xStyle, xWidth, xExtend, isLabelValid, labelXOffset, validTimeFrame)
a function that draws a line and a label for the daily open series
Parameters:
xSeries : series float the y coordinate of the line/label
res : the desired resolution controlling when a new line will start
tag : the text for the lable
xColor : the color for the label
xStyle : the style for the line
xWidth : the width of the line
xExtend : extend the line
isLabelValid : a boolean flag that allows for turning on or off a label
labelXOffset : how much to offset the label from the current position
validTimeFrame : a boolean flag that allows for turning on or off a line drawn
drawPivot(pivotLevel, res, tag, pivotColor, pivotLabelColor, pivotStyle, pivotWidth, pivotExtend, isLabelValid, validTimeFrame, levelStart, pivotLabelXOffset)
draw a pivot line - the line starts one day into the past
Parameters:
pivotLevel : series of the pivot point
res : the desired resolution
tag : the text to appear
pivotColor : the color of the line
pivotLabelColor : the color of the label
pivotStyle : the line style
pivotWidth : the line width
pivotExtend : extend the line
isLabelValid : boolean param allows to turn label on and off
validTimeFrame : only draw the line and label at a valid timeframe
levelStart : basically when to start drawing the levels
pivotLabelXOffset : how much to offset the label from its current postion
@return the pivot line series
getPvsraFlagByColor(pvsraColor, redVectorColor, greenVectorColor, violetVectorColor, blueVectorColor, lightGrayCandleColor)
convert the pvsra color to an internal code
Parameters:
pvsraColor : the calculated pvsra color
redVectorColor : the user defined red vector color
greenVectorColor : the user defined green vector color
violetVectorColor : the user defined violet vector color
blueVectorColor : the user defined blue vector color
lightGrayCandleColor : the user defined regular up candle color
@return pvsra internal code
updateZones(pvsra, direction, boxArr, maxlevels, pvsraHigh, pvsraLow, pvsraOpen, pvsraClose, transperancy, zoneupdatetype, zonecolor, zonetype, borderwidth, coloroverride, redVectorColor, greenVectorColor, violetVectorColor, blueVectorColor, lightGrayCandleColor)
a function that draws the unrecovered vector candle zones
Parameters:
pvsra : internal code
direction : above or below the current pa
boxArr : the array containing the boxes that need to be updated
maxlevels : the maximum number of boxes to draw
pvsraHigh : the pvsra high value series
pvsraLow : the pvsra low value series
pvsraOpen : the pvsra open value series
pvsraClose : the pvsra close value series
transperancy : the transparencfy of the vecor candle zones
zoneupdatetype : the zone update type
zonecolor : the zone color if overriden
zonetype : the zone type
borderwidth : the width of the border
coloroverride : if the color overriden
redVectorColor : the user defined red vector color
greenVectorColor : the user defined green vector color
violetVectorColor : the user defined violet vector color
blueVectorColor : the user defined blue vector color
lightGrayCandleColor : the user defined regular up candle color
cleanarr(arr)
clean an array from na values
Parameters:
arr : the array to clean
@return if the array was cleaned
calcPsyLevels(oneWeekMillis, showPsylevels, psyType, sydDST)
calculate the psy levels
4 hour res based on how mt4 does it
mt4 code
int Li_4 = iBarShift(NULL, PERIOD_H4, iTime(NULL, PERIOD_W1, Li_0)) - 2 - Offset;
ObjectCreate("PsychHi", OBJ_TREND, 0, Time , iHigh(NULL, PERIOD_H4, iHighest(NULL, PERIOD_H4, MODE_HIGH, 2, Li_4)), iTime(NULL, PERIOD_W1, 0), iHigh(NULL, PERIOD_H4,
iHighest(NULL, PERIOD_H4, MODE_HIGH, 2, Li_4)));
so basically because the session is 8 hours and we are looking at a 4 hour resolution we only need to take the highest high an lowest low of 2 bars
we use the gmt offset to adjust the 0000-0800 session to Sydney open which is at 2100 during dst and at 2200 otherwize. (dst - spring foward, fall back)
keep in mind sydney is in the souther hemisphere so dst is oposite of when london and new york go into dst
Parameters:
oneWeekMillis : a constant value
showPsylevels : should psy levels be calculated
psyType : the type of Psylevels - crypto or forex
sydDST : is Sydney in DST
@return
Simple Moving Averge StrategySimple Vs. Exponential Moving Averages
Formula for Exponential Moving Average (EMA)
\begin{aligned} &\begin{aligned} EMA_{\text{Today}}=&\left(\text{Value}_{\text{Today}}\ast\left(\frac{\text{Smoothing}}{1+\text{Days}}\right)\right)\\ &+EMA_{\text{Yesterday}}\ast\left(1-\left(\frac{\text{Smoothing}}{1+\text{Days}}\right)\right)\end{aligned}\\ &\textbf{where:}\\ &EMA=\text{Exponential moving average} \end{aligned}
EMA
Today
=
(Value
Today
∗(
1+Days
Smoothing
))
+EMA
Yesterday
∗(1−(
1+Days
Smoothing
))
where:
EMA=Exponential moving average
While there are many possible choices for the smoothing factor, the most common choice is:
LutrewMTF// ————— Plots
var cMarkerUp = color.new(color.lime, 0)
var cMarkerDn = color.new(color.red, 0)
plotshape(A1U, "Marker 1 Up", shape.triangleup, location.belowbar, cMarkerUp, size = size.tiny, text = "1")
plotshape(A2D, "Marker 2 Dn", shape.triangledown, location.abovebar, cMarkerDn, size = size.tiny, text = "2")
plotshape(A3U, "Marker 3 Up", shape.triangleup, location.belowbar, cMarkerUp, size = size.tiny, text = "\n3")
plotshape(A4D, "Marker 4 Dn", shape.triangledown, location.abovebar, cMarkerDn, size = size.tiny, text = "4\n")
plotshape(A5U, "Marker 5 Up", shape.triangleup, location.belowbar, cMarkerUp, size = size.tiny, text = "\n\n5")
plotshape(A6D, "Marker 6 Dn", shape.triangledown, location.abovebar, cMarkerDn, size = size.tiny, text = "6\n\n")
plotshape(A7U, "Marker 7 Up", shape.triangleup, location.belowbar, cMarkerUp, size = size.tiny, text = "\n\n7")
plotshape(A8D, "Marker 8 Dn", shape.triangledown, location.abovebar, cMarkerDn, size = size.tiny, text = "8\n\n")
// ————— Alert
alertcondition( A1U or A2D or A3U or A4D or A5U or A6D or A7U or A8D, "Pivots MTF: Configured Markers", "Pivots MTF Alert")
// }
TPCLines_PublicLibrary "TPCLines_Public"
Helpers for lines
lineVA(start, lines, labels, lineColor, labelBgColor, labelTextColor, highPrice, lowPrice, extend, style, width, labelText, labelSize, labelStyle, labelTextAlign, bi) Draws a vertical line and optional label on the chart.
Parameters:
start : The start bar index or time.
lines : Line array to which the created line will be pushed.
labels : Label array to which the created label will be pushed.
lineColor : The color for the line and label.
labelBgColor : The background color for the label.
labelTextColor : The text color for the label.
highPrice : The upper price for the line.
lowPrice : The lower price for the line.
extend : Options for toggline line extend (extend.right, extend.left, extend.both, or extend.none). If none is provided, provides a best guess.
style : The line's style. Defaults to line.style_dotted.
width : The line's width. Defaults to 1.
labelText : Optional text to display next to the line.
labelSize : The label's size. Defaults to size.tiny.
labelStyle : The label's style. Defaults to label.style_label_left.
labelTextAlign : The label's text alignment. Defaults to text.align_center.
bi : Set true to use bar indices, set false to use time. Defaults to true (use bar indices).
Returns: Nothing. Draws a line and optional label on the chart.
lineHA(price, lines, labels, lineColor, labelBgColor, extend, labelTextColor, labelText, end, start, bi, showPrice, pips, style, width, labelAlign, labelSize, labelStyle, labelTextAlign) Draws a horizontal line and optional label on the chart.
Parameters:
price : The price at which to draw the lie.
lines : Line array to which the created line will be pushed.
labels : Label array to which the created label will be pushed.
lineColor : The color for the line and label.
labelBgColor : The background color for the label.
extend : Options for toggline line extend (extend.right, extend.left, extend.both, or extend.none). Defaults to extend.none.
labelTextColor : The text color for the label.
labelText : Optional text to display next to the line.
end : The time or bar index to end the line at.
start : The time or bar index to start the line at.
bi : Set true to use bar indices, set false to use time. Defaults to true (use bar indices).
showPrice : Option to show the price on the label.
pips : If a value is provided, will be displayed on the label.
style : The line's style. Defaults to line.style_solid.
width : The line's width. Defaults to 1.
labelAlign : Which side of the line to align the label on. Can be r for right, l for left, c for center, or t for the current time.
labelSize : The label's size. Defaults to size.tiny.
labelStyle : The label's style. Defaults to label.style_none.
labelTextAlign : The label's text alignment. Defaults to text.align_center.
Returns: Nothing. Draws a line and optional label on the chart.
lineH()
lineV()
Opening LevelsOpening Levels is an indicator to draw lines on the opening prices of the current day, week, and month.
Inputs:
1. Line Width :- Opening Levels Line width, from 1 to 10
2. Right Offset :- Right offset from current bar, from 0 to 50
3. Line Style :- Select line styles from
4. Show Label :- Show or hide price labels
5. Day Level Color :- Current day opening level color
6. Week Level Color :- Current week opening level color
7. Month Level Color :- Current month opening level color
8. Day Label Text Color :- Current day label text color
9. Week Label Text Color :- Current Week label text color
10. Month Label Text Color :- Current month label text color
Happy trading.
BB Breakout-Momentum + Reversion Strategies# BB Breakout-Momentum + Reversion Strategies
## Overview
This indicator combines two complementary Bollinger Band trading strategies that automatically adapt to market conditions. Strategy 1 capitalizes on trending markets with breakout-pullback-momentum setups, while Strategy 2 exploits mean reversion in ranging markets. Advanced filtering using ADX and BB Width ensures each strategy only fires in its optimal market environment.
---
## Strategy 1: Breakout → Pullback → Renewed Momentum (Long B / Short B)
### Best Market Conditions
- **Trending Markets**: ADX ≥ 25
- **High Volatility**: BB Width ≥ 1.0× average
- Directional price action with sustained momentum
### Entry Logic
**Long B (Bullish Breakout):**
1. **Initial Breakout**: Price breaks above upper Bollinger Band with strong momentum
2. **Controlled Pullback**: Price pulls back 1-12 bars but holds above lower band (stays in trend)
3. **Defended Zone**: Pullback creates a support zone based on swing lows (validated by multiple touches)
4. **Renewed Momentum**: Price reclaims with green candle, volume confirmation, bullish MACD
5. **Position Check**: Entry must have cushion below upper band and room to reach targets
**Short B (Bearish Breakdown):**
- Mirror logic for downtrends: breakdown below lower band, pullback stays below upper band, renewed selling pressure
### Risk Management
- **Stop Loss**: Lower of (zone floor/previous low) OR (1.5 × ATR from entry)
- **Targets**:
- T1: Entry + 0.85R (0.85 × 1.5 ATR)
- T2: Entry + 1.40R (1.40 × 1.5 ATR)
- T3: Entry + 2.50R (2.50 × 1.5 ATR)
- T4: Entry + 4.50R (4.50 × 1.5 ATR)
- Risk is calculated using ATR (ATRX = 1.5 ATR), stop uses tighter of structural level (ATRL) or ATRX
---
## Strategy 2: Bollinger Band Mean Reversion (Long R / Short R)
### Best Market Conditions
- **Ranging Markets**: ADX ≤ 20
- **Low Volatility**: BB Width ≤ 0.8× average
- Price oscillating around the mean without sustained trend
### Entry Logic
**Long R (Long Reversion):**
1. **Overextension**: Price breaks below lower Bollinger Band (2 consecutive closes)
2. **Snap Back**: Price crosses back above lower band (re-enters the range)
3. **Entry Window**: Within 2 candles of re-entry, look for:
- **Green candle** (close > open) confirming bullish strength
- Close above previous candle (close > close )
4. **Trigger**: First qualifying candle within 2-bar window executes the trade
**Short R (Short Reversion):**
1. **Overextension**: Price breaks above upper Bollinger Band (2 consecutive closes)
2. **Snap Back**: Price crosses back below upper band (re-enters the range)
3. **Entry Window**: Within 2 candles of re-entry, look for:
- **Red candle** (close < open) confirming bearish pressure
- Close below previous candle (close < close )
4. **Trigger**: First qualifying candle within 2-bar window executes the trade
### Risk Management
- **Stop Loss**: Lower of (previous high/low) OR (1.5 × ATR from entry)
- **Targets**: Same as Strategy 1 (0.85R, 1.4R, 2.5R, 4.5R based on 1.5 ATR)
- Betting on return to Bollinger Band basis (mean)
---
## Advanced Filtering System
### ADX Filter (Average Directional Index)
- **Purpose**: Measures trend strength vs choppy/ranging conditions
- **Trending**: ADX ≥ 25 → Enables Strategy 1 (Breakout)
- **Ranging**: ADX ≤ 20 → Enables Strategy 2 (Reversion)
- **Neutral**: ADX 20-25 → No signals (indecisive market)
### BB Width Filter
- **Purpose**: Confirms volatility expansion/contraction
- **Wide Bands**: Current width ≥ 1.0× 50-bar average → Trending environment
- **Narrow Bands**: Current width ≤ 0.8× 50-bar average → Ranging environment
- **Logic**: Both ADX and BB Width must agree on market state before signaling
### Combined Logic
- **Strategy 1 fires**: When BOTH ADX shows trending AND bands are wide
- **Strategy 2 fires**: When BOTH ADX shows ranging AND bands are narrow
- **Visual Display**: Table at bottom-right shows ADX value, BB Width ratio, and current market state
---
## Visual Elements
### Bollinger Bands
- **Gray line**: 20-period SMA (basis/mean)
- **Green line**: Upper band (basis + 2 standard deviations)
- **Red line**: Lower band (basis - 2 standard deviations)
### Strategy 1 Markers
- **Long B**: Green triangle below bar with "Long B" text
- **Short B**: Orange triangle above bar with "Short B" text
- **Defended Zones**: Green/red boxes showing pullback support/resistance areas
- **Targets**: Green/orange crosses showing T1-T4 and stop loss levels
### Strategy 2 Markers
- **Long R**: Blue label below bar with "Long R" text
- **Short R**: Purple label above bar with "Short R" text
- **Trade Levels**: Horizontal lines extending 50 bars forward
- Blue solid = Entry price
- Red dashed = Stop loss
- Green/Orange dotted = Targets (T1-T4)
### Market State Table
- **ADX**: Current value with color coding (green=trending, orange=ranging, gray=neutral)
- **BB Width**: Ratio vs 50-bar average (e.g., "1.15x" = 15% wider than average)
- **State**: TREND / RANGE / NEUTRAL classification
---
## Settings & Customization
### Bollinger Bands
- **BB Length**: 20 (default) - period for moving average
- **BB Std Dev**: 2.0 (default) - standard deviation multiplier
### ATR & Risk
- **ATR Length**: 14 (default) - period for Average True Range calculation
- All stop losses and targets are derived from 1.5 × ATR
### Trend/Range Filters
- **ADX Length**: 14 (default)
- **ADX Trending Threshold**: 25 (higher = stronger trend required)
- **ADX Ranging Threshold**: 20 (lower = tighter ranging condition)
- **BB Width Average Length**: 50 (period for comparing current width)
- **BB Width Trend Multiplier**: 1.0 (width must be ≥ this × average)
- **BB Width Range Multiplier**: 0.8 (width must be ≤ this × average)
- **Use ADX Filter**: Toggle on/off
- **Use BB Width Filter**: Toggle on/off
### Strategy 1 (Breakout-Momentum)
- **Breakout Lookback**: 15 bars (how far back to search for initial breakout)
- **Min Pullback Bars**: 1 (minimum consolidation period)
- **Max Pullback Bars**: 12 (maximum consolidation period)
- **Show Defended Zone**: Display support/resistance boxes
- **Show Signals**: Display Long B / Short B markers
- **Show Targets**: Display stop loss and target levels
### Strategy 2 (Reversion)
- **Show Signals**: Display Long R / Short R markers
- **Show Trade Levels**: Display entry, stop, and target lines
---
## How to Use This Indicator
### Step 1: Identify Market State
- Check the table in bottom-right corner
- **TREND**: Look for Strategy 1 signals (Long B / Short B)
- **RANGE**: Look for Strategy 2 signals (Long R / Short R)
- **NEUTRAL**: Wait for clearer conditions
### Step 2: Wait for Signal
- Signals only fire when ALL conditions are met (structural + momentum + filters + room-to-target)
- Signals are relatively rare but high-probability
### Step 3: Execute Trade
- **Entry**: Close of signal candle
- **Stop Loss**: Shown as red cross (Strategy 1) or red dashed line (Strategy 2)
- **Targets**: Scale out at T1, T2, T3, T4 or hold for maximum R:R
### Step 4: Management
- Consider moving stop to breakeven after T1
- Trail stop using swing lows/highs in Strategy 1
- Exit full position at T2-T3 in Strategy 2 (mean reversion has limited upside)
---
## Key Principles
### Why This Works
1. **Market Adaptation**: Uses right strategy for right conditions (trend vs range)
2. **Confluence**: Multiple confirmations required (structure + momentum + volatility + room)
3. **Risk-Defined**: Every trade has pre-calculated stop and targets based on ATR
4. **Probability**: Filters reduce noise and increase win rate by waiting for ideal setups
### Common Pitfalls to Avoid
- ❌ Taking signals in NEUTRAL market state (indicators disagree)
- ❌ Overriding the stop loss (it's calculated for a reason)
- ❌ Expecting signals on every swing (quality over quantity)
- ❌ Using Strategy 1 in ranging markets or Strategy 2 in trending markets
- ❌ Ignoring the room-to-target check (signal won't fire if targets are blocked)
### Complementary Analysis
This indicator works best when combined with:
- Higher timeframe trend analysis
- Key support/resistance levels
- Volume analysis
- Market structure (swing highs/lows)
- Risk management rules (position sizing, max daily loss, etc.)
---
## Technical Details
### Indicators Used
- **Bollinger Bands**: 20-period SMA ± 2 standard deviations
- **ATR**: 14-period Average True Range for volatility measurement
- **ADX**: 14-period Average Directional Index for trend strength
- **EMA**: 10 and 20-period exponential moving averages (Strategy 1 filter)
- **MACD**: 12/26/9 settings (Strategy 1 momentum confirmation)
- **Volume**: Compared to 15-bar average (Strategy 1 confirmation)
### Calculation Methodology
- **ATRL** (Structural Risk): Previous swing high/low or defended zone boundary
- **ATRX** (ATR Risk): 1.5 × 14-period ATR from entry price
- **Stop Loss**: Minimum of ATRL and ATRX (tightest protection)
- **Targets**: Always calculated from ATRX (consistent R-multiples)
- **BB Width Ratio**: Current BB width ÷ 50-period SMA of BB width
---
## Performance Notes
### Strengths
- Adapts to changing market conditions automatically
- Clear, objective entry and exit criteria
- Pre-defined risk on every trade
- Filters reduce false signals significantly
- Works across multiple timeframes and instruments
### Limitations
- Signals are infrequent (by design - quality over quantity)
- Requires patience to wait for all conditions to align
- May miss explosive moves if pullback doesn't form properly (Strategy 1)
- Ranging markets can transition to trending (Strategy 2 risk)
- Filters may delay entry in fast-moving markets
### Best Timeframes
- **Strategy 1**: 1H, 4H, Daily (needs time for proper pullback structure)
- **Strategy 2**: 15M, 30M, 1H (mean reversion works best intraday)
- Both strategies can work on any timeframe if market conditions are right
### Best Instruments
- **Liquid markets**: Major stocks, indices, forex pairs, liquid crypto
- **Sufficient volatility**: ATR should be meaningful relative to price
- **Clear trend/range cycles**: Markets that respect technical levels
---
## IMPORTANT DISCLAIMER
### Risk Warning
**TRADING INVOLVES SUBSTANTIAL RISK OF LOSS AND IS NOT SUITABLE FOR ALL INVESTORS.**
This indicator is provided for **educational and informational purposes only**. It does not constitute financial advice, investment advice, trading advice, or any other sort of advice. You should not treat any of the indicator's content as such.
### No Guarantee of Profit
Past performance is not indicative of future results. No trading strategy, including this indicator, can guarantee profits or protect against losses. The market is inherently unpredictable and all trading involves risk.
### User Responsibility
- **Do Your Own Research**: Always conduct your own analysis before making trading decisions
- **Test First**: Backtest and paper trade this strategy before risking real capital
- **Risk Management**: Never risk more than you can afford to lose
- **Position Sizing**: Use appropriate position sizes relative to your account
- **Stop Losses**: Always use stop losses and respect them
- **Market Conditions**: Understand that market conditions change and past behavior may not repeat
### No Liability
The creator of this indicator accepts no liability for any financial losses incurred through the use of this tool. All trading decisions are made at your own risk. You are solely responsible for evaluating the merits and risks associated with the use of any trading systems, signals, or content provided.
### Not Financial Advice
This indicator does not take into account your personal financial situation, investment objectives, risk tolerance, or specific needs. You should consult with a licensed financial advisor before making any investment decisions.
### Technical Limitations
- Indicators can repaint or lag in real-time
- Past signals may look different than real-time signals
- Code bugs or errors may exist despite testing
- TradingView platform limitations may affect functionality
### Market Risks
- Markets can gap, causing stops to be executed at worse prices
- Slippage and commissions can significantly impact results
- High volatility can cause unexpected losses
- Counterparty risk exists in all leveraged products
---
## Version History
- **v1.0**: Initial release combining breakout-momentum and mean reversion strategies
- Includes ADX and BB Width filtering
- ATRL/ATRX risk calculation system
- 2-candle entry window for reversion trades
---
## Credits & License
This indicator combines concepts from classical technical analysis including Bollinger Bands (John Bollinger), ATR (Welles Wilder), and ADX (Welles Wilder). The specific implementation and combination of filters is original work.
**Use at your own risk. Trade responsibly.**
---
*For questions, suggestions, or to report bugs, please comment below or contact the author.*
**Remember: The best indicator is the one between your ears. Use this tool as part of a comprehensive trading plan, not as a standalone solution.**
TMT Supply and Demand Zones - Hitesh Nimje📊 TMT Supply and Demand Zones - Hitesh Nimje
🎯 Overview
A professional-grade Supply & Demand zone indicator that automatically identifies and plots high-probability reversal zones across multiple timeframes. Perfect for institutional trading, smart money concepts, and price action analysis.
🔥 Key Features
✅ Multi-Timeframe Zone Detection
* 30m, 45m, 1H, 2H, 3H, 4H, Daily, Weekly zones (customizable)
* Lower timeframe zones (1m, 5m, 15m) available
* Forming zones (real-time detection of potential zones)
🎨 Full Customization
📦 Zone Settings
├── Zone Difference Scale (1.8 default) - Controls zone strength
└── Zone Extension (15 bars default)
🎭 Display Settings
├── Enable/Disable Supply & Demand independently
├── Background & Border colors for each zone type
└── Lower timeframe zone display
✍️ Text Settings
├── Separate Supply/Demand text colors
├── Text size (Auto/Tiny/Small/Normal/Large/Huge)
├── Horizontal & Vertical alignment options
└── High/Low price display option
⏰ Timeframe Options
├── Individual toggle for each timeframe
└── Smart filtering (prevents higher TF from showing lower TF zones)
🧠 Smart Zone Logic
Supply Zones form when:
* Red candle follows green/neutral candle
* Current candle is ≥1.8x larger than previous
* Price respects previous candle levels
Demand Zones form when:
* Green candle follows red/neutral candle
* Current candle is ≥1.8x larger than previous
* Price respects previous candle levels
⚡ Dynamic Zone Management
* Auto-extension to right (15 bars default)
* Auto-deletion when price breaks through
* Max 500 boxes for optimal performance
* Real-time updates on every bar
📈 How to Use
1. Basic Setup
✅ Enable desired timeframes (recommended: 30m/1H/4H/D)
✅ Keep "Zone Difference Scale" at 1.8
✅ Set Zone Extension to 15-20 bars
✅ Use white text on dark zones
2. Trading Strategy
🔴 SUPPLY ZONES (Sell Zones)
├── Price approaches from below
├── Rejection/wick at zone top
├── Sell on confirmation
🟢 DEMAND ZONES (Buy Zones)
├── Price approaches from above
├── Rejection/wick at zone bottom
├── Buy on confirmation
3. Best Combinations
💎 Pro Setup:
├── 4H + 1H zones (primary structure)
├── 30m zones (entries)
├── Daily zones (bias)
🎯 Scalping Setup:
├── 30m + 15m + 5m zones
⚙️ Input Recommendations
SettingRecommendedPurposeZone Scale1.8Strong zones onlyZone Extension15-25Good visibilitySupply ColorBlack (94% transparency)Clean lookDemand ColorBlue (94% transparency)Clear distinctionText SizeSmallReadableText ColorWhiteHigh contrast
🚀 Why This Indicator?
✅ Institutional-grade zone detection
✅ No repainting (confirmed bars only)
✅ Multi-timeframe confluence
✅ Full customization
✅ Performance optimized (500 max boxes)
✅ Clean, professional appearance
📱 Contact
Author: Hitesh Nimje
Phone: 8087192915
Source: Thought Magic Trading
"Trade the zones where smart money accumulates and distributes" 💰
TRADING DISCLAIMER
RISK WARNING
Trading involves substantial risk of loss and is not suitable for all investors. Past performance is not indicative of future results. You should carefully consider whether trading is suitable for you in light of your circumstances, knowledge, and financial resources.
NO FINANCIAL ADVICE
This indicator is provided for educational and informational purposes only. It does not constitute:
* Financial advice or investment recommendations
* Buy/sell signals or trading signals
* Professional investment advice
* Legal, tax, or accounting guidance
LIMITATIONS AND DISCLAIMERS
Technical Analysis Limitations
* Pivot points are mathematical calculations based on historical price data
* No guarantee of accuracy of price levels or calculations
* Markets can and do behave irrationally for extended periods
* Past performance does not guarantee future results
* Technical analysis should be used in conjunction with fundamental analysis
Data and Calculation Disclaimers
* Calculations are based on available price data at the time of calculation
* Data quality and availability may affect accuracy
* Pivot levels may differ when calculated on different timeframes
* Gaps and irregular market conditions may cause level failures
* Extended hours trading may affect intraday pivot calculations
Market Risks
* Extreme market volatility can invalidate all technical levels
* News events, economic announcements, and market manipulation can cause gaps
* Liquidity issues may prevent execution at calculated levels
* Currency fluctuations, inflation, and interest rate changes affect all levels
* Black swan events and market crashes cannot be predicted by technical analysis
USER RESPONSIBILITIES
Due Diligence
* You are solely responsible for your trading decisions
* Conduct your own research before using this indicator
* Verify calculations with multiple sources before trading
* Consider multiple timeframes and confirm levels with other technical tools
* Never rely solely on one indicator for trading decisions
Risk Management
* Always use proper risk management and position sizing
* Set appropriate stop-losses for all positions
* Never risk more than you can afford to lose
* Consider the inherent risks of leverage and margin trading
* Diversify your portfolio and trading strategies
Professional Consultation
* Consult with qualified financial advisors before trading
* Consider your tax obligations and legal requirements
* Understand the regulations in your jurisdiction
* Seek professional advice for complex trading strategies
LIMITATION OF LIABILITY
Indemnification
The creator and distributor of this indicator shall not be liable for:
* Any trading losses, whether direct or indirect
* Inaccurate or delayed price data
* System failures or technical malfunctions
* Loss of data or profits
* Interruption of service or connectivity issues
No Warranty
This indicator is provided "as is" without warranties of any kind:
* No guarantee of accuracy or completeness
* No warranty of uninterrupted or error-free operation
* No warranty of merchantability or fitness for a particular purpose
* The software may contain bugs or errors
Maximum Liability
In no event shall the liability exceed the purchase price (if any) paid for this indicator. This limitation applies regardless of the theory of liability, whether contract, tort, negligence, or otherwise.
REGULATORY COMPLIANCE
Jurisdiction-Specific Risks
* Regulations vary by country and region
* Some jurisdictions prohibit or restrict certain trading strategies
* Tax implications differ based on your location and trading frequency
* Commodity futures and options trading may have additional requirements
* Currency trading may be regulated differently than stock trading
Professional Trading
* If you are a professional trader, ensure compliance with all applicable regulations
* Adhere to fiduciary duties and best execution requirements
* Maintain required records and reporting
* Follow market abuse regulations and insider trading laws
TECHNICAL SPECIFICATIONS
Data Sources
* Calculations based on TradingView data feeds
* Data accuracy depends on broker and exchange reporting
* Historical data may be subject to adjustments and corrections
* Real-time data may have delays depending on data providers
Software Limitations
* Internet connectivity required for proper operation
* Software updates may change calculations or functionality
* TradingView platform dependencies may affect performance
* Third-party integrations may introduce additional risks
MONEY MANAGEMENT RECOMMENDATIONS
Conservative Approach
* Risk only 1-2% of capital per trade
* Use position sizing based on volatility
* Maintain adequate cash reserves
* Avoid over-leveraging accounts
Portfolio Management
* Diversify across multiple strategies
* Don't put all capital into one approach
* Regularly review and adjust trading strategies
* Maintain detailed trading records
FINAL LEGAL NOTICES
Acceptance of Terms
* By using this indicator, you acknowledge that you have read and understood this disclaimer
* You agree to assume all risks associated with trading
* You confirm that you are legally permitted to trade in your jurisdiction
Updates and Changes
* This disclaimer may be updated without notice
* Continued use constitutes acceptance of any changes
* It is your responsibility to stay informed of updates
Governing Law
* This disclaimer shall be governed by the laws of the jurisdiction where the indicator was created
* Any disputes shall be resolved in the appropriate courts
* Severability clause: If any part of this disclaimer is invalid, the remainder remains enforceable
REMEMBER: THERE ARE NO GUARANTEES IN TRADING. THE MAJORITY OF RETAIL TRADERS LOSE MONEY. TRADE AT YOUR OWN RISK.
Contact Information:
* Creator: Hitesh_Nimje
* Phone: Contact@8087192915
* Source: Thought Magic Trading
© HiteshNimje - All Rights Reserved
This disclaimer should be prominently displayed whenever the indicator is shared, sold, or distributed to ensure users are fully aware of the risks and limitations involved in trading.
RSI + MACD Day Trading Toolkit//@version=6
indicator("RSI + MACD Day Trading Toolkit", overlay = true)
//──────────────────────────────────────────────────────────────────────────────
// 1. INPUTS
//──────────────────────────────────────────────────────────────────────────────
// RSI settings
rsiLength = input.int(14, "RSI Length")
rsiOverbought = input.float(70, "RSI Overbought Level", minval = 50, maxval = 100)
rsiOversold = input.float(30, "RSI Oversold Level", minval = 0, maxval = 50)
// MACD settings (classic 12 / 26 / 9)
macdFastLength = input.int(12, "MACD Fast Length")
macdSlowLength = input.int(26, "MACD Slow Length")
macdSignalLength = input.int(9, "MACD Signal Length")
// Risk model selection
riskModel = input.string("ATR", "Risk Model", options = )
// ATR-based SL/TP
atrLength = input.int(14, "ATR Length")
atrSLMult = input.float(1.5, "SL ATR Multiplier", minval = 0.1, step = 0.1)
atrTPMult = input.float(2.5, "TP ATR Multiplier", minval = 0.1, step = 0.1)
// Percent-based SL/TP (for scalping on very tight spreads)
slPercent = input.float(0.5, "SL % (when Risk Model = Percent)", minval = 0.05, step = 0.05)
tpPercent = input.float(1.0, "TP % (when Risk Model = Percent)", minval = 0.05, step = 0.05)
// Visual / styling
showSLTPLines = input.bool(true, "Plot Stop Loss / Take Profit Lines")
//──────────────────────────────────────────────────────────────────────────────
// 2. CORE INDICATORS: RSI & MACD
//──────────────────────────────────────────────────────────────────────────────
rsiValue = ta.rsi(close, rsiLength)
// Manual MACD calculation (avoids tuple unpacking issues)
macdFastEMA = ta.ema(close, macdFastLength)
macdSlowEMA = ta.ema(close, macdSlowLength)
macdValue = macdFastEMA - macdSlowEMA
macdSignal = ta.ema(macdValue, macdSignalLength)
macdHist = macdValue - macdSignal
atrValue = ta.atr(atrLength)
// Hide internal plots from price scale (still accessible if you change display)
plot(rsiValue, "RSI", display = display.none)
plot(macdValue, "MACD", display = display.none)
plot(macdSignal, "MACD Sig", display = display.none)
plot(macdHist, "MACD Hist", display = display.none)
//──────────────────────────────────────────────────────────────────────────────
// 3. SIGNAL LOGIC (ENTRY CONDITIONS)
//──────────────────────────────────────────────────────────────────────────────
//
// Idea:
// - LONG bias: RSI emerges from oversold AND MACD crosses above signal below zero
// - SHORT bias: RSI falls from overbought AND MACD crosses below signal above zero
//
// Combines momentum (RSI) with trend confirmation (MACD).
//──────────────────────────────────────────────────────────────────────────────
// RSI events
rsiBullCross = ta.crossover(rsiValue, rsiOversold) // RSI crosses UP out of oversold
rsiBearCross = ta.crossunder(rsiValue, rsiOverbought) // RSI crosses DOWN from overbought
// MACD crossover with trend filter
macdBullCross = ta.crossover(macdValue, macdSignal) and macdValue < 0 // Bullish cross below zero-line
macdBearCross = ta.crossunder(macdValue, macdSignal) and macdValue > 0 // Bearish cross above zero-line
// Raw (ungated) entry signals
rawLongSignal = rsiBullCross and macdBullCross
rawShortSignal = rsiBearCross and macdBearCross
//──────────────────────────────────────────────────────────────────────────────
// 4. STATE MANAGEMENT (SIMULATED POSITION TRACKING)
//──────────────────────────────────────────────────────────────────────────────
//
// position: 1 = long
// -1 = short
// 0 = flat
//
// We track entry price and SL/TP levels as if this were a strategy.
// This is still an indicator – it just computes and plots the logic.
//──────────────────────────────────────────────────────────────────────────────
var int position = 0
var float longEntryPrice = na
var float shortEntryPrice = na
var float longSL = na
var float longTP = na
var float shortSL = na
var float shortTP = na
// Per-bar flags (for plotting / alerts)
var bool longEntrySignal = false
var bool shortEntrySignal = false
var bool longExitSignal = false
var bool shortExitSignal = false
// Reset per-bar flags each bar
longEntrySignal := false
shortEntrySignal := false
longExitSignal := false
shortExitSignal := false
//──────────────────────────────────────────────────────────────────────────────
// 5. EXIT LOGIC (STOP LOSS / TAKE PROFIT / OPPOSITE SIGNAL)
//──────────────────────────────────────────────────────────────────────────────
//
// Exits are evaluated BEFORE new entries on each bar.
//──────────────────────────────────────────────────────────────────────────────
// Stop-loss / take-profit hits for existing positions
longStopHit = position == 1 and not na(longSL) and low <= longSL
longTakeHit = position == 1 and not na(longTP) and high >= longTP
shortStopHit = position == -1 and not na(shortSL) and high >= shortSL
shortTakeHit = position == -1 and not na(shortTP) and low <= shortTP
// Opposite signals can also close positions
reverseToShort = position == 1 and rawShortSignal
reverseToLong = position == -1 and rawLongSignal
// Combine exit conditions
longExitNow = longStopHit or longTakeHit or reverseToShort
shortExitNow = shortStopHit or shortTakeHit or reverseToLong
// Register exits and flatten position
if longExitNow and position == 1
longExitSignal := true
position := 0
longEntryPrice := na
longSL := na
longTP := na
if shortExitNow and position == -1
shortExitSignal := true
position := 0
shortEntryPrice := na
shortSL := na
shortTP := na
//──────────────────────────────────────────────────────────────────────────────
// 6. ENTRY LOGIC WITH RISK MODEL (SL/TP CALCULATION)
//──────────────────────────────────────────────────────────────────────────────
//
// Only take a new trade when flat.
// SL/TP are calculated relative to entry price using either ATR or Percent.
//──────────────────────────────────────────────────────────────────────────────
if position == 0
// Long entry
if rawLongSignal
position := 1
longEntryPrice := close
if riskModel == "ATR"
longSL := longEntryPrice - atrValue * atrSLMult
longTP := longEntryPrice + atrValue * atrTPMult
else // Percent model
longSL := longEntryPrice * (1.0 - slPercent / 100.0)
longTP := longEntryPrice * (1.0 + tpPercent / 100.0)
longEntrySignal := true
// Short entry
else if rawShortSignal
position := -1
shortEntryPrice := close
if riskModel == "ATR"
shortSL := shortEntryPrice + atrValue * atrSLMult
shortTP := shortEntryPrice - atrValue * atrTPMult
else // Percent model
shortSL := shortEntryPrice * (1.0 + slPercent / 100.0)
shortTP := shortEntryPrice * (1.0 - tpPercent / 100.0)
shortEntrySignal := true
//──────────────────────────────────────────────────────────────────────────────
// 7. PLOTTING: ENTRIES, EXITS, STOPS & TARGETS
//──────────────────────────────────────────────────────────────────────────────
// Entry markers
plotshape(longEntrySignal, title = "Long Entry", style = shape.triangleup, location = location.belowbar, color = color.new(color.lime, 0), size = size.small, text = "LONG")
plotshape(shortEntrySignal, title = "Short Entry", style = shape.triangledown, location = location.abovebar, color = color.new(color.red, 0), size = size.small, text = "SHORT")
// Exit markers (generic exits: SL, TP or reversal)
plotshape(longExitSignal, title = "Long Exit", style = shape.xcross, location = location.abovebar, color = color.new(color.orange, 0), size = size.tiny, text = "LX")
plotshape(shortExitSignal, title = "Short Exit", style = shape.xcross, location = location.belowbar, color = color.new(color.orange, 0), size = size.tiny, text = "SX")
// Optional: show SL/TP levels on chart while in position
plot(showSLTPLines and position == 1 ? longSL : na, title = "Long Stop Loss", style = plot.style_linebr, color = color.new(color.red, 0), linewidth = 1)
plot(showSLTPLines and position == 1 ? longTP : na, title = "Long Take Profit", style = plot.style_linebr, color = color.new(color.lime, 0), linewidth = 1)
plot(showSLTPLines and position == -1 ? shortSL : na, title = "Short Stop Loss", style = plot.style_linebr, color = color.new(color.red, 0), linewidth = 1)
plot(showSLTPLines and position == -1 ? shortTP : na, title = "Short Take Profit", style = plot.style_linebr, color = color.new(color.lime, 0), linewidth = 1)
//──────────────────────────────────────────────────────────────────────────────
// 8. ALERT CONDITIONS
//──────────────────────────────────────────────────────────────────────────────
//
// Configure TradingView alerts using these conditions.
//──────────────────────────────────────────────────────────────────────────────
// Entry alerts
alertcondition(longEntrySignal, title = "Long Entry (RSI+MACD)", message = "RSI+MACD: Long entry signal")
alertcondition(shortEntrySignal, title = "Short Entry (RSI+MACD)", message = "RSI+MACD: Short entry signal")
// Exit alerts (by type: SL vs TP vs reversal)
alertcondition(longStopHit, title = "Long Stop Loss Hit", message = "RSI+MACD: Long STOP LOSS hit")
alertcondition(longTakeHit, title = "Long Take Profit Hit", message = "RSI+MACD: Long TAKE PROFIT hit")
alertcondition(shortStopHit, title = "Short Stop Loss Hit", message = "RSI+MACD: Short STOP LOSS hit")
alertcondition(shortTakeHit, title = "Short Take Profit Hit", message = "RSI+MACD: Short TAKE PROFIT hit")
alertcondition(reverseToShort, title = "Long Exit by Reverse Signal", message = "RSI+MACD: Long exit by SHORT reverse signal")
alertcondition(reverseToLong, title = "Short Exit by Reverse Signal", message = "RSI+MACD: Short exit by LONG reverse signal")
//──────────────────────────────────────────────────────────────────────────────
// 9. QUICK USAGE NOTES
//──────────────────────────────────────────────────────────────────────────────
//
// - Indicador, não estratégia: ele simula posição, SL/TP e sinais de saída.
// - Para backtest/auto, basta portar a mesma lógica para um script `strategy()`
// usando `strategy.entry` e `strategy.exit`.
// - Em day trade, teste ATR vs Percent e ajuste os multiplicadores ao ativo.
//──────────────────────────────────────────────────────────────────────────────
Momentum Structural AnalysisMomentum Structural Analysis (MSA‑style Oscillator)
This indicator implements a simple, MSA‑style momentum oscillator that measures how far price has moved above or below its own long‑term trend on the active timeframe, expressed in percentage terms. Instead of looking at raw price, it "oscillates" price around a timeframe‑appropriate simple moving average (SMA) and plots the percentage distance from that SMA as an orange line around a zero baseline. Zero means price is exactly at its structural trend; positive values mean price is extended above trend; negative values mean it is trading below trend.
The script automatically selects the SMA length based on the chart timeframe:
On daily charts it uses the configurable Daily SMA Length (default 252 trading days, roughly 1 year).
On weekly charts it uses Weekly SMA Length (default 208 weeks).
On monthly charts it uses Monthly SMA Length (default 120 months).
This approach is inspired by the ideas behind Momentum Structural Analysis (MSA), which studies where a market trades relative to long‑term moving averages and then treats the momentum line (the oscillator) as the primary object of analysis. The goal is to highlight structural overbought/oversold conditions and regime changes that are often clearer on momentum than on the raw price chart.
--------------------------------------------------
What the script computes and how it works
For each bar, the indicator:
Chooses an SMA length based on the current timeframe (daily/weekly/monthly).
Calculates the SMA of the close.
Computes the percentage distance:
\text{Diff %} = \frac{\text{Close} - \text{SMA}}{\text{SMA}} \times 100
Plots this Diff % as an orange line, with a dashed horizontal zero line as the base.
This produces a momentum oscillator that oscillates around zero and reflects the "structural" position of price versus its own long‑term mean.
--------------------------------------------------
How to use it on index charts (e.g., NIFTY50)
On indices like NIFTY50, use the indicator to see how stretched the index is versus its structural trend.
Typical uses:
Identify extremes: a). Historically high positive readings can signal euphoric, late‑stage conditions where risk is elevated. b). Deep negative readings can highlight panic/capitulation zones where downside may be exhausted.
Draw structural levels: a). Mark horizontal bands on the oscillator where past turns have occurred (e.g., +15%, −10%, etc. specific to NIFTY50). b). Watch how price behaves when the oscillator revisits these zones: repeated rejections can validate them as structural bounds; clean breaks can indicate a change of regime.
This is not a buy/sell signal generator by itself; it is a framework to understand where the index sits within its long‑term momentum structure and to support risk‑management decisions.
--------------------------------------------------
How to use it on ratio charts
Apply the same indicator to ratio symbols such as NIFTY50/GOLD, BANKNIFTY/NIFTY50, sector vs index, or any spread you plot as a ratio.
On a ratio chart:
The oscillator now measures relative momentum: how far that ratio is above or below its own long‑term mean.
High positive readings = strong outperformance of the numerator vs the denominator (e.g., equities strongly outperforming gold).
Deep negative readings = strong underperformance (e.g., equities structurally lagging gold).
This is very much in the spirit of MSA’s work on spreads between asset classes: it helps visualize major rotations (equities → gold, financials → commodities, etc.) and whether a relative‑performance trend is stretched, reverting, or breaking into a new phase.
--------------------------------------------------
Using multiple timeframes for better decisions
You can stack information across timeframes to get a more robust view:
Monthly : a). Use monthly charts to see secular/structural phases. b). Long multi‑year stretches above or below zero, and large bases or trendline breaks on the monthly oscillator, can mark major bull or bear cycles and big rotations between asset classes.
Weekly : a). Use weekly charts for the primary trend. b). Weekly structures (multi‑month highs/lows, channels, or trendlines on the oscillator) are useful for medium‑term positioning and for confirming or rejecting signals seen on the monthly view.
Daily : a). Use daily charts mainly for timing entries/exits once the higher‑timeframe direction is clear. b). Short‑term extremes on the daily oscillator that align with the larger weekly/monthly structure can offer better‑timed opportunities, while signals that contradict higher‑timeframe momentum are more likely to be noise.
--------------------------------------------------
PoC Migration Map [BackQuant]PoC Migration Map
A volume structure tool that builds a side volume profile, extracts rolling Points of Control (PoCs), and maps how those PoCs migrate through time so you can see where value is moving, how volume clusters shift, and how that aligns with trend regime.
What this is
This indicator combines a classic volume profile with a segmented PoC trail. It looks back over a configurable window, splits that window into bins by price, and shows you where volume has concentrated. On top of that, it slices the lookback into fixed bar segments, finds the local PoC in each segment, and plots those PoCs as a chain of nodes across the chart.
The result is a "migration map" of value:
A side volume profile that shows how volume is distributed over the recent price range.
A sequence of PoC nodes that show where local value has been accepted over time.
Lines that connect those PoCs to reveal the path of value migration.
Optional trend coloring based on EMA 12 and EMA 21, so each PoC also encodes trend regime.
Used together, this gives you a structural read on where the market has actually traded size, how "value" is moving, and whether that movement is aligned or fighting the current trend.
Core components
Lookback volume profile - a side histogram built from all closes and volumes in the chosen lookback window.
Segmented PoC trail - rolling PoCs computed over fixed bar segments, plotted as nodes in time.
Trend heatmap - optional color mapping of PoC nodes using EMA 12 versus EMA 21.
PoC labels - optional labels on every Nth PoC for easier reading and referencing.
How it works
1) Global lookback and binning
You choose:
Lookback Bars - how far back to collect data.
Number of Bins - how finely to split the price range.
The script:
Finds the highest high and lowest low in the lookback.
Computes the total price range and divides it into equal binCount slices.
Assigns each bar's close and volume into the appropriate price bin.
This creates a discretized volume distribution across the entire lookback.
2) Side volume profile
If "Show Side Profile" is enabled, a right-hand volume profile is drawn:
Each bin becomes a horizontal bar anchored at a configurable "Right Offset" from the current bar.
The horizontal width of each bar is proportional to that bin's volume relative to the maximum volume bin.
Optionally, volume values and percentages are printed inside the profile bars.
Color and transparency are controlled by:
Base Profile Color and its transparency.
A gradient that uses relative volume to modulate opacity between lower volume and higher volume bins.
Profile Width (%) - how wide the maximum bin can extend in bars.
This gives you an at-a-glance view of the volume landscape for the chosen lookback window.
3) Segmenting for PoC migration
To build the PoC trail, the lookback is divided into segments:
Bars per Segment - bars in each local cluster.
Number of Segments - how many segments you want to see back in time.
For each segment:
The script uses the same price bins and accumulates volume only from bars in that segment.
It finds the bin with the highest volume in that segment, which is the local PoC for that segment.
It sets the PoC price to the center of that bin.
It finds the "mid bar" of the segment and places the PoC node at that time on the chart.
This is repeated for each segment from older to newer, so you get a chain of PoCs that shows how local value has migrated over time.
4) Trend regime and color coding
The indicator precomputes:
EMA 12 (Fast).
EMA 21 (Slow).
For each PoC:
It samples EMA 12 and EMA 21 at the mid bar of that segment.
It computes a simple trend score as fast EMA minus slow EMA.
If trend heatmap is enabled, PoC nodes (and the lines between them) are colored by:
Trend Up Color if EMA 12 is above EMA 21.
Trend Down Color if EMA 12 is below EMA 21.
Trend Flat Color if they are roughly equal.
If the trend heatmap is disabled, PoC color is instead based on PoC migration:
If the current PoC is above the previous PoC, use the Up PoC Color.
If the current PoC is below the previous PoC, use the Down PoC Color.
If unchanged, use the Flat PoC Color.
5) Connecting PoCs and labels
Once PoC prices and times are known:
Each PoC is connected to the previous one with a dotted line, using the PoC's color.
Optional labels are placed next to every Nth PoC:
Label text uses a simple "PoC N" scheme.
Label background uses a configurable label background color.
Label border is colored by the PoC's own color for visual consistency.
This turns the PoCs into a visual path that can be read like a "value trajectory" across the chart.
What it plots
When fully enabled, you will see:
A right-sided volume profile for the chosen lookback window, built from volume by price.
Colored horizontal bars representing each price bin's relative volume.
Optional volume text showing each bin's volume and its percentage of the profile maximum.
A series of PoC nodes spaced across the chart at the mid point of each segment.
Dotted lines connecting those PoCs to show the migration path of value.
Optional PoC labels at each Nth node for easier reference.
Color-coding of PoCs and lines either by EMA 12 / 21 trend regime or by up/down PoC drift.
Reading PoC migration and market pressure
Side profile as a pressure map
The side profile shows where trading has been most active:
Thick, opaque bars represent high volume zones and possible high interest or acceptance areas.
Thin, faint bars represent low volume zones, potential rejection or transition areas.
When price trades near a high volume bin, the market is sitting on an area of prior acceptance and size.
When price moves quickly through low volume bins, it often does so with less friction.
This gives you a static map of where the market has been willing to do business within your lookback.
PoC trail as a value migration map
The PoC chain represents "where value has lived" over time:
An upward sloping PoC trail indicates value migrating higher. Buyers have been willing to transact at increasingly higher prices.
A downward sloping trail indicates value migrating lower and sellers pushing the center of mass down.
A flat or oscillating trail indicates balance or rotational behaviour, with no clear directional acceptance.
Taken together, you can interpret:
Side profile as "where the volume mass sits", a static pressure field.
PoC trail as "how that mass has moved", the dynamic path of value.
Trend heatmap as a regime overlay
When PoCs are colored by the EMA 12 / 21 spread:
Green PoCs mark segments where the faster EMA is above the slower EMA, that is, a local uptrend regime.
Red PoCs mark segments where the faster EMA is below the slower EMA, that is, a local downtrend regime.
Gray PoCs mark flat or ambiguous trend segments.
This lets you answer questions like:
"Is value migrating higher while the trend regime is also up?" (trend confirming value).
"Is value migrating higher but most PoCs are red?" (value against the prevailing trend).
"Has value started to roll over just as PoCs flip from green to red?" (early regime transition).
Key settings
General Settings
Lookback Bars - how many bars back to use for both the global volume profile and segment profiles.
Number of Bins - how many price bins to split the high to low range into.
Profile Settings
Show Side Profile - toggle the right-hand volume profile on or off.
Profile Width (%) - how wide the largest volume bar is allowed to be in terms of bars.
Base Profile Color - the starting color for profile bars, with transparency.
Show Volume Values - if enabled, print volume and percent for each non-zero bin.
Profile Text Color - color for volume text inside the profile.
PoC Migration Settings
Show PoC Migration - toggle the PoC trail plotting.
Bars per Segment - the number of bars contained in each segment.
Number of Segments - how many segments to build backwards from the current bar.
Horizontal Spacing (bars) - spacing between PoC nodes when drawn. (Used to separate PoCs horizontally.)
Label Every Nth PoC - draw labels at every Nth PoC (0 or 1 to suppress labels).
Right Offset (bars) - horizontal offset to anchor the side profile on the right.
Up PoC Color - color used when a PoC is higher than the previous one, if trend heatmap is off.
Down PoC Color - color used when a PoC is lower than the previous one, if trend heatmap is off.
Flat PoC Color - color used when the PoC is unchanged, if trend heatmap is off.
PoC Label Background - background color for PoC labels.
Trend Heatmap Settings
Color PoCs By Trend (EMA 12 / 21) - when enabled, overrides simple up/down coloring and uses EMA-based trend colors.
Fast EMA - length for the fast EMA.
Slow EMA - length for the slow EMA.
Trend Up Color - color for PoCs in a bullish EMA regime.
Trend Down Color - color for PoCs in a bearish EMA regime.
Trend Flat Color - color for neutral or flat EMA regimes.
Trading applications
1) Value migration and trend confirmation
Use the PoC path to see if value is following price or lagging it:
In a healthy uptrend, price, PoCs, and trend regime should all lean higher.
In a weakening trend, price may still move up, but PoCs flatten or start drifting lower, suggesting fewer participants are accepting the new highs.
In a downtrend, persistent downward PoC migration confirms that sellers are winning the value battle.
2) Identifying acceptance and rejection zones
Combine the side profile with PoC locations:
High volume bins near clustered PoCs mark strong acceptance zones, good areas to watch for re-tests and decision points.
PoCs that quickly jump across low volume areas can indicate rejection and fast repricing between value zones.
High volume zones with mixed PoC colors may signal balance or prolonged negotiation.
3) Structuring entries and exits
Use the map to refine trade location:
Fade trades against value migration are higher risk unless you see clear signs of exhaustion or regime change.
Pullbacks into prior PoC zones in the direction of the current PoC slope can offer higher quality entries.
Stops placed beyond major accepted zones (clusters of PoCs and high volume bins) are less likely to be hit by random noise.
4) Regime transitions
Watch how PoCs behave as the EMA regime changes:
A flip in EMA 12 versus EMA 21, coupled with a turn in PoC slope, is a strong signal that value is beginning to move with the new trend.
If EMAs flip but PoC migration does not follow, the trend signal may be early or false.
A weakening PoC path (lower highs in PoCs) while trend colors are still green can warn of a late-stage trend.
Best practices
Start with a moderate lookback such as 200 to 300 bars and a moderate bin count such as 20 to 40. Too many bins can make the profile overly granular and sparse.
Align "Bars per Segment" with your trading horizon. For example, 5 to 10 bars for intraday, 10 to 20 bars for swing.
Use the profile and PoC trail as structural context rather than as a direct buy or sell signal. Combine with your existing setups for timing.
Pay attention to clusters of PoCs at similar prices. Those are areas where the market has repeatedly accepted value, and they often matter on future tests.
Notes
This is a structural volume tool, not a complete trading system. It does not manage execution, position sizing or risk management. Use it to understand:
Where the bulk of trading has occurred in your chosen window.
How the center of volume has migrated over time.
Whether that migration is aligned with or fighting the current trend regime.
By turning PoC evolution into a visible path and adding a trend-aware heatmap, the PoC Migration Map makes it easier to see how value has been moving, where the market is likely to feel "heavy" or "light", and how that structure fits into your trading decisions.
Macros+AMD [NW]Macros + AMD - Daily & Weekly Time-Based Analysis
Multi-timeframe AMD (Accumulation, Manipulation, Distribution) visualization with ICT Macro timing windows for time-based market analysis.
Overview
This indicator visualizes the AMD (Accumulation, Manipulation, Distribution) framework on both daily and weekly timeframes, combined with ICT Macro timing windows. It is designed as an educational tool to help traders study time-based market structure and algorithmic price delivery concepts.
The AMD model is based on the idea that markets move through distinct phases within each trading period:
Accumulation (A) - Initial range formation, liquidity building
Manipulation (M) - False moves to trap traders, liquidity sweeps
Distribution (D) - True directional move, price delivery to targets
What This Indicator Displays
Daily AMD Phases
Displays the intraday AMD cycle based on New York trading hours:
A Phase (Blue): 4:00 AM - 8:35 AM EST — Morning accumulation, Asian/London overlap
M Phase (Red): 8:35 AM - 11:25 AM EST — NY session manipulation, news events
D Phase (Green): 11:25 AM - 4:00 PM EST — Afternoon distribution and price delivery
Weekly AMD Phases
Displays the weekly AMD cycle from Monday to Monday:
A Phase: Monday 00:00 - Tuesday 21:56 EST — Weekly high/low formation begins
M Phase: Tuesday 21:56 - Thursday 02:04 EST — Mid-week reversal zone
D Phase: Thursday 02:04 - Monday 00:00 EST — Weekly price delivery
Inner M Phase Fibs
When enabled, subdivides the M (Manipulation) phase using Fibonacci levels:
0.382 level — Inner accumulation ends
0.500 level — Mid-point of manipulation
0.618 level — Inner distribution begins
This helps identify potential reversal points within the manipulation phase.
ICT Macro Windows
Horizontal lines marking the XX:42 to XX:15 macro periods (33-minute windows):
2:42 - 3:15 AM
3:42 - 4:15 AM (London)
7:42 - 8:15 AM
8:42 - 9:15 AM
9:42 - 10:15 AM (Prime AM session)
10:42 - 11:15 AM
11:42 - 12:15 PM
12:42 - 1:15 PM
1:42 - 2:15 PM
2:42 - 3:15 PM
These windows represent times when algorithmic price delivery is more likely to occur.
How To Use
Understanding the AMD Framework
During the A Phase:
Observe range formation and initial liquidity pools
Note the high and low established during this phase
Wait for manipulation before committing to direction
During the M Phase:
Watch for false breakouts and stop hunts
Look for reversal patterns after liquidity sweeps
The inner fibs (0.382, 0.5, 0.618) can help time entries within this phase
Mid-week (Wednesday) often sees key reversals on weekly AMD
During the D Phase:
This is typically when the true move occurs
Price tends to deliver toward draw on liquidity targets
The direction is often opposite to the manipulation move
Using the Macro Windows
The XX:42 to XX:15 windows are times to pay attention to price action:
These 33-minute periods often see increased algorithmic activity
Look for displacement, fair value gaps, or order blocks forming
The 9:42-10:15 AM window is considered particularly significant for NY session
Weekly Day Labels
Monday/Tuesday: "H/L of Week" — Watch for weekly high or low formation
Wednesday: "Reversal Day" — Mid-week reversal probability increases
Thursday/Friday: "Reversal Day" — Continuation or secondary reversal
Settings Guide
Main Settings
Timezone: Set to your broker's timezone or preferred timezone
Macros On Top: Toggle macro lines above or below AMD boxes
Show All Text Labels: Master toggle for all text (turn off for clean charts on HTF)
Daily/Weekly AMD
Show: Enable/disable the AMD visualization
Opacity: Adjust transparency of the phase boxes (higher = more transparent)
AMD Colors
Customize colors for each phase (A, M, D)
Default: Blue (A), Red (M), Green (D)
Inner M Style
Customize the inner M phase fib lines and text colors
Default: Black lines for clean visibility
Macro Settings
Adjust macro line color and thickness
Toggle individual macro windows on/off
Important Notes
This indicator is for educational purposes and time-based analysis
It does not provide buy/sell signals
Always use in conjunction with proper price action analysis
Past price behavior during these time windows does not guarantee future results
The AMD framework is one lens for viewing market structure — use it as part of a complete methodology
Credits
This indicator is based on concepts taught by ICT (Inner Circle Trader) and the broader Smart Money Concepts community. The AMD framework, macro timing windows, and weekly profile concepts are derived from this educational methodology.
Timeframe Recommendations
Best viewed on 1-minute to 15-minute charts
Text labels automatically hide on 9-minute and higher timeframes for cleaner visualization
Indicator hides completely on 1-hour and higher timeframes
Changelog
v1.0 - Initial release
Daily AMD phases (4am-4pm EST)
Weekly AMD phases (Monday-Monday)
Inner M phase Fibonacci subdivisions
10 ICT Macro timing windows
Full customization options
Automatic 9-day cleanup
Bollinger Bands Delta Matrix Analytics [BDMA] Bollinger Bands Delta Matrix Analytics (BDMA) v7.0
Deep Kinetic Engine – 5x8 Volatility & Delta Decision Matrix
1. Introduction & Concept
Bollinger Bands Delta Matrix Analytics (BDMA) v7.0 is an analytical framework that merges:
- Spatial analysis via Bollinger Bands (%B location),
- with a 4-factor Deep Kinetic Engine based on:
• Total Volume
• Buy Volume
• Sell Volume
• Delta (Buy – Sell) Z-Scores
and converts them into an expanded 5×8 decision matrix that continuously tracks where price is trading and how the underlying orderflow is behaving.
BDMA is not a trading system or strategy. It does not generate entry/exit signals.
Instead, it provides a structured contextual map of volatility, volume, and delta so traders can:
- identify climactic extensions vs. fakeouts,
- distinguish strong initiative moves vs. passive absorption,
- and detect squeezes, traps, and liquidity voids with a unified visual dashboard.
2. Spatial Engine – Bollinger S-States (S1–S5)
The spatial dimension of BDMA comes from classic Bollinger Bands.
Price location is expressed as Percent B (%B) and mapped into 5 spatial states (S-States):
S1 – Hyper Extension (Above Upper Band)
Price has pushed beyond the upper Bollinger Band.
Often associated with parabolic or blow-off behavior, late-stage momentum, and elevated reversal risk.
S2 – Resistance Test (Upper Zone)
Price trades in the upper Bollinger region but remains inside the bands.
Represents a sustained test of resistance, typically within an established or emerging uptrend.
S3 – Neutral Zone (Middle)
Price hovers around the mid-band.
This is the mean reversion gravity field where the market often consolidates or transitions between regimes.
S4 – Support Test (Lower Zone)
Price trades in the lower Bollinger region but inside the bands.
Represents a sustained test of support within range or downtrend structures.
S5 – Hyper Drop (Below Lower Band)
Price extends below the lower Bollinger Band.
Often aligned with panic, forced liquidations, or capitulation-type behavior, with increased snap-back risk.
These 5 S-States define the vertical axis (rows) of the BDMA matrix.
3. Deep Kinetic Engine – 4-Factor Z-Score & D-States (D1–D8)
The Deep Kinetic Engine transforms raw volume and delta into standardized Z-Scores to measure how abnormal current activity is relative to its recent history.
For each bar:
- Raw Buy Volume is estimated from the candle’s position within its range
- Raw Sell Volume is complementary to buy volume
- Raw Delta = Buy Volume – Sell Volume
- Total Volume = Buy Volume + Sell Volume
These 4 series are then normalized using a unified Z-Score lookback to produce:
1. Z_Vol_Total – overall activity and liquidity intensity
2. Z_Vol_Buy – aggression from buyers (attack)
3. Z_Vol_Sell – aggression from sellers (defense or attack)
4. Z_Delta – net victory of one side over the other
Thresholds for Extreme, Significant, and Neutral Z-Score levels are fully configurable, allowing you to tune the sensitivity of the kinetic states.
Using Z_Vol_Total and Z_Delta (plus threshold logic), BDMA assigns one of 8 Deep Kinetic states (D-States):
D1 – Climax Buy
Extreme Total Volume + Extreme Positive Delta → Buying climax or blow-off behavior.
D2 – Strong Buy
High Volume + High Positive Delta → Confirmed bullish initiative activity.
D3 – Weak Buy / Fakeout
Low Volume + High Positive Delta → Bullish delta without commitment, low-liquidity breakout risk.
D4 – Absorption / Conflict
High Volume + Neutral Delta → Aggressive two-way trade, strong absorption, war zone behavior.
D5 – Neutral
Low Volume + Neutral Delta → Low-energy environment with low conviction.
D6 – Weak Sell / Fakeout
Low Volume + High Negative Delta → Bearish delta without commitment, low-liquidity breakdown risk.
D7 – Strong Sell
High Volume + High Negative Delta → Confirmed bearish initiative activity.
D8 – Capitulation
Extreme Volume + Extreme Negative Delta → Panic selling or capitulation regime.
These 8 D-States define the horizontal axis (columns) of the BDMA matrix.
4. The 5×8 BDMA Decision Matrix
The core of BDMA is a 5×8 matrix where:
- Rows (1–5) = Spatial S-States (S1…S5)
- Columns (1–8) = Kinetic D-States (D1…D8)
Each of the 40 possible combinations (SxDy) is pre-computed and mapped to:
- a Status or Regime Title (for example: Climax Breakout, Bear Trap Spring, Capitulation Breakdown),
- a Bias (Climactic Bull, Neutral, Strong Bear, Conflict or Reversal Risk, and similar labels),
- and a Strategic Signal or Consideration (for example: High reversal risk, Wait for confirmation, Low probability zone – avoid).
Internally, BDMA resolves all 40 regimes so the current state can be displayed on the dashboard without performance overhead.
5. Key Regime Families (How to Read the Matrix)
5.1. Breakouts and Breakdowns
Climax Breakout (Top-side)
Spatial S1 with Kinetic D1 or D2
Bias: Explosive or Extreme Bull
Signal:
- Strong or climactic upside extension with abnormal bullish orderflow.
- Trend continuation is possible, but reversal risk is extremely high after blow-off phases.
Low-Conviction Breakout (Fakeout Risk)
S1 with D3 (Weak Buy, low liquidity)
Bias: Weak Bull – Caution
Signal:
- Breakout not supported by volume.
- Elevated risk of failed auction or bull trap.
Capitulation Breakdown (Bottom-side)
Spatial S5 with Kinetic D8
Bias: Climactic Bear (panic)
Signal:
- Capitulation-type selling or forced liquidations.
- Trend can still proceed, but snap-back or violent short-covering risk is high.
Initiative Breakdown vs. Weak Breakdown
- Strong, high-volume breakdown typically corresponds to D7 (Strong Sell).
- Low-volume breakdown often corresponds to D6 (Weak Sell or Fakeout) with potential for failure.
5.2. Absorption, Traps and Springs
Absorption at Resistance (Top-side conflict)
S1 or S2 with D4 (Absorption or Conflict)
Bias: Conflict – Extreme Tension
Signal:
- Heavy two-way trade near resistance.
- Potential distribution or reversal if sellers begin to dominate.
Bull Trap or Failed Auction
Typically S1 with D6 (Weak Sell breakdown behavior after a top-side attempt)
Indicates a breakout attempt that fails and reverses, often after poor liquidity structure.
Absorption at Support and Bear Trap (Spring)
S4 or S5 with D4 or D3
Bias: Conflict or Weak Bear – Reversal Risk
Signal:
- Aggressive buying into lows (spring or shakeout behavior).
- Potential bear trap if price reclaims lost territory.
5.3. Trend Phases
Strong Uptrend Phases
Typically seen when S2–S3 combine with strong bullish kinetic behavior.
Bias: Strong or Extreme Bull
Signal:
- Pullbacks into S3 or S4 with supportive kinetic states often act as trend continuation zones.
Strong Downtrend Phases
Typically seen when S3–S4 combine with strong bearish kinetic behavior.
Bias: Strong or Extreme Bear
Signal:
- Rallies into resistance with strong bearish kinetic backing may act as continuation sell zones.
5.4. Neutral, Exhaustion and Squeeze
Exhaustion or Liquidity Void
S1 or S5 with D5 (Neutral kinetics)
Bias: Neutral or Exhaustion
Signal:
- Spatial extremes without kinetic confirmation.
- Often marks the end of a move, with poor follow-through.
Choppy, Low-Activity Range
S3 with D5
Bias: Neutral
Signal:
- Low volume, low conviction market.
- Typically a low-probability environment where standing aside can be logical.
Squeeze or High-Tension Zone
S3 with D4 or tightly clustered kinetic values
Bias: Conflict or High Tension
Signal:
- Hidden battle inside a volatility contraction.
- Often precedes large directionally-biased moves.
6. Dashboard Layout & Reading Guide
When Show Dashboard is enabled, BDMA displays:
1. Title and Status Line
Name of the current regime (for example: Climax Breakout, Bear Trap Spring, Mean Reversion).
2. Bias Line
Plain-language summary of directional context such as Climactic Bull, Strong Bear, Neutral, or Conflict and Reversal Risk.
3. Signal or Strategic Notes
Concise guidance focused on risk and context, not entries. For example:
- High reversal risk – aggressive traders only
- Wait for confirmation (break or rejection)
- Low probability zone – avoid taking new positions
4. Kinetic Profile (4-Factor Z-Score)
Shows the current Z-Scores for Total Volume (Activity), Buy Volume (Attack), Sell Volume (Defense), and Delta (Net Result).
5. Matrix Heatmap (5×8)
Visual representation of S-State vs. D-State with color coding:
- Bullish clusters in a green spectrum
- Bearish clusters in a red spectrum
- Conflict or exhaustion zones in yellow, amber, or neutral tones
The dashboard can be repositioned (top right, middle right, or bottom right) and its size can be adjusted (Tiny, Small, Normal, or Large) to fit different layouts.
7. Inputs & Customization
7.1. Core Parameters (Bollinger and Z-Score)
- Bollinger Length and Standard Deviation define the spatial engine.
- Z-Score Lookback (All Factors) defines how many bars are used to normalize volume and delta.
7.2. Deep Kinetic Thresholds
- Extreme Threshold defines what is considered climactic (D1 or D8).
- Significant Threshold distinguishes strong initiative vs. weak or fakeout behavior.
- Neutral Threshold is the band within which delta is treated as neutral.
These thresholds allow you to tune the sensitivity of the kinetic classification to fit different timeframes or instruments.
7.3. Calculation Method (Volume Delta)
Geometry (Approx)
- Fast, non-repainting approach based on candle geometry.
- Suitable for most users and real-time decision-making.
Intrabar (Precise)
- Uses lower-timeframe data for more precise volume delta estimation.
- Intrabar mode can repaint and requires compatible data and plan support on the platform.
- Best used for post-analysis or research, not blind automation.
7.4. Visuals and Interface
- Toggle Bollinger Bands visibility on or off.
- Switch between Dark and Light color themes.
- Configure dashboard visibility, matrix heatmap display, position, and size.
8. Multi-Language Semantic Engine (Asia and Middle East Focus)
BDMA v7.0 includes a fully integrated multi-language layer, targeting a wide geographic user base.
Supported Languages:
English, Türkçe, Русский, 简体中文, हिन्दी, العربية, فارسی, עברית
All dashboard labels, regime titles, bias descriptions, and signal texts are dynamically translated via an internal dictionary, while semantic meaning is kept consistent across languages.
This makes BDMA suitable for multi-language communities, study groups, and educational content across different regions.
However, due to the heavy computational load of the Deep Kinetic Engine and TradingView’s strict Pine Script execution limits, it was not possible to expand support to additional languages. Adding more translation layers would significantly increase memory usage and exceed runtime constraints. For this reason, the current language set represents the maximum optimized configuration achievable without compromising performance or stability.
9. Practical Usage Notes
BDMA is most powerful when used as a contextual overlay on top of market structure (HH, HL, LH, LL), higher-timeframe trend, key levels, and your own execution framework.
Recommended usage:
- Identify the current regime (Status and Bias).
- Check whether price location (S-State) and kinetic behavior (D-State) agree with your trade idea.
- Be especially cautious in climactic and absorption or conflict zones, where volatility and risk can be elevated.
Avoid treating BDMA as an automatic green equals buy, red equals sell tool.
The real edge comes from understanding where you are in the volatility or kinetic spectrum, not from forcing signals out of the matrix.
10. Limitations & Important Warnings
BDMA does not predict the future.
It organizes current and recent data into a structured context.
Volume data quality depends on the underlying symbol, exchange, and broker feed.
Forex, crypto, indices, and stocks may all behave differently.
Intrabar mode can repaint and is sensitive to lower-timeframe data availability and your plan type.
Use it with extra caution and primarily for research.
No indicator can remove the need for clear trading rules, disciplined risk management, and psychological control.
11. Disclaimer
This script is provided strictly for educational and analytical purposes.
It is not a trading system, signal service, financial product, or investment advice.
Nothing in this indicator or its description should be interpreted as a recommendation to buy or sell any asset.
Past behavior of any indicator or market pattern does not guarantee future results.
Trading and investing involve significant risk, including the risk of losing more than your initial capital in leveraged products.
You are solely responsible for your own decisions, risk management, and results.
By using this script, you acknowledge that you understand these risks and agree that the author or authors and publisher or publishers are not liable for any loss or damage arising from its use.
HL/LH Confirmation Strategy (Clean Market Structure)🚦 HL/LH Confirmation Strategy (Clean Market Structure)
This indicator is specifically designed to help traders identify a clean market structure by tracking the formation of Higher Lows (HL) and Lower Highs (LH). Rather than chasing new price extremes (new Highs or new Lows), the focus is on waiting for trend strength confirmation before considering an entry.
Key Strategy: Waiting for Trend Confirmation 💡
The core advantage of this indicator lies in its confirmation strategy:
For Uptrends (Bullish): The indicator doesn't signal just any low, but only when it detects a Higher Low (HL)—a low that is higher than the previous low. This is a crucial sign that the market has defended a level and is ready to continue moving up. This approach helps avoid chasing new lows and encourages entering trades after confirmation.
For Downtrends (Bearish): Similarly, the indicator looks for the formation of a Lower High (LH)—a high that is lower than the previous high. This suggests that buyers failed to breach the last resistance, signaling a potential continuation of the downside movement.
The indicator alternates between looking for an HL, then an LH, then an HL, visually mapping the Pivot swings and highlighting the moment of trend confirmation for potential trade entries.
Indicator Features ✨
Clear Structure Display: By drawing connecting lines between valid HL and LH points, the indicator visually maps the current market structure.
Pivot Detection: It uses an effective method for Pivot detection, with the sensitivity adjustable via the "Pivot Left" and "Pivot Right" parameters.
Custom Label Placement (Crucial Detail):
HL Label: Placed below the candle for better visual clarity of the bullish support area.
LH Label: Placed above the candle for better visual clarity of the bearish resistance area.
Customizable Colors: Full control over the background and text colors for HL and LH signals, as well as the thickness and color of the connecting lines between Pivot points.
⚙️ Input Parameters
Pivot Settings
Pivot Left / Pivot Right: Determine the number of bars to the left and right that must have lower/higher prices for a point to be declared a valid Pivot (Pivot High or Pivot Low). Increase these values to detect more significant, longer-term swings.
Signal Colors
HL Background/Text Color: Colors for the background and text of the Higher Low (HL) labels.
LH Background/Text Color: Colors for the background and text of the Lower High (LH) labels.
Line Settings
Line Color / Line Width: Allows customization of the appearance of the line connecting the detected HL and LH points.
Recommended Use
This indicator is ideal for traders practicing Price Action and strategies based on Market Structure. Use the HL signals as potential zones for long entries (buying) in an uptrend, and LH signals as zones for short entries (selling) in a downtrend, always after the point formation is confirmed.
FRAN CRASH PLAY RULESPurpose
It creates a fixed information panel in the top right corner of your chart that shows the "FRAN CRASH PLAY RULES" - a checklist of criteria for identifying potential crash play setups.
Key Features
Display Panel:
Shows 5 trading rules as bullet points
Permanently visible in the top right corner
Stays fixed while you scroll or zoom the chart
Current Rules Displayed:
DYNAMIC 3 TO 5 LEG RUN
NEAR VERTICAL ACCELERATION
FINAL BAR OF THE RUN UP MUST BE THE BIGGEST
3 FINGER SPREAD / DUAL SPACE
ATLEAST 2 OF 5 CRITERIA NEEDS TO HIT
Customization Options:
Editable Text - Change any of the 5 rules through the settings
Text Color - Adjust the color of the text
Text Size - Choose from tiny, small, normal, large, or huge
Background Color - Customize the panel background and transparency
Frame Color - Change the border color
Show/Hide Frame - Toggle the border on or off
Use Case
This indicator serves as a constant visual reminder of your trading strategy criteria, helping you stay disciplined and only take trades that meet your specific crash play requirements. It's essentially a "cheat sheet" that lives on your chart so you don't have to memorize or look elsewhere for your trading rules.






















