Silver BulletSilver Bullet is a trading tool built for finding cleaner, higher-probability setups. It focuses on key windows of market movement and adds helpful tools like daily range levels and candlestick patterns.
Whether you’re trading breakouts or reversals, Silver Bullet gives you a clearer view of the market and more confidence in your setups.
⸻
🔹 Trading Setup #1: Macro Time
The Macro Time setting offers two modes: Macro Bullet and Silver Bullet. Both help traders focus on specific times when the market tends to deliver clean moves.
• Macro Bullet is based on the high and low of a full macro session. It automatically detects the session’s range and bias, then offers optimal entries for either Long or Short setups. Once the session resolves, it provides Fibonacci-based levels for entry, target, and stop loss.
• Silver Bullet is based on ICT concepts and focuses on the hourly range for London, NY AM, and NY PM sessions. It’s designed for quick time blocks and highlights key levels as the session unfolds.
To use this setup, set Macro Time to “ICT Sessions” and select your preferred mode under Bullet Mode.
⸻
🔹 Trading Setup #2: Daily Range
Enable Daily Range to draw Fibonacci levels based on either the previous day’s candle or the current day’s developing range. These levels help you identify potential support, resistance, and midpoint zones throughout the day.
With the current day’s range, levels automatically update in real time as new highs or lows form — keeping your chart aligned with evolving price action.
⸻
🔹 Trading Setup #3: Candlestick Patterns
Turn on Candlestick Patterns to automatically highlight clean reversal signals such as Hammers, Hanging Men, Shooting Stars, and Tweezers. Each pattern is detected using specific criteria and trend filters to reduce noise and improve reliability. They work especially well as confirmation signals around key levels or session zones.
Silver Bullet brings structure, clarity, and precision to your intraday trading. By combining time-based bias, price action levels, and pattern recognition, it helps you trade with purpose — not guesswork. Use one setup or combine all three for a complete view of the market, tailored to your style and session of choice.
Pesquisar nos scripts por "session"
[FS] Time & Cycles Time & Cycles
A comprehensive trading session indicator that helps traders identify and track key market sessions and their price levels. This tool is particularly useful for forex and futures traders who need to monitor multiple trading sessions.
Key Features:
• Multiple Session Support:
- London Session
- New York Session
- Sydney Session
- Asia Session
- Customizable TBD Session
• Session Visualization:
- Clear session boxes with customizable colors
- Session labels with adjustable visibility
- Support for sessions crossing midnight
- Timezone-aware calculations
• Price Level Tracking:
- Daily High/Low levels
- Weekly High/Low levels
- Previous session High/Low levels
- Customizable history depth for each level type
• Customization Options:
- Adjustable colors for each session
- Customizable border styles
- Label visibility controls
- Timezone selection
- History level depth settings
• Technical Features:
- High-performance calculation engine
- Support for multiple timeframes
- Efficient memory usage
- Clean and intuitive visual display
Perfect for:
• Forex traders monitoring multiple sessions
• Futures traders tracking market hours
• Swing traders identifying key session levels
• Day traders planning their trading hours
• Market analysts studying session patterns
The indicator helps traders:
- Identify active trading sessions
- Track session-specific price levels
- Monitor market activity across different time zones
- Plan trades based on session boundaries
- Analyze price action within specific sessions
Note: This indicator is designed to work across all timeframes and is optimized for performance with minimal impact on chart loading times.
Multi-Timeline 1.0Multi-TimeLines 1.0 - Comprehensive Description
WHAT IT DOES:
This indicator creates dynamic horizontal support/resistance lines based on opening prices captured at user-defined New York times. Unlike static horizontal lines, these levels automatically appear and disappear based on sophisticated session logic, providing traders with time-sensitive reference levels that adapt to market sessions.
HOW IT WORKS - TECHNICAL IMPLEMENTATION:
1.
Timezone Conversion Engine:
The script uses Pine Script's "America/New_York" timezone functions to ensure all time calculations are based on NY time, regardless of the user's chart timezone. This eliminates confusion and provides consistent behavior across global markets.
2.
Dual-Category Time Classification System:
The indicator employs a unique two-category classification system:
Category A (16:00-23:59 NY): Evening times that extend overnight until next day 15:59 NY
Category B (00:00-15:59 NY): Day times that extend until same day 15:59 NY
This classification handles the complex logic of overnight sessions and prevents lines from incorrectly resetting at midnight for evening times.
3. Price Capture Mechanism:
Uses precise time-hit detection with backup systems for edge cases (especially midnight 00:00). When a specified time occurs, the script captures the bar's opening price and stores it in persistent variables using Pine Script's var declarations.
4. Session-Aware Display Logic:
Lines only appear during their designated "display windows" - periods when the captured price level is relevant. The script uses conditional plotting with plot.style_linebr to create clean breaks when lines are inactive.
5. Smart Reset System:
Different reset behaviors based on time classification:
Category A times persist across midnight (for overnight analysis)
Category B times reset on day changes (except 00:00 which captures AT day change)
Automatic cleanup when display windows close
ORIGINALITY & UNIQUE FEATURES:
1. Overnight Session Handling:
Unlike basic horizontal line tools, this script properly handles overnight spans for evening times, making it invaluable for analyzing gaps and overnight price action.
2. Automatic Session Management:
No manual line drawing required - the script automatically manages when lines appear/disappear based on NY market sessions (15:59 close, 18:00 after-hours start).
3. Time-Window Display Logic:
Lines only show during relevant periods, reducing chart clutter and focusing attention on currently active levels.
TRADING CONCEPTS & APPLICATIONS:
1. Session-Based Analysis:
Capture opening prices at key session times:
00:00 NY: Sydney/Asian session start
03:00 NY: London pre-market
08:00 NY: London session open
09:30 NY: NYSE opening bell
18:00 NY: After-hours start
2. Gap Analysis:
Evening times (20:00-23:59) that extend overnight are particularly useful for:
Identifying potential gap-fill levels
Tracking overnight high/low breaks
Setting reference points for next-day trading
3. Support/Resistance Framework:
Opening prices at significant times often act as:
Intraday support/resistance levels
Reference points for breakout/breakdown analysis
Pivot levels for mean reversion strategies
HOW TO USE:
1. Time Input:
Enter times in "HH:MM" format using 24-hour NY time:
"09:30" for NYSE open
"15:30" for late-day reference
"20:00" for evening level (extends overnight)
2. Line Behavior:
Blue/Green/Cyan/Red lines: Your custom times
Yellow line: After-hours day open (18:00 NY start)
Lines appear with breaks during inactive periods
3. Strategic Setup:
Use 2-3 key session times for your trading style
Combine morning times (immediate reference) with evening times (overnight analysis)
Toggle after-hours line based on your market focus
CALCULATION METHOD:
The script uses direct opening price capture (no smoothing or averaging) at precise time hits, ensuring the most accurate representation of actual market levels at specified times. This raw price approach maintains the integrity of actual market opening prices rather than manipulated or calculated values.
This method is particularly effective because opening prices at significant times often represent institutional order flow and can act as magnetic levels throughout subsequent sessions.
Normalized VolumeOVERVIEW
The Normalized Volume (NV) is an attempt at visualizing volume in a format that is more understandable by placing the values on a scale of 0 to 100. 0 in this case is the lowest volume candle available on the chart, and 100 being the highest. Calling a candle “high volume” can be misleading without having something to compare to. For example, in scaling the volume this way we can clearly see that a given candle had 80% of the peak volume or 20%, and gauge the validity of price moves more accurately.
FEATURES
NV by session
Allows user to filter the volume values across 4 different sessions. This can add context to the volume output, because what it high volume during London session may not be high volume relative to New York session.
Overlay plotting
When volume boxes are turned on, this will allow you to toggle how they are plotted.
Color theme
A standard color theme will color the NV based on if the respective candle closed green or red. Selecting variables will color the NV plot based on which range the value falls within.
Session inputs
Activated with the “By session?” Input. Allows user to break the day up into 4 sessions to more accurately gauge volume relative to time of day.
Show Box (X)
Toggles on chart boxes on and off.
Show historical boxes
Will plot prior occurrences of selected volume boxes, deleting them when price fully moves through them in the opposite direction of the initial candle.
Color inputs
Allows for intensive customization in how this tool appears visually.
INTERPRETATION
There are 6 pre-defined ranges that NV can fall within.
NV <= 10
Volume is insignificant
In this range, volume should not be a confirmation in your trading strategy.
NV > 10 and <= 20
Volume is low
In this range, volume should not be a confirmation in your trading strategy.
NV > 20 and <= 40
Volume is fair
In this range, volume should not be the primary confirmation in your trading strategy.
NV > 40 and <= 60
Volume is high
In this range, volume can be the primary confirmation in your trading strategy.
NV > 60 and <= 80
Volume is very high
In this range, volume can be the primary confirmation in your trading strategy.
NV > 80
Volume is extreme
In this range, volume is likely news driven and caution should be taken. High price volatility possible.
To utilize this tool in conjunction with your current strategy, follow the range explanations above section in this section. The higher the NV value, the stronger you can feel about your directional confirmation.
If NV = 100, this means that the highest volume candle occurred up to that point on your selected timeframe. All future data points will be weighed off of this value.
LIMITATIONS
This tool will not load on tickers that do not have volume data, such as VIX.
STRATEGY
The Normalized Volume plot can be used in exactly the same way as you would normally utilize volume in your trading strategy. All we are doing is weighing the volume relative to itself.
Volume boxes can be used as targets to be filled in a similar way to commonly used “fair value gap” strategies. To utilize this strategy, I recommend selecting “Plot to Wicks” in Overlay Plotting and toggling on Show Historical Boxes.
Volume boxes can be used as areas for entry in a similar way to commonly used “order block” strategies. To utilize this strategy, I recommend selecting “Open To Close” in Overlay Plotting.
NOTES
You are able to plot an info label on right side of NV plot using the "Toggle box label" input. When a box is toggled on this label will tell you when the most recent box of that intensity occurred.
This tool is deeply visually customizable, with the ability to adjust line width for plotted boxes, all colors on both box overlays, and all colors on NV panel. Customize it to your liking!
I have a handful of additional features that I plan on adding to this tool in future updates. If there is anything you would like to see added, any bugs you identify, or any strategies you encounter with this tool, I would love to hear from you!
Huge shoutout to @joebaus for assisting in bringing this tool to life, please check out his work here on TradingView!
NYSE, Euronext, and Shanghai Stock Exchange Hours IndicatorNYSE, Euronext, and Shanghai Stock Exchange Hours Indicator
This script is designed to enhance your trading experience by visually marking the opening and closing hours of major global stock exchanges: the New York Stock Exchange (NYSE), Euronext, and Shanghai Stock Exchange. By adding vertical lines and background fills during trading sessions, it helps traders quickly identify these critical periods, potentially informing better trading decisions.
Features of This Indicator:
NYSE, Euronext, and Shanghai Stock Exchange Hours: Displays vertical lines at market open and close times for these three exchanges. You can easily switch between showing or hiding the different exchanges to customize the indicator for your needs.
Background Fill: Highlights the trading hours of these exchanges using faint background colors, making it easy to spot when markets are in session. This feature is crucial for timing trades around overlapping trading hours and volume peaks.
Customizable Visuals: Adjust the color, line style (solid, dotted, dashed), and line width to match your preferences, making the indicator both functional and visually aligned with your chart's aesthetics.
How to Use the Indicator:
Add the Indicator to Your Chart: Add the script to your chart from the TradingView script library. Once added, the indicator will automatically plot vertical lines at the opening and closing times of the NYSE, Euronext, and Shanghai Stock Exchange.
Customize Display Settings: Choose which exchanges to display by enabling or disabling the NYSE, Euronext, or Shanghai sessions in the indicator settings. This allows you to focus only on the exchanges that are relevant to your trading strategy.
Adjust Visual Properties: Customize the appearance of the vertical lines and background fill through the settings. Modify the color of each exchange, adjust the line style (solid, dotted, dashed), and control the line thickness to suit your chart preferences. The background fill can also be customized to clearly highlight active trading sessions.
Identify Key Market Hours: Use the vertical lines and background fills to identify the market open and close times. This is particularly useful for understanding how price action changes during specific trading hours or for finding high liquidity periods when multiple markets are open simultaneously.
Adapt Trading Strategies: By knowing when major stock exchanges are open, you can adapt your trading strategy to take advantage of potential price movements, increased volatility, or volume. This can help you avoid low-liquidity times and capitalize on more active trading periods.
This indicator is especially valuable for traders focusing on cross-market dynamics or those interested in understanding how different sessions influence market liquidity and price action. With this tool, you can gain insight into market conditions and adapt your trading strategies accordingly. The clean visual separation of session times helps you maintain context, whether you're trading Forex, stocks, or cryptocurrencies.
Disclaimer: This script is intended for informational and educational purposes only. It does not constitute financial advice or a recommendation to buy or sell any financial instrument. Always conduct your own research and consult with a licensed financial advisor before making any trading decisions. Trading involves risk, and past performance is not indicative of future results.
Time based Insights [Digit23]Description:
The NSE Trading Time Insights indicator is a powerful tool designed for traders on the National Stock Exchange (NSE) of India. It provides a comprehensive overview of different trading sessions throughout the day, offering valuable insights into market characteristics and potential trading strategies for each time period.
Key Features:
1. Dynamic Session Display: The indicator automatically detects the current trading session and highlights it in the table.
2. Customizable Table: Users can choose to display either a full table showing all sessions or focus on the current session only.
3. User-Editable Content: Time ranges, session characteristics, and trading insights are fully customizable by the user.
4. Visual Customization: Table position and color scheme can be adjusted to suit individual preferences.
5. Market Status Indicator: Clearly shows when the market is closed.
Sessions Covered:
1. Opening Bell
2. Mid-Morning
3. Lunch Hour
4. Early Afternoon
5. Power Hour
For each session, the indicator displays:
- Time Range
- Session Name
- Market Characteristics
- Trading Insights
Customization Options:
- Table Position: Choose from top-left, top-right, bottom-left, or bottom-right of the chart.
- Color Scheme: Customize colors for header, cells, highlighting, and market closed status.
- Session Details: Edit time ranges, characteristics, and trading insights for each session.
Usage:
This indicator is particularly useful for:
1. New traders learning about intraday market dynamics on the NSE.
2. Experienced traders looking for a quick reference of session characteristics.
3. Traders developing or refining time-based trading strategies.
4. Anyone seeking to understand the typical flow of the trading day on the NSE.
Note:
The indicator uses the chart's time to determine the current session. Ensure your chart is set to the correct time zone for accurate results.
Disclaimer:
This indicator is for informational purposes only. The provided insights and characteristics are general in nature and may not reflect current market conditions. Always conduct your own analysis and risk assessment before making trading decisions.
Time Range### Indicator Name: **Time Range**
#### Description:
The **Time Range** indicator allows users to highlight specific time ranges on a chart for each day of the week. It uses customizable time inputs for every day (Monday to Sunday), allowing the user to define trading sessions or any time-based range. These sessions are visualized by shading the background of the chart within the defined periods.
#### Key Features:
- **Custom Sessions**: For each day of the week (Monday to Sunday), the user can define a unique time session by specifying the start time using the input fields.
- **Day-wise Session Activation**: The user can toggle the activation of sessions for each day by using checkboxes. If the session for a particular day is disabled, no background shading will appear for that day.
- **Background Highlighting**: When a session is active, the background of the chart during the specified session period will be shaded in gray with a 70% transparency. This helps the user visually identify active time ranges across multiple days.
#### Use Cases:
- **Highlighting Trading Sessions**: Traders can use this indicator to easily visualize specific market sessions such as the New York or London trading sessions.
- **Visualizing Custom Time Blocks**: Can be used to highlight any custom time blocks that are important for the trader, such as key trading hours, news release periods, or other time-based strategies.
#### Customizable Parameters:
- **Day Toggles**: Checkboxes to activate or deactivate sessions for each day of the week.
- **Time Range Inputs**: Time range inputs allow the user to set start times for each session, which are applied based on the user's selection for the day.
This indicator helps streamline chart analysis by giving clear visual markers for time-based events or trading windows.
time_and_sessionA library that provides utilities for working with trading sessions and time-based conditions. Functions include session checks, date range checks, day-of-week matching, and session high/low calculations for daily, weekly, monthly, and yearly timeframes. This library streamlines time-related calculations and enhances time-based strategies and indicators.
Library "time_and_session"
Provides functions for checking time and session-based conditions and retrieving session-specific high and low values.
is_session(session, timeframe, timezone)
Checks if the current time is within the specified trading session
Parameters:
session (string) : The trading session, defined using input.session()
timeframe (string) : The timeframe to use, defaults to the current chart's timeframe
timezone (string) : The timezone to use, defaults to the symbol's timezone
Returns: A boolean indicating whether the current time is within the specified trading session
is_date_range(start_time, end_time)
Checks if the current time is within a specified date range
Parameters:
start_time (int) : The start time, defined using input.time()
end_time (int) : The end time, defined using input.time()
Returns: A boolean indicating whether the current time is within the specified date range
is_day_of_week(sunday, monday, tuesday, wednesday, thursday, friday, saturday)
Checks if the current day of the week matches any of the specified days
Parameters:
sunday (bool) : A boolean indicating whether to check for Sunday
monday (bool) : A boolean indicating whether to check for Monday
tuesday (bool) : A boolean indicating whether to check for Tuesday
wednesday (bool) : A boolean indicating whether to check for Wednesday
thursday (bool) : A boolean indicating whether to check for Thursday
friday (bool) : A boolean indicating whether to check for Friday
saturday (bool) : A boolean indicating whether to check for Saturday
Returns: A boolean indicating whether the current day of the week matches any of the specified days
daily_high(source)
Returns the highest value of the specified source during the current daily session
Parameters:
source (float) : The data series to evaluate, defaults to high
Returns: The highest value during the current daily session, or na if the timeframe is not suitable
daily_low(source)
Returns the lowest value of the specified source during the current daily session
Parameters:
source (float) : The data series to evaluate, defaults to low
Returns: The lowest value during the current daily session, or na if the timeframe is not suitable
regular_session_high(source, persist)
Returns the highest value of the specified source during the current regular trading session
Parameters:
source (float) : The data series to evaluate, defaults to high
persist (bool) : A boolean indicating whether to retain the last value outside of regular market hours, defaults to true
Returns: The highest value during the current regular trading session, or na if the timeframe is not suitable
regular_session_low(source, persist)
Returns the lowest value of the specified source during the current regular trading session
Parameters:
source (float) : The data series to evaluate, defaults to low
persist (bool) : A boolean indicating whether to retain the last value outside of regular market hours, defaults to true
Returns: The lowest value during the current regular trading session, or na if the timeframe is not suitable
premarket_session_high(source, persist)
Returns the highest value of the specified source during the current premarket trading session
Parameters:
source (float) : The data series to evaluate, defaults to high
persist (bool) : A boolean indicating whether to retain the last value outside of premarket hours, defaults to true
Returns: The highest value during the current premarket trading session, or na if the timeframe is not suitable
premarket_session_low(source, persist)
Returns the lowest value of the specified source during the current premarket trading session
Parameters:
source (float) : The data series to evaluate, defaults to low
persist (bool) : A boolean indicating whether to retain the last value outside of premarket hours, defaults to true
Returns: The lowest value during the current premarket trading session, or na if the timeframe is not suitable
postmarket_session_high(source, persist)
Returns the highest value of the specified source during the current postmarket trading session
Parameters:
source (float) : The data series to evaluate, defaults to high
persist (bool) : A boolean indicating whether to retain the last value outside of postmarket hours, defaults to true
Returns: The highest value during the current postmarket trading session, or na if the timeframe is not suitable
postmarket_session_low(source, persist)
Returns the lowest value of the specified source during the current postmarket trading session
Parameters:
source (float) : The data series to evaluate, defaults to low
persist (bool) : A boolean indicating whether to retain the last value outside of postmarket hours, defaults to true
Returns: The lowest value during the current postmarket trading session, or na if the timeframe is not suitable
weekly_high(source)
Returns the highest value of the specified source during the current weekly session. Can fail on lower timeframes.
Parameters:
source (float) : The data series to evaluate, defaults to high
Returns: The highest value during the current weekly session, or na if the timeframe is not suitable
weekly_low(source)
Returns the lowest value of the specified source during the current weekly session. Can fail on lower timeframes.
Parameters:
source (float) : The data series to evaluate, defaults to low
Returns: The lowest value during the current weekly session, or na if the timeframe is not suitable
monthly_high(source)
Returns the highest value of the specified source during the current monthly session. Can fail on lower timeframes.
Parameters:
source (float) : The data series to evaluate, defaults to high
Returns: The highest value during the current monthly session, or na if the timeframe is not suitable
monthly_low(source)
Returns the lowest value of the specified source during the current monthly session. Can fail on lower timeframes.
Parameters:
source (float) : The data series to evaluate, defaults to low
Returns: The lowest value during the current monthly session, or na if the timeframe is not suitable
yearly_high(source)
Returns the highest value of the specified source during the current yearly session. Can fail on lower timeframes.
Parameters:
source (float) : The data series to evaluate, defaults to high
Returns: The highest value during the current yearly session, or na if the timeframe is not suitable
yearly_low(source)
Returns the lowest value of the specified source during the current yearly session. Can fail on lower timeframes.
Parameters:
source (float) : The data series to evaluate, defaults to low
Returns: The lowest value during the current yearly session, or na if the timeframe is not suitable
RSI Supreme Multi-Method [MyTradingCoder]Introducing the "RSI Supreme Multi-Method" indicator, a powerful tool that combines the Relative Strength Index (RSI) with selectable manipulation methods to identify overbought and oversold conditions in the market, along with the ability to detect divergences for enhanced trading insights.
The indicator features four distinct manipulation methods for the RSI, each providing valuable insights into market conditions:
1. Standard RSI Method: The indicator uses the traditional RSI calculation to identify overbought and oversold areas.
2. Volatility Weighted RSI Method: This method applies a volatility formula to the RSI calculation, allowing for a more responsive indication of market conditions during periods of heightened volatility. Users can adjust the length of the volatility formula to fine-tune this method.
3. Smoothed RSI Method: The smoothed RSI method utilizes a smoothing algorithm to reduce noise in the RSI values, presenting a clearer representation of overbought and oversold conditions. The length of the smoothing can be adjusted to match your trading preferences.
4. Session Weighted RSI Method: With this innovative method, users can specify multipliers for different time sessions throughout the day to manipulate the base RSI. Each session can be customized with start and end times, enabling or disabling specific sessions, and specifying the multiplier for each session. This feature allows traders to adapt the RSI to different market sessions dynamically.
Additionally, the "RSI Supreme Multi-Method" indicator draws divergences on the oscillator, providing an extra layer of analysis for traders. Divergences occur when the direction of the RSI differs from the direction of the price movement, potentially signaling trend reversals.
Key Settings:
RSI Length: Adjust the length of the base RSI before applying any manipulation.
RSI Source: Determine the data source for the base RSI calculation.
Overbought Value: Set the RSI value at which overbought conditions are indicated.
Oversold Value: Set the RSI value at which oversold conditions are indicated.
RSI Type: Choose from four options: Standard, Smoothed, Volatility Manipulated, or Session Manipulated.
Volatility Manipulated Settings: Adjust the length of the volatility formula (applicable to Volatility Manipulated method).
Smoothed Settings: Adjust the length of the smoothing (applicable to Smoothed method).
Session Manipulated Settings: Customize six different time sessions with start and end times, enable or disable specific sessions, and specify multipliers for each session.
Divergence Color: Adjust the color of the drawn divergences to suit your chart's aesthetics.
Divergence Tuning: Fine-tune the sensitivity of the divergence detection for more accurate signals.
The "RSI Supreme Multi-Method" indicator is a versatile and comprehensive tool that can be used to identify overbought and oversold areas, as well as to spot potential trend reversals through divergences. However, like all technical analysis tools, it should be used in conjunction with other indicators and analysis methods to make well-informed trading decisions.
Enhance your trading insights with the "RSI Supreme Multi-Method" indicator and gain an edge in identifying critical market conditions and divergences with precision.
Breaking Bar [5ema]I reused some functions, made by (i believe that):
@LeviathanCapital: Market Sessions.
-----
How to use?
More suitable for Scalping
1. Plan A: Break out the highest bar
Find the bar with the largest range (high – low) and high volume of the previous N bars.
When the price close breaks down to highest bar, give a SELL signal.
When the price close breaks up the highest, give a BUY signal.
2. Plan B: Break out the bar opened market
The price close breaks through the open bar, give a Buy and Sell signal.
Market sessions: Tokyo, London, Sydney, New York.
-----
How to set up?
Choose the plan.
Lookback bar to find highest bar.
Right bar: What position of signal will appear from the open market bar (or high bar).
Number break: The maximum bars have price close breaked before giving signal.
Session time: The open and close of market.
-----
This indicator is for reference only, you need your own method and strategy.
If you have any questions, please let me know in the comments.
Open Interest Profile (OI)- By LeviathanThis script implements the concept of Open Interest Profile, which can help you analyze the activity of traders and identify the price levels where they are opening/closing their positions. This data can serve as a confluence for finding the areas of support and resistance , targets and placing stop losses. OI profiles can be viewed in the ranges of days, weeks, months, Tokyo sessions, London sessions and New York sessions.
A short introduction to Open Interest
Open Interest is a metric that measures the total amount of open derivatives contracts in a specific market at a given time. A valid contract is formed by both a buyer who opens a long position and a seller who opens a short position. This means that OI represents the total value of all open longs and all open shorts, divided by two. For example, if Open Interest is showing a value of $1B, it means that there is $1B worth of long and $1B worth of short contracts currently open/unsettled in a given market.
OI increasing = new long and short contracts are entering the market
OI decreasing = long and short contracts are exiting the market
OI unchanged = the net amount of positions remains the same (no new entries/exits or just a transfer of contracts occurring)
About this indicator
*This script is basically a modified version of my previous "Market Sessions and Volume Profile by @LeviathanCapital" indicator but this time, profiles are generated from Tradingview Open Interest data instead of volume (+ some other changes).
The usual representation of OI shows Open Interest value and its change based on time (for a particular day, time frame or each given candle). This indicator takes the data and plots it in a way where you can see the OI activity (change in OI) based on price levels. To put it simply, instead of observing WHEN (time) positions are entering/exiting the market, you can now see WHERE (price) positions are entering/exiting the market. This is the same concept as when it comes to Volume and Volume profile and therefore, similar strategies and ways of understanding the given data can be applied here. You can even combine the two to gain an edge (eg. high OI increase + Volume Profile showing dominant market selling = possible aggressive shorts taking place)
Green nodes = OI increase
Red nodes = OI decrease
A cluster of large green nodes can be used for support and resistance levels (*trapped traders theory) or targets (lots of liquidations and stop losses above/below), OI Profile gaps can present an objective for the price to fill them (liquidity gaps, imbalances, inefficiencies, etc), and more.
Indicator settings
1. Session/Lookback - Choose the range from where the OI Profile will be generated
2. OI Profile Mode - Mode 1 (shows only OI increase), Mode 2 (shows both OI increase and decrease), Mode 3 (shows OI decrease on left side and OI increase on the right side).
3. Show OI Value Area - Shows the area where most OI activity took place (useful as a range or S/R level )
4. Show Session Box - Shows the box around chosen sessions/lookback
5. Show Profile - Show/hide OI Profile
6. Show Current Session - Show/hide the ongoing session
7. Show Session Labels - Show/hide the text labels for each session
8. Resolution - The higher the value, the more refined a profile is, but fewer profiles are shown on the chart
9. OI Value Area % - Choose the percentage of VA (same as in Volume Profile's VA)
10. Smooth OI Data - Useful for assets that have very large spikes in OI over large bars, helps create better profiles
11. OI Increase - Pick the color of OI increase nodes in the profile
12. OI Decrease - Pick the color of OI decrease nodes in the profile
13. Value Area Box - Pick the color of the Value Area Box
14. Session Box Thickness - Pick the thickness of the lines surrounding the chosen sessions
Advice
The indicator calculates the profile based on candles - the more candles you can show, the better profile will be formed. This means that it's best to view most sessions on timeframes like 15min or lower. The only exception is the Monthly profile, where timeframes above 15min should be used. Just take a few minutes and switch between timeframes and sessions and you will figure out the optimal settings.
This is the first version of Open Interest Profile script so please understand that it will be improved in future updates.
Thank you for your support.
** Some profile generation elements are inspired by @LonesomeTheBlue's volume profile script
GEX Walls + Market Open Shading### Overview
This Pine Script (version 6) creates a TradingView indicator called **"GEX Walls + Market Open Shading"**. It overlays directly on the price chart and is designed for intraday trading, particularly for indices like SPX or ES futures. The script combines two main features:
- **GEX Walls**: Visual boxes and labels highlighting "Gamma Exposure" (GEX) levels—key support (Put Wall) and resistance (Call Wall) zones based on options gamma. It includes approach alerts.
- **Market Open Shading**: A semi-transparent background shade during a customizable post-market-open session (e.g., first 2 hours after 9:30 AM EST).
It uses up to 20 boxes and 20 labels, with right-scale positioning for better visibility on the price axis. The script detects new trading days to reset visuals dynamically.
### Key Inputs
The script is highly customizable via inputs grouped into sections:
#### GEX Walls Inputs
- **Call Wall** (default: 6900.0): Upper resistance level.
- **Put Wall** (default: 6850.0): Lower support level.
- **Buffer** (default: 3.0 points): Vertical padding around each wall for box thickness.
- **Alert Distance** (default: 10.0 points): Threshold for triggering "approach" alerts.
- **Colors**: Semi-transparent yellow for Call Wall boxes (#ffeb3b at 80% opacity), orange for Put Wall (#ff9800 at 80%).
- **Toggles**: Show/hide boxes; enable/disable alerts; restrict alerts to shaded session only.
- **Labels**: Text color (white), offset (bars to the right, default -2), size (tiny/small/normal/large).
#### Market Open Shading Inputs
- **Shade Color** (default: white at 90% transparency): Background fill during session.
- **Transparency** (0-100, default: 90): Opacity level.
- **Open Time** (default: 9:30 EST): Hour/minute for session start.
- **Duration**: Dropdown with pre-formatted options (e.g., "120 min: 11:30a EST / 8:30a PST" up to 195 min), showing both EST and PST end times for convenience.
- **Toggle**: Show/hide shading.
### How It Works
#### 1. Market Open Shading
- Calculates end time from open hour/minute + selected duration (e.g., 120 minutes from 9:30 AM EST = 11:30 AM EST).
- Builds a session string (e.g., "0930-1130") for TradingView's `time()` function.
- Detects if the current bar is within the session using `not na(time("", sessionString))`.
- Applies `bgcolor()` with the user-defined color/transparency only during the session.
- Helper functions format times in 12-hour AM/PM style (e.g., "11:30a") for labels, with EST/PST variants.
#### 2. Day Detection
- Uses `time("D")` to track daily changes (`ta.change(dayTime) != 0` signals a new day).
- Maintains variables for the current day's start bar index (`todayStartIndex`) and previous day's start (`prevStartIndex`).
- This ensures boxes span exactly from yesterday's open to today (intraday reset on new days).
#### 3. GEX Walls Visualization
- **Boxes**: Drawn once `prevStartIndex` is known (i.e., on the second day onward).
- Left edge: Previous day's start bar.
- Right edge: Current bar (extends live).
- Height: Wall level ± buffer (e.g., Call Wall box from 6900-3 to 6900+3).
- Updated dynamically with `box.set_*` functions; hidden (100% transparent) if toggled off.
- **Labels**: Placed at exact wall levels, offset to the right (e.g., 2 bars ahead for readability).
- Text: "CALL WALL: 6900.0" or "PUT WALL: 6850.0".
- Style: Right-aligned, black background (transparent), user-defined text color/size.
- Deleted if toggled off.
- All visuals use `xloc.bar_index` for bar-based positioning.
#### 4. Alerts
- **Call Wall Approach**: Triggers when close enters within `alertDistance` below the wall, but prior bar was further away (rising toward resistance). Message: "Price approaching Call Wall at from below (within points)".
- **Put Wall Approach**: Symmetric for falling toward support (within distance above wall).
- Filtered optionally to shaded session only.
- Uses `alertcondition()` with hidden plots (`display=display.none`) for dynamic message placeholders (e.g., `{{plot_0}}` inserts wall level).
### Notable Features & Behaviors
- **Intraday Focus**: Boxes/labels reset daily, making it ideal for day trading without historical clutter.
- **Time Zone Handling**: Defaults to EST for market open but shows PST equivalents in dropdowns (subtracts 3 hours).
- **Efficiency**: Uses `var` declarations for persistent objects (boxes/labels) to avoid recreation on every bar.
- **Edge Cases**: Handles label offsets (clamped -10 to 50 bars); session wrapping (e.g., overnight via %24); new chart loads (initializes on first bar).
- **Customization Depth**: 20+ inputs allow fine-tuning without code edits. Alerts integrate seamlessly with TradingView's system.
- **Limitations**: Relies on bar_index for historical spanning (best on lower timeframes like 1-5 min); no historical backfill for walls (live-only).
This script is a practical tool for options-aware traders monitoring gamma squeezes or pinning levels during market open volatility. To use it, paste into TradingView's Pine Editor, adjust inputs for your asset (e.g., update walls for current GEX data), and add to chart.
Daily Candle Bias Backtesting Stats @MaxMaserati This indicator, is a powerful backtesting and probability tool designed to quantify the "follow-through" of specific candle types across different market sessions.
It identifies specific price action setups and tracks whether price hits a "Target" (continuation) or an "Invalidation" (reversal) first, providing real-time win rates for your favorite sessions.
The Candle Bias Stats indicator automatically categorizes every candle based on the MMM candle bias and tracks their historical success rate. It calculates how often a candle's high/low is broken before its opposite end is touched. By breaking this data down into sessions (Asian, London, NY), it identifies high-probability "time-of-day" windows where specific price action setups are most reliable.
MMM CANDLE LOGIC
Bullish Expansion & Breakout Signatures
Bullish Body Close Plus (BuBC Plus): Represents strong bullish momentum where price closes above the previous high and near its own top, signaling that buyers are in complete control.
Bullish Body Close Minus (BuBC Minus): Indicates weak bullish momentum; while the price closes above the previous high, a long top wick shows sellers pushed back, suggesting a potential retest of the previous high.
Bearish Expansion & Breakout Signatures
Bearish Body Close Plus (BeBC Plus): A very strong bearish signal where price closes below the previous low and near its own bottom, indicating sellers are dominant.
Bearish Body Close Minus (BeBC Minus): Signifies weak bearish momentum; the price breaks the previous low but finishes with a long bottom wick as buyers push back, often leading to a retest of the old ceiling.
Bullish Reversal & Trap Signatures (Affinity)
Bullish Affinity Plus (BuAF Plus): A strong bullish reversal where a new low is made, but sellers hit a wall and get trapped, causing price to finish near its top with a long bottom wick.
Bullish Affinity Minus (BuAF Minus): A weak bullish bounce where a new low is made and price finishes back inside the previous range, but buyers lack the energy for a significant move.
Bearish Reversal & Trap Signatures (Affinity)
Bearish Affinity Plus (BeAF Plus): A strong bearish reversal; buyers are trapped after making a new high, and price finishes near its bottom with a long top wick.
Bearish Affinity Minus (BeAF Minus): A weak bearish drop where sellers stop the rise but lack the energy to push price significantly lower.
Neutral & Volatility Signatures
Close Inside Bullish (CI•BuAF): Bullish neutral state where price stays inside the previous candle’s range but finishes in the top half, indicating buyers are slightly more active.
Close Inside Bearish (CI•BeAF): Bearish neutral state where price remains inside the previous box and finishes in the bottom half.
Seek & Destroy Bullish (S&D•BuAF): Bullish volatility characterized by price moving above and below the previous candle before buyers win the battle and close price near the top.
Seek & Destroy Bearish (S&D•BeAF): Bearish volatility where sellers win a high-chaos battle, closing price near the bottom after sweeping both sides of the previous candle.
H4 CANDLE EXAMPLE
Deep Dive: Analysis of the 4H Statistics
The image presents a comprehensive backtest of 4,999 total candles from September 2022 to December 2025. Here is the breakdown of what the interface is telling us:
1. The Strategy: Target vs. Invalidation
The indicator tracks BuBC (Bullish Body Close) and BeBC (Bearish Body Close).
The Target: For a Bullish candle, the target is the High. For a Bearish candle, it is the Low.
The Invalidation: The opposite end of the candle (the Low for Bullish, the High for Bearish).
The Goal: To see which level is touched first in the subsequent bars.
2. Global Performance (The Top Right Table)
Looking at the BuBC (1402 samples) section:
Target First (67.8%): In nearly 7 out of 10 cases, once a 4H candle closes "bullish" (breaking the previous high), the price continues higher to break its own high before it ever returns to take out its own low.
Both Hit (17.7%): This is a critical metric. It represents "Stop Runs" or "Wicks" where price hits the target but also hits the invalidation within the same tracking period.
Efficiency (1.3 Bars): This tells us the "follow-through" is almost immediate. If the trade doesn't work within 1 or 2 candles, the statistical edge drops off significantly.
3. The Session Breakdown (The Bottom Left Table)
This is where the "Edge" is found. Not all hours of the day are created equal.
Asian Late (02:00-06:00) – The "Star" Performer: With a 72.9% Target rate, this is labeled "BEST." It has the lowest "Both%" (6.5%), meaning moves during these hours are incredibly "clean." If a setup forms here, price usually moves directly to the target without looking back.
London Open & Overlap (06:00-14:00): These sessions maintain a high win rate (approx. 70%). This suggests that the European session provides reliable trend continuation for the S&P 500.
NY Session (14:00-18:00) – The "Trap" Zone: This is labeled "WORST" for a reason. While the win rate is basically a coin flip (49.6%), the Both% spikes to 36.7%. This means that even if you are right about the direction, the market is highly likely to "sweep" your stop loss before going to the target. It is the most volatile and "fake-out" prone time for this specific setup.
Summary of the Data
The statistics show that the S&P 500 4H Candle Bias is a highly reliable trend-following indicator, provided you trade it at the right time.
The data suggests a clear three-step logic:
Directional Edge: Both Bullish and Bearish body closes have a natural ~67% probability of continuation.
Timing is Everything: Trading during the Late Asian and London sessions increases your probability of success to over 70% with very low risk of a "fake-out."
Risk Warning: Avoid "Body Close" breakout strategies during the NY Mid-day (14:00-18:00). The statistics prove that this window is dominated by "Seek and Destroy" price action, where price is mathematically likely to hit both your target and your stop, usually hitting the stop first.
BuLLzEyE_MNQ FVG/IFVG SystemFVG Boxes
These are the main trading zones. The indicator automatically detects Fair Value Gaps and draws boxes on your chart:
• GREEN boxes = Bullish FVG (potential buy zone)
• RED boxes = Bearish FVG (potential sell zone)
• YELLOW boxes = IFVG (Inverse FVG - filled gaps that now act as support/resistance)
• GRAY boxes = Mitigated FVG (gap has been filled)
• WHITE dashed line = 50% level (optimal entry point within the FVG)
Session Boxes
Session boxes show you the high/low range of each major trading session. This helps identify where liquidity sits:
• PURPLE = Asia Session (6:00 PM - 3:00 AM ET)
• BLUE = London Session (3:00 AM - 12:00 PM ET)
• ORANGE = New York Session (9:30 AM - 4:00 PM ET)
• TEAL = Sydney Session (5:00 PM - 2:00 AM ET)
• LIME GREEN = Kill Zone / London-NY Overlap (8:00 AM - 11:00 AM ET) - BEST TRADING TIME
Entry Signals
• GREEN triangle pointing UP = Long entry signal at a Bullish FVG (not 100% reliable)
• RED triangle pointing DOWN = Short entry signal at a Bearish FVG (not 100% reliable)
Liquidity Sweeps
• RED X with 'SWEEP' = Previous Day High (PDH) was swept
• GREEN X with 'SWEEP' = Previous Day Low (PDL) was swept
• Dotted lines = PDH (red) and PDL (green) levels
Information Tables
HTF Bias Table (Top Right): Shows whether the higher timeframe (default 15m) is bullish or bearish, the number of active FVGs, and whether you're in the trading session.
Risk Calculator Table (Bottom Right): Shows your risk amount and calculates how many contracts you can trade for different stop loss sizes (5pt, 10pt, 15pt).
How It Works
What is a Fair Value Gap?
A Fair Value Gap (FVG) is a 3-candle pattern where aggressive buying or selling creates a price void. Specifically, it's when the wick of the first candle doesn't overlap with the wick of the third candle, leaving a gap in between. Price tends to return to these gaps to 'rebalance' before continuing in the original direction.
What is an Inverse FVG?
When an FVG gets filled (price returns and closes through the gap), it becomes an Inverse FVG (IFVG). These zones flip their polarity - a filled Bullish FVG becomes resistance, and a filled Bearish FVG becomes support. The indicator automatically converts mitigated FVGs to yellow IFVG boxes.
The 50% Entry Level
The dashed white line in each FVG represents the 50% level (also called Consequent Encroachment). This is considered the optimal entry point - it's the middle of the imbalance where price is most likely to react.
Suggested Trading Strategy
1. Check HTF Bias (top right table) - only trade in that direction
2. Wait for a liquidity sweep (SWEEP label appears)
3. Look for an FVG to form AFTER the sweep
4. Enter when price returns to the 50% level (dashed line)
5. Place stop loss below/above the FVG (add 2 ticks buffer)
6. Take profit at 1:2 or 1:3 risk-to-reward ratio
Settings Explained
FVG Settings
• Min FVG Size: Minimum gap size in points to be considered valid (default: 2.0)
• Max FVG Age: How many bars until an FVG is removed from chart (default: 50)
• Show 50% Entry Level: Toggle the dashed entry line on/off
Session Settings
• Show Session Boxes: Toggle all session boxes on/off
• Max Sessions to Show: How many historical sessions to display (default: 5)
• Individual Session Toggles: Turn each session (Asia/London/NY/Sydney/Kill Zone) on or off
Risk Calculator Settings
• Account Size: Your trading account balance
• Risk Per Trade: Percentage of account to risk per trade (default: 0.5%)
• Tick Value/Size: Contract specifications for MNQ ($0.50 per tick, 0.25 point tick size)
Tips for Best Results
1. Trade during the Kill Zone (8:00-11:00 AM ET) for best volatility and liquidity
2. Always align trades with HTF bias - don't fight the trend
3. Wait for liquidity sweeps before entering - this confirms smart money activity
4. Use the 50% level for entries - it offers the best risk-to-reward
5. Watch for IFVG zones as additional confluence for entries
6. Use the risk calculator to size positions properly - never risk more than you can afford
7. Session boxes help identify where stops are clustered - sweeps of these levels often precede reversals
Available Alerts
• New FVG Formed (Bullish or Bearish)
• Price Touching 50% Entry Level
• FVG Mitigated (gap filled)
• Long Entry Signal
• Short Entry Signal
• PDH/PDL Liquidity Sweep
─────────────────────────────────────
Created by BullyTrading
Designed for MNQ Prop Firm Trading
Ultimate_Price_Action_Tool_V2 by chaitu50cUltimate_Price_Action_Tool_V2 by chaitu50c — Session-Based SR Box Engine
This indicator builds clean, session-aware support and resistance “zones” from pure price action. It is designed for intraday and positional traders who want objective, rule-based zones instead of manual drawing.
Core Logic
Price-action based MAIN zones
Detects bullish and bearish breakouts using a strict body-structure:
Single-candle and double-candle breakout patterns.
Breakouts are confirmed only when closes break beyond previous highs/lows.
From each valid breakout, the tool builds a MAIN Support or MAIN Resistance box:
For bullish breaks, the zone is created from a combined low to the nearest open/close in the breakout combo.
For bearish breaks, the zone is created from a combined high to the nearest open/close in the breakout combo.
Optional first-box logic:
Can create the very first MAIN zone in a session from a simple opposite-color pair (without a full breakout), if enabled.
SUB zones on break
When price breaks a MAIN Support downwards with a red candle, the MAIN box is removed/frozen and:
A new SUB Resistance box is created above, using the current bar’s structure.
When price breaks a MAIN Resistance upwards with a green candle:
A new SUB Support box is created below.
SUB zones are optional and can be fully disabled if the user prefers a clean MAIN-only view.
Session Handling
The script is fully session-aware and can work in different market structures:
Session Mode options
Clock Session
Uses a fixed time window (e.g., 09:15–15:30).
Zones can be shown only inside the session or kept visible outside, depending on settings.
New Day
Each new trading day is treated as a fresh session.
Auto Gap
A new session starts whenever the time gap between candles exceeds a user-defined threshold (in minutes).
Session IDs and history
Each new session gets its own ID.
You can display zones for the last N sessions (including current).
Older sessions fade out visually but remain internally tracked to control visibility.
Main Features & Options
Initial Right Offset
Every new zone is projected to the right by a configurable number of bars.
All active boxes continuously extend with this offset, keeping zones clearly projected into the future.
Single MAIN per side (per session)
Optional constraint to have only:
One active MAIN Support and
One active MAIN Resistance
per session on the chart.
This prevents overcrowding and focuses on the most recent key structure.
MAIN vs SUB Overlap Control
When a new MAIN zone overlaps an existing SUB zone, you can choose:
Suppress MAIN (ignore the new MAIN if it clashes with a SUB),
Remove SUB (delete overlapping SUB zones and keep the new MAIN), or
Allow Both (plot everything and let the trader decide).
Vertical overlap is evaluated using a configurable minimum overlap percentage.
SUB suppression under MAIN
SUB boxes that overlap strongly with active MAIN zones can be auto-suppressed to avoid redundant clutter.
This suppression uses the same percent-based overlap logic.
Broken MAIN box handling
When a MAIN zone is broken:
Option 1: Fully delete it (classic behavior).
Option 2: Convert it into a 1-bar “marker” box at its origin, so you still see where the original zone formed without extending into the future.
Break candle coloring
The candle that breaks a MAIN zone can be optionally painted:
Red when breaking support.
Green when breaking resistance.
Helps visually confirm genuine breaks vs. simple intrabar tests.
Visual & Styling Controls
Separate style controls for:
MAIN Support / MAIN Resistance
Independent fill and border colors.
SUB Support / SUB Resistance
Independent fill and border colors.
Opacity and border colors are internally managed so that:
Recent sessions are clearly visible.
Older sessions are softly faded to maintain context without noise.
Typical Use Cases
Intraday traders looking for:
Clean, rule-based supply and demand zones.
Zones that respect actual session structure (clock, daily, or gap-based).
Swing traders who:
Want to track how current price reacts to the most recent 1–N sessions’ zones.
Price action traders who:
Prefer breakout-based zones rather than indicator-driven levels.
Need automatic zone management (creation, extension, break handling, and suppression).
This tool is built to be modular and configurable: you can run it minimal (only MAIN zones, single side per session) or fully featured (MAIN + SUB, multi-session history, overlap handling, and break paints). All logic is strictly price-action based with no dependency on volume or external indicators.
AssetCorrelationLibraryLibrary "AssetCorrelationLibrary™"
detectIndicesFutures(ticker)
Detects Index Futures (NQ/ES/YM/RTY + micro variants)
Parameters:
ticker (string) : The ticker string to check (typically syminfo.ticker)
Returns: AssetPairing with secondary and tertiary assets configured
detectMetalsFutures(ticker)
Detects Metal Futures (GC/SI/HG + micro variants)
Parameters:
ticker (string) : The ticker string to check
Returns: AssetPairing with secondary and tertiary assets configured
detectForexFutures(ticker)
Detects Forex Futures (6E/6B + micro variants)
Parameters:
ticker (string) : The ticker string to check
Returns: AssetPairing with secondary and tertiary assets configured
detectEnergyFutures(ticker)
Detects Energy Futures (CL/RB/HO + micro variants)
Parameters:
ticker (string) : The ticker string to check
Returns: AssetPairing with secondary and tertiary assets configured
detectTreasuryFutures(ticker)
Detects Treasury Futures (ZB/ZF/ZN)
Parameters:
ticker (string) : The ticker string to check
Returns: AssetPairing with secondary and tertiary assets configured
detectForexCFD(ticker, tickerId)
Detects Forex CFD pairs (EUR/GBP/DXY, USD/JPY/CHF triads)
Parameters:
ticker (string) : The ticker string to check
tickerId (string) : The full ticker ID (syminfo.tickerid) for primary asset
Returns: AssetPairing with secondary and tertiary assets configured
detectCrypto(ticker, tickerId)
Detects major Crypto assets (BTC, ETH, SOL, XRP, alts)
Parameters:
ticker (string) : The ticker string to check
tickerId (string) : The full ticker ID for primary asset
Returns: AssetPairing with secondary and tertiary assets configured
detectMetalsCFD(ticker, tickerId)
Detects Metals CFD (XAU/XAG/Copper)
Parameters:
ticker (string) : The ticker string to check
tickerId (string) : The full ticker ID for primary asset
Returns: AssetPairing with secondary and tertiary assets configured
detectIndicesCFD(ticker, tickerId)
Detects Indices CFD (NAS100/SP500/DJ30)
Parameters:
ticker (string) : The ticker string to check
tickerId (string) : The full ticker ID for primary asset
Returns: AssetPairing with secondary and tertiary assets configured
detectEUStocks(ticker, tickerId)
Detects EU Stock Indices (GER40/EU50) - Dyad only
Parameters:
ticker (string) : The ticker string to check
tickerId (string) : The full ticker ID for primary asset
Returns: AssetPairing with secondary asset configured (tertiary empty for dyad)
getDefaultFallback(tickerId)
Returns default fallback assets (chart ticker only, no correlation)
Parameters:
tickerId (string) : The full ticker ID for primary asset
Returns: AssetPairing with chart ticker as primary, empty secondary/tertiary (no correlation)
applySessionModifierWithBackadjust(tickerStr, sessionType)
Applies futures session modifier to ticker WITH back adjustment
Parameters:
tickerStr (string) : The ticker to modify
sessionType (string) : The session type (syminfo.session)
Returns: Modified ticker string with session and backadjustment.on applied
applySessionModifierNoBackadjust(tickerStr, sessionType)
Applies futures session modifier to ticker WITHOUT back adjustment
Parameters:
tickerStr (string) : The ticker to modify
sessionType (string) : The session type (syminfo.session)
Returns: Modified ticker string with session and backadjustment.off applied
isTriadMode(pairing)
Checks if a pairing represents a valid triad (3 assets)
Parameters:
pairing (AssetPairing) : The AssetPairing to check
Returns: True if tertiary is non-empty (triad mode), false for dyad
getAssetTicker(tickerId)
Extracts clean ticker string from full ticker ID
Parameters:
tickerId (string) : The full ticker ID (e.g., "BITGET:BTCUSDT.P")
Returns: Clean ticker string (e.g., "BTCUSDT.P")
resolveTriad(chartTickerId, pairing)
Resolves triad asset assignments with proper inversion flags
Parameters:
chartTickerId (string) : The current chart's ticker ID (syminfo.tickerid)
pairing (AssetPairing) : The detected AssetPairing
Returns: Tuple
resolveDyad(chartTickerId, pairing)
Resolves dyad asset assignment with proper inversion flag
Parameters:
chartTickerId (string) : The current chart's ticker ID
pairing (AssetPairing) : The detected AssetPairing (dyad: tertiary is empty)
Returns: Tuple
resolveAssets(ticker, tickerId, assetType, sessionType, useBackadjust)
Main auto-detection entry point. Detects asset category and returns fully resolved config.
Parameters:
ticker (string) : The ticker string to check (typically syminfo.ticker)
tickerId (string) : The full ticker ID (typically syminfo.tickerid)
assetType (string) : The asset type (typically syminfo.type)
sessionType (string) : The session type for futures (typically syminfo.session)
useBackadjust (bool) : Whether to apply back adjustment for futures session alignment
Returns: AssetConfig with fully resolved assets, inversion flags, and detection status
resolveCurrentChart()
Simplified auto-detection using current chart's syminfo values
Returns: AssetConfig with fully resolved assets, inversion flags, and detection status
AssetPairing
Core asset pairing structure for triad/dyad configurations
Fields:
primary (series string) : The primary (chart) asset ticker ID
secondary (series string) : The secondary correlated asset ticker ID
tertiary (series string) : The tertiary correlated asset ticker ID (empty for dyad)
invertSecondary (series bool) : Whether secondary asset should be inverted for divergence calc
invertTertiary (series bool) : Whether tertiary asset should be inverted for divergence calc
AssetConfig
Full asset resolution result with mode detection and computed values
Fields:
detected (series bool) : Whether auto-detection succeeded
isTriadMode (series bool) : True if triad (3 assets), false if dyad (2 assets)
primary (series string) : The resolved primary asset ticker ID
secondary (series string) : The resolved secondary asset ticker ID
tertiary (series string) : The resolved tertiary asset ticker ID (empty for dyad)
invertSecondary (series bool) : Computed inversion flag for secondary asset
invertTertiary (series bool) : Computed inversion flag for tertiary asset
assetCategory (series string) : String describing the detected asset category
Note to potential users.
I did not really intend to make this public but i have to in order to avoid any potential compliance issues with the TradingView Moderation Team and the House Rules.
However if you are to use this library, you cannot make your code closed source / invite only as it is intellectual property. The only exception to this is if I am credited in the header of your code and i explicitly give permission to do so.
As per the TradingView house rules, you are completely FREE to do with this as you like, provided the script stays private.
Use the @fstarcapital tag to give credits
❤️ from cephxs















