Price action plus//The system combines the divergence of A/D and OBV with identifying reversal points using Japanese candlestick patterns, creating an enhanced version of price action. This helps investors more easily and accurately recognize reversal patterns in technical analysis.
Divergence of A/D vs. OBV includes:
Positive divergence: Identifies smart money leaving the market.
Negative divergence: Identifies smart money entering the market.
Reversal candlestick patterns include:
Buy signals: Morning Star, Bullish Engulfing, Hammer.
Strong Buy signals: Buy signals + Negative divergence
Sell signals: Evening Star, Bearish Engulfing, Shooting Star.
Strong Sell signals : Sell signals + Positive divergence
//Hope this system will be helpful for you!
Indicators and strategies
Swing Option for individual stocks Focusing on individual stocks not SPY or QQQ
Use 4 hours as time chart to use the script
It is for the swing option trade
It is easy to understand since the sell and buy signal are very clear
Please common below if you have any questions
VWAP + RSI Divergence Intraday
VWAP for trend confirmation
RSI divergence detection
Entry signals when price breaks above VWAP with increasing volume
Stop-loss & take-profit levels
SPY QQQ DayTrade Final - 5 Bars CooldownFocusing on trading SPY and QQQ
Users should look at into 3/5 mins chart, please do not go to less than 3 mins chart
It it use for the day trade instead of swing trade
This should be very easy to use and understand
Please common below if you have any questions
Fibonacci BB Strategy with RSI + 2% Exit📈 Fibonacci BB Strategy with RSI + 2% Exit
This TradingView strategy combines Fibonacci Bollinger Bands (FBB) with Relative Strength Index (RSI) and a fixed 2% profit-taking mechanism to generate long and short trading signals. It’s designed for traders who want to capitalize on strong price movements with clear trend signals and smart exit logic.
🔍 What This Strategy Does
This script enters trades based on breakouts from a custom Bollinger Band derived from the VWMA (Volume Weighted Moving Average) and standard deviation, using the full 1.0 Fibonacci level. It then exits positions based on either:
A fixed 2% profit target, or
RSI-based reversal signals to lock in profits or limit downside.
📐 Indicator Components
VWMA Basis Line (Fuchsia)
A 200-period Volume Weighted Moving Average (VWMA), which forms the central basis of the Fibonacci Bollinger Bands. This line adjusts dynamically with volume, giving a better representation of trend direction in actively traded markets.
Upper Band (Red)
Calculated as: VWMA + (1 × standard deviation)
Represents a potential resistance or breakout trigger.
Lower Band (Green)
Calculated as: VWMA - (1 × standard deviation)
Represents a potential support or breakdown trigger.
RSI (Relative Strength Index)
A 14-period RSI is used to filter exits when momentum weakens:
RSI < 30 signals oversold (potential long exit).
RSI > 70 signals overbought (potential short exit).
🎯 Trade Entry Logic
Long Entry:
Triggered when the closing price crosses above the Upper Band (red).
Interpreted as bullish momentum strong enough to break resistance.
Short Entry:
Triggered when the closing price crosses below the Lower Band (green).
Interpreted as bearish momentum breaking through support.
🚪 Trade Exit Logic
Profit Target (2%):
For long positions: closes trade when price increases 2% above entry.
For short positions: closes trade when price drops 2% below entry.
RSI-Based Exit:
Long position: Exit if RSI < 30 (momentum weakening).
Short position: Exit if RSI > 70 (momentum fading).
This two-pronged exit strategy ensures that trades are closed either when the target is hit or when momentum reverses, offering flexibility and risk control.
⚙️ Customizable Inputs
VWMA Length – Number of periods for VWMA (default: 200)
Source – Price source for VWMA and bands (default: HLC3)
Deviation Multiplier – Standard deviation multiplier (default: 3.0)
RSI Length – RSI period (default: 14)
Profit Target (%) – Fixed percentage profit target (default: 2.0%)
📌 Best Use Cases
Trend Breakout Strategy: Captures momentum moves as price breaks out of key VWMA-based levels.
Scalping and Swing Trades: Can work on intraday or higher timeframes.
Risk-Controlled Trading: Combines price action with momentum and fixed-profit rules.
✅ Visual Aids
Fuchsia Line: VWMA basis
Red Line: Upper Band (buy trigger)
Green Line: Lower Band (sell trigger)
These help you see when the strategy will enter or exit trades based on key technical levels.
Open Price on Selected TimeframeIndicator Name: Open Price on Selected Timeframe
Short Title: Open Price mtf
Type: Technical Indicator
Description:
Open Price on Selected Timeframe is an indicator that displays the Open price of a specific timeframe on your chart, with the ability to dynamically change the color of the open price line based on the change between the current candle's open and the previous candle's open.
Selectable Timeframes: You can choose the timeframe you wish to monitor the Open price of candles, ranging from M1, M5, M15, H1, H4 to D1, and more.
Dynamic Color Change: The Open price line changes to green when the open price of the current candle is higher than the open price of the previous candle, and to red when the open price of the current candle is lower than the open price of the previous candle. This helps users quickly identify trends and market changes.
Features:
Easy Timeframe Selection: Instead of editing the code, users can select the desired timeframe from the TradingView interface via a dropdown.
Dynamic Color Change: The color of the Open price line changes automatically based on whether the open price of the current candle is higher or lower than the previous candle.
Easily Track Open Price Levels: The indicator plots a horizontal line at the Open price of the selected timeframe, making it easy for users to track this important price level.
How to Use:
Select the Timeframe: Users can choose the timeframe they want to track the Open price of the candles.
Interpret the Color Signal: When the open price of the current candle is higher than the open price of the previous candle, the Open price line is colored green, signaling an uptrend. When the open price of the current candle is lower than the open price of the previous candle, the Open price line turns red, signaling a downtrend.
Observe the Open Price Levels: The indicator will draw a horizontal line at the Open price level of the selected timeframe, allowing users to easily monitor this important price.
Benefits:
Enhanced Technical Analysis: The indicator allows you to quickly identify trends and market changes, making it easier to make trading decisions.
User-Friendly: No need to modify the code; simply select your preferred timeframe to start using the indicator.
Disclaimer:
This indicator is not a complete trading signal. It only provides information about the Open price and related trends. Users should combine it with other technical analysis tools to make more informed trading decisions.
Summary:
Open Price on Selected Timeframe is a simple yet powerful indicator that helps you track the Open price on various timeframes with the ability to change colors dynamically, providing a visual representation of the market's trend.
Average Price Bar (APB) with Dynamic EMATrading Made Simple: APB + Dynamic EMA with Stochastic (8,3,3) Strategy
Introduction
The "Trading Made Simple" strategy, originally developed by BigE on ForexFactory in 2011, is a powerful yet straightforward approach to trading that combines price action, moving averages, and momentum indicators to identify high-probability setups. This enhanced version integrates:
Average Price Bar (APB) – A smoothed candlestick representation that filters market noise.
Dynamic EMA (5-period, HLC3-based) – Acts as a trend filter, changing color based on its position relative to price.
Stochastic (8,3,3) – A fast momentum oscillator to confirm overbought/oversold conditions.
Core Trading Rules (BigE's Original Concept)
Trend Direction: The EMA defines the trend (bullish if price is above, bearish if below).
Stochastic Confirmation:
Long Trades: Look for Stochastic crossing up from oversold (<20) while price is above the EMA.
Short Trades: Look for Stochastic crossing down from overbought (>80) while price is below the EMA.
APB as Entry Confirmation:
A bullish APB close above the EMA strengthens long signals.
A bearish APB close below the EMA strengthens short signals.
Why This Combination Works
APB + EMA provides a clean trend bias, reducing false signals.
Stochastic (8,3,3) adds momentum confirmation, ensuring entries are timed well.
The background color shift (green/red) makes trend reversals visually intuitive.
This system is ideal for swing traders and day traders looking for a rule-based, discretionary approach that removes emotional decision-making while keeping trading simple and effective.
Pivot Length Percentiles Oscillator# Pivot Length Percentiles Oscillator: Technical Mechanics Explained
## Introduction
The Pivot Length Percentiles Oscillator is a statistical approach to identifying potential market reversals by analyzing the distribution of price movements relative to pivot points. This publication explains the technical mechanics behind the indicator.
## Core Mechanics
### 1. Pivot Point Detection
The indicator begins by identifying significant pivot highs and lows using a user-defined lookback period:
- `lft`: Number of bars to the left of potential pivot point
- `rht`: Number of bars to the right of potential pivot point
These parameters determine how "significant" a pivot needs to be to qualify for analysis.
### 2. Distance Measurement & Historical Database
For each new pivot point identified, the indicator:
- Calculates the absolute price distance from the previous pivot of the same type
- Records the number of candles between consecutive pivots
- Stores these measurements in dynamic arrays that build a historical database
### 3. Statistical Distribution Analysis
Rather than using fixed values, the oscillator analyzes the complete distribution of historical pivot distances and calculates key percentile values:
- `lw` (Low Percentile): Lower boundary for statistical significance
- `md` (Mid Percentile): Median statistical boundary
- `hi` (High Percentile): Upper boundary for statistical extremes
### 4. Oscillator Construction
Two primary oscillator lines are calculated:
- Green line (`osc1`): Measures current price's fall below recent highs with `low - ta.highest(high, lft)`
- Red line (`osc2`): Measures current price's rise above recent lows with `high - ta.lowest(low, lft)`
### 5. Threshold Generation
The percentile values from the historical distribution create dynamic threshold lines:
- For downside movements: Scaled versions of the low percentile (`lw_distance_low`) and high percentile (`hi_distance_low`)
- For upside movements: Scaled versions of the low percentile (`lw_distance_high`) and high percentile (`hi_distance_high`)
### 6. Signal Logic
Entry signals are generated when:
- **Bullish Signal**: The downside oscillator crosses below a statistical threshold while price continues showing downward momentum (close < previous close AND close < previous open)
- **Bearish Signal**: The upside oscillator crosses above a statistical threshold while price continues showing upward momentum (close > previous close AND close > previous open)
### 7. Visualization Options
Users can toggle between:
- Standard view: Shows the oscillator and threshold lines
- Percentile view: Displays the current movement's percentile rank within the historical distribution
## Implementation Notes
- The indicator scales threshold values by 0.9 to create a slight buffer that reduces false signals
- The movement's continuation is confirmed by checking both close-to-close and close-to-open relationships
- Arrays dynamically update throughout the chart's history, making the indicator increasingly accurate as more data is processed
## Mathematical Framework
The core statistical function calculates percentiles using linear interpolation between values when needed:
```
calculate_percentile(array, percentile) =
sortedValue +
fraction * (sortedValue - sortedValue )
```
where `index = (array.size - 1) * percentile / 100`
This mathematical approach ensures the thresholds adapt dynamically to changing market conditions rather than relying on fixed values.
EMA + RSI + MACD + Support & Resistance Combined StrategyStrategy: Enhanced EMA + RSI + MACD + Support & Resistance
This strategy combines multiple technical indicators to create a robust system for identifying market opportunities. By leveraging Exponential Moving Averages (EMA), Relative Strength Index (RSI), and Moving Average Convergence Divergence (MACD) for trend confirmation, along with Support and Resistance levels to trigger breakout trades, this strategy aims to capture both trending and breakout movements.
Indicators Used:
EMA (5, 20, 50, 200): Helps identify the prevailing market trend, with short-term EMAs crossing longer-term ones as signals of trend shifts.
RSI (14): Confirms whether the market is in a bullish (RSI > 50) or bearish (RSI < 50) zone, adding additional filter to entries.
MACD (12, 26, 9): Used to confirm the momentum, where a MACD line crossing above the signal line indicates a bullish signal and vice versa for bearish.
Breakout Strategy (Support & Resistance):
Support & Resistance levels are dynamically calculated based on a user-defined period.
Buy Condition: Triggered when price breaks above resistance and confirms bullish indicators (EMA, RSI, MACD).
Sell Condition: Triggered when price breaks below support and confirms bearish indicators (EMA, RSI, MACD).
Exits & Risk Management:
Trailing Stop: A trailing stop is applied to lock in profits as the price moves in favor of the trade. The stop is dynamically adjusted with the market price, providing better protection during strong trends.
Stop Loss: The stop loss is set at key support and resistance levels to ensure a safe exit if the market moves against the trade.
This strategy aims to provide more frequent entries, take advantage of breakouts, and effectively manage risk with trailing stops. It is suitable for traders looking to capture both trends and breakouts across various timeframes.
Support and Resistance Entry/ExitThis Pine Script strategy uses Support and Resistance levels for entry and exit:
Buy Signal: Enter a long position when the price breaks above the Resistance (pivotHigh).
Sell Signal: Enter a short position when the price breaks below the Support (pivotLow).
Exit Conditions:
Exit the long position when the price hits the Support.
Exit the short position when the price hits the Resistance.
Volatility Layered Supertrend [NLR]We’ve all used Supertrend, but do you know where to actually enter a trade? Volatility Layered Supertrend (VLS) is here to solve that! This advanced trend-following indicator builds on the classic Supertrend by not only identifying trends and their strength but also guiding you to the best trade entry points. VLS divides the main long-term trend into “Strong” and “Weak” Zones, with a clear “Trade Entry Zone” to help you time your trades with precision. With layered trends, dynamic profit targets, and volatility-adaptive bands, VLS delivers actionable signals for any market.
Why I Created VLS Over a Plain Supertrend
I built VLS to address the gaps in traditional Supertrend usage and make trade entries clearer:
Single-Line Supertrend Issues: The default Supertrend sets stop-loss levels that are too wide, making it impractical for most traders to use effectively.
Unclear Entry Points: Standard Supertrend doesn’t tell you where to enter a trade, often leaving you guessing or entering too early or late.
Multi-Line Supertrend Enhancement: Many traders use short, medium, and long Supertrends, which is helpful but can lack focus. In VLS, I include Short, Medium, and Long trends (using multipliers 1 to 3), and add multipliers 4 and 5 to track extra long-term trends—helping to avoid fakeouts that sometimes occur with multiplier 3.
My Solution: I focused on the main long-term Supertrend and split it into “Weak Zone” and “Strength Zone” to show the trend’s reliability. I also defined a “Trade Entry Zone” (starting from the Mid Point, with the first layer’s background hidden for clarity) to guide you on where to enter trades. The zones include Short, Medium, and Long Trend layers for precise entries, exits, and stop-losses.
Practical Trading: This approach provides realistic stop-loss levels, clear entry points, and a “Profit Target” line that aligns with your risk tolerance, while filtering out false signals with longer-term trends.
Key Features
Layered Trend Zones: Short, Medium, Long, and Extra Long Trend layers (up to multipliers 4 and 5) for timing entries and exits.
Strong & Weak Zones: See when the trend is reliable (Strength Zone) or needs caution (Weak Zone).
Trade Entry Zone: A dedicated zone starting from the Mid Point (first layer’s background hidden) to show the best entry points.
Dynamic Profit Targets: A “Profit Target” line that adjusts with the trend for clear goals.
Volatility-Adaptive: Uses ATR to adapt to market conditions, ensuring reliable signals.
Color-Coded: Green for uptrends, red for downtrends—simple and clear.
How It Works
VLS enhances the main long-term Supertrend by dividing it into two zones:
Weak Zone: Indicates a less reliable trend—use tighter stop-losses or wait for the price to reach the Trade Entry Zone.
Strength Zone: Signals a strong trend—ideal for entries with wider stop-losses for bigger moves.
The “Trade Entry Zone” starts at the Mid Point (last layer’s background hidden for clarity), showing you the best area to enter trades. Each zone includes Short, Medium, Long, and Extra Long Trend sublevels (up to multipliers 4 and 5) for precise trade timing and to filter out fakeouts. The “Profit Target” updates dynamically based on trend direction and volatility, giving you a clear goal.
How to Use
Spot the Trend: Green bands = buy, red bands = sell.
Check Strength: Price in Strength Zone? Trend’s reliable—trade confidently. In Weak Zone? Use tighter stops or wait.
Enter Trades: Use the “Trade Entry Zone” (from the Mid Point upward) for the best entry points.
Use Sublevels: Short, Medium, Long, and Extra Long layers in each zone help fine-tune entries and exits.
Set Targets: Follow the Profit Target line for goals—it updates automatically.
Combine Tools: Pair with RSI, MACD, or support/resistance for added confirmation.
Settings
ATR Length: Adjust the ATR period (default 10) to change sensitivity.
Up/Down Colors: Customize colors—green for up, red for down, by default.
M.G.O Receptor RSIIt is possible to conclude that the Primary RSI is responsible for inserting each block of information in the field represented by the Cartesian scale of the price and time forces, thus complying with its ordinary programming of information organization.
The equation;
1
f = ----
P
It says that the frequency is inversely proportional to the period.
Considering the idea that oscillatory waves (line graph) are the ex-pressure of what occurs in the MGO (on graph matrix), it is correct to state that the wave events of a common periodic wave can be easily reproduced in the M.G.O proposal, because the blocks are events (f) separated and organized by the time force (P).
Notice that the "NODE" or on the other hand the BLOCK that forms the M.G.O. are the same phenomena when transmuted to the conception of idea, waves.
My diligence is to show you that the G.M.O. is expressed graphically in accordance with already known physical guidelines.
So it is correct to say that just as in physics an oscillatory wave event or events that remedy the name of frequency is thus separated by another force, that is, the period in which we understand that the tool that separates and organizes the oscillation events when it was standardized by Wilder in model 14 as prototyping of action within the RSI. This mathematical indicator is intended to demonstrate by capturing through the precise calculations of the averages using the following mathematical formula; average of n positive time-frames RS = --------------------------------------------- average of n negative time-frames So it is thus defined that the period is the RSI tool/programming acting in the organization of the blocks that make up the ON - MGO graphic matrix.
levels and eqsGenerates Range & EQ levels and removes duplicates. Prioritizes by higher timeframe for duplicates. For example, on Monday's open, weekly open is displayed while daily open is hidden automatically.
Original rumpypumpydumpy
TJR Strategy Ultimate ProAll done — your TJR Strategy Ultimate indicator is now fully coded and live in the canvas.
This version includes:
Liquidity sweeps
OB and FVG zones
Session filter
RSI + multi-timeframe bias
Alerts + webhook formatting
Auto-drawing Entry / SL / TP boxes
Dashboard panel
Previous session highs/lows & equal highs/lows
Estrategia EMA + RSIElser Senior Strategy: A Precise Approach to Profitable Trading
The Elser Senior strategy is designed for traders looking to take advantage of the best market opportunities with a robust technical approach. Using a combination of Exponential Moving Averages (EMA) and the Relative Strength Index (RSI), this strategy identifies key entry and exit points, allowing you to maximize profits and minimize risks.
Short and Long EMAs: Accurately detect the market trend, providing clear buy and sell signals.
RSI: Filters out false breakouts, focusing on overbought and oversold levels for more informed decision-making.
Customizable Stop Loss and Take Profit: Protects your capital with risk management settings tailored to your needs. Set a personalized Stop Loss and TP/SL ratio, optimizing your chances of success.
This strategy works across the most popular timeframes: 15 minutes, 1 hour, 4 hours, and 1 day, allowing you to adapt to different trading styles, from intraday to long-term positions.
Ideal for Forex, Indices, Commodities, and Cryptocurrencies, the Elser Senior Strategy has been crafted for serious traders seeking consistency and reliability in their operations. With a clear and easy-to-follow structure, it is perfect for both novice and experienced traders.
Follow the signals, optimize your risk management, and achieve successful trading with Elser Senior!
ZigZag█ Overview
This Pine Script™ library provides a comprehensive implementation of the ZigZag indicator using advanced object-oriented programming techniques. It serves as a developer resource rather than a standalone indicator, enabling Pine Script™ programmers to incorporate sophisticated ZigZag calculations into their own scripts.
Pine Script™ libraries contain reusable code that can be imported into indicators, strategies, and other libraries. For more information, consult the Libraries section of the Pine Script™ User Manual.
█ About the Original
This library is based on TradingView's official ZigZag implementation .
The original code provides a solid foundation with user-defined types and methods for calculating ZigZag pivot points.
█ What is ZigZag?
The ZigZag indicator filters out minor price movements to highlight significant market trends.
It works by:
1. Identifying significant pivot points (local highs and lows)
2. Connecting these points with straight lines
3. Ignoring smaller price movements that fall below a specified threshold
Traders typically use ZigZag for:
- Trend confirmation
- Identifying support and resistance levels
- Pattern recognition (such as Elliott Waves)
- Filtering out market noise
The algorithm identifies pivot points by analyzing price action over a specified number of bars, then only changes direction when price movement exceeds a user-defined percentage threshold.
█ My Enhancements
This modified version extends the original library with several key improvements:
1. Support and Resistance Visualization
- Adds horizontal lines at pivot points
- Customizable line length (offset from pivot)
- Adjustable line width and color
- Option to extend lines to the right edge of the chart
2. Support and Resistance Zones
- Creates semi-transparent zone areas around pivot points
- Customizable width for better visibility of important price levels
- Separate colors for support (lows) and resistance (highs)
- Visual representation of price areas rather than just single lines
3. Zig Zag Lines
- Separate colors for upward and downward ZigZag movements
- Visually distinguishes between bullish and bearish price swings
- Customizable colors for text
- Width customization
4. Enhanced Settings Structure
- Added new fields to the Settings type to support the additional features
- Extended Pivot type with supportResistance and supportResistanceZone fields
- Comprehensive configuration options for visual elements
These enhancements make the ZigZag more useful for technical analysis by clearly highlighting support/resistance levels and zones, and providing clearer visual cues about market direction.
█ Technical Implementation
This library leverages Pine Script™'s user-defined types (UDTs) to create a robust object-oriented architecture:
- Settings : Stores configuration parameters for calculation and display
- Pivot : Represents pivot points with their visual elements and properties
- ZigZag : Manages the overall state and behavior of the indicator
The implementation follows best practices from the Pine Script™ User Manual's Style Guide and uses advanced language features like methods and object references. These UDTs represent Pine Script™'s most advanced feature set, enabling sophisticated data structures and improved code organization.
For newcomers to Pine Script™, it's recommended to understand the language fundamentals before working with the UDT implementation in this library.
█ Usage Example
//@version=6
indicator("ZigZag Example", overlay = true, shorttitle = 'ZZA', max_bars_back = 5000, max_lines_count = 500, max_labels_count = 500, max_boxes_count = 500)
import andre_007/ZigZag/1 as ZIG
var group_1 = "ZigZag Settings"
//@variable Draw Zig Zag on the chart.
bool showZigZag = input.bool(true, "Show Zig-Zag Lines", group = group_1, tooltip = "If checked, the Zig Zag will be drawn on the chart.", inline = "1")
// @variable The deviation percentage from the last local high or low required to form a new Zig Zag point.
float deviationInput = input.float(5.0, "Deviation (%)", minval = 0.00001, maxval = 100.0,
tooltip = "The minimum percentage deviation from a previous pivot point required to change the Zig Zag's direction.", group = group_1, inline = "2")
// @variable The number of bars required for pivot detection.
int depthInput = input.int(10, "Depth", minval = 1, tooltip = "The number of bars required for pivot point detection.", group = group_1, inline = "3")
// @variable registerPivot (series bool) Optional. If `true`, the function compares a detected pivot
// point's coordinates to the latest `Pivot` object's `end` chart point, then
// updates the latest `Pivot` instance or adds a new instance to the `ZigZag`
// object's `pivots` array. If `false`, it does not modify the `ZigZag` object's
// data. The default is `true`.
bool allowZigZagOnOneBarInput = input.bool(true, "Allow Zig Zag on One Bar", tooltip = "If checked, the Zig Zag calculation can register a pivot high and pivot low on the same bar.",
group = group_1, inline = "allowZigZagOnOneBar")
var group_2 = "Display Settings"
// @variable The color of the Zig Zag's lines (up).
color lineColorUpInput = input.color(color.green, "Line Colors for Up/Down", group = group_2, inline = "4")
// @variable The color of the Zig Zag's lines (down).
color lineColorDownInput = input.color(color.red, "", group = group_2, inline = "4",
tooltip = "The color of the Zig Zag's lines")
// @variable The width of the Zig Zag's lines.
int lineWidthInput = input.int(1, "Line Width", minval = 1, tooltip = "The width of the Zig Zag's lines.", group = group_2, inline = "w")
// @variable If `true`, the Zig Zag will also display a line connecting the last known pivot to the current `close`.
bool extendInput = input.bool(true, "Extend to Last Bar", tooltip = "If checked, the last pivot will be connected to the current close.",
group = group_1, inline = "5")
// @variable If `true`, the pivot labels will display their price values.
bool showPriceInput = input.bool(true, "Display Reversal Price",
tooltip = "If checked, the pivot labels will display their price values.", group = group_2, inline = "6")
// @variable If `true`, each pivot label will display the volume accumulated since the previous pivot.
bool showVolInput = input.bool(true, "Display Cumulative Volume",
tooltip = "If checked, the pivot labels will display the volume accumulated since the previous pivot.", group = group_2, inline = "7")
// @variable If `true`, each pivot label will display the change in price from the previous pivot.
bool showChgInput = input.bool(true, "Display Reversal Price Change",
tooltip = "If checked, the pivot labels will display the change in price from the previous pivot.", group = group_2, inline = "8")
// @variable Controls whether the labels show price changes as raw values or percentages when `showChgInput` is `true`.
string priceDiffInput = input.string("Absolute", "", options = ,
tooltip = "Controls whether the labels show price changes as raw values or percentages when 'Display Reversal Price Change' is checked.",
group = group_2, inline = "8")
// @variable If `true`, the Zig Zag will display support and resistance lines.
bool showSupportResistanceInput = input.bool(true, "Show Support/Resistance Lines",
tooltip = "If checked, the Zig Zag will display support and resistance lines.", group = group_2, inline = "9")
// @variable The number of bars to extend the support and resistance lines from the last pivot point.
int supportResistanceOffsetInput = input.int(50, "Support/Resistance Offset", minval = 0,
tooltip = "The number of bars to extend the support and resistance lines from the last pivot point.", group = group_2, inline = "10")
// @variable The width of the support and resistance lines.
int supportResistanceWidthInput = input.int(1, "Support/Resistance Width", minval = 1,
tooltip = "The width of the support and resistance lines.", group = group_2, inline = "11")
// @variable The color of the support lines.
color supportColorInput = input.color(color.red, "Support/Resistance Color", group = group_2, inline = "12")
// @variable The color of the resistance lines.
color resistanceColorInput = input.color(color.green, "", group = group_2, inline = "12",
tooltip = "The color of the support/resistance lines.")
// @variable If `true`, the support and resistance lines will be drawn as zones.
bool showSupportResistanceZoneInput = input.bool(true, "Show Support/Resistance Zones",
tooltip = "If checked, the support and resistance lines will be drawn as zones.", group = group_2, inline = "12-1")
// @variable The color of the support zones.
color supportZoneColorInput = input.color(color.new(color.red, 70), "Support Zone Color", group = group_2, inline = "12-2")
// @variable The color of the resistance zones.
color resistanceZoneColorInput = input.color(color.new(color.green, 70), "", group = group_2, inline = "12-2",
tooltip = "The color of the support/resistance zones.")
// @variable The width of the support and resistance zones.
int supportResistanceZoneWidthInput = input.int(10, "Support/Resistance Zone Width", minval = 1,
tooltip = "The width of the support and resistance zones.", group = group_2, inline = "12-3")
// @variable If `true`, the support and resistance lines will extend to the right of the chart.
bool supportResistanceExtendInput = input.bool(false, "Extend to Right",
tooltip = "If checked, the lines will extend to the right of the chart.", group = group_2, inline = "13")
// @variable References a `Settings` instance that defines the `ZigZag` object's calculation and display properties.
var ZIG.Settings settings =
ZIG.Settings.new(
devThreshold = deviationInput,
depth = depthInput,
lineColorUp = lineColorUpInput,
lineColorDown = lineColorDownInput,
textUpColor = lineColorUpInput,
textDownColor = lineColorDownInput,
lineWidth = lineWidthInput,
extendLast = extendInput,
displayReversalPrice = showPriceInput,
displayCumulativeVolume = showVolInput,
displayReversalPriceChange = showChgInput,
differencePriceMode = priceDiffInput,
draw = showZigZag,
allowZigZagOnOneBar = allowZigZagOnOneBarInput,
drawSupportResistance = showSupportResistanceInput,
supportResistanceOffset = supportResistanceOffsetInput,
supportResistanceWidth = supportResistanceWidthInput,
supportColor = supportColorInput,
resistanceColor = resistanceColorInput,
supportResistanceExtend = supportResistanceExtendInput,
supportResistanceZoneWidth = supportResistanceZoneWidthInput,
drawSupportResistanceZone = showSupportResistanceZoneInput,
supportZoneColor = supportZoneColorInput,
resistanceZoneColor = resistanceZoneColorInput
)
// @variable References a `ZigZag` object created using the `settings`.
var ZIG.ZigZag zigZag = ZIG.newInstance(settings)
// Update the `zigZag` on every bar.
zigZag.update()
//#endregion
The example code demonstrates how to create a ZigZag indicator with customizable settings. It:
1. Creates a Settings object with user-defined parameters
2. Instantiates a ZigZag object using these settings
3. Updates the ZigZag on each bar to detect new pivot points
4. Automatically draws lines and labels when pivots are detected
This approach provides maximum flexibility while maintaining readability and ease of use.
MDTrader DashboardMDtrader Script that looks at moving averages, weekly and daily levels to help guide the trading day and establish a bias
OG Candlestick Pattern Finder [Ultimate Edition]🕵️♂️ OG Candlestick Pattern Finder
By @OG_Wealth
This powerful Pine Script v5 indicator is designed to help traders visually identify high-probability candlestick patterns and chart formations on any timeframe.
🔍 What It Detects:
✅ Classic Candlestick Patterns
Bullish/Bearish Engulfing
Hammer / Shooting Star
Morning Star / Evening Star
Doji
3 White Soldiers / 3 Black Crows
✅ Chart Formations
Falling Wedge / Rising Wedge
Bullish & Bearish Flag
Cup & Handle (simplified)
🎯 Features:
Clean, color-coded arrow labels with pattern names
Small arrows avoid clutter and highlight candles without overlapping
Lightweight performance with real-time detection
Subtle trendlines for chart formations using thin, semi-transparent overlays
Built fully in Pine Script v5
Works across all assets and timeframes
Note: This script is for educational and informational purposes only. It does not constitute financial advice or a recommendation to buy or sell any asset.
📌 Want to enhance it with toggles, alerts, or volume filters? Follow me and stay tuned for updates.
If you find it helpful, leave a like ❤️ and drop a comment to support future tools!
Global Foreigners SMA, WMA IndicatorThis Indicator is a custom technical analysis tool designed to overlay multiple moving averages on a price chart, helping traders analyze price trends and potential trading opportunities.
It features both a Simple Moving Average (SMA) and Weighted Moving Averages (WMAs) with different period settings.
Key Features:
1. SMA and WMA Calculations:
- SMA 1: A simple moving average (SMA) calculated over a user-defined period (default: 1).
- WMA 1 - WMA 5: Five weighted moving averages (WMA) with different periods (5, 10, 20, 30, 40). WMAs give more importance to recent price movements, helping to identify short-term trends.
2. Customizable Periods:
- The indicator allows users to adjust the lookback period for each moving average via input settings.
3. Color-Coded Moving Averages:
- Each moving average is assigned a unique color for easy differentiation:
- SMA 1 → Black
- WMA 1 (5-period) → Blue
- WMA 2 (10-period) → Peach
- WMA 3 (20-period) → Orange
- WMA 4 (30-period) → Lavender
- WMA 5 (40-period) → Purple
4. Line Thickness:
- Each moving average is plotted with a line width of 2, making them clearly visible on the chart.
How This Indicator is Used:
Trend Analysis:
The alignment of the WMA sequence (e.g., WMA 5 > WMA 4 > WMA 3 > WMA 2 > WMA 1) can
indicate a bullish trend.
The opposite alignment suggests a bearish trend.
Dynamic Support & Resistance:
Shorter-period WMAs (5 & 10) react faster to price changes and can be used as dynamic
support or resistance levels for short-term trades.
Longer-period WMAs (20, 30, 40) smooth out price fluctuations and are useful for detecting
long-term trends.
Signal Confirmation:
The SMA 1 acts as a quick price reference, and traders can look for crossovers between the
WMA lines to confirm trend changes.
Who Can Use This Indicator?
Scalpers & Day Traders:
The faster WMAs (5 & 10) can be used to catch quick price reversals.
Swing Traders & Position Traders:
The combination of short-term and long-term moving averages helps identify key trend
shifts.
Algorithmic Traders:
Can be used alongside other indicators for automated signal generation.
This indicator is not a buy/sell signal generator but rather a trend-following tool that helps traders visually interpret market movements using moving averages. It works well when combined with momentum indicators (e.g., MACD, RSI) to confirm entry and exit points.
ICT Strategy Full Bot - Sweep + BOS + FVG + FibStrategy Summary – ICT-Based Precision Trading
This strategy follows a Smart Money Concept (ICT) approach, focusing on:
Liquidity sweeps at key daily and 4H swing highs/lows or FVG zones
Reversals confirmed by a strong impulse and structure break (BOS/ChoCH) on the 15-minute chart
Precise entries using confluence between a Fair Value Gap (FVG) and the 50% Fibonacci retracement
Tight risk management with Stop Loss under the liquidity sweep
Two Take Profit options: next HTF swing or a valid FVG in the opposing leg
Break-even automation after internal structure confirms the move
Perfect for traders who want a rule-based, high-probability entry system rooted in institutional price action theory.