Strategy UtilitiesThis library comprises valuable functions for implementing strategies on TradingView, articulated in a professional writing style.
The initial version features a monthly Profit & Loss table with percentage variations, utilizing a modified version of the script by @QuantNomad.
Library "strategy_utilities"
monthly_table(results_prec, results_dark)
monthly_table prints the Monthly Returns table, modified from QuantNomad. Please put calc_on_every_tick = true to plot it.
Parameters:
results_prec (int) : for the precision for decimals
results_dark (bool) : true or false to print the table in dark mode
Returns: nothing (void), but prints the monthly equity table
Sample Usage
import TheSocialCryptoClub/strategy_utilities/1 as su
results_prec = input(2, title = "Precision", group="Results Table")
results_dark = input.bool(defval=true, title="Dark Mode", group="Results Table")
su.monthly_table(results_prec, results_dark)
Cerca negli script per "Table"
TSG 5% Daily CalculatorThis is a calculator I've created to help visualize Target and Risk Levels based on leverage use to trade crypto.
How to use it ?
Basic Use:
- Set the Direction of your trade - either Long or Short
- Set the Leverage you use in your trade - it is crutial to define the risk and target levels
- Set the Risk Amount you want to risk (in %) of your total balance ( Advised 2-3% )
- Set the Target Amount you want to profit at the target (the idea of this is 5% daily, so 5%).
- Set Entry Price if you have opened a position, and you will visually see your progress. Otherwise the levels will be adjusted to the Close of the candle.
Additions:
- Set your Initial Balance - to help you visualize on the Table your progress
- Set your Current Balance - for visualization purposes on ongoing trades and on the Table
- Entry Date - Advised to set it when you open a trade - you will be tracking the progress of your trade since the candle on which you opened it
- Show Table - to show the table of 5% daily and the target it is set on per day
- Table Size - Set table to be small or normal
- Together with the Table you have a big blue area behind that ends on the day you will become a Millionaire based on the Initial Balance, Current balance and Target % in your inputs
MiteTricksLibrary "MiteTricks"
Matrix Global Registry.
Get, Set, automatic growing, universal get/set,
multi-matrix dictionaries, multi-dictionary matrixes..
add slice matrixes of any type, share one common global key registry
pull up an item from a category, and item name ie a table of info.
same cell needs a color, a size, a string, a value, etc..
all of which can be pulled up with the same group id, and key id.
just swap which matrix you pull the value from.
this has a side benefit of non-repainting and recalculating
when pulling values, changing inputs..
makes for very fast/clean usage..
benefit :
floats = value
strings = names
lines = drawn items
table =table of data items for this key
colors = color for line/table/fill,label..
all of those can be pulled with "get(_VALUES,_groupIDX,_keyIDX)" where only the values matrix needs be swapped, and the same item/coordinates remains for all the possible matrixes that item appears in.
also useful as a dictionary/registry for any given type of item,,
and goes very handy with floats/strings/colors/bools with my matrixautotable
very helpful when prototyping or doing development work as a shortcut.
initRegistry()
Registry inititalizer
Returns: registry of string matrix type
newbool(optional, optional, optional)
create bool type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is bool (na)
Returns: bool matrix of specified size and fill, or blank 2x2 for registry use
newbox(optional, optional, optional)
create box type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is box (na)
Returns: box matrix of specified size and fill, or blank 2x2 for registry use
newcolor(optional, optional, optional)
create color type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is color (na)
Returns: color matrix of specified size and fill, or blank 2x2 for registry use
newfloat(optional, optional, optional)
create float type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is float (na)
Returns: float matrix of specified size and fill, or blank 2x2 for registry use
newint(optional, optional, optional)
create int type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is int (na)
Returns: int matrix of specified size and fill, or blank 2x2 for registry use
newlabel(optional, optional, optional)
create label type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is label (na)
Returns: label matrix of specified size and fill, or blank 2x2 for registry use
newline(optional, optional, optional)
create line type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is line (na)
Returns: line matrix of specified size and fill, or blank 2x2 for registry use
newlinefill(optional, optional, optional)
create linefill type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is linefill(na)
Returns: linefill matrix of specified size and fill, or blank 2x2 for registry use
newstring(optional, optional, optional)
create string type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is string (na)
Returns: string matrix of specified size and fill, or blank 2x2 for registry use
newtable(optional, optional, optional)
create table type new matrix presized 2x2 for reg
Parameters:
optional: row size
optional: column size
optional: fill value(default is table (na)
Returns: table matrix of specified size and fill, or blank 2x2 for registry use
newfrom(INIT_FILL)
newfrom Matrix full of item input
Parameters:
INIT_FILL: item to fill (2x2) the matri and set type. a type(na) works
addrow(m, v)
addrow Add new row to matrix
Parameters:
m: matrix of type being added to
v: value of type being added to ( best leave NA on string for registry purposes)
addcolumn(matrix, value)
addcolumn
Parameters:
matrix: of type being added to
value: of type being added to ( best leave NA on string for registry purposes)
get(_VALS, _KEYREG, _GROUP, _KEY)
get Grabs value and returns single item
Parameters:
_VALS: Matrix Values slice
_KEYREG: Registry values matrix (strings)
_GROUP: name of group/category or int group key
_KEY: name of item to fetch from value registry or int key id
Returns: item
get(_VALS, _GROUP, _KEY)
get Grabs value and returns single item
Parameters:
_VALS: Matrix Values slice
_GROUP: name of group/category
_KEY: name of item to fetch from value registry
getgid(_KEYREG, _GROUP)
getgid
Parameters:
_KEYREG: Reg to pull group id from
_GROUP: group index int, or string name to get the other missing type
getkid(_KEYREG, _GROUP, _KEY)
getkid
Parameters:
_KEYREG: Reg to pull Key id from
_GROUP: group index int, or string name
_KEY: index of string key id to get it's ID int
getkey(_KEYREG, _GROUP, _KEY)
getkey
Parameters:
_KEYREG: Reg to pull Key id from
_GROUP: group index int, or string name for getting key string
_KEY: index of string key id to get it's match of other type
set(_VALS, _KEYREG, _GROUP, _KEY, _value)
set items to reg and matrix container
Parameters:
_VALS: Values matrix container
_KEYREG: Key registry
_GROUP: (string) Group/Category name
_KEY: (string) Key for item
_value: item
Returns: void
del(_VALS, _KEYREG, _GROUP, _KEY)
del grroup id
Parameters:
_VALS: Matrix Values slice
_KEYREG: Registry values matrix (strings)
_GROUP: name of group/category
_KEY: name of item to Delete from values and key
detached(_GROUP, _KEY, _VALUE)
detached make detached registry/val matrix
Parameters:
_GROUP: Name of first group
_KEY: Name of first item
_VALUE: Item of any type, sets the output type too.
Multi-ZigZag Multi-Oscillator Trend DetectorThis table is intended to give you snapshot of how price and oscillators are moving along with zigzag pivots.
This is done in the same lines of Zigzag-Trend-Divergence-Detector
But, here are the differences
Table shows multiple oscillator movements at a same time instead of one selected oscillator
Divergence is not calculated and also supertrend based trend. Trend can be calculated based on zigzag movements. However, lets keep this for future enhancements.
This system also uses multiple zigzags instead of just one.
⬜ Process
▶ Derive multiple zigzags - Code is taken from Multi-ZigZag
▶ Along with zigzags - also calculate different oscillators and attach it to zigzag pivot.
▶ Calculate directions of zigzag pivots and corresponding oscillators.
▶ Plot everything in the table on last bar.
⬜ Table components
Table contains following data:
Directional legends are:
⇈ - Higher High (Green)
⇊ - Lower Low (Red)
⭡- Lower High (Orange)
⭣ - Higher Low (Lime)
⬜ Input Parameters
▶ Source : Default is close. If Unchecked - uses high/low data for calculating pivots. Can also use external input such as OBV
▶ Stats : Gives option to select the depth of output (History) and also lets you chose text size and table position.
▶ Oscillators : Oscillator length is derived by multiplying multiplier to zigzag length. For example, for zigzag 5, with 4 as multiplier, all oscillators are calculated with length 20. But, same for zigzag 8 will be 32 and so on.
▶ Available oscillators :
CCI - Commodity Channel Index
CMO - Chande Momentum Oscillator
COG - Center Of Gravity
MFI - Money Flow Index (Shows only if volume is present)
MOM - Momentum oscillator
ROC - Rate Of Change
RSI - Relative Strength Index
TSI - Total Strength Index
WPR - William Percent R
BB - Bollinger Percent B
KC - Keltner Channel Percent K
DC - Donchian Channel Percent D
ADC - Adoptive Donchian Channel Percent D ( Adoptive-Donchian-Channel )
⬜ Challenges
There are 12 oscillators and each zigzag has different length. Which means, there are 48 combinations of the ocillators.
First challenge was generating these values without creating lots of static initialization. Also, note, if the functions are not called on each bar, then they will not yield correct result. This is achieved through initializer function which runs on every bar and stores the oscillator values in an array which emulates multi dimensional array oscillator X zigzag length.
Next challenge was getting these values within function when we need it. While doing so I realized that values stored in array also have historical series and calling array.get will actully get you the entire series and not just the value. This is an important takeaway for me and this can be used for further complex implementations.
Thanks to @LonesomeTheBlue and @LucF for some timely suggestions and interesting technical discussions :)
DAYOFWEEK performance1 -Objective
"What is the ''best'' day to trade .. Monday, Tuesday...."
This script aims to determine if there are different results depending on the day of the week.
The way it works is by dividing data by day of the week (Monday, Tuesday, Wednesday ... ) and perform calculations for each day of the week.
1 - Objective
2 - Features
3 - How to use (Examples)
4 - Inputs
5 - Limitations
6 - Notes
7 - Final Tooughs
2 - Features
AVG OPEN-CLOSE
Calculate de Percentage change from day open to close
Green % (O-C)
Percentage of days green (open to close)
Average Change
Absolute day change (O-C)
AVG PrevD. Close-Close
Percentage change from the previous day close to the day of the week close
(Example: Monday (C-C) = Friday Close to Monday close
Tuesday (C-C) = Monday C. to Tuesday C.
Green % (C1-C)
Percentage of days green (open to close)
AVG Volume
Day of the week Average Volume
Notes:
*Mon(Nº) - Nº = Number days is currently calculated
Example: Monday (12) calculation based on the last 12 Mondays. Note: Discrepancies in numbers example Monday (12) - Friday (11) depend on the initial/end date or the market was closed (Holidays).
3 - How to use (Examples)
For the following example, NASDAQ:AAPL from 1 Jan 21 to 1 Jul 21 the results are following.
The highest probability of a Close being higher than the Open is Monday with 52.17 % and the Lowest Tuesday with 38.46 %. Meaning that there's a higher chance (for NASDAQ:AAPL ) of closing at a higher value on Monday while the highest chance of closing is lower is Tuesday. With an average gain on Tuesday of 0.21%
Long - The best day to buy (long) at open (on average) is Monday with a 52.2% probability of closing higher
Short - The best day to sell (short) at open (on average) is Tuesday with a 38.5% probability of closing higher (better chance of closing lower)
Since the values change from ticker to ticker, there is a substantial change in the percentages and days of the week. For example let's compare the previous example ( NASDAQ:AAPL ) to NYSE:GM (same settings)
For the same period, there is a substantial difference where there is a 62.5% probability Friday to close higher than the open, while Tuesday there is only a 28% probability.
With an average gain of 0.59% on Friday and an average loss of -0.34%
Also, the size of the table (number of days ) depends if the ticker is traded or not on that day as an example COINBASE:BTCUSD
4 - Inputs
DATE RANGE
Initial Date - Date from which the script will start the calculation.
End Date - Date to which the script will calculate.
TABLE SETTINGS
Text Color - Color of the displayed text
Cell Color - Background color of table cells
Header Color - Color of the column and row names
Table Location - Change the position where the table is located.
Table Size - Changes text size and by consequence the size of the table
5 - LIMITATIONS
The code determines average values based on the stored data, therefore, the range (Initial data) is limited to the first bar time.
As a consequence the lower the timeframe the shorter the initial date can be and fewer weeks can be calculated. To warn about this limitation there's a warning text that appears in case the initial date exceeds the bar limit.
Example with initial date 1 Jan 2021 and end date 18 Jul 2021 in 5m and 10 m timeframe:
6 - Notes and Disclosers
The script can be moved around to a new pane if need. -> Object Tree > Right Click Script > Move To > New pane
The code has not been tested in higher subscriptions tiers that allow for more bars and as a consequence more data, but as far I can tell, it should work without problems and should be in fact better at lower timeframes since it allows more weeks.
The values displayed represent previous data and at no point is guaranteed future values
7 - Final Tooughs
This script was quite fun to work on since it analysis behavioral patterns (since from an abstract point a Tuesday is no different than a Thursday), but after analyzing multiple tickers there are some days that tend to close higher than the open.
PS: If you find any mistake ex: code/misspelling please comment.
DI+ Trend Tracker & Prediction (v6) DI+ Trend Tracker & Prediction – Pine Script v6
🔍 Overview
This custom TradingView indicator focuses exclusively on the +DI (Positive Directional Indicator) component of the ADX (Average Directional Index) system. It tracks recent DI+ values, analyzes trend strength and direction, and applies a simple predictive model to estimate DI+ for the next trading day.
🧠 Key Features
✅ 1. DI+ History Table (Last 4 Days)
Displays DI+ values for the past 4 completed bars.
Helps traders observe momentum and directional strength in a structured view.
📈 2. Percentage Change Calculations
Daily % Change: Shows change between the current DI+ and the previous day.
Average % Change (3 Days): Measures average change over the last 3 sessions to identify the directional consistency.
🔮 3. Predictive DI+ Estimation
Uses a linear regression (ta.linreg) over the last 4 DI+ values to estimate the next day’s DI+ reading.
This is a simple "AI-style" statistical model, providing a forecast for tomorrow’s directional strength.
📉 4. Buy/Sell Signal Generation
Buy Signal: Triggered when DI+ rises steadily over 3 days.
Sell Signal: Triggered when DI+ drops steadily over 3 days.
These signals are shown both in the table and directly on the chart with triangle markers.
📋 5. Clean Table Display
The indicator uses a top-right table to clearly present:
4-day DI+ history
Daily and average percentage changes
Predicted DI+ value
Current signal
DI+ for today
🔧 Inputs
ADX Length: Period for the DI+ calculation (default: 14)
ADX Smoothing: Smoothing period for the ADX and DMI components (default: 14)
🎯 Use Case
This indicator is ideal for:
Traders who focus on trend strength and directional movement.
Those seeking a quantitative edge by forecasting DI+.
Anyone wanting a visual cue system without overly complex strategy rules.
📌 Notes
This indicator does not include full ADX or DI− components.
It is meant for signal analysis, trend confirmation, and forecasting, not full strategy backtesting.
DCA Investment Tracker Pro [tradeviZion]DCA Investment Tracker Pro: Educational DCA Analysis Tool
An educational indicator that helps analyze Dollar-Cost Averaging strategies by comparing actual performance with historical data calculations.
---
💡 Why I Created This Indicator
As someone who practices Dollar-Cost Averaging, I was frustrated with constantly switching between spreadsheets, calculators, and charts just to understand how my investments were really performing. I wanted to see everything in one place - my actual performance, what I should expect based on historical data, and most importantly, visualize where my strategy could take me over the long term .
What really motivated me was watching friends and family underestimate the incredible power of consistent investing. When Napoleon Bonaparte first learned about compound interest, he reportedly exclaimed "I wonder it has not swallowed the world" - and he was right! Yet most people can't visualize how their $500 monthly contributions today could become substantial wealth decades later.
Traditional DCA tracking tools exist, but they share similar limitations:
Require manual data entry and complex spreadsheets
Use fixed assumptions that don't reflect real market behavior
Can't show future projections overlaid on actual price charts
Lose the visual context of what's happening in the market
Make compound growth feel abstract rather than tangible
I wanted to create something different - a tool that automatically analyzes real market history, detects volatility periods, and shows you both current performance AND educational projections based on historical patterns right on your TradingView charts. As Warren Buffett said: "Someone's sitting in the shade today because someone planted a tree a long time ago." This tool helps you visualize your financial tree growing over time.
This isn't just another calculator - it's a visualization tool that makes the magic of compound growth impossible to ignore.
---
🎯 What This Indicator Does
This educational indicator provides DCA analysis tools. Users can input investment scenarios to study:
Theoretical Performance: Educational calculations based on historical return data
Comparative Analysis: Study differences between actual and theoretical scenarios
Historical Projections: Theoretical projections for educational analysis (not predictions)
Performance Metrics: CAGR, ROI, and other analytical metrics for study
Historical Analysis: Calculates historical return data for reference purposes
---
🚀 Key Features
Volatility-Adjusted Historical Return Calculation
Analyzes 3-20 years of actual price data for any symbol
Automatically detects high-volatility stocks (meme stocks, growth stocks)
Uses median returns for volatile stocks, standard CAGR for stable stocks
Provides conservative estimates when extreme outlier years are detected
Smart fallback to manual percentages when data insufficient
Customizable Performance Dashboard
Educational DCA performance analysis with compound growth calculations
Customizable table sizing (Tiny to Huge text options)
9 positioning options (Top/Middle/Bottom + Left/Center/Right)
Theme-adaptive colors (automatically adjusts to dark/light mode)
Multiple display layout options
Future Projection System
Visual future growth projections
Timeframe-aware calculations (Daily/Weekly/Monthly charts)
1-30 year projection options
Shows projected portfolio value and total investment amounts
Investment Insights
Performance vs benchmark comparison
ROI from initial investment tracking
Monthly average return analysis
Investment milestone alerts (25%, 50%, 100% gains)
Contribution tracking and next milestone indicators
---
📊 Step-by-Step Setup Guide
1. Investment Settings 💰
Initial Investment: Enter your starting lump sum (e.g., $60,000)
Monthly Contribution: Set your regular DCA amount (e.g., $500/month)
Return Calculation: Choose "Auto (Stock History)" for real data or "Manual" for fixed %
Historical Period: Select 3-20 years for auto calculations (default: 10 years)
Start Year: When you began investing (e.g., 2020)
Current Portfolio Value: Your actual portfolio worth today (e.g., $150,000)
2. Display Settings 📊
Table Sizes: Choose from Tiny, Small, Normal, Large, or Huge
Table Positions: 9 options - Top/Middle/Bottom + Left/Center/Right
Visibility Toggles: Show/hide Main Table and Stats Table independently
3. Future Projection 🔮
Enable Projections: Toggle on to see future growth visualization
Projection Years: Set 1-30 years ahead for analysis
Live Example - NASDAQ:META Analysis:
Settings shown: $60K initial + $500/month + Auto calculation + 10-year history + 2020 start + $150K current value
---
🔬 Pine Script Code Examples
Core DCA Calculations:
// Calculate total invested over time
months_elapsed = (year - start_year) * 12 + month - 1
total_invested = initial_investment + (monthly_contribution * months_elapsed)
// Compound growth formula for initial investment
theoretical_initial_growth = initial_investment * math.pow(1 + annual_return, years_elapsed)
// Future Value of Annuity for monthly contributions
monthly_rate = annual_return / 12
fv_contributions = monthly_contribution * ((math.pow(1 + monthly_rate, months_elapsed) - 1) / monthly_rate)
// Total expected value
theoretical_total = theoretical_initial_growth + fv_contributions
Volatility Detection Logic:
// Detect extreme years for volatility adjustment
extreme_years = 0
for i = 1 to historical_years
yearly_return = ((price_current / price_i_years_ago) - 1) * 100
if yearly_return > 100 or yearly_return < -50
extreme_years += 1
// Use median approach for high volatility stocks
high_volatility = (extreme_years / historical_years) > 0.2
calculated_return = high_volatility ? median_of_returns : standard_cagr
Performance Metrics:
// Calculate key performance indicators
absolute_gain = actual_value - total_invested
total_return_pct = (absolute_gain / total_invested) * 100
roi_initial = ((actual_value - initial_investment) / initial_investment) * 100
cagr = (math.pow(actual_value / initial_investment, 1 / years_elapsed) - 1) * 100
---
📊 Real-World Examples
See the indicator in action across different investment types:
Stable Index Investments:
AMEX:SPY (SPDR S&P 500) - Shows steady compound growth with standard CAGR calculations
Classic DCA success story: $60K initial + $500/month starting 2020. The indicator shows SPY's historical 10%+ returns, demonstrating how consistent broad market investing builds wealth over time. Notice the smooth theoretical growth line vs actual performance tracking.
MIL:VUAA (Vanguard S&P 500 UCITS) - Shows both data limitation and solution approaches
Data limitation example: VUAA shows "Manual (Auto Failed)" and "No Data" when default 10-year historical setting exceeds available data. The indicator gracefully falls back to manual percentage input while maintaining all DCA calculations and projections.
MIL:VUAA (Vanguard S&P 500 UCITS) - European ETF with successful 5-year auto calculation
Solution demonstration: By adjusting historical period to 5 years (matching available data), VUAA auto calculation works perfectly. Shows how users can optimize settings for newer assets. European market exposure with EUR denomination, demonstrating DCA effectiveness across different markets and currencies.
NYSE:BRK.B (Berkshire Hathaway) - Quality value investment with Warren Buffett's proven track record
Value investing approach: Berkshire Hathaway's legendary performance through DCA lens. The indicator demonstrates how quality companies compound wealth over decades. Lower volatility than tech stocks = standard CAGR calculations used.
High-Volatility Growth Stocks:
NASDAQ:NVDA (NVIDIA Corporation) - Demonstrates volatility-adjusted calculations for extreme price swings
High-volatility example: NVIDIA's explosive AI boom creates extreme years that trigger volatility detection. The indicator automatically switches to "Median (High Vol): 50%" calculations for conservative projections, protecting against unrealistic future estimates based on outlier performance periods.
NASDAQ:TSLA (Tesla) - Shows how 10-year analysis can stabilize volatile tech stocks
Stable long-term growth: Despite Tesla's reputation for volatility, the 10-year historical analysis (34.8% CAGR) shows consistent enough performance that volatility detection doesn't trigger. Demonstrates how longer timeframes can smooth out extreme periods for more reliable projections.
NASDAQ:META (Meta Platforms) - Shows stable tech stock analysis using standard CAGR calculations
Tech stock with stable growth: Despite being a tech stock and experiencing the 2022 crash, META's 10-year history shows consistent enough performance (23.98% CAGR) that volatility detection doesn't trigger. The indicator uses standard CAGR calculations, demonstrating how not all tech stocks require conservative median adjustments.
Notice how the indicator automatically detects high-volatility periods and switches to median-based calculations for more conservative projections, while stable investments use standard CAGR methods.
---
📈 Performance Metrics Explained
Current Portfolio Value: Your actual investment worth today
Expected Value: What you should have based on historical returns (Auto) or your target return (Manual)
Total Invested: Your actual money invested (initial + all monthly contributions)
Total Gains/Loss: Absolute dollar difference between current value and total invested
Total Return %: Percentage gain/loss on your total invested amount
ROI from Initial Investment: How your starting lump sum has performed
CAGR: Compound Annual Growth Rate of your initial investment (Note: This shows initial investment performance, not full DCA strategy)
vs Benchmark: How you're performing compared to the expected returns
---
⚠️ Important Notes & Limitations
Data Requirements: Auto mode requires sufficient historical data (minimum 3 years recommended)
CAGR Limitation: CAGR calculation is based on initial investment growth only, not the complete DCA strategy
Projection Accuracy: Future projections are theoretical and based on historical returns - actual results may vary
Timeframe Support: Works ONLY on Daily (1D), Weekly (1W), and Monthly (1M) charts - no other timeframes supported
Update Frequency: Update "Current Portfolio Value" regularly for accurate tracking
---
📚 Educational Use & Disclaimer
This analysis tool can be applied to various stock and ETF charts for educational study of DCA mathematical concepts and historical performance patterns.
Study Examples: Can be used with symbols like AMEX:SPY , NASDAQ:QQQ , AMEX:VTI , NASDAQ:AAPL , NASDAQ:MSFT , NASDAQ:GOOGL , NASDAQ:AMZN , NASDAQ:TSLA , NASDAQ:NVDA for learning purposes.
EDUCATIONAL DISCLAIMER: This indicator is a study tool for analyzing Dollar-Cost Averaging strategies. It does not provide investment advice, trading signals, or guarantees. All calculations are theoretical examples for educational purposes only. Past performance does not predict future results. Users should conduct their own research and consult qualified financial professionals before making any investment decisions.
---
© 2025 TradeVizion. All rights reserved.
CISD Levels by HAZEDCISD Levels by HAZED - Advanced Market Structure Analysis
📊 Overview
The CISD Levels indicator is a sophisticated market structure analysis tool that automatically identifies and plots critical support and resistance levels based on Change in State Direction (CISD) methodology. This indicator helps traders visualize key market turning points and potential breakout/breakdown levels with precision.
🎯 What are CISD Levels?
CISD (Change in State Direction) levels represent significant price points where market sentiment shifts from bullish to bearish or vice versa. These levels are dynamically calculated based on:
Market structure breaks (higher highs/lower lows)
Pullback patterns and trend continuations
Real-time price action analysis
Dynamic level updates as market conditions evolve
✨ Key Features
🔥 Smart Level Detection
Automatically identifies bullish (+CISD) and bearish (-CISD) levels
Real-time updates as market structure evolves
Intelligent pullback detection algorithm
🎨 Full Customization
Colors: Customize bullish/bearish level colors
Line Styles: Choose from solid, dotted, or dashed lines
Text Labels: Fully customizable text, size, and font options
Transparency: Adjustable line transparency (0-100%)
Extensions: Control how far lines extend into the future
📈 Historical Analysis
Show All Levels: Option to display historical CISD levels
Max Levels Control: Limit the number of historical levels shown (1-50)
Level Management: Automatic cleanup of old levels
🚨 Smart Alerts
Bullish Alerts: Get notified when price breaks above +CISD levels
Bearish Alerts: Get notified when price breaks below -CISD levels
Alert Frequency: Choose between "Once Per Bar" or "Once Per Bar Close"
📊 Statistics Table
Market State: Current bullish/bearish market condition
Active Levels: Count of currently active CISD levels
Latest Levels: Display of most recent +CISD and -CISD values
Positioning: 5 different table positions available
🛠️ How to Use
For Swing Traders:
Use CISD levels as key support/resistance zones
Enter positions on level breaks with proper risk management
Set stop losses below/above opposite CISD levels
For Day Traders:
Watch for price reactions at CISD levels
Use levels for entry/exit timing
Combine with volume analysis for confirmation
For Position Traders:
Identify major market structure changes
Use higher timeframe CISD levels for strategic entries
Monitor level breaks for trend continuation signals
⚙️ Settings Guide
CISD Level Settings
Bullish/Bearish Colors: Customize level appearance
Custom Text: Add your own labels to levels
Alert Setup: Enable notifications for level breaks
Historical Levels: Choose to show past levels for context
Appearance Customization
Line Width: 1-5 pixel thickness options
Line Style: Solid, dotted, or dashed
Extension Bars: Control future projection (1-50 bars)
Text Options: Size, font, and bold formatting
Statistics Table
Enable/Disable: Toggle table visibility
Position: 5 placement options on chart
Real-time Data: Live market state and level information
🎯 Best Practices
Multi-Timeframe Analysis: Use CISD levels across different timeframes for confluence
Risk Management: Always use proper position sizing and stop losses
Confirmation: Combine with volume, momentum, or other indicators
Market Context: Consider overall market conditions and news events
Backtesting: Test the levels on historical data before live trading
📋 Technical Specifications
Overlay: True (plots directly on price chart)
Max Lines: 500 (handles multiple historical levels)
Max Labels: 500 (supports extensive labeling)
Real-time Updates: Dynamic level calculation and alerts
Performance: Optimized code for smooth chart operation
🚀 Why Choose CISD Levels?
Precision: Advanced algorithm for accurate level identification
Flexibility: Extensive customization options for any trading style
Reliability: Proven market structure analysis methodology
User-Friendly: Intuitive settings with helpful tooltips
Professional: Clean, professional appearance on any chart
📞 Support & Updates
This indicator is actively maintained and updated. For questions, suggestions, or feature requests, feel free to reach out through TradingView messaging.
⚠️ Disclaimer: This indicator is for educational and informational purposes only. Always conduct your own analysis and risk management. Past performance does not guarantee future results.
CommonUtils█ OVERVIEW
This library is a utility tool for Pine Script™ developers. It provides a collection of helper functions designed to simplify common tasks such as mapping user-friendly string inputs to Pine Script™ constants and formatting timeframe strings for display. The primary goal is to make main scripts cleaner, more readable, and reduce repetitive boilerplate code. It is envisioned as an evolving resource, with potential for new utilities to be added over time based on community needs and feedback.
█ CONCEPTS
The library primarily focuses on two main concepts:
Input Mapping
Pine Script™ often requires specific constants for function parameters (e.g., `line.style_dashed` for line styles, `position.top_center` for table positions). However, presenting these technical constants directly to users in script inputs can be confusing. Input mapping involves:
Allowing users to select options from more descriptive, human-readable strings (e.g., "Dashed", "Top Center") in the script's settings.
Providing functions within this library (e.g., `mapLineStyle`, `mapTablePosition`) that take these user-friendly strings as input.
Internally, these functions use switch statements or similar logic to convert (map) the input string to the corresponding Pine Script™ constant required by built-in functions.
This approach enhances user experience and simplifies the main script's logic by centralizing the mapping process.
Timeframe Formatting
Raw timeframe strings obtained from variables like `timeframe.period` (e.g., "1", "60", "D", "W") or user inputs are not always ideal for direct display in labels or panels. The `formatTimeframe` function addresses this by:
Taking a raw timeframe string as input.
Parsing this string to identify its numerical part and unit (e.g., minutes, hours, days, weeks, months, seconds, milliseconds).
Converting it into a more standardized and readable format (e.g., "1min", "60min", "Daily", "Weekly", "1s", "10M").
Offering an optional `customSuffix` parameter (e.g., " FVG", " Period") to append to the formatted string, making labels more descriptive, especially in multi-timeframe contexts.
The function is designed to correctly interpret various common timeframe notations used in TradingView.
█ NOTES
Ease of Use: The library functions are designed with simple and understandable signatures. They typically take a string input and return the corresponding Pine Script™ constant or a formatted string.
Default Behaviors: Mapping functions (`mapLineStyle`, `mapTablePosition`, `mapTextSize`) generally return a sensible default value (e.g., `line.style_solid` for `mapLineStyle`) in case of a non-matching input. This helps prevent errors in the main script.
Extensibility of Formatting: The `formatTimeframe` function, with its `customSuffix` parameter, allows for flexible customization of timeframe labels to suit the specific descriptive needs of different indicators or contexts.
Performance Considerations: These utility functions primarily use basic string operations and switch statements. For typical use cases, their impact on overall script performance is negligible. However, if a function like `formatTimeframe` were to be called excessively in a loop with dynamic inputs (which is generally not its intended use), performance should be monitored.
No Dependencies: This library is self-contained and does not depend on any other external Pine Script™ libraries.
█ EXPORTED FUNCTIONS
mapLineStyle(styleString)
Maps a user-provided line style string to its corresponding Pine Script™ line style constant.
Parameters:
styleString (simple string) : The input string representing the desired line style (e.g., "Solid", "Dashed", "Dotted" - typically from constants like LS1, LS2, LS3).
Returns: The Pine Script™ constant for the line style (e.g., line.style_solid). Defaults to line.style_solid if no match.
mapTablePosition(positionString)
Maps a user-provided table position string to its corresponding Pine Script™ position constant.
Parameters:
positionString (simple string) : The input string representing the desired table position (e.g., "Top Right", "Top Center" - typically from constants like PP1, PP2).
Returns: The Pine Script™ constant for the table position (e.g., position.top_right). Defaults to position.top_right if no match.
mapTextSize(sizeString)
Maps a user-provided text size string to its corresponding Pine Script™ size constant.
Parameters:
sizeString (simple string) : The input string representing the desired text size (e.g., "Tiny", "Small" - typically from constants like PTS1, PTS2).
Returns: The Pine Script™ constant for the text size (e.g., size.tiny). Defaults to size.small if no match.
formatTimeframe(tfInput, customSuffix)
Formats a raw timeframe string into a more display-friendly string, optionally appending a custom suffix.
Parameters:
tfInput (simple string) : The raw timeframe string from user input or timeframe.period (e.g., "1", "60", "D", "W", "1S", "10M", "2H").
customSuffix (simple string) : An optional suffix to append to the formatted timeframe string (e.g., " FVG", " Period"). Defaults to an empty string.
Returns: The formatted timeframe string (e.g., "1min", "60min", "Daily", "Weekly", "1s", "10min", "2h") with the custom suffix appended.
21-Day Trend Direction📈 21-Day Trend Direction Indicator
📊 How It Works:
🎯 Trend Detection Logic:
Analyzes last 21 daily candles
Calculates total price change from start to end
Compares against sideways threshold (default 2%)
Counts bullish vs bearish days
Tracks higher highs and lower lows
📈 Trend Classifications:
• 📈 UPTREND: Price change > +2% over 21 days
• 📉 DOWNTREND: Price change < -2% over 21 days
• ➡️ SIDEWAYS: Price change between -2% and +2%
💪 Trend Strength Levels:
• 🔥 Very Strong: >5% price change
• 💪 Strong: 3-5% price change
• 📊 Moderate: 1.5-3% price change
• 📉 Weak: <1.5% price change
🎨 Visual Features:
📋 Information Table Shows:
• Trend Direction with color coding
• Price Change % over 21 days
• Trend Strength classification
• Bull/Bear Days count
• Higher Highs/Lower Lows count
• Analysis Period (customizable)
📊 Chart Indicators:
• Trend Line (21-day moving average)
• Background Color for quick trend identification
• Trend Arrows (▲ ▼ ➡) on chart
• Customizable display options
⚙️ Customizable Settings:
🎯 Analysis Settings:
• Lookback Days: 5-50 days (default: 14)
• Sideways Threshold: 0.5-10% (default: 2%)
• Trend Strength: Low/Medium/High sensitivity
🎨 Display Options:
• Table Position: 9 different positions
• Table Size: Tiny to Large
• Show/Hide: Table, Trend Line, Background, Arrows
🚨 Alert Options:
• Trend Change to Uptrend
• Trend Change to Downtrend
• Trend Change to Sideways
This indicator gives you a clear, objective view of the 21-day trend with multiple confirmation signals! 🚀
Algo Structure [ValiantTrader_]Explanation of the "Algo Structure" Trading Indicator
This Pine Script indicator, created by ValiantTrader_, is a multi-timeframe swing analysis tool that helps traders identify key price levels and market structure across different timeframes. Here's how it works and how traders can use it:
Core Components
1. Multi-Timeframe Swing Analysis
The indicator tracks swing highs and lows across:
The current chart timeframe
A higher timeframe (weekly by default)
An even higher timeframe (monthly by default)
2. Swing Detection Logic
Current timeframe swings: Identified when price makes a 3-bar high/low pattern
Higher timeframe swings: Uses the highest high/lowest low of the last 3 bars on those timeframes
3. Visual Elements
Horizontal lines marking swing points
Labels showing the timeframe and percentage distance from current price
An information table summarizing key levels
How Traders Use This Indicator
1. Identifying Key Levels
The indicator draws recent swing highs (red) and swing lows (green)
These levels act as potential support/resistance areas
Traders watch for price reactions at these levels
2. Multi-Timeframe Analysis
By seeing swings from higher timeframes (weekly, monthly), traders can:
Identify more significant support/resistance zones
Understand the broader market context
Spot confluence areas where multiple timeframes align
3. Measuring Price Distance
The percentage display shows how far current price is from each swing level
Helps assess potential reward/risk at current levels
Shows volatility between swings (wider % = more volatile moves)
4. Table Summary
The info table provides a quick reference for:
Exact price levels of swings
Percentage ranges between highs and lows
Comparison across timeframes
5. Trading Applications
Breakout trading: When price moves beyond a swing high/low
Mean reversion: Trading bounces between swing levels
Trend confirmation: Higher highs/lows in multiple timeframes confirm trends
Support/resistance trading: Entering trades at swing levels with other confirmation
Customization Options
Traders can adjust:
The higher timeframes analyzed
Whether to show the timeframe labels
Whether to display swing levels
Whether to show the info table
The indicator also includes price alerts for new swing highs/lows on the current timeframe, allowing traders to get notifications when market structure changes.
This tool is particularly valuable for traders who incorporate multi-timeframe analysis into their strategy, helping them visualize important price levels across different time perspectives
ICT TIME ELEMENTS [KaninFX]## Overview
The ICT Time Elements indicator is a comprehensive trading tool designed to visualize the most critical market sessions and timeframes according to Inner Circle Trader (ICT) methodology. This indicator helps traders identify high-probability trading opportunities by highlighting key market sessions, killzones, and liquidity periods throughout the trading day.
## Key Features
### 🕐 Complete ICT Time Framework
- **Asian Range**: 8:00 PM - 12:00 AM (NY Time) - Evening consolidation period
- **London Killzone**: 2:00 AM - 5:00 AM (NY Time) - European market opening liquidity
- **NY Killzone**: 7:00 AM - 10:00 AM (NY Time) - US market opening with high volatility
- **Silver Bullet Sessions**:
- London Silver Bullet: 3:00 AM - 4:00 AM
- AM Silver Bullet: 10:00 AM - 11:00 AM
- PM Silver Bullet: 2:00 PM - 3:00 PM
- **Lunch Hours**: 5:00 AM - 7:00 AM & 12:00 PM - 1:00 PM (Lower volatility periods)
- **News Embargo**: 8:30 AM - 9:30 AM (High impact news release window)
- **20-Minute Macros**: :50 to :10 minutes of each hour (Short-term reversal periods)
- **True Day Close**: 4:00 PM - 4:30 PM (Official market close)
### 🎨 Visual Customization
- **Multiple Themes**: Dark, Light, and Custom color schemes
- **Adjustable Opacity**: Control zone transparency (0-100%)
- **Font Customization**: Tiny, Small, Normal, Large text sizes
- **Custom Colors**: Personalize each zone with your preferred colors
- **Professional Display**: Clean histogram visualization with zone labels
### 🌍 Multi-Timezone Support
Built-in support for major trading centers:
- America/New_York (Default)
- America/Chicago
- America/Los_Angeles
- Europe/London
- Asia/Tokyo
- Asia/Shanghai
- Australia/Sydney
### 📊 Smart Information Display
- **Real-time Zone Detection**: Automatically identifies current active session
- **Zone Labels**: Clear labeling at the center of each time period
- **Current Zone Indicator**: Arrow pointer showing the active session
- **Comprehensive Info Table**: Quick reference for all time zones and their schedules
- **Flexible Table Positioning**: Place info table in any corner of your chart
### ⚡ Performance Optimized
- **Memory Management**: Automatic cleanup of old labels to maintain performance
- **Efficient Processing**: Optimized time calculations for smooth operation
- **Resource Control**: Limited label generation to prevent system overload
## How It Works
The indicator continuously monitors the current time against predefined ICT session schedules. When price action enters a recognized time zone, the indicator:
1. **Highlights the Period**: Colors the histogram bar according to the active session
2. **Labels the Zone**: Places descriptive text identifying the current market condition
3. **Updates Info Table**: Shows current session status and complete schedule
4. **Tracks Macro Periods**: Identifies 20-minute reversal windows within major sessions
### Special Features
- **Macro Detection**: Automatically identifies when current time falls within a 20-minute macro period
- **Session Overlap Handling**: Properly manages overlapping time zones with priority logic
- **Dynamic Color Adjustment**: Theme-aware color selection for optimal visibility
## Best Use Cases
### For ICT Traders
- Identify optimal entry times during killzone sessions
- Recognize silver bullet opportunities for quick scalps
- Avoid trading during lunch hour consolidations
- Prepare for news embargo volatility
### For Session Traders
- Track major market session transitions
- Plan trading strategy around high-liquidity periods
- Understand global market flow and timing
### For Swing Traders
- Identify macro trend continuation points
- Time position entries during optimal sessions
- Understand market structure changes across sessions
## Installation & Setup
1. Add the indicator to your TradingView chart
2. Select your preferred timezone from the dropdown
3. Choose theme (Dark/Light) or customize colors
4. Adjust font size and table position to your preference
5. Enable/disable features as needed for your trading style
## Pro Tips
- **Combine with Price Action**: Use time zones alongside support/resistance levels
- **Focus on Killzones**: Highest probability setups occur during London and NY killzones
- **Watch Silver Bullets**: These 1-hour windows often provide excellent reversal opportunities
- **Respect Lunch Hours**: Lower volatility periods - consider smaller position sizes
- **News Embargo Awareness**: Prepare for potential whipsaws during 8:30-9:30 AM
## Conclusion
The ICT Time Elements indicator transforms complex ICT timing concepts into an easy-to-read visual tool. Whether you're a beginner learning ICT methodology or an experienced trader looking to optimize your timing, this indicator provides the essential market session awareness needed for successful trading.
*Compatible with all TradingView plans and timeframes. Works best on 1-minute to 1-hour charts for optimal session visualization.*
Trailing Stop Loss [TradingFinder] 4 Machine Learning Methods🔵 Introduction
The trailing stop indicator dynamically adjusts stop-loss (SL) levels to lock in profits as price moves favorably. It uses pivot levels and ATR to set optimal SL points, balancing risk and reward.
Trade confirmation filters, a key feature, ensure entries align with market conditions, reducing false signals. In 2023 a study showed filtered entries improve win rates by 15% in forex. This enhances trade precision.
SL settings, ranging from very tight to very wide, adapt to volatility via ATR calculations. These settings anchor SL to previous pivot levels, ensuring alignment with market structure. This caters to diverse trading styles, from scalping to swing trading.
The indicator colors the profit zone between the entry point (EP) and SL, using light green for buy trades and light red for sell trades. This visual cue highlights profit potential. It’s ideal for traders seeking dynamic risk management.
A table displays real-time trade details, including EP, SL, and profit/loss (PNL). Backtests show trailing stops cut losses by 20% in trending markets. This transparency aids decision-making.
🔵 How to Use
🟣 SL Levels
The trailing stop indicator sets SL based on pivot levels and ATR, offering four options: very tight, tight, wide, or very wide. Very tight SLs suit scalpers, while wide SLs fit swing traders. Select the base level to match your strategy.
If price hits the SL, the trade closes, and the indicator evaluates the next trade using the selected filter. This ensures disciplined trade management. The cycle restarts with a new confirmed entry.
Very tight SLs, set near recent pivots, trigger exits early to minimize risk but limit profits in volatile markets. Wide SLs, shown as farther lines, allow more price movement but increase exposure to losses. Adjust based on ATR and conditions, noting SL breaches open new positions.
🟣 Visualization
The indicator’s visual cues, like colored profit zones, simplify monitoring, with light green showing the profit area from EP to trailed SL. Dashed lines mark entry points, while solid lines track the trailed SL, triggering new positions when breached.
When price moves into profit, the area between EP and SL is colored—light green for longs, light red for shorts. This highlights the profit zone visually. The SL trails price, locking in gains as the trade progresses.
🟣 Filters
Upon trade entry, the indicator requires confirmation via filters like SMA 2x or ADX to validate momentum. Filters reduce false entries, though no guarantee exists for improved outcomes. Monitor price action post-entry for trade validity.
Filters like Momentum or ADX assess trend strength before entry. For example, ADX above 25 confirms strong trends. Choose “none” for unfiltered entries.
🟣 Bullish Alert
For a bullish trade, the indicator opens a long position with a green SL Line (after optional filters), trailing the SL below price. Set alerts to On in the settings for notifications, or Off to monitor manually.
🟣 Bearish Alert
In a bearish trade, the indicator opens a short position with a red SL Line post-confirmation, trailing the SL above price. With alerts On in the settings, it notifies the potential reversal.
🟣 Panel
A table displays all trades’ details, including Win Rates, PNL, and trade status. This real-time data aids in tracking performance. Check the table to assess trade outcomes instantly.
Review the table regularly to evaluate trade performance and adjust settings. Consistent monitoring ensures alignment with market dynamics. This maximizes the indicator’s effectiveness.
🔵 Settings
Length (Default: 10) : Sets the pivot period for calculating SL levels, balancing sensitivity and reliability.
Base Level : Options (“Very tight,” “Tight,” “Wide,” “Very wide”) adjust SL distance via ATR.
Show EP Checkbox : Toggles visibility of the entry point on the chart.
Show PNL : Displays profit/loss data for active and closed trades.
Filter : Options (“none,” “SMA 2x,” “Momentum,” “ADX”) validate trade entries.
🔵 Conclusion
The trailing stop indicator, a dynamic risk management tool, adjusts SLs using pivot levels and ATR. Its confirmation filters reduce false entries, boosting precision. Backtests show 20% loss reduction in trending markets.
Customizable SL settings and visual profit zones enhance usability across trading styles. The real-time table provides clear trade insights, streamlining analysis. It’s ideal for forex, stocks, or crypto.
While filters like ADX improve entry accuracy, no setup guarantees success in all conditions. Contextual analysis, like trend strength, is key. This indicator empowers disciplined, data-driven trading.
ATR Volatility giua64ATR Volatility giua64 – Smart Signal + VIX Filter
📘 Script Explanation (in English)
Title: ATR Volatility giua64 – Smart Signal + VIX Filter
This script analyzes market volatility using the Average True Range (ATR) and compares it to its moving average to determine whether volatility is HIGH, MEDIUM, or LOW.
It includes:
✅ Custom or preset configurations for different asset classes (Forex, Indices, Gold, etc.).
✅ An optional external volatility index input (like the VIX) to refine directional bias.
✅ A directional signal (LONG, SHORT, FLAT) based on ATR strength, direction, and external volatility conditions.
✅ A clean visual table showing key values such as ATR, ATR average, ATR %, VIX level, current range, extended range, and final signal.
This tool is ideal for traders looking to:
Monitor the intensity of price movements
Filter trading strategies based on volatility conditions
Identify momentum acceleration or exhaustion
⚙️ Settings Guide
Here’s a breakdown of the user inputs:
🔹 ATR Settings
Setting Description
ATR Length Number of periods for ATR calculation (default: 14)
ATR Smoothing Type of moving average used (RMA, SMA, EMA, WMA)
ATR Average Length Period for the ATR moving average baseline
🔹 Asset Class Preset
Choose between:
Manual – Define your own point multiplier and thresholds
Forex (Pips) – Auto-set for FX markets (high precision)
Indices (0.1 Points) – For index instruments like DAX or S&P
Gold (USD) – Preset suitable for XAU/USD
If Manual is selected, configure:
Setting Description
Points Multiplier Multiplies raw price ranges into useful units (e.g., 10 for Gold)
Low Volatility Threshold Threshold to define "LOW" volatility
High Volatility Threshold Threshold to define "HIGH" volatility
🔹 Extended Range and VIX
Setting Description
Timeframe for Extended High/Low Used to compare larger price ranges (e.g., Daily or Weekly)
External Volatility Index (VIX) Symbol for a volatility index like "VIX" or "EUVI"
Low VIX Threshold Below this level, VIX is considered "low" (default: 20)
High VIX Threshold Above this level, VIX is considered "high" (default: 30)
🔹 Table Display
Setting Description
Table Position Where the visual table appears on the chart (e.g., bottom_center, top_left)
Show ATR Line on Chart Whether to display the ATR line directly on the chart
✅ Signal Logic Summary
The script determines the final signal based on:
ATR being above or below its average
ATR rising or falling
ATR percentage being significant (>2%)
VIX being high or low
Conditions Signal
ATR rising + high volatility + low VIX LONG
ATR falling + high volatility + high VIX SHORT
ATR flat or low volatility or low %ATR FLAT
Market Sentiment Index US Top 40 [Pt]▮Overview
Market Sentiment Index US Top 40 [Pt} shows how the largest US stocks behave together. You pick one simple measure—High Low breakouts, Above Below moving average, or RSI overbought/oversold—and see how many of your chosen top 10/20/30/40 NYSE or NASDAQ names are bullish, neutral, or bearish.
This tool gives you a quick view of broad-market strength or weakness so you can time trades, confirm trends, and spot hidden shifts in market sentiment.
▮Key Features
► Three Simple Modes
High Low Index: counts stocks making new highs or lows over your lookback period
Above Below MA: flags stocks trading above or below their moving average
RSI Sentiment: marks overbought or oversold stocks and plots a small histogram
► Universe Selection
Top 10, 20, 30, or 40 symbols from NYSE or NASDAQ
Option to weight by market cap or treat all symbols equally
► Timeframe Choice
Use your chart’s timeframe or any intraday, daily, weekly, or monthly resolution
► Histogram Smoothing
Two optional moving averages on the sentiment bars
Markers show when the faster average crosses above or below the slower one
► Ticker Table
Optional on-chart table showing each ticker’s state in color
Grid or single-row layout with adjustable text size and color settings
▮Inputs
► Mode and Lookback
Pick High Low, Above Below MA, or RSI Sentiment
Set lookback length (for example 10 bars)
If using Above Below MA, choose the moving average type (EMA, SMA, etc.)
► Universe Setup
Market: NYSE or NASDAQ
Number of symbols: 10, 20, 30, or 40
Weights: on or off
Timeframe: blank to match chart or pick any other
► Moving Averages on Histogram
Enable fast and slow averages
Set their lengths and types
Choose colors for averages and markers
► Table Options
Show or hide the symbol table
Select text size: tiny, small, or normal
Choose layout: grid or one-row
Pick colors for bullish, neutral, and bearish cells
Show or hide exchange prefixes
▮How to Read It
► Sentiment Bars
Green means bullish
Red means bearish
Near zero means neutral
► Zero Line
Separates bullish from bearish readings
► High Low Line (High Low mode only)
Smooth ratio of highs versus lows over your lookback
► MA Crosses
Fast MA above slow MA hints rising breadth
Fast MA below slow MA hints falling breadth
► Ticker Table
Each cell colored green, gray, or red for bull, neutral, or bear
▮Use Cases
► Confirm Market Trends
Early warning when price makes highs but breadth is weak
Catch rallies when breadth turns strong while price is flat
► Spot Sector Rotation
Switch between NYSE and NASDAQ to see which group leads
Watch tech versus industrial breadth to track money flow
► Filter Trade Signals
Enter longs only when breadth is bullish
Consider shorts when breadth turns negative
► Combine with Other Indicators
Use RSI Sentiment with trend tools to spot overextended moves
Add volume indicators in High Low mode for breakout confirmation
► Timeframe Analysis
Daily for big-picture bias
Intraday (15-min) for precise entries and exits
Forex Session + Volume Profile [RunRox]📊 Forex Session + Volume Profile is built especially for traders who work with intra-session liquidity concepts or any strategy that needs a clear visual of trading sessions and the liquidity inside them.
Our team created this indicator to give you better session visibility, flexible session styling, and extra tools that help you navigate the market more easily.
📌 Features:
6 fully customizable sessions
Kill Zone (the high-impact trading window)
Volume Profile for each session
POC / VAL / VAH / LVN levels (Point of Control, Value Area Low, Value Area High, Low Volume Node)
PDH / PDL levels (Previous Day High / Low)
PWH / PWL levels (Previous Week High / Low)
NYM level (New York Market level)
Active sessions table
5 style options for each session
All of this gives you the flexibility to set up exactly the layout you need for your trading. Below, you’ll find a more detailed look at each feature.
🗓️ 6 CUSTOMIZABLE SESSION
The indicator includes six sessions that you can fully customize to fit your needs—everything from naming each session and choosing line colors to adjusting opacity, showing the volume profile, or even turning off a session entirely if you don’t need it.
Plus, you can pick different display styles for each session. As shown in the screenshot below, there are five style options you can apply individually to every session.
5 Style Options for Sessions
BOX
AREA
ZONES
LINES
CURVED
These styles can be customized for each session individually to help you highlight the sessions you care about on your chart. Example below
📢 VOLUME PROFILE
We’ve also integrated a Volume Profile into the indicator to pinpoint important levels on the chart. On top of that, we’ve added extra volume-based levels. Below, you’ll find the settings and a visual demo of how it appears on your chart.
To identify optimal entry points, you can use the following key reference levels:
POC (Point of Control)
VAL (Value Area Low)
VAH (Value Area High)
LVN (Low Volume Node)
You can also customize colors and line styles, or hide any levels you don’t need on your chart.
📐 ADDITIONAL LEVELS
You can display the following levels on your chart:
NYM (New York Market)
PDH (Previous Day High)
PDL (Previous Day Low)
PWH (Previous Week High)
PWL (Previous Week Low)
All of these are fully customizable with color selection and the option to extend lines into the next period.
💹 ACTIVE SESSION TABLE
The active sessions table helps you quickly identify the trading times for the sessions you care about. It’s fully customizable, with options to choose border and background colors for the table itself.
🟠 USAGE
This indicator is highly versatile: use it to simply mark trading sessions on your chart, set up the Kill Zone at your chosen time, or identify the context of the previous session by its most traded range levels. All of this makes the indicator an invaluable tool for any trader!
Bitcoin Impact AnalyzerSummary of the "Bitcoin Impact Analyzer" script, the adjustments users can make, and an explanation of what the chart and table represent:
Script Summary:
The "Bitcoin Impact Analyzer" script is designed to help traders and analysts understand the relationship between a chosen altcoin and Bitcoin (BTC). It does this by:
Fetching price data for the specified altcoin and Bitcoin.
Calculating several key comparative metrics:
Normalized Prices: Shows the percentage performance of both assets from a common starting point.
Price Correlation: Measures how similarly the two assets' prices move over a defined period.
Beta: Indicates the altcoin's volatility relative to Bitcoin.
Altcoin/BTC Ratio: Shows the altcoin's value expressed in Bitcoin.
Fetching and displaying Bitcoin Dominance (BTC.D) data.
Visualizing these metrics on the chart as distinct plots.
Displaying the current values of these key metrics in a data table on the chart for quick reference.
The script aims to provide insights into whether an altcoin is outperforming or underperforming Bitcoin, how closely its price movements are tied to Bitcoin's, and its relative volatility.
User Adjustments:
Users can customize the script's behavior through several input settings:
Symbol Inputs:
Altcoin Symbol: Users can enter the ticker symbol for any altcoin they wish to analyze (e.g., BINANCE:ETHUSDT, KUCOIN:SOLUSDT).
Bitcoin Reference Symbol: Users can specify the Bitcoin pair to use as a reference, though BINANCE:BTCUSDT is a common default.
Lookback for Correlation/Beta:
Lookback Period: This integer value (default 50 periods) determines how many past candles are used to calculate the price correlation and beta.
A shorter lookback makes the metrics more sensitive to recent price action.
A longer lookback provides a smoother, more stable indication of the longer-term relationship.
Plot Visibility Options:
Users can toggle on or off the display of each individual plot on the chart:
Normalized BTC & Altcoin Prices
Altcoin/BTC Ratio
Correlation Plot
Bitcoin Dominance (BTC.D)
Beta Plot
This allows users to focus on specific metrics and reduce chart clutter.
What the Chart Represents:
The chart visually displays the historical trends and relationships of the selected metrics:
Normalized Prices Plot: Two lines (typically orange for BTC, blue for the altcoin) show the percentage growth of each asset from the start of the loaded chart data (or the first available data point for each symbol). This makes it easy to see which asset has performed better over time on a relative basis.
Correlation Plot: A single line (purple) oscillates between -1 and +1.
Values near +1 indicate a strong positive correlation (altcoin and BTC prices tend to move in the same direction).
Values near -1 indicate a strong negative correlation (they tend to move in opposite directions).
Values near 0 indicate little to no linear relationship.
Lines at +0.7 and -0.7 are often plotted as thresholds for "strong" correlation.
Beta Plot (if enabled): A single line (teal) shows the altcoin's volatility relative to BTC.
A Beta of 1 (often marked by a dashed line) means the altcoin has, on average, the same volatility as BTC.
Beta > 1 suggests the altcoin is more volatile than BTC (moves by a larger percentage for a given BTC move).
Beta < 1 suggests the altcoin is less volatile than BTC.
Bitcoin Dominance Plot: An area plot (gray) shows the percentage of the total cryptocurrency market capitalization that Bitcoin holds. This helps understand broader market sentiment and capital flows.
Altcoin/BTC Ratio Plot: A line (fuchsia) shows the price of the altcoin denominated in BTC.
An upward trend means the altcoin is gaining value against Bitcoin (outperforming).
A downward trend means the altcoin is losing value against Bitcoin (underperforming).
What the Table Represents:
The data table, typically located in the bottom-right corner of the chart, provides a snapshot of the current values for the most important calculated metrics. It includes:
Altcoin: The ticker symbol of the analyzed altcoin.
Bitcoin Ref: The ticker symbol of the Bitcoin reference.
Correlation (lookback): The current correlation coefficient between the altcoin and BTC, based on the specified lookback period. The value is color-coded (e.g., green for strong positive, red for strong negative).
Beta (lookback): The current beta value of the altcoin relative to BTC, based on the specified lookback period. The value may be color-coded to highlight significantly high or low volatility.
BTC.D Current: The current Bitcoin Dominance percentage.
ALT/BTC Ratio: The current price of the altcoin expressed in Bitcoin.
The table offers a quick, at-a-glance summary of the present market dynamics between the two assets without needing to interpret the lines on the chart for their exact current values.
Money Flow based probabilityMoney Flow based probability
This indicator provides a comprehensive correlation and momentum analysis between your main asset and up to three selected correlated assets. It combines correlation, trend, momentum, and overbought/oversold signals into a single, easy-to-read table directly on your chart.
Correlated Asset Selection :
You can select up to three correlated assets (e.g., indices, currencies, bonds) to compare with your main chart symbol. Each asset can be toggled on or off.
Correlation Calculation :
The indicator uses the native Pine Script ta.correlation function to measure the statistical relationship between the closing prices of your asset and each selected pair over a user-defined period.
Technical Analysis Integration :
For each asset (including the main one), the indicator calculates:
Trend direction using EMA (Exponential Moving Average) – optional
Momentum using MACD – optional
Overbought/oversold status using RSI – optional
Probability Scoring :
A weighted scoring system combines correlation, trend, MACD, RSI, and trend exhaustion signals to produce buy and sell probabilities for the main asset.
Visual Table Output :
A customizable table is displayed on the chart, showing:
Asset name
Correlation (as a percentage, -100% to +100%)
Trend (Bullish/Bearish)
MACD status (Bullish/Bearish)
RSI value and status
Buy/Sell probability (with fixed-width formatting for stability)
User Customization :
You can adjust:
Table size, color, and position
Correlation period
EMA, MACD, and RSI parameters
Which assets to display
This indicator is ideal for traders who want to quickly assess the influence of major correlated markets and technical signals on their trading instrument, all in a single glance.
---
Example: Correlation Calculation
corrCurrentAsset1 = ta.correlation(close, asset1Data, correlationPeriod)
Example: Table Output (Buy/Sell %)
buyStr = f_formatPercent(buyProbability) + "%"
sellStr = f_formatPercent(sellProbability) + "%"
cellStr = buyStr + " / " + sellStr
Gaps EnhancedThis advanced gap detection tool identifies and visualizes price gaps on trading charts, helping traders spot potential support/resistance levels and trading opportunities.
🔲 Components and Features
Visual gap boxes with directional coloring
Dynamic labels showing key price levels
Smart sorting of nearest gaps
Customizable appearance
Key Features
Gap Visualization
Colored boxes (orange for support, green for resistance)
Dashed lines marking gap boundaries
Right-aligned price labels
Smart Gap Table
Shows 5 most relevant open gaps
Sorted by proximity to current price
Displays required move percentage to fill each gap
Customization Options
Adjustable gap size threshold
Color customization
Label positioning controls
Table location settings
How To Use
Basic Interpretation
Orange boxes: Price gaped up might come back (support zones)
Green boxes: Price gaped down price might come back to close the gap (resistance zones)
The table shows how much the price needs to move to fill each gap (as percentage)
Trading Applications
Look for price reactions near gap levels
Trade bounces off support/resistance gaps
Watch for gap fills as potential trend continuation signals
Use nearest gaps as profit targets
Settings Guide
Minimal Deviation: Set minimum gap size
Max Number of Gaps: Limits how many gaps are tracked
Visual Settings: Customize colors and label positions
Table Position: Choose where the info table appears
Pro Tips
Combine with other indicators for confirmation
Watch for volume spikes at gap levels
Larger gaps often act as stronger S/R
Supertrend X2 + CalcSize Calculator:
Size Calculator is a risk management tool that helps traders position themselves intelligently by calculating optimal position size, stop loss, and take profit levels based on account capital, ATR volatility, and personal risk tolerance. It takes the guesswork out of sizing so you can focus on execution.
Features:
✅ Risk-based position sizing
✅ ATR-based stop loss & take profit levels
✅ Dynamic leverage estimation
✅ Support for long and short positions
✅ Visual display of key levels and metrics via table
✅ Works across any timeframe with locked timeframe support
How It Works:
This tool computes the ideal position size as a % of account capital based on how much you're willing to risk per trade and how far your stop loss is (in ATR units). It calculates corresponding stop loss and take profit prices, and visually plots them along with a floating table of metrics. You can lock the timeframe used for ATR and price, keeping your risk logic stable even when changing chart views.
Customizable Inputs:
Account capital and risk tolerance
ATR-based stop loss & take profit multiples
Trade direction (Long or Short)
ATR period and locked timeframe
Optional detailed metrics display
Dual SuperTrend:
The Dual Supertrend indicator enhances the classic Supertrend strategy by layering two customizable Supertrend signals with independent ATR settings. This setup gives you a deeper, more nuanced read on trend strength and potential entry zones.
Features:
✅ Two Supertrend lines (each with adjustable ATR periods and multipliers)
✅ Optional Heikin Ashi candle smoothing for noise reduction
✅ Color-coded trend background for fast visual analysis
✅ Multi-timeframe trend table overlay (customizable)
✅ Built-in signal logic to identify "Long", "Short", or "N/A" zones
✅ Built-in alerts from Long and Short Entry Zones
How It Works:
The script calculates two Supertrend levels using separate ATR settings. Trend direction is derived from the relationship between price and each band. When the larger (slower) Supertrend flips and the smaller (faster) confirms, it signals a potential entry. The multi-timeframe table helps you align trades across different timeframes.
Customizable Inputs:
ATR Periods & Multipliers for both Supertrends
Timeframes for entry zone detection (up to 4)
Enable/disable Heikin Ashi candles for smoother trend detection
Options Volume [theUltimator5]📊 Option Volume — Multi-Strike Option Flow Visualizer
The Option Volume indicator tracks and visualizes volume activity for up to 10 custom option strike symbols on any ticker. It supports both individual strike analysis and a combined cumulative volume mode, providing an intuitive view of option flow across your selected strikes.
🔧 Features:
Dynamic Strike Control: Select up to 10 strikes and customize each with ticker, expiration date (YYMMDD), and option type (Call or Put).
Volume Display Modes:
🔹 Individual: Shows a separate volume bar for each strike.
🔸 Cumulative: Combines all selected strike volumes into a single bar, colored green for Calls and red for Puts.
Customizable Table Display:
Toggle the option symbol table on/off.
Position the table in any corner of the chart.
Table cell colors match plotted bars in Individual mode, or turn red/green in Cumulative mode based on option type.
Smart Volume Filtering: Only shows volume bars on the bar where volume updates (i.e., no carryover from stale bars).
Input Efficiency: All strike prices are automatically rounded to the nearest 0.5 increment for standardized symbol formatting.
⚙️ How to Use:
Select the ticker you want to analyze.
Input the expiration date and option type (C or P).
Define strike prices (up to 10).
Toggle between Individual or Cumulative volume display.
Adjust the number of visible strikes and table position as needed.
This tool is ideal for traders looking to monitor strike-level option volume behavior, spot flow anomalies, or keep track of high-interest strike activity in real-time.
The indicator currently doesn't support multiple expiration dates or a combination of calls/puts. If you want to view multiple expirations or a both calls and puts at the same time, simply add the indicator multiple times.
VolumePrice Intensity AnalyzerVolumePrice Intensity Analyzer
The VolumePrice Intensity Analyzer is a Pine Script v6 indicator designed to measure market activity intensity through the trading value (Price * Volume, scaled to millions). It helps traders identify significant volume-price interactions, track trends, and gauge momentum by combining volume analysis with trend-following tools.
Features:
Volume-Based Analysis: Calculates Price * Volume in millions to highlight market activity levels.
Trend Identification: Plots 20-day and 50-day SMAs of the trading value to smooth fluctuations and reveal sustained trends.
Relative Strength: Displays the ratio of daily Price * Volume to the long-term SMA in a separate pane, helping traders assess activity intensity relative to historical averages.
Real-Time Metrics: A table shows the current Price * Volume and its ratio to the long SMA, updated continuously with bold text formatting (v6 feature).
Alerts: Triggers notifications for high trading values (when Price * Volume exceeds 1.5x the long SMA) and SMA crossovers (short SMA crossing above long SMA).
Visual Cues: Uses dynamic bar colors (teal for bullish, gray for bearish) and background highlights to mark significant market activity.
Customizable Inputs: Adjust SMA periods, scaling factor, and alert threshold via the settings panel, with tooltips for clarity (v6 feature).
Originality:
Unlike basic volume indicators, this tool combines Price * Volume with trend analysis (SMAs), relative strength (ratio plot), and actionable alerts. The real-time table and visual highlights provide a unique, at-a-glance view of market intensity, making it a valuable addition for volume and trend-focused traders.
Calculations:
Trading Value (P*V): (Close * Volume) * Scale Factor (default scale factor of 1e-6 converts to millions).
SMAs: 20-day and 50-day Simple Moving Averages of the trading value to identify short- and long-term trends.
Ratio: Daily Price * Volume divided by the 50-day SMA, plotted in a separate pane to show relative activity strength.
Bar Colors: Teal (RGB: 0, 132, 141) for bullish bars (close > open or close > previous close), gray for bearish or neutral bars.
Background Highlight: Light yellow (hex: #ffcb3b, 81% transparency) when Price * Volume exceeds the long SMA by the alert threshold.
Plotted Elements:
Short SMA P*V (M): Red line, 20-day SMA of Price*Volume in millions.
Long SMA P*V (M): Blue line, 50-day SMA of Price*Volume in millions.
Today P*V (M): Columns, daily Price*Volume in millions (teal/gray based on price action).
Daily V*P/Longer Term Average: Purple line in a separate pane, ratio of daily Price * Volume to the 50-day SMA.
Usage:
Spot High Activity: Look for Price * Volume columns exceeding the SMAs or spikes in the ratio plot to identify significant market moves.
Confirm Trends: Use SMA crossovers (e.g., short SMA crossing above long SMA) as bullish trend signals, or vice versa for bearish trends.
Monitor Intensity: The table provides real-time Price * Volume and ratio values, while background highlights signal high activity periods.
Versatility: Suitable for stocks, forex, crypto, or any market with volume data, across various timeframes.
How to Use:
Add the indicator to your chart.
Adjust inputs (SMA periods, scale factor, alert threshold) via the settings panel to match your trading style.
Watch for alerts, check the table for real-time metrics, and observe the ratio plot for relative strength signals.
Use the background highlights and bar colors to quickly spot significant market activity and price action.
This indicator leverages Pine Script v6 features like lazy evaluation for performance and advanced text formatting for better visuals, making it a powerful tool for traders focusing on volume, trends, and momentum.
Percent from And To All Time High,Indicator: Percent from All Time High - Raised Label
Overview:
This indicator shows the percentage difference between the current price of an asset and its all-time high (ATH). It displays these percentages in a raised label at the top of the chart. Additionally, the last price and the percentage difference to ATH are displayed in a table.
Features:
Displays the percentage difference from ATH (From ATH) and the percentage difference to ATH (To ATH) in a table.
The Last Price is shown along with the percentage difference.
The data is dynamically updated with the current price, and it will always show the latest information.
Visualizes price movements with colored bars to indicate price direction.