TradingView.To Strategy Template (with Dyanmic Alerts)Hello traders,
If you're tired of manual trading and looking for a solid strategy template to pair with your indicators, look no further.
This Pine Script v5 strategy template is engineered for maximum customization and risk management.
Best part?
This Pine Script v5 template facilitates the dynamic construction of TradingView.TO alerts, sparing users the time and effort of mastering the TradingView.TO syntax and manually create alert commands.
This powerful tool gives much power to those who don't know how to code in Pinescript and want to automate their indicators' signals via TradingView.TO bot.
IMPORTANT NOTES
TradingView.TO is a trading bot software that forwards TradingView alerts to your brokers (examples: Binance, Oanda, Coinbase, Bybit, Metatrader 4/5, ...) for automating trading.
Many traders don't know how to create TradingView.TO dynamically-compatible alerts using the data from their TradingView scripts.
Traders using trading bots want their alerts to reflect the stop-loss/take-profit/trailing-stop/stop-loss to break options from your script and then create the orders accordingly.
This script showcases how to create TradingView.TO alerts dynamically.
TRADINGVIEW ALERTS
1) You'll have to create one alert per asset X timeframe = 1 chart.
Example: 1 alert for BTC/USDT on the 5 minutes chart, 1 alert for BTC/USDT on the 15-minute chart (assuming you want your bot to trade the BTC/USDT on the 5 and 15-minute timeframes)
2) Select the Order fills and alert() function calls condition
3) For each alert, the alert message is pre-configured with the text below
{{strategy.order.alert_message}}
Please leave it as it is.
It's a TradingView native variable that will fetch the alert text messages built by the script.
4) TradingView.TO uses webhook technology - setting a webhook URL from the alerts notifications tab is required.
KEY FEATURES
I) Modular Indicator Connection
* plug your existing indicator into the template.
* Only two lines of code are needed for full compatibility.
Step 1: Create your connector
Adapt your indicator with only 2 lines of code and then connect it to this strategy template.
To do so:
1) Find in your indicator where the conditions print the long/buy and short/sell signals.
2) Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator, whether a MACD , ZigZag, Pivots , higher-highs, lower-lows or whatever indicator with clear buy and sell conditions.
//@version=5
indicator("Supertrend", overlay = true, timeframe = "", timeframe_gaps = true)
atrPeriod = input.int(10, "ATR Length", minval = 1)
factor = input.float(3.0, "Factor", minval = 0.01, step = 0.01)
= ta.supertrend(factor, atrPeriod)
supertrend := barstate.isfirst ? na : supertrend
bodyMiddle = plot(barstate.isfirst ? na : (open + close) / 2, display = display.none)
upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style = plot.style_linebr)
downTrend = plot(direction < 0 ? na : supertrend, "Down Trend", color = color.red, style = plot.style_linebr)
fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps = false)
fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps = false)
buy = ta.crossunder(direction, 0)
sell = ta.crossunder(direction, 0)
//////// CONNECTOR SECTION ////////
Signal = buy ? 1 : sell ? -1 : 0
plot(Signal, title = "Signal", display = display.data_window)
//////// CONNECTOR SECTION ////////
Important Notes
🔥 The Strategy Template expects the value to be exactly 1 for the bullish signal and -1 for the bearish signal
Now, you can connect your indicator to the Strategy Template using the method below or that one.
Step 2: Connect the connector
1) Add your updated indicator to a TradingView chart
2) Add the Strategy Template as well to the SAME chart
3) Open the Strategy Template settings, and in the Data Source field, select your 🔌Connector🔌 (which comes from your indicator)
Note it doesn’t have to be named 🔌Connector🔌 - you can name it as you want - however, I recommend an explicit name you can easily remember.
From then, you should start seeing the signals and plenty of other stuff on your chart.
🔥 Note that whenever you update your indicator values, the strategy statistics and visuals on your chart will update in real-time
II) BOT Risk Management:
- Max Drawdown:
Mode: Select whether the max drawdown is calculated in percentage (%) or USD.
Value: If the max drawdown reaches this specified value, set a value to halt the bot.
- Max Consecutive Days:
Use Max Consecutive Days BOT Halt: Enable/Disable halting the bot if the max consecutive losing days value is reached.
- Max Consecutive Days: Set the maximum number of consecutive losing days allowed before halting the bot.
- Max Losing Streak:
Use Max Losing Streak: Enable/Disable a feature to prevent the bot from taking too many losses in a row.
- Max Losing Streak Length: Set the maximum length of a losing streak allowed.
Margin Call:
- Use Margin Call: Enable/Disable a feature to exit when a specified percentage away from a margin call to prevent it.
Margin Call (%): Set the percentage value to trigger this feature.
- Close BOT Total Loss:
Use Close BOT Total Loss: Enable/Disable a feature to close all trades and halt the bot if the total loss is reached.
- Total Loss ($): Set the total loss value in USD to trigger this feature.
Intraday BOT Risk Management:
- Intraday Losses:
Use Intraday Losses BOT Halt: Enable/Disable halting the bot on reaching specified intraday losses.
Mode: Select whether the intraday loss is calculated in percentage (%) or USD.
- Max Intraday Losses (%): Set the value for maximum intraday losses.
Limit Intraday Trades:
- Use Limit Intraday Trades: Enable/Disable a feature to limit the number of intraday trades.
- Max Intraday Trades: Set the maximum number of intraday trades allowed.
Restart Intraday EA:
III) Order Types and Position Sizing
- Choose between market or limit orders.
- Set your position size directly in the template.
Please use the position size from the “Inputs” and not the “Properties” tab.
I know it's redundant. - the template needs this value from the "Inputs" tab to build the alerts, and the Backtester needs it from the "Properties" tab.
IV) Advanced Take-Profit and Stop-Loss Options
- Choose to set your SL/TP in either USD or percentages.
- Option for multiple take-profit levels and trailing stop losses.
- Move your stop loss to break even +/- offset in USD for “risk-free” trades.
V) Miscellaneous:
Retry order openings if they fail.
Order Types:
Select and specify order type and price settings.
Position Size:
Define the type and size of positions.
Leverage:
Leverage settings, including margin type and hedge mode.
Session:
Limit trades to specific sessions.
Dates:
Limit trades to a specific date range.
Trades Direction:
Direction: Specify the market direction for opening positions.
VI) Logger
The TradingView.TO commands are logged in the TradingView logger.
You'll find more information about it in this TradingView blog post .
WHY YOU MIGHT NEED THIS TEMPLATE
1) Transform your indicator into a TradingView.TO trading bot more easily than before
Connect your indicator to the template
Create your alerts
Set your EA settings
2) Save Time
Auto-generated alert messages for TradingView.TO.
I tested them all and checked with the support team what could/couldn’t be done.
3) Be in Control
Manage your trading risks with advanced features.
4) Customizable
Fits various trading styles and asset classes.
REQUIREMENTS
* Make sure you have your TradingView.TO account
* If there is any issue with the template, ask me in the comments section - I’ll answer quickly.
BACKTEST RESULTS FROM THIS POST
1) I connected this strategy template to a dummy Supertrend script.
I could have selected any other indicator or concept for this script post.
I wanted to share an example of how you can quickly upgrade your strategy, making it compatible with TradingView.TO.
2) The backtest results aren't relevant for this educational script publication.
I used realistic backtesting data but didn't look too much into optimizing the results, as this isn't the point of why I'm publishing this script.
This strategy is a template to be connected to any indicator - the sky is the limit. :)
3) This template is made to take 1 trade per direction at any given time.
Pyramiding is set to 1 on TradingView.
The strategy default settings are:
* Initial Capital: 100000 USD
* Position Size: 1%
* Commission Percent: 0.075%
* Slippage: 1 tick
* No margin/leverage used
ค้นหาในสคริปต์สำหรับ "session"
ProfitView Strategy TemplateHello traders,
This script took me a full week of coding/testing, sweat, and tears - and I’m too nice as I’m giving it for free to the community.
If you're tired of manual trading and looking for a solid strategy template to pair with your indicators, look no further.
This Pine Script v5 strategy template is engineered for maximum customization and risk management.
Best part?
This Pine Script v5 template facilitates the dynamic construction of ProfitView alerts, sparing users the time and effort of mastering the ProfitView syntax and manually creating alert commands.
This powerful tool gives much power to those who don't know how to code in Pinescript and want to automate their indicators' signals via the ProfitView Chrome extension.
IMPORTANT NOTES
ProfitView is a trading bot software that forwards TradingView alerts to your brokers (examples: Binance, Oanda, Coinbase, Bybit, etc.) for automating trading.
Many traders don't know how to dynamically create ProfitView-compatible alerts using the data from their TradingView scripts.
Traders using trading bots want their alerts to reflect the stop-loss/take-profit/trailing-stop/stop-loss to break options from your script and then create the orders accordingly.
This script showcases how to create ProfitView alerts dynamically.
TRADINGVIEW ALERTS
1) You'll have to create one alert per asset X timeframe = 1 chart.
Example: 1 alert for EUR/USD on the 5 minutes chart, 1 alert for EUR/USD on the 15-minute chart (assuming you want your bot to trade the EUR/USD on the 5 and 15-minute timeframes)
2) Select the Order fills and alert() function calls condition
3) For each alert, the alert message is pre-configured with the text below
{{strategy.order.alert_message}}
Please leave it as it is.
It's a TradingView native variable that will fetch the alert text messages built by the script.
4) ProfitView doesn't use webhook technology, so setting a webhook URL from the alerts notifications tab is unnecessary.
KEY FEATURES
I) Modular Indicator Connection
* plug your existing indicator into the template.
* Only two lines of code are needed for full compatibility.
Step 1: Create your connector
Adapt your indicator with only 2 lines of code and then connect it to this strategy template.
To do so:
1) Find in your indicator where the conditions print the long/buy and short/sell signals.
2) Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator, whether a MACD , ZigZag, Pivots , higher-highs, lower-lows or whatever indicator with clear buy and sell conditions.
//@version=5
indicator("Supertrend", overlay = true, timeframe = "", timeframe_gaps = true)
atrPeriod = input.int(10, "ATR Length", minval = 1)
factor = input.float(3.0, "Factor", minval = 0.01, step = 0.01)
= ta.supertrend(factor, atrPeriod)
supertrend := barstate.isfirst ? na : supertrend
bodyMiddle = plot(barstate.isfirst ? na : (open + close) / 2, display = display.none)
upTrend = plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style = plot.style_linebr)
downTrend = plot(direction < 0 ? na : supertrend, "Down Trend", color = color.red, style = plot.style_linebr)
fill(bodyMiddle, upTrend, color.new(color.green, 90), fillgaps = false)
fill(bodyMiddle, downTrend, color.new(color.red, 90), fillgaps = false)
buy = ta.crossunder(direction, 0)
sell = ta.crossunder(direction, 0)
//////// CONNECTOR SECTION ////////
Signal = buy ? 1 : sell ? -1 : 0
plot(Signal, title = "Signal", display = display.data_window)
//////// CONNECTOR SECTION ////////
Important Notes
🔥 The Strategy Template expects the value to be exactly 1 for the bullish signal and -1 for the bearish signal
Now, you can connect your indicator to the Strategy Template using the method below or that one.
Step 2: Connect the connector
1) Add your updated indicator to a TradingView chart
2) Add the Strategy Template as well to the SAME chart
3) Open the Strategy Template settings, and in the Data Source field, select your 🔌Connector🔌 (which comes from your indicator)
Note it doesn’t have to be named 🔌Connector🔌 - you can name it as you want - however, I recommend an explicit name you can easily remember.
From then, you should start seeing the signals and plenty of other stuff on your chart.
🔥 Note that whenever you update your indicator values, the strategy statistics and visuals on your chart will update in real-time
II) BOT Risk Management:
- Max Drawdown:
Mode: Select whether the max drawdown is calculated in percentage (%) or USD.
Value: If the max drawdown reaches this specified value, set a value to halt the bot.
- Max Consecutive Days:
Use Max Consecutive Days BOT Halt: Enable/Disable halting the bot if the max consecutive losing days value is reached.
- Max Consecutive Days: Set the maximum number of consecutive losing days allowed before halting the bot.
- Max Losing Streak:
Use Max Losing Streak: Enable/Disable a feature to prevent the bot from taking too many losses in a row.
- Max Losing Streak Length: Set the maximum length of a losing streak allowed.
Margin Call:
- Use Margin Call: Enable/Disable a feature to exit when a specified percentage away from a margin call to prevent it.
Margin Call (%): Set the percentage value to trigger this feature.
- Close BOT Total Loss:
Use Close BOT Total Loss: Enable/Disable a feature to close all trades and halt the bot if the total loss is reached.
- Total Loss ($): Set the total loss value in USD to trigger this feature.
Intraday BOT Risk Management:
- Intraday Losses:
Use Intraday Losses BOT Halt: Enable/Disable halting the bot on reaching specified intraday losses.
Mode: Select whether the intraday loss is calculated in percentage (%) or USD.
- Max Intraday Losses (%): Set the value for maximum intraday losses.
Limit Intraday Trades:
- Use Limit Intraday Trades: Enable/Disable a feature to limit the number of intraday trades.
- Max Intraday Trades: Set the maximum number of intraday trades allowed.
Restart Intraday EA:
- Use Restart Intraday EA: Enable/Disable a feature to restart the bot at the first bar of the next day if it has been stopped with an intraday risk management safeguard.
III) Order Types and Position Sizing
- Choose between market, limit, or stop orders.
- Set your position size directly in the template.
Please use the position size from the “Inputs” and not the “Properties” tab.
I know it's redundant. - the template needs this value from the "Inputs" tab to build the alerts, and the Backtester needs it from the "Properties" tab.
IV) Advanced Take-Profit and Stop-Loss Options
- Choose to set your SL/TP in either pips or percentages.
- Option for multiple take-profit levels and trailing stop losses.
- Move your stop loss to break even +/- offset in pips for “risk-free” trades.
V) Miscellaneous
Retry order openings if they fail.
Order Types:
Select and specify order type and price settings.
Position Size:
Define the type and size of positions.
Leverage:
Leverage settings, including margin type and hedge mode.
Session:
Limit trades to specific sessions.
Dates:
Limit trades to a specific date range.
Trades Direction:
Direction: Specify the market direction for opening positions.
VI) Notifications (Telegram/Discord/Email/IFTTT/Twilio/SMS)
Customize notifications sent to Telegram, Discord, Email, IFTTT, Twilio, and ProfitView Logger.
VII) Logger
The ProfitView commands are logged in the TradingView logger.
You'll find more information about it in this TradingView blog post .
WHY YOU MIGHT NEED THIS TEMPLATE
1) Transform your indicator into a ProfitView trading bot more easily than before
Connect your indicator to the template
Create your alerts
Set your EA settings
2) Save Time
Auto-generated alert messages for ProfitView.
I tested them all and checked with the support team what could/couldn’t be done.
3) Be in Control
Manage your trading risks with advanced features.
4) Customizable
Fits various trading styles and asset classes.
REQUIREMENTS
* Make sure you have your ProfitView account and do the settings correctly in your Chrome extension. If you don't know how to do it, read the documentation + ask for help in the ProfitView Discord support channel.
* If there is any issue with the template, ask me in the comments section - I’ll answer quickly.
BACKTEST RESULTS FROM THIS POST
1) I connected this strategy template to a dummy Supertrend script.
I could have selected any other indicator or concept for this script post.
I wanted to share an example of how you can quickly upgrade your strategy, making it compatible with ProfitView.
2) The backtest results aren't relevant for this educational script publication.
I used realistic backtesting data but didn't look too much into optimizing the results, as this isn't the point of why I'm publishing this script.
This strategy is a template to be connected to any indicator - the sky is the limit. :)
3) This template is made to take 1 trade per direction at any given time.
Pyramiding is set to 1 on TradingView.
The strategy default settings are:
* Initial Capital: 100000 USD
* Position Size: 1%
* Commission Percent: 0.075%
* Slippage: 1 tick
* No margin/leverage used
Best regards,
Dave
Globex, Extended, Daily, Weekly, Monthly, Yearly Range* Adds Right Side Only Price Line & Labels for Tracking without Extending Both Sides
* Tracks Current, Previous, and Two Previous Globex Sessions/ Futures:
* Tracks Current, Previous, and Two Previous Extended Session/ Stocks:
* Tracks Current, Previous, Two, & Three Previous Day Session/ Equities:
* Tracks Current, Last, Two, Three, Four, & Five Week Session/ Equities:
* Tracks Current, Last, Two, Three, Four, & Five Month Session/ Equities:
* Tracks Current, Last, Two, Three, Four, & Five Year Session/ Equities:
* Allows Custom Range on Globex, Extended, & Daily Sessions
* Allows Custom Range on Weekly, Monthly, & Yearly Sessions
* Lines & Labels Are Not Visible on Chart Scales
* Reversible Text & Background Color
* Lines Extend Accordingly with Range
* Labels show Price & Percent Change
* Background Colors should match Chart Color to avoid Overlapping Text & Labels
* Lines have Offset Extension
* Labels have Offset Extension
* Globex Session is only visible on Futures & if Current Timeframe is Intraday
* Extended Session is only visible on Stocks & if Current Timeframe is Intraday
* Daily, Weekly, Monthly, & Yearly Sessions are visible on All Symbols & All Timeframes
* Globex, Extended, & Regular use their Default Time Sessions but allow Customization
* For Back Testing Default Sessions, switch over on the Menu to Style and Turn On/Off their Background Color; Any Area on the Chart Without Background Color is Regular Session
Short Volume StamperHello!
BE SURE TO RUN THE SCRIPT WITH BAR REPLAY TO SEE WHAT IT DOES! I hope you like it!
This script calculates the total short volume, total volume, and the short volume / total volume ratio since the 2-year high price. In addition, the approximate dollar value of all short volume since the 2-year high, and the approximate dollar value of all non-short sell volume since the 2-year high is calculated using VWAP. A red line (short interest ratio >= 20%) connects the 2-year high to current session’s high price; a green line (short interest ratio < 20%) connects the 2-year high to the current session’s high.
The script also “stamps” sessions in which a NEW 1-year high in SHORT volume is achieved, and when a PIVOT POINT high is achieved (highest high over 51 sessions). When a new high in short volume is achieved the script aggregates the total volume and short volume for the 5 sessions prior to the new high, the session of the new high, and the 4 sessions after the new high (10 sessions). Additional volume calculations are performed for the 10 session period!
When a pivot point high is achieved the script aggregates the total volume and short volume for the 3 sessions prior to the pivot high, the session of the pivot high, and the 2 sessions after the new high (6 sessions). Additional volume calculations are performed for the 6 session period!
Red labels, red boxes, and red lines indicate a short volume ratio greater than or equal to 20% over the corresponding period!
Green labels, green boxes, and green lines indicate a short volume ratio less than 20% over the corresponding period!
Chart Champions - Part 2 - CCV IBs POCsThank you for sparing you time to read my indicator.
This indicator has been created as a suite of 3. This was to ensure that those with only the Free Trading View account could benefit (with their restriction to 3 indicators). Please ensure you install each indicator and read each indicator write up to fully understand what has tried to achieved.
Chart Champions – Part 1 –Lvls nPOC VWAPS
This indicator is broken down into:
• Levels
• VWAPS
• Naked Point of Control
Levels
It displays the levels to the right of the price Axis to enable the user to have a cleaner chart.
The below levels will automatically appear:
dOpen – pdHigh – pdLow – pdEQ – pwEQ
Optional Levels include:
mOpen – pmOpen – pdOpen – dbyOpen – wOpen – pwOpen
VWAPs
Optional VWAPs
Daily (including pdVWAP close) – Weekly – Monthly
Naked Points of Control (nPOC)
To view the nPOC move the chart back in time to pick up the nPOCs.
Chart Champions – Part 2 – CCV IBs POC
This indicator is broken down into:
• Chart Champions Value
• Initial Balance
• Points of Control
Chart Champions Value (CCV)
CCV is based on the 80% rule of the dOpen opening outside of the pdVAH/pdVAL. Please do you own research to fully understand how this trading strategy works (readily avaliable online).
Initial Balance (IB)
IB is based on the first 60 minutes of the market opening. It captures the highest and lowest points within that 60 minutes. Please do you own research to fully understand how this trading strategy works (readily avaliable online).
Points of Control (POCs)
POC are the price levels where the most volume was traded.
Developing POC (dPOC) will constantly move with volume/price action through out the day.
Optional POCs
Previous Day POC (pdPOC) – Day Before Yesterday POC (dbyPOC)
Chart Champions – Part 3 – Sessions - Manual Input
This indicator is broken down into:
• Manual Inputs (daily, weekly, monthly)
• IGOR SessionsTtimes
• Pre + Market Openings
Manual Input
Daily x3
Weekly x 3
Monthly x 3
This allows the trader to put in specific levels.
IGOR Session Times
This is a user specific requirement to highlight cetain times during the day, displayed at the bottom of the chart in the colour strip.
Pre + Market Openings
This allows the user to see when pre market trading has started and with the live maket has started, displayed at the top of the chart in colours.
A huge thank you goes out to:
Stackoverflow users AnyDozer and Bjorn.
TV user ahancock for allow me use of this code.
Disclaimer the lower the timeframe the more information it processes.
Chart Champions - Part 1 - nPOC - Levels - VWAPsThank you for sparing you time to read my indicator.
This indicator has been created as a suite of 3. This was to ensure that those with only the Free Trading View account could benefit (with their restriction to 3 indicators). Please ensure you install each indicator and read each indicator write up to fully understand what has tried to achieved.
Chart Champions – Part 1 –Lvls nPOC VWAPS
This indicator is broken down into:
• Levels
• VWAPS
• Naked Point of Control
Levels
It displays the levels to the right of the price Axis to enable the user to have a cleaner chart.
The below levels will automatically appear:
dOpen – pdHigh – pdLow – pdEQ – pwEQ
Optional Levels include:
mOpen – pmOpen – pdOpen – dbyOpen – wOpen – pwOpen
VWAPs
Optional VWAPs
Daily (including pdVWAP close) – Weekly – Monthly
Naked Points of Control (nPOC)
To view the nPOC move the chart back in time to pick up the nPOCs.
Chart Champions – Part 2 – CCV IBs POC
This indicator is broken down into:
• Chart Champions Value
• Initial Balance
• Points of Control
Chart Champions Value (CCV)
CCV is based on the 80% rule of the dOpen opening outside of the pdVAH/pdVAL. Please do you own research to fully understand how this trading strategy works (readily avaliable online).
Initial Balance (IB)
IB is based on the first 60 minutes of the market opening. It captures the highest and lowest points within that 60 minutes. Please do you own research to fully understand how this trading strategy works (readily avaliable online).
Points of Control (POCs)
POC are the price levels where the most volume was traded.
Developing POC (dPOC) will constantly move with volume/price action through out the day.
Optional POCs
Previous Day POC (pdPOC) – Day Before Yesterday POC (dbyPOC)
Chart Champions – Part 3 – Sessions - Manual Input
This indicator is broken down into:
• Manual Inputs (daily, weekly, monthly)
• IGOR SessionsTtimes
• Pre + Market Openings
Manual Input
Daily x3
Weekly x 3
Monthly x 3
This allows the trader to put in specific levels.
IGOR Session Times
This is a user specific requirement to highlight cetain times during the day, displayed at the bottom of the chart in the colour strip.
Pre + Market Openings
This allows the user to see when pre market trading has started and with the live maket has started, displayed at the top of the chart in colours.
A huge thank you goes out to:
Stackoverflow users AnyDozer and Bjorn.
TV user ahancock for allow me use of this code.
Disclaimer the lower the timeframe the more information it processes.
Average Volume at Time (AVAT)Calculation of average volume at current time for a number of previous sessions, known as Average Volume at Time (AVAT).
Inputs:
* period to use for accumulation. "D" is the default value, useful to view data for each session.
* number of previous sessions to average
TODO: more intelligent accumulation of number of bars in a session, since there may be sessions with different values
TODO: interpolate volume according to current time, inside of the last bar
Channels by TradingConTotoThis indicator plots clear and minimalistic High (H) and Low (L) pivot points only within the selected trading session (e.g., 10:00–12:00).
During the active session, the background is shaded for easy visual reference, and pivot labels alternate automatically — meaning no consecutive H or L points appear in a row. This makes it simple to identify real swing changes within a specific session.
⚙️ Features
Detects and labels pivots only during the chosen time range.
Alternating logic prevents consecutive highs or lows (H → L → H → L).
Clean session background highlight for visual clarity.
Fully customizable parameters (session time, sensitivity, colors, etc.).
Ideal for intraday traders, scalpers, and structure-based strategies.
💡 Suggested Use
Perfect for traders who focus on specific market sessions (e.g., New York, London, or custom hours).
The alternating pivot logic helps visualize market swings and structural shifts without visual clutter, making it an excellent companion for price action analysis.
Futures Key LevelsKey Levels — Sessions, Previous Ranges & Opens (Chicago-aligned sessions)
What it does
This indicator plots commonly used reference levels across multiple timeframes to help you frame the day and find confluence:
Sessions (Chicago TZ): London, New York, and Asia session high/low ranges.
Previous Period Ranges: Previous Day / Week / Month / Quarter / Year High/Low and optional Mid.
Opens: Current Daily / Weekly / Monthly / Quarterly / Yearly opens.
Intraday (4H): Previous 4-Hour High/Low + optional Mid.
Monday Range: Captures Monday’s High/Low (and optional Mid) to use as a weekly reference.
Price-scale markers: Optional markers that track key levels on the price scale without adding extra lines.
How it works (concepts & calculations)
Higher-timeframe values are retrieved using request.security() and update when a new period begins (e.g., previous day’s H/L become fixed at the start of the new day).
Session ranges are built from bar data within session windows using time(session, "America/Chicago"):
London: 02:00–05:00 CT
New York: 08:30–15:00 CT
Asia: 20:00–00:00 CT
“Mid” levels are simple midpoints between each period’s High and Low.
Merge Levels: when different levels land at the same price, their labels are merged to reduce clutter (e.g., “PDH / PWH”).
Why this version is useful / original bits
All-white baseline for clean charts; session colors stand out by design: London = Yellow, New York = Aquatic Blue, Asia = Red.
Right-anchored mode lets you park levels to the right side of the chart with a configurable anchor distance.
Label merging keeps the display minimal when multiple levels coincide.
Price-scale-only markers available when you prefer fewer lines on the chart.
Inputs & customization
Display Style: Standard or Right Anchored (+ distance controls).
Levels toggles: enable/disable each period (Daily/Weekly/Monthly/Quarterly/Yearly), Monday range, 4H range, and session ranges.
Text: optional shorthand labels (e.g., PDH/PDL, PWH/PWL).
Colors: global white theme, with session highlights; you can override in the Inputs.
Price-scale markers: on/off toggle.
How to use it
Use previous High/Low as liquidity pools and areas to watch for sweeps, breaks, or retests.
The Monday range often frames the rest of the week; breaks or rejections around Monday H/L can be informative.
The 4H previous range gives intraday context—great for mean-reversion vs. continuation reads.
Session ranges help you see where the active session expanded price and where liquidity may remain.
Notes & limitations
Sessions are computed in America/Chicago; higher-TF levels use the symbol’s exchange timezone.
This is an indicator, not a strategy; it does not place trades or claim performance.
Always combine levels with your own execution rules (structure, momentum, risk).
Credit: inspired by spacemanBTC; this version adds the all-white styling, Chicago-aligned sessions, right-anchoring, label merging, and price-scale markers.
Also my mentor to tell me about the levels
Disclaimer
This tool is for educational purposes only and is not financial advice. Markets involve risk; do your own research and manage risk appropriately.
ZLEMA Trend Index 2.0ZTI — ZLEMA Trend Index 2.0 (0–1000)
Overview
Price Mapped ZTI v2.0 - Enhanced Zero-Lag Trend Index.
This indicator is a significant upgrade to the original ZTI v1.0, featuring enhanced resolution from 0-100 to 0-1000 levels for dramatically improved price action accuracy. The Price Mapped ZTI uses direct price-to-level mapping to eliminate statistical noise and provide true proportional representation of market movements.
Key Innovation: Instead of statistical normalization, this version maps current price position within a user-defined lookback period directly to the ZTI scale, ensuring perfect correlation with actual price movements. I believe this is the best way to capture trends instead of directly on the charts using a plethora of indicators which introduces bad signals resulting in drawdowns. The RSI-like ZTI overbought and oversold lines filter valid trends by slicing through the current trading zone. Unlike RSI that can introduce false signals, the ZTI levels 1 to 1000 is faithfully mapped to the lowest to highest price in the current trading zone (lookback period in days) which can be changed in the settings. The ZTI line will never go off the beyond the ZTI levels in case of extreme trend continuation as the trading zone is constantly updated to reflect only the most recent bars based on lookback days.
Core Features
✅ 10x Higher Resolution - 0-1000 scale provides granular movement detection
✅ Adjustable Trading Zone - Customizable lookback period from 1-50 days
✅ Price-Proportional Mapping - Direct correlation between price position and ZTI level
✅ Zero Statistical Lag - No rolling averages or standard deviation calculations
✅ Multi-Strategy Adaptability - Single parameter adjustment for different trading styles
Trading Zone Optimization
📊 Lookback Period Strategies
Short-term (1-3 days):
Ultra-responsive to recent price action
Perfect for scalping and day trading
Tight range produces more sensitive signals
Medium-term (7-14 days):
Balanced view of recent trading range
Ideal for swing trading
Captures meaningful support/resistance levels
Long-term (21-30 days):
Broader market context
Excellent for position trading
Smooths out short-term market noise
⚡ Market Condition Adaptation
Volatile Markets: Use shorter lookback (3-5 days) for tighter ranges
Trending Markets: Use longer lookback (14-21 days) for broader context
Ranging Markets: Use medium lookback (7-10 days) for clear boundaries
🎯 Timeframe Optimization
1-minute charts: 1-2 day lookback
5-minute charts: 2-5 day lookback
Hourly charts: 7-14 day lookback
Daily charts: 21-50 day lookback
Trading Applications
Scalping Setup (2-day lookback):
Super tight range for quick reversals
ZTI 800+ = immediate short opportunity
ZTI 200- = immediate long opportunity
Swing Trading Setup (10-day lookback):
Meaningful swing levels captured
ZTI extremes = high-probability reversal zones
More stable signals, reduced whipsaws
Advanced Usage
🔧 Real-Time Adaptability
Trending days: Increase to 14+ days for broader perspective
Range-bound days: Decrease to 3 days for tighter signals
High volatility: Shorter lookback for responsiveness
Low volatility: Longer lookback to avoid false signals
💡 Multi-Timeframe Approach
Entry signals: Use 7-day ZTI on main timeframe
Trend confirmation: Use 21-day ZTI on higher timeframe
Exit timing: Use 3-day ZTI for precise exits
🌐 Session Optimization
Asian session: Shorter lookback (3-5 days) for range-bound conditions
London/NY session: Longer lookback (7-14 days) for trending conditions
How It Works
The indicator maps the current price position within the specified lookback period directly to a 0-1000 scale and plots it using ZLEMA (Zero Lag Exponential Moving Average) which has the least lag of the available popular moving averages:
Price at recent high = ZTI at 1000
Price at recent low = ZTI at 1
Price at mid-range = ZTI at 500
This creates perfect proportional representation where every price movement translates directly to corresponding ZTI movement, eliminating the false signals common in traditional oscillators.
This single, versatile indicator adapts to any market condition, timeframe, or trading style through one simple parameter adjustment, making it an essential tool for traders at every level.
Credits
ZLEMA techniques widely attributed to John Ehlers.
Disclaimer
This tool is for educational purposes only and is not financial advice. Backtest and forward‑test before live use, and always manage risk.
Please note that I set this as closed source to prevent source code cloning by others, repackaging and republishing which results in multiple confusing choices of the same indicator.
ABS Companion Oscillator — Trend / Exhaustion / New Trend (v1.1)
# ABS Companion Oscillator — Trend / Exhaustion / New Trend (v1.1)
## What it is (quick take)
**ABS CO** is a unified **–100…+100 trend oscillator** that fuses:
* **Regime**: EMA stack (fast/slow/long) + **HTF slope** (e.g., 60-minute)
* **Momentum**: **TSI** vs its signal
* **Stretch**: session-anchored **VWAP Z-score** for exhaustion and “fresh-trend” sanity checks
It paints the oscillator with **lime** in upstate, **red** in downstate, **gray** in neutral, and tags:
* **NEW↑ / NEW↓** when a **new trend** likely starts (zero-line cross with acceptable stretch)
* **EXH↑ / EXH↓** when an **existing trend looks exhausted** (large |Z| + momentum rollback)
> Use it as a **direction filter and context layer**. Works great in front of an entry engine and behind an exit tool.
---
## How to use it (operational workflow)
1. **Read the state**
* **Uptrend** when the oscillator is **≥ upThresh** (default +55) → prefer **long-side** plays.
* **Downtrend** when the oscillator is **≤ dnThresh** (default −55) → prefer **short-side** plays.
* **Neutral** between thresholds → be selective or flat; expect chop.
2. **Act on events**
* **NEW↑ / NEW↓**: zero-line cross with acceptable |Z| (not already overstretched). Treat as **trend start** cues.
* **EXH↑ / EXH↓**: trend state with **high |Z|** and TSI rollback versus its signal. Treat as **trend fatigue**; avoid fresh go-with entries and tighten risk.
3. **Practical pairing**
* Use **up/down state** (or above/below **neutralBand**) as your go/no-go filter for entries.
* Prioritize entries **with** NEW↑/NEW↓ and **without** nearby EXH tags.
* Keep holding while the oscillator stays in state and no EXH appears; consider scaling out on EXH or on your exit tool.
---
## Visual semantics & alerts
* **ABS CO line** (–100…+100): lime in upstate, red in downstate, gray in neutral.
* **Horizontal guides**: `Up` threshold, `Down` threshold, `Zero`, and optional **neutral band** lines.
* **Background heat** (optional): shaded when EXH conditions trigger (lime/red tint with intensity scaled by |Z|).
* **Tags**: `NEW↑`, `NEW↓`, `EXH↑`, `EXH↓`.
**Alerts (stable):**
* **ABS CO — New Uptrend** (NEW↑)
* **ABS CO — New Downtrend** (NEW↓)
* **ABS CO — Exhausted Up** (EXH↑)
* **ABS CO — Exhausted Down** (EXH↓)
Set alerts to **“Once per bar close”** for clean signals.
---
## Non-repainting behavior
* HTF queries use **lookahead\_off**.
* With **Strict NR = true**, the HTF slope is taken from the **prior completed** HTF bar; events evaluate on confirmed bars → **safer, fewer, cleaner**.
* NEW/EXH tags finalize at bar close. Disabling strictness yields earlier but noisier responses.
---
## Every input explained (and how it changes behavior)
### A) Trend & HTF structure
* **EMA Fast / Slow / Long (`emaFastLen`, `emaSlowLen`, `emaLongLen`)**
Control the baseline regime. Larger = smoother, fewer flips; smaller = snappier, more flips.
* **HTF EMA Len (`htfLen`)** & **HTF timeframe (`htfTF`)**
HTF slope filter. Longer len or higher TF = steadier bias (fewer state changes); shorter/ lower = more sensitive.
* **Strict NR (`strictNR`)**
`true` uses the **previous** HTF bar for slope and evaluates on confirmed bars → cleaner, slower.
### B) Momentum (TSI)
* **TSI Long / Short / Signal (`tsiLong`, `tsiShort`, `tsiSig`)**
Standard TSI. Larger values = smoother momentum, fewer EXH triggers; smaller = snappier, more EXH sensitivity.
### C) Stretch (VWAP Z-score)
* **VWAP Z-score length (`zLen`)**
Window for Z over session-anchored VWAP distance. Larger = smoother |Z|; smaller = more reactive stretch detection.
* **Exhaustion |Z| (`zHot`)**
Minimum |Z| to flag **EXH**. Raise to demand **bigger** stretch (fewer EXH); lower to catch milder excess.
* **Max |Z| for NEW (`zNewMax`)**
NEW requires |Z| **≤ zNewMax** (avoid “new trend” when already stretched). Lower = stricter; higher = more NEW tags.
### D) States & thresholds
* **Uptrend threshold (`upThresh`)** / **Downtrend threshold (`dnThresh`)**
Where the oscillator flips into trend states. Widen (e.g., +60/−60) to reduce false states; narrow to get earlier signals.
* **Neutral band (`neutralBand`)**
Visual buffer around zero for “meh” momentum. Larger band = fewer go/no-go flips near zero.
### E) Visuals & tags
* **Show New / Show Exhausted (`showNew`, `showExh`)**
Toggle the tag labels.
* **Shade exhaustion heat (`plotHeat`)**
On = color background when EXH fires. Helpful for scanning.
### F) Smoothing
* **Osc smoothing (`smoothLen`)**
EMA over the raw composite. Higher = steadier line (fewer whip flips); lower = faster turns.
---
## Tuning recipes
* **Trend-day bias (follow moves longer)**
* Raise **`upThresh`** to \~60 and **`dnThresh`** to \~−60
* Keep **`zNewMax`** low (1.0–1.2) to avoid “fresh trend” when stretched
* **`smoothLen`** 3–5 to reduce noise
* **Range-day bias (fade edges)**
* Keep thresholds closer (e.g., +50/−50) for quicker state changes
* Lower **`zHot`** slightly (1.6–1.7) to catch earlier exhaustion
* Consider slightly shorter TSI (e.g., 21/9/5) for faster EXH response
* **Scalping LTF (1–3m)**
* TSI 21/9/5, **`smoothLen`** 1–2
* Thresholds +/-50; **`zNewMax`** 1.0–1.2; **`zHot`** 1.6–1.8
* StrictNR **off** if you want earlier calls (accept more noise)
* **Swing / HTF (1h–D)**
* TSI 35/21/9, **`smoothLen`** 4–7
* Thresholds +/-60\~65; **`zNewMax`** 1.2; **`zHot`** 1.8–2.0
* StrictNR **on** for cleaner bias
---
## Playbooks (how to actually trade it)
* **Go/No-Go Filter**
* Only take **long entries** when the oscillator is **above the neutral band** (preferably ≥ `upThresh`).
* Only take **short entries** when **below** the neutral band (preferably ≤ `dnThresh`).
* Avoid fresh go-with entries if an **EXH** tag appears; let the next setup re-arm.
* **Trend Genesis**
* Treat **NEW↑ / NEW↓** as “green light” for **first pullback** entries in the new direction (ideally within acceptable |Z|).
* **Trend Maturity**
* When in a position and **EXH** prints **against** you, tighten stops, take partials, or lean on your exit tool to protect gains.
---
## Suggested starting points
* **Day trading (5–15m):**
* TSI 25/13/7, `smoothLen=3`, thresholds **+55 / −55**, `zNewMax = 1.2`, `zHot = 1.8`, **StrictNR = true**
* **Scalping (1–3m):**
* TSI 21/9/5, `smoothLen=1–2`, thresholds **+50 / −50**, `zNewMax = 1.1–1.2`, `zHot = 1.6–1.8`, **StrictNR = false** (optional)
* **Swing (1h–D):**
* TSI 35/21/9, `smoothLen=4–6`, thresholds **+60 / −60**, `zNewMax = 1.2`, `zHot = 1.9–2.0`, **StrictNR = true**
---
## Notes & best practices
* **Session anchoring**: Z-score is session-anchored (resets by trading date). If you trade outside standard sessions, verify your data session.
* **Instrument specificity**: Tune **`zHot`**, **`zNewMax`**, and thresholds per symbol and timeframe.
* **Bar-close discipline**: Evaluate tags at **bar close** to avoid intrabar flip-flop.
* This is a **context/confirmation tool**, not a broker or strategy. Combine with your entry/exit rules and position sizing.
---
**Tip:** Start with the suggested day-trading profile. Use this oscillator as your **gate** (only trade with it), let your entry engine time executions, and rely on your exit tool for standardized profit-taking.
Supply/Demand Zones - Fixed v3 (Cross YES Only)This Pine Script indicator creates Supply/Demand Zones with specific filtering criteria for TradingView. Here's a comprehensive description:
Supply/Demand Zones -(Cross YES Only)
Core Functionality
Session-Based Analysis: Identifies and visualizes price ranges during user-defined time sessions
Cross Validation Filter: Only displays zones when the "Cross" condition is met (Open and Close prices cross the mid-range level)
Real-Time Monitoring: Tracks price action during active sessions and creates zones after session completion
Key Features
Time Range Configuration
Customizable session hours (start/end time with minute precision)
Timezone support (default: Europe/Bucharest)
Flexible scheduling for different trading sessions
Visual Elements
Range Border: Dotted outline showing the full session range (High to Low)
Key Levels: Horizontal lines for High, Low, and Mid-range levels
Sub-Range Zones: Shaded areas showing Open and Close price zones
Percentage Labels: Display the percentage of range occupied by Open/Close zones
Active Session Background: Blue background highlighting during active sessions
Smart Filtering System
Cross Condition: Only creates zones when:
Open < Mid AND Close > Mid (bullish cross), OR
Open > Mid AND Close < Mid (bearish cross)
This filter ensures only significant price movements that cross the session's midpoint are highlighted
Customization Options
Display Controls: Toggle visibility for borders, lines, zones, and labels
Color Schemes: Full color customization for all elements
Transparency Settings: Adjustable transparency for zone fills
Text Styling: Configurable label colors and information display
Technical Specifications
Maximum capacity: 500 boxes, 500 lines, 200 labels
Overlay indicator (draws directly on price chart)
Bar-time based positioning for accurate historical placement
Use Cases
Supply/Demand Trading: Identify key price levels where institutions may have interest
Session Analysis: Understand price behavior during specific trading hours
Breakout Detection: Focus on sessions where price crosses significant levels
Support/Resistance: Use range levels for future trade planning
What Makes It Unique
The "Cross YES Only" filter ensures that only meaningful price sessions are highlighted - those where the market shows directional bias by crossing from one side of the range to the other, indicating potential institutional interest or significant market sentiment shifts.
NY HIGH LOW BREAKNY HIGH LOW BREAK: A New York Session Breakout Strategy
The "NY HIGH LOW BREAK" indicator is a powerful TradingView script designed to identify and capitalize on breakout opportunities during the New York trading session. This strategy focuses on the initial price action of the New York market open, looking for clear breaches of the high or low established within the first 30 minutes. It's particularly suited for intraday traders who seek to capture momentum-driven moves.
Strategy Logic
The core of the "NY HIGH LOW BREAK" strategy revolves around these key components:
New York Session Opening Range Identification:
The script first identifies the opening range of the New York session. This is defined by the high and low prices established during the first 30 minutes of the New York trading session (from 7:01 AM GMT-4 to 7:31 AM GMT-4).
These crucial levels are then extended forward on the chart as horizontal lines, serving as potential support and resistance zones.
Breakout Signal Generation:
Long Signal: A buy signal is generated when the price breaks above the high of the New York opening range. Specifically, it looks for a candle whose open and close are both above the highLinePrice, and importantly, the previous candle's open was below and close was above the highLinePrice. This indicates a strong upward momentum confirming the breakout.
Short Signal: Conversely, a sell signal is generated when the price breaks below the low of the New York opening range. It looks for a candle whose open and close are both below the lowLinePrice, and the previous candle's open was above and close was below the lowLinePrice. This suggests strong downward momentum confirming the breakdown.
Supertrend Filter (Implicit/Future Enhancement):
While the supertrend and direction variables are present in the code, they are not actively used in the current signal generation logic. This suggests a potential future enhancement where the Supertrend indicator could be incorporated as a trend filter to confirm breakout directions, adding an extra layer of confluence to the signals. For example, only taking long breakouts when Supertrend indicates an uptrend, and short breakouts when Supertrend indicates a downtrend.
Second Candle Confirmation (Possible Future Enhancement):
The close_sec_candle function and openSEC, closeSEC variables indicate an attempt to capture the open and close of a "second candle" (30 minutes after the initial New York open). Currently, closeSEC is used in a specific condition for signal_way but not directly in the primary longSignal or shortSignal logic. This also suggests a potential future refinement where the price action of this second candle could be used for further confirmation or specific entry criteria.
Time-Based Filtering:
Signals are only considered valid within a specific trading window from 8:00 AM GMT-4 to 8:00 AM GMT-4 + 16 * 30 minutes (which is 480 minutes, or 8 hours) on 1-minute and 5-minute timeframes. This ensures that trades are taken during the most active and volatile periods of the New York session, avoiding late-session chop.
The script also highlights the New York session and lunch hours using background colors, providing visual context to the trading day.
Key Features
Automated New York Open Range Detection: The script automatically identifies and plots the high and low of the first 30 minutes of the New York trading session.
Clear Breakout Signals: Visually distinct "BUY" and "SELL" labels appear on the chart when a breakout occurs, making it easy to spot trading opportunities.
Timeframe Adaptability: While optimized for 1-minute and 5-minute timeframes for signal generation, the opening range lines can be displayed on various timeframes.
Customizable Risk-to-Reward (RR): The rr input allows users to define their preferred risk-to-reward ratio for potential trades, although it's not directly implemented in the current signal or trade management logic. This could be used by traders for manual trade management.
Visual Session and Lunch Highlights: The script colors the background to clearly delineate the New York trading session and the lunch break, helping traders understand the market context.
How to Use
Apply the Indicator: Add the "NY HIGH LOW BREAK" indicator to your chart on TradingView.
Select a Relevant Timeframe: For optimal signal generation, use 1-minute or 5-minute timeframes.
Observe the Opening Range: The green and red lines represent the high and low of the first 30 minutes of the New York session.
Look for Breakouts: Wait for price to decisively break above the green line (for a buy) or below the red line (for a sell).
Confirm Signals: The "BUY" or "SELL" labels will appear on the chart when the breakout conditions are met within the active trading window.
Implement Your Risk Management: Use your preferred risk management techniques, including stop-loss and take-profit levels, in conjunction with the signals generated. The rr input can guide your manual risk-to-reward calculations.
Potential Enhancements & Considerations
Supertrend Confirmation: Integrating the supertrend variable to filter signals would significantly enhance the strategy's robustness by aligning trades with the prevailing trend.
Stop-Loss and Take-Profit Automation: The rr input currently serves as a manual guide. Future versions could integrate automated stop-loss and take-profit placement based on this ratio, potentially using ATR for dynamic sizing.
Volume Confirmation: Adding a volume filter to confirm breakouts would ensure that only high-conviction moves are traded.
Backtesting and Optimization: Thorough backtesting across various assets and market conditions is crucial to determine the optimal settings and profitability of this strategy.
Session Times: The current session times are hardcoded. Making these user-definable inputs would allow for greater flexibility across different time zones and trading preferences.
The "NY HIGH LOW BREAK" is a straightforward yet effective strategy for capturing initial New York session momentum. By focusing on clear breakout levels, it aims to provide timely and actionable trading signals for intraday traders.
X HL QA market structure tool designed to frame price action within a defined context of prior session dynamics. It accomplishes this by anchoring a set of reference levels to the high, low, and open prices of a user-specified higher timeframe (e.g., 4H, 1D, etc.) and projecting those levels onto the current chart for ongoing analysis.
At its core, the indicator establishes a reference range—derived from the previous completed instance of the selected timeframe—and overlays this on the current timeframe. This range serves as a foundational structure for price interpretation in the current session.
Building upon this framework, the script constructs a set of symmetrical quadrants (or deviation zones) both inside and outside of the prior range. These include:
The midpoint (EQ) of the prior range
Levels at ±0.25x, ±0.75x, ±1.0x, ±1.5x, and ±2.0x the range height
These levels act as contextual zones that traders can use to interpret price behavior—whether it's consolidating within the prior range, approaching fair value (EQ), or expanding into directional continuation or reversal zones beyond the range.
The script operates in both real-time and historical contexts. On live bars, it dynamically updates the key levels to provide an evolving view of current price positioning. Simultaneously, it supports the display of historical levels for past sessions, enabling robust backtesting and comparative analysis of price behavior relative to previous quadrant structures.
Ultimately, this tool serves as a positional map, helping traders assess where price is trading relative to significant levels from the prior session, offering insights into potential support/resistance, overextension, or mean reversion scenarios.
Key Technical Features
Multi-Timeframe Support:
request.security() is used to pull data from a user-defined higher timeframe regardless of the current chart interval.
Visual Flexibility:
Toggle between "line" and "channel" mode.
Line color, width, and visibility are all user-controlled.
Anchoring Options:
Deviation levels can be calculated from either the previous period's open or its EQ (midpoint), giving flexibility depending on analytical preference.
Efficient Labeling:
Labels are only rendered on the last bar and are automatically cleared and redrawn to prevent duplication.
Label style, size, text color, and background color are all user-configurable.
Trading Application
This indicator is especially suited for:
1. Mean Reversion Strategies
When price moves beyond +1.0 or +1.5 deviations from the EQ or open, it may signal overextension and a potential snap back to the midpoint or range.
2. Breakout Confirmation
Sustained price action beyond ±1.0 levels may indicate trend strength or continuation beyond historical balance zones.
3. Contextual Range Awareness
EQ and Open provide structure from which traders can judge whether price is in a state of balance or imbalance.
Labels offer at-a-glance interpretation of key levels across any chosen timeframe.
4. Fractal and Multi-Session Analysis
Analysts can layer daily, weekly, and monthly versions of this indicator to observe confluence or divergence of higher timeframe structure.
TDO & Hit Rates by Weekday (5 min)Purpose
Tracks how often the next NY session “hits” the previous day’s True Day Open (TDO) level, separately for sessions that open above vs. below TDO, and breaks the statistics down by weekday (Mon–Fri) plus an overall summary.
Key Features
True Day Open (TDO) Plot
Captures the prior day’s 23:00 CT close price as the TDO.
Plots it as a continuous yellow line across your chart.
Session Labeling
At the end of each NY session (08:30–15:00 CT), places a small “TDO” label at the TDO price to confirm visually where it lay during that day.
Hit‑Count Logic
For each 5 min bar in the NY session, checks if the bar’s high ≥ TDO ≥ low (i.e. the TDO level was “hit”).
Classifies each session by whether its opening price (first 5 min bar) was above or below the TDO.
Weekday Statistics Table
Displays in the bottom‑left of your main chart window.
Rows: Header, Mon, Tue, Wed, Thu, Fri, All.
Columns:
% Hit Above: % of “above‑TDO” sessions that saw at least one hit
% Hit Below: % of “below‑TDO” sessions that saw at least one hit
Automatically updates in real time as new sessions complete.
Inputs & Settings
Data Resolution: Default = 5 min; use any intraday timeframe you like (1, 3, 15 min, etc.).
Extended Hours: Make sure your chart’s Extended Session (overnight) is enabled so the 23:00 CT bar exists.
Overlay: Draws directly on your price chart (no separate pane).
How to Use
Add to Chart: Paste the Pine v5 code into TradingView’s editor and apply to your ES (or other) futures chart.
Enable Overnight Bars: In Chart Settings → Symbol/Session → include Extended Hours.
Select Timeframe: Set the chart (or the indicator’s “Data Resolution” input) to 5 min (or your preferred intraday).
Read the Table:
Each weekday row shows how reliable TDO touches have been historically, separately for “above” and “below” opens.
The bottom “All” row summarizes combined performance.
What You Learn
Edge Analysis: Do sessions opening above TDO tend to test that level more often than those opening below (or vice versa)?
Day‑of‑Week Bias: Are certain weekdays more prone to TDO retests?
Overall Confidence: The “All” row lets you see your full-sample hit‑rate on both sides.
Multi-Timeframe VWAP DashboardMulti-Timeframe VWAP Dashboard with Advanced Customization**
Unlock the power of **Volume-Weighted Average Price (VWAP)** across multiple timeframes with this highly customizable and feature-rich Pine Script. Designed for traders who demand precision and flexibility, this script provides a **comprehensive VWAP dashboard** that adapts to your trading style and strategy. Whether you're a day trader, swing trader, or long-term investor, this tool offers unparalleled insights into market trends and price levels.
---
### **Key Features:**
1. **Multi-Timeframe VWAP Calculation:**
- Calculate VWAP across **12-minute, 48-minute, 96-minute, 192-minute, daily, weekly, monthly, and even yearly timeframes**.
- Supports **custom timeframes** for tailored analysis.
2. **Price Source Selection:**
- Choose from multiple price sources for VWAP calculation, including **Open, High, Low, Close, HL2, HLC3, HLCC4, and All**.
- Optimize VWAP for **uptrends and downtrends** by selecting the most relevant price source.
3. **Customizable Labels:**
- Add **dynamic labels** to each VWAP line for quick reference.
- Customize label **colors, sizes, and offsets** to suit your chart setup.
- Display **price values** and **session types** (e.g., "12 Min", "Daily", "Weekly") directly on the chart.
4. **Advanced Session Detection:**
- Automatically detect new sessions for **intraday, daily, weekly, monthly, and yearly timeframes**.
- Ensures accurate VWAP calculations for each session.
5. **Plot Visibility Control:**
- Toggle the visibility of individual VWAP plots to **reduce clutter** and focus on the most relevant timeframes.
- Includes options for **short-term, medium-term, and long-term VWAPs**.
6. **Comprehensive Timeframe Coverage:**
- From **12-minute intervals** to **12-month intervals**, this script covers all major timeframes.
- Perfect for traders who analyze markets across multiple horizons.
7. **User-Friendly Inputs:**
- Intuitive input options for **timeframes, colors, labels, and offsets**.
- Easily customize the script to match your trading preferences.
8. **Dynamic Label Positioning:**
- Labels adjust automatically based on price movements and session changes.
- Choose from **multiple offset options** to position labels precisely.
9. **Miscellaneous Customization:**
- Adjust **text color, label size, and price display settings**.
- Enable or disable **price values** and **session type labels** for a cleaner chart.
---
### **Why Use This Script?**
- **Versatility:** Suitable for all trading styles, including scalping, day trading, swing trading, and long-term investing.
- **Precision:** Accurate VWAP calculations across multiple timeframes ensure you never miss key price levels.
- **Customization:** Tailor the script to your specific needs with a wide range of input options.
- **Clarity:** Dynamic labels and customizable plots make it easy to interpret market trends at a glance.
---
### **How It Works:**
1. **Select Your Price Source:**
- Choose the price source (e.g., Open, Close, HL2) for VWAP calculation based on your trading strategy.
2. **Choose Timeframes:**
- Define the timeframes for VWAP calculation, from intraday to yearly intervals.
3. **Customize Labels and Plots:**
- Enable or disable labels and plots for each timeframe.
- Adjust colors, sizes, and offsets to match your chart setup.
4. **Analyze Market Trends:**
- Use the VWAP lines and labels to identify **support/resistance levels**, **trend direction**, and **potential reversal points**.
5. **Adapt to Market Conditions:**
- Switch between timeframes and price sources to adapt to changing market conditions.
---
### **Ideal For:**
- **Day Traders:** Use short-term VWAPs (e.g., 12-minute, 48-minute) to identify intraday trends and key levels.
- **Swing Traders:** Leverage medium-term VWAPs (e.g., 96-minute, daily) to spot swing opportunities.
- **Long-Term Investors:** Analyze long-term VWAPs (e.g., weekly, monthly) to gauge overall market direction.
---
### **How to Get Started:**
1. Add the script to your TradingView chart.
2. Customize the inputs to match your trading preferences.
3. Analyze the VWAP lines and labels to make informed trading decisions.
---
### **Pro Tip:**
Combine this script with other technical indicators (e.g., moving averages, RSI) for a **holistic view** of the market. Use the VWAP lines as dynamic support/resistance levels to enhance your entry and exit strategies.
This script is a must-have tool for traders who value precision, flexibility, and clarity. Share it with your audience to help them elevate their trading game. Whether they're beginners or seasoned professionals, this **Multi-Timeframe VWAP Dashboard** will become an essential part of their toolkit.
Opening Range, Initial Balance, Opening Price, Pre-market Levels### Description of the Indicator: **Opening Range, Initial Balance, Opening Price, Pre-market Levels**
This custom TradingView indicator provides a comprehensive view of key price levels for intraday trading, specifically designed to track important levels from the Opening Range (OR), Initial Balance (IB), Opening Price (OP), and Pre-market session (PM). These levels are essential for traders to gauge potential market movements and identify critical areas of support and resistance.
#### **Features:**
1. **Opening Range (OR):**
- This is the high and low of the first 30 minutes of the regular market session (09:30 - 10:00 EST).
- The OR high and low act as significant levels that may influence price movement for the rest of the day.
- The mid-level of the Opening Range (OR Mid) is also plotted to give a more detailed view of potential price action.
2. **Initial Balance (IB):**
- The Initial Balance is the range created during the first hour of market activity (09:30 - 10:30 EST).
- This range often sets the tone for the market's direction. The IB high and low, along with the IB midline, are plotted for quick reference.
3. **Opening Price (OP):**
- The opening price of the market is marked as a circle and labeled "OP."
- This level provides context for market sentiment when compared to the high and low levels.
4. **Pre-market Levels (PM):**
- The pre-market session (04:00 - 09:30 EST) has its own important levels that are calculated for the high, low, and mid range (PM High, PM Low, and PM Mid).
- These levels are plotted and are useful for traders to understand where the market stood before the regular session opened.
#### **Customization Options:**
- **Exchange Timezone:** You can choose whether to display the times in the exchange's local timezone or in your own preferred timezone.
- **Mid Levels Display:** You can toggle whether the mid levels for each range (OR, IB, PM) should be shown on the chart.
- **Level Color Change:** The colors of the plotted levels (high, low, mid) change based on whether the price is above or below the respective level, making it easy to visualize potential support and resistance.
- **Label Positions:** The position of the labels (OR, IB, OP, PM) on the chart can be customized to avoid overlap with other data points.
#### **Key Use Cases:**
- **Intraday Trend Analysis:** Use the OR and IB to identify key levels for the day, providing insights into the possible trend or range for the day.
- **Pre-market Insights:** The PM levels are crucial for understanding where the market stood during the pre-market hours and can be used as reference points during the regular session.
- **Potential Support and Resistance:** The high and low levels of the OR, IB, and PM sessions can act as potential support or resistance, which are useful for setting stop-loss and take-profit levels.
#### **How to Use:**
- Pay attention to the levels provided for OR, IB, and PM as potential entry and exit points.
- Watch for breakouts or reversals around these levels, especially when combined with other technical indicators or price action patterns.
- The mid levels offer an additional reference to assess price direction or identify possible areas of consolidation.
This indicator is perfect for day traders who rely on key intraday levels and pre-market activity to make informed trading decisions. It helps to streamline the process of identifying potential breakouts, reversals, and ranges in the market.
Fib Speed Resistance Fan"Fib Speed Resistance Fan," automatically draws Fibonacci Speed Resistance Fan lines based on the first and third candles of the trading session. Here’s a breakdown of its functionality:
Functionality
Session Start Time Identification
The script identifies the first candle at 9:15 AM using timestamp(), which ensures it captures the market's opening candle.
Candle Indexing
It determines the index of the first candle (firstCandleIndex) using ta.barssince(time >= sessionStart).
The third candle is found by adding two bars to the first candle's index (thirdCandleIndex = firstCandleIndex + 2).
Ensuring Single Execution
A boolean flag hasDrawn ensures that the lines are drawn only once and do not update on future candles.
Validating Data
It checks if the firstCandleIndex and thirdCandleIndex are valid (validSession).
If conditions are met, it extracts the highs and lows of the first and third candles.
Fibonacci Calculation
The script calculates a 0.75 level price between the first candle high/low and third candle low/high.
This level helps in drawing intermediate Fibonacci fan lines.
Drawing the Fibonacci Speed Resistance Fan
If conditions are valid and hasDrawn is false, the script draws:
Main fan lines from:
First candle high → Third candle low (Blue line)
First candle low → Third candle high (Blue line)
Candle Open Time labels (& TAPDA Lines)Description of the "4-Hour Candle Opening Times (TAPDA Lines)" Indicator
The "4-Hour Candle Opening Times (TAPDA Lines)" indicator integrates key principles of the Time and Price Action Trading Algorithm (TAPTA) with practical tools for analyzing market behavior. This script is designed for traders who leverage the interaction between time and price to identify opportunities in the market. The indicator supports the identification of significant price levels and potential areas of interest based on historical data and recurring patterns tied to specific timeframes.
Core Concepts
Time and Price Interaction (TAPTA Logic):
The script implements TAPTA principles by focusing on time intervals (4-hour candles) and the price action associated with those intervals.
Traders use this logic to recognize how prices behave at specific times, identifying patterns, levels of support or resistance, and potential reversals.
Highs and Lows Recognition (TAPDA):
The indicator includes logic for identifying and marking "Tapped Highs and Lows," which occur when price action retraces to previously significant levels within a specified tolerance. These taps are visually represented with horizontal lines, enabling traders to spot recurring price behaviors and levels of interest.
Dynamic Levels for Decision-Making:
By combining time and price, the script visualizes key price levels and their relevance over time, equipping traders with actionable insights for entry, exit, and risk management.
Indicator Features
1. Visual Representation of Candle Opening Times
The indicator marks the opening times of 4-hour candles on the chart.
A customizable label system displays the time in either a 12-hour or 24-hour format, with options to toggle the visibility of AM/PM suffixes.
2. TAPDA Logic
Identifies and highlights price levels that have been tapped within a specified tolerance.
Horizontal lines are drawn to mark these levels, allowing traders to see historical price levels acting as support or resistance.
The "Tapped Highs and Lows" are updated dynamically based on the most recent price action.
3. Timeframe-Specific Filtering
Users can limit the display to specific times of interest, such as 2 AM, 6 AM, and 10 AM, by toggling the "GCT (General Candle Times)" option.
Additional options allow filtering TAPDA logic by AM or PM timeframes, catering to traders who focus on specific market sessions.
4. Adjustable Plotting Limits
The script incorporates settings for controlling the maximum number of labels and lines displayed on the chart:
Max Labels: Limits the number of labels plotted for 4-hour candle opening times.
Max TAPDA Lines: Limits the number of TAPDA horizontal lines displayed.
A "Sync Lines and Labels" option ensures the same number of labels and lines are plotted when enabled, providing a consistent and clutter-free visualization.
5. Plot Maximum Capability
A "Plot Max" feature allows users to override the default behavior and force the plotting of the maximum allowed labels and lines, providing a comprehensive view of historical data.
6. User-Friendly Customization
Fully customizable label styles, including options for position, size, color, and background opacity.
Adjustable tolerance levels for TAPDA lines ensure compatibility with different market conditions and trading strategies.
Settings for flipping or aligning label positions above or below candles, or locking them to the opening price.
Script Logic
The script is built to prioritize efficiency and clarity, adhering to TradingView's Pine Script best practices and community standards:
Initialization:
Arrays are used to store historical price data, including highs, lows, and timestamps, ensuring only the necessary amount of data is processed.
A flexible and efficient data management system maintains a rolling window of data for both labels and TAPDA lines, ensuring smooth performance.
Label and Line Plotting:
Labels are plotted dynamically at user-defined positions and styles to mark the opening times of 4-hour candles.
TAPDA lines are drawn between historical high or low points and the current price action when the tolerance condition is met.
Limit Management:
The script enforces limits on the number of labels and lines plotted on the chart to maintain visual clarity.
Users can enable synchronization between the maximum labels and lines to ensure consistent visualization.
Customization Options:
Extensive customization settings allow traders to tailor the indicator to their strategies and preferences, including:
Label and line styles.
Session filtering (AM, PM, or specific times).
Display limits and synchronization options.
Capabilities
1. Enhance Time-Based Analysis
By marking significant times (4-hour candle openings), traders can identify key market phases and recurring behaviors tied to specific hours.
2. Leverage Historical Price Action
TAPDA logic highlights areas where price action interacts with historical highs and lows, providing actionable insights into potential support or resistance zones.
3. Improve Decision-Making
The indicator supports informed decision-making by blending visual data with time and price action principles, helping traders spot opportunities and mitigate risks.
4. Flexible Application Across Strategies
Suitable for day traders, swing traders, and position traders who utilize time and price action for trend analysis, reversals, or breakout strategies.
Best Practices for Use
Key Levels Analysis:
Focus on labels and TAPDA lines near critical price zones to gauge potential market reactions.
Session-Based Trading:
Use AM/PM filters or GCT settings to isolate specific trading sessions relevant to your strategy.
Combine with Other Indicators:
Enhance the effectiveness of this indicator by combining it with moving averages, RSI, or other tools for confirmation.
Risk Management:
Use the identified levels for stop-loss placement or target setting to align with your risk tolerance.
New York Midnight Indicator█ OVERVIEW
This script provides a visual tool for traders to track the New York Midnight (NY Midnight), a significant time marker for those who rely on New York’s financial markets. The script calculates the exact moment of midnight in New York and places a vertical line on the chart at this time, helping traders identify when a new trading day begins according to the New York time zone. The indicator also marks the midnight point with a lime-colored downward triangle to enhance visibility on the chart. It is specifically useful for traders who want to synchronize their strategies with New York’s trading hours, especially in global markets.
The script is flexible, allowing traders to adjust the UTC offset to accommodate different time zones. This is critical for those trading in different regions but still using New York as the main time reference.
█ CONCEPTS
New York Midnight: For many traders, especially those following the Forex and US stock markets, midnight in New York signifies the start of a new trading day. This point is essential for technical analysis as it often aligns with daily opening ranges, trend shifts, and volume spikes.
UTC Offset: The script includes a user-input parameter (utcOffset) to adjust the calculated time for New York midnight, ensuring that it accounts for time zone differences. This allows it to be used effectively regardless of the user’s local time zone, offering flexibility to global traders.
█ METHODOLOGY
UTC Offset Adjustment: The script starts by asking the trader to input their UTC offset (e.g., UTC -5 for New York without daylight saving time). This offset is added to the current chart time to align it with New York’s local time.
Current Hour Calculation: Once the UTC offset is applied, the script calculates the New York Hour by taking the chart’s current hour and adjusting it with the offset. This ensures that the displayed hour matches New York’s local time, regardless of the trader's location.
Vertical Line at Midnight: When the current New York hour equals 00:00 (midnight), the script plots a black vertical line on the chart. This line serves as a visual reference for the exact moment when New York's trading day begins, allowing traders to align their strategies accordingly.
Downward Triangle Plot: In addition to the vertical line, the script also adds a lime-colored downward triangle at the same bar location to further highlight the midnight point. This is useful for traders who prefer shape markers to visualize significant time events.
█ HOW TO USE
Identifying Daily Resets: The script makes it easy for traders to track when New York’s trading day resets. This is especially useful in Forex markets, where daily cycles and time zone-based volatility play an important role in price movement and volume spikes.
Time Zone Flexibility: By adjusting the UTC offset parameter, traders across the globe can synchronize their charts with New York time. This is critical for international traders who want to execute trades based on New York market patterns but reside in different time zones.
Strategic Time Marking: The vertical line and shape markers at midnight allow traders to quickly see when a new trading day starts, helping them identify patterns like the daily range, key support/resistance levels, or even potential reversals around this time.
Session-Based Analysis: Traders who work with session-based strategies (e.g., trading the Asian, European, or US sessions) can use this marker to better time their entries or exits relative to the start of the New York session.
█ METHOD VARIANTS
This script can be modified or extended in various ways to better suit specific trading strategies:
Highlighting Other Session Starts: It could be adapted to plot lines for other key session starts (e.g., London open, Tokyo open).
Multiple Time Zones: For traders who monitor several markets, the script could be extended to display midnight markers for multiple time zones.
Custom Line Styles: Users could modify the line color, thickness, or style to better match their chart aesthetic or preferences.
Market Internals (TICK, ADD, VOLD, TRIN, VIX)OVERVIEW
This script allows you to perform data transformations on Market Internals, across exchanges, and specify signal parameters, to more easily identify sentiment extremes.
Notable transformations include:
1. Cumulative session values
2. Directional bull-bear Ratios and Percent Differences
3. Data Normalization
4. Noise Reduction
This kind of data interaction is very useful for understanding the relationship between two mutually exclusive metrics, which is the essence of Market Internals: Up vs. Down. Even so, they are not possible with symbol expressions alone. And the kind of symbol expression needed to produce baseline data that can be reliably transformed is opaque to most traders, made worse by the fact that prerequisite symbol expressions themselves are not uniform across symbols. It's very nuanced, and if this last bit was confusing … exactly.
All this to say, rather than forcing that burden onto you, I've baked the baseline symbol expressions into the indicator so: 1) the transform functions consistently ingest the baseline data in the correct format and 2) you don't have to spend time trying to figure it all out. Trading is hard. There's no need to make it harder.
INPUTS
Indicator
Allows you to specify the base Market Internal and Exchange data to use. The list of Market Internals is simplified to their fundamental representation (TICK, ADD, VOLD, TRIN, VIX, ABVD, TKCD), and the list of Exchange data is limited to the most common (NYSE, NASDAQ, All US Stocks). There are also options for basic exchange combinations (Sum or Average of NYSE & NASDAQ).
Mode
Short for "Plot Mode", this is where you specify the bars style (Candles, Bars, Line, Circles, Columns) and the source value (used for single value plots and plot color changes).
Scale
This is the first and second data transformation grouped together. The default is to show the origin data as it might appear on a chart. You can then specify if each bar should retain it's unique value (Bar Value) or be added to a running total (Cumulative). You can also specify if you would like the data to remain unaltered (Raw) or converted to a directional ratio (Ratio) or a percentage (Percent Diff). These options determine the scale of the plot.
Both Ratio and Percent Diff. convert a given symbol into a positive or negative number, where positive numbers are bullish and negative numbers are bearish.
Ratio will divide Bull values by Bear values, then further divide -1 by the quotient if it is less than 1. For example, if "0.5" was the quotient, the Ratio would be "-2".
Percent Diff. subtracts Bear values from Bull values, then divides that difference by the sum of Bull and Bear values multiplied by 100. If a Bull value was "3" and Bear value was "7", the difference would be "-4", the sum would be "10", and the Percent Diff. would be "-40", as the difference is both bearish and 40% of total.
Ratio Norm. Threshold
This is the third data transformation . While quotients can be less than 1, directional ratios are never less than 1. This can lead to barcode-like artifacts as plots transition between positive and negative values, visually suggesting the change is much larger than it actually is. Normalizing the data can resolve this artifact, but undermines the utility of ratios. If, however, only some of the data is normalized, the artifact can be resolved without jeopardizing its contextual usefulness.
The utility of ratios is how quickly they communicate proportional differences. For example, if one side is twice as big as the other, "2" communicates this efficiently. This necessarily means the numerical value of ratios is worth preserving. Also, below a certain threshold, the utility of ratios is diminished. For example, an equal distribution being represented as 0, 1, 1:1, 50/50, etc. are all equally useful. Thus, there is a threshold, above which we want values to be exact, and below which the utility of linear visual continuity is more important. This setting accounts for that threshold.
When this setting is enabled, a ratio will be normalized to 0 when 1:1, scaled linearly toward the specified threshold when greater than 1:1, and then retain its exact value when the threshold is crossed. For example, with a threshold of "2", 1:1 = 0, 1.5:1 = 1, 2:1 = 2, 3:1 = 3, etc.
With all this in mind, most traders will want to set the ratios threshold at a level where accuracy becomes more important than visual continuity. If this level is unknown, "2" is a good baseline.
Reset cumulative total with each new session
Cumulative totals can be retained indefinitely or be reset each session. When enabled, each session has its own cumulative total. When disabled, the cumulative total is maintained indefinitely.
Show Signal Ranges
Because everything in this script is designed to make identifying sentiment extremes easier, an obvious inclusion would be to not only display ranges that are considered extreme for each Market Internal, but to also change the color of the plot when it is within, or beyond, that range. That is exactly what this setting does.
Override Max & Min
While the min-max signal levels have reasonable defaults for each symbol and transformation type, the Override Max and Override Min options allow you to … (wait for it) … override the max … and min … signal levels. This may be useful should you find a different level to be more suitable for your exact configuration.
Reduce Noise
This is the fourth data transformation . While the previous Ratio Norm. Threshold linearly stretches values between a threshold and 0, this setting will exponentially squash values closer to 0 if below the lower signal level.
The purpose of this is to compress data below the signal range, then amplify it as it approaches the signal level. If we are trying to identify extremes (the signal), minimizing values that are not extreme (the noise) can help us visually focus on what matters.
Always keep both signal zones visible
Some traders like to zoom in close to the bars. Others prefer to keep a wider focus. For those that like to zoom in, if both signals were always visible, the bar values can appear squashed and difficult to discern. For those that keep a wider focus, if both signals were not always visible, it's possible to lose context if a signal zone is vertically beyond the pane. This setting allows you to decide which scenario is best for you.
Plot Colors
These define the default color, within signal color, and beyond signal color for Bullish and Bearish directions.
Plot colors should be relative to zero
When enabled, the plot will inherit Bullish colors when above zero and Bearish colors when below zero. When disabled and Directional Colors are enabled (below), the plot will inherit the default Bullish color when rising, and the default Bearish color when falling. Otherwise, the plot will use the default Bullish color for all directions.
Directional colors
When the plot colors should be relative to zero (above), this changes the opacity of a bars color if moving toward zero, where "100" percent is the full value of the original color and "0" is transparent. When the plot colors are NOT relative to zero, the plot will inherit Bullish colors when rising and Bearish colors when falling.
Differentiate RTH from ETH
Market Internal data is typically only available during regular trading hours. When this setting is enabled, the background color of the indicator will change as a reminder that data is not available outside regular trading hours (RTH), if the chart is showing electronic trading hours (ETH).
Show zero line
Similar to always keeping signal zones visible (further up), some traders prefer zooming in while others prefer a wider context. This setting allows you to specify the visibility of the zero line to best suit your trading style.
Linear Regression
Polynomial regressions are great for capturing non-linear patterns in data. TradingView offers a "linear regression curve", which this script is using as a substitute. If you're unfamiliar with either term, think of this like a better moving average.
Symbol
While the Market Internal symbol will display in the status line of the indicator, the status line can be small and require more than a quick glance to read properly. Enabling this setting allows you to specify if / where / how the symbol should display on the indicator to make distinguishing between Market Internals more efficient.
Speaking of symbols, this indicator is designed for, and limited to, the following …
TICK - The TICK subtracts the total number of stocks making a downtick from the total number of stocks making an uptick.
ADD - The Advance Decline Difference subtracts the total number of stocks below yesterdays close from the total number of stocks above yesterdays close.
VOLD - The Volume Difference subtracts the total declining volume from the total advancing volume.
TRIN - The Arms Index (aka. Trading Index) divides the ratio of Advancing Stocks / Volume by the ratio of Declining Stocks / Volume. Given the inverse correlation of this index to market movement, when transforming it to a Ratio or Percent Diff., its values are inverted to preserve the bull-bear sentiment of the transformations.
VIX - The CBOE Volatility Index is derived from SPX index option prices, generating a 30-day forward projection of volatility. Given the inverse correlation of this index to market movement, when transforming it to a Ratio or Percent Diff., its values are inverted and normalized to the sessions first bar to preserve the bull-bear sentiment of the transformations. Note: If you do not have a Cboe CGIF subscription , VIX data will be delayed and plot unexpectedly.
ABVD - The Above VWAP Difference is an unofficial index measuring all stocks above VWAP as a percent difference. For the purposes of this indicator (and brevity), TradingViews PCTABOVEVWAP has has been shortened to simply be ABVD.
TKCD - The Tick Cumulative Difference is an unofficial index that subtracts the total number of market downticks from the total number of market upticks. Where "the TICK" (further up) is a measurement of stocks ticking up and down, TKCD is a measurement of the ticks themselves. For the purposes of this indicator (and brevity), TradingViews UPTKS and DNTKS symbols have been shorted to simply be TKCD.
INSPIRATION
I recently made an indicator automatically identifying / drawing daily percentage levels , based on 4 assumptions. One of these assumptions is about trend days. While trend days do not represent the majority of days, they can have big moves worth understanding, for both capitalization and risk mitigation.
To this end, I discovered:
• Article by Linda Bradford Raschke about Capturing Trend Days.
• Video of Garrett Drinon about Trend Day Trading.
• Videos of Ryan Trost about How To Use ADD and TICK.
• Article by Jason Ruchel about Overview of Key Market Internals.
• Including links to resources outside of TradingView violates the House Rules, but they're not hard to find, if interested.
These discoveries inspired me adopt the underlying symbols in my own trading. I also found myself wanting to make using them easier, the net result being this script.
While coding everything, I also discovered a few symbols I believe warrant serious consideration. Specifically the Percent Above VWAP symbols and the Up Ticks / Down Ticks symbols (referenced as ABVD and TKCD in this indicator, for brevity). I found transforming ABVD or TKCD into a Ratio or Percent Diff. to be an incredibly useful and worthy inclusion.
ABVD is a Market Breadth cousin to Brian Shannon's work, and TKCD is like the 3rd dimension of the TICKs geometry. Enjoy.
StonkBTC - autoswitch secondary series for scalpersSince the drop in March of 2020, the U.S. ETF , SPY, has been correlated with bitcoin's moves, especially during the NY session.
This tool is meant to help traders who want to take advantage of that without having to switch the secondary series between BTCUSD and (generally) SPY when changing the ticker they are viewing.
How this works:
The indicator will automatically switch between bitcoin or equity index depending on what ticker your current chart is. Ideally this tool would be very simple to use.
Options:
Show/hide a 'track price' line
Index choice of SP500, Nasdaq 100, and Russell 2000. Further selection by ETF, futures, and CFD
Varied bitcoin price sources
Notes:
You will need a separate subscription to TradingView to view realtime CME futures data (if not, it will be delayed by 10 minutes). Because of this, the default option chosen is the CFD for the most complete chart when viewing bitcoin.
NY Core Trading Session: 9:30 a.m. to 4:00 p.m. ET
www.nyse.com
Daily HOD / LOD Anchored VWAP (24/7 Markets)mart Daily HOD/LOD Anchored VWAP (Auto Detect + Alerts)
This indicator automatically anchors VWAP at the High of Day (HOD) and Low of Day (LOD) for each session/day.
No more manual anchoring — the script tracks intraday highs and lows in real-time and resets cleanly at the start of each trading day or session.
✨ Features
✅ Auto-anchored AVWAP at daily High and Low
✅ Works for stock markets (with fixed sessions) and crypto markets (24/7)
✅ Clean reset every session/day
✅ Separate AVWAP lines for HOD and LOD
✅ Customizable colors & line widths
✅ Alerts included 🚨 (get notified instantly when a new High/Low AVWAP starts)
📈 Use Cases
Spot true intraday support/resistance levels
Track where institutions may be defending positions
Combine with price action, orderflow, or volume profile strategies
Perfect for intraday trading, scalping, and swing entries
⚡ Alerts
New HOD AVWAP → Fires when price makes a fresh high of day, starting a new anchored VWAP.
New LOD AVWAP → Fires when price makes a fresh low of day, starting a new anchored VWAP.
🛠️ Settings
Show/hide HOD or LOD VWAP
Customize line colors and thickness
Works seamlessly across stocks, futures, forex, and crypto
💡 Pro Tip:
AVWAP from the high and low of the day often acts as a magnet for price. Watch how price reacts when revisiting these levels — confluence with other indicators = high-probability setups.
⚠️ Disclaimer:
This script is for educational purposes only. It is not financial advice. Always manage your own risk.