Stage Market V4This script provides a comprehensive tool for identifying market stages based on exponential moving averages (EMAs), market performance metrics, and additional price statistics. Below is a summary of its functionality and instructions on how to use it:
1. Inputs and Configuration
Fast and Slow EMA:
Fast EMA Length: Determines the period for the fast EMA.
Slow EMA Length: Determines the period for the slow EMA.
Additional EMAs:
Enable or disable three additional EMAs (EMA 1, EMA 2, and EMA 3) with customizable lengths.
52-Week High Display:
Optionally display the percentage distance from the 52-week high.
2. Market Stages
The indicator identifies six market stages based on the relationship between the price, fast EMA, and slow EMA:
Recovery: Price is above the fast EMA, and the slow EMA is above both the price and the fast EMA.
Accumulation: Price is above both the fast EMA and slow EMA, but the slow EMA is still above the fast EMA.
Bull Market: Price, fast EMA, and slow EMA are all aligned in a rising trend.
Warning: Price is below the fast EMA, but still above the slow EMA, signaling potential weakness.
Distribution: Price is below both EMAs, but the slow EMA remains below the fast EMA.
Bear Market: Price, fast EMA, and slow EMA are all aligned in a falling trend.
The current stage is displayed in a table along with the number of bars spent in that stage.
3. Performance Metrics
The script calculates additional metrics to gauge the stock's performance:
30-Day Change: The percentage price change over the last 30 days.
90-Day Change: The percentage price change over the last 90 days.
Year-to-Date (YTD) Change: The percentage change from the year's first closing price.
Distance from 52-Week High (if enabled): The percentage difference between the current price and the highest price over the past 52 weeks.
These values are color-coded:
Green for positive changes.
Red for negative changes.
4. Table Display
The indicator uses a table in the bottom-right corner of the chart to show:
Current market stage and bars spent in the stage.
30-day, 90-day, and YTD changes.
Distance from the 52-week high (if enabled).
5. EMA Plotting
The script plots the following EMAs on the chart:
Fast EMA (default: 50-period) in yellow.
Slow EMA (default: 200-period) in orange.
Optional EMAs (EMA 1, EMA 2, and EMA 3) in blue, green, and purple, respectively.
6. Using the Indicator
Add the indicator to your chart via the Pine Editor in TradingView.
Customize the input parameters to fit your trading style or the asset's characteristics.
Use the table to quickly assess the current market stage and key performance metrics.
Observe the plotted EMAs to understand trend alignments and potential crossovers.
This script is particularly useful for identifying market trends, understanding price momentum, and aligning trading decisions with broader market conditions.
Göstergeler ve stratejiler
No Wick Setup Indicator
**No Wick Setup Indicator**
This is a custom trading indicator designed to identify and signal potential buy and sell opportunities based on candlestick patterns with no wicks. Specifically, it looks for candles with no wicks at the bottom (bullish setup) or no wicks at the top (bearish setup). Here's how it works:
**Key Features:**
- **Bullish Setup**: A green candlestick with no bottom wick (i.e., the open price is equal to the low price of the candle) is considered a potential bullish signal. A trendline is drawn at the bottom of this candle. When the market price returns to this trendline, a buy signal is generated.
- **Bearish Setup**: A red candlestick with no top wick (i.e., the open price is equal to the high price of the candle) is considered a potential bearish signal. A trendline is drawn at the top of this candle. When the market price returns to this trendline, a sell signal is generated.
- **Timeframe**: This indicator works exclusively on the **30-minute timeframe**.
**How It Works:**
1. When a candlestick pattern with no bottom wick (bullish setup) is identified, a trendline is drawn at the low of the candlestick.
2. When a candlestick pattern with no top wick (bearish setup) is identified, a trendline is drawn at the high of the candlestick.
3. The indicator then tracks the market price and waits for it to return to the respective trendline level.
4. **Buy Signal**: When the market price touches or goes below the bullish trendline, a **Buy** signal is displayed on the chart with an upward arrow.
5. **Sell Signal**: When the market price touches or goes above the bearish trendline, a **Sell** signal is displayed on the chart with a downward arrow.
**Visual Elements:**
- **Trendlines**: Horizontal lines drawn at the bottom (bullish) or top (bearish) of the candlesticks with no wick.
- **Buy/Sell Labels**: Labels indicating "Buy" or "Sell" appear when the market price returns to the trendline.
**Why Use This Indicator?**
- This indicator helps identify specific price levels where the market might reverse or consolidate based on candlestick structure, offering potential entry points for trades.
- It allows traders to focus on price action and market behavior without relying on more complex indicators.
FuTech : Earnings (All 269 Fundamental Metrics of Tradingview)FuTech : Earnings Indicator
The FuTech : Earnings Indicator is a revolutionary tool, offering the most comprehensive integration of all 269 fundamental financial metrics available from the TradingView platform.
This groundbreaking indicator is designed to empower financial researchers, traders, investors, and analysts with an unmatched depth of data, enabling superior analysis and decision-making.
Overview
"FuTech : Earnings Indicator" is the first-ever indicator to provide a holistic comparison of fundamental financial metrics for any stock, covering quarterly, yearly, and trailing twelve months (TTM) periods.
This tool brings together key financial data from income statements, balance sheets, cash flows, and other critical metrics found in company annual reports.
It also incorporates additional unique features like per-employee data, R&D expenses, and capital expenditures (CapEx), which are typically hidden within dense financial statements of Annual Reports.
---
Key Features and Capabilities
1. Comprehensive Financial Metrics
- "FuTech : Earnings Indicator" offers access to all 269 fundamental metrics available on TradingView platform. This includes widely used data such as revenue, profit margins, and EPS, alongside more niche metrics like R&D expenditure, employee efficiency, and financial scores developed by renowned analysts.
- Users can explore income statement data (e.g., net income, gross profit), balance sheet items (e.g., total assets, liabilities), cash flow metrics, and other financial statistics such as Altman Score, per employee expenses etc. in unparalleled detail.
2. Comparison Across Time Periods
- "FuTech : Earnings Indicator" allows users to analyze data for:
- Quarterly periods (e.g., Q1, Q2, Q3, Q4).
- Yearly comparisons for a broad historical view.
- TTM analysis to observe the most recent trends and developments.
- Users can select a minimum of 4 periods up to an unlimited range for detailed comparisons in both quarter.
3. Dynamic Data Display
- Users can select up to 5 key metrics alongside the stock price column to focus their analysis on the most relevant data points.
- Highlighting with green and red symbols offers an intuitive and visual representation:
- Green : Positive trends or improvements.
- Red : Negative trends or deteriorations.
4. Automated Averages
- "FuTech : Earnings Indicator" automatically calculates averages of selected metrics across the chosen periods. This feature helps users quickly identify performance trends and smooth out anomalies, enabling faster and more reliable research.
5. Designed for Research Excellence
- FuTech serves a wide audience, including:
- Corporate finance professionals who need a deep dive into financial metrics.
- Individual investors seeking robust tools for investment analysis.
- Broking companies and equity research analysts performing stock analysis.
- Traders looking to incorporate fundamental metrics into their strategies.
- Technical analysts seeking a better understanding of price behavior in relation to fundamentals.
- Fundamental research aspirants who want an edge in their learning process.
6. Unmatched Detail for Deeper Insights
- By pulling all 269 Financial metrics from the TradingView, "FuTech : Earnings Indicator" enables:
- Cross-comparison of a stock’s performance with its historical benchmarks.
- Evaluation of rare data like R&D expenses, CapEx trends, and employee efficiency ratios for enhanced investment insights.
- This ensures users can study stocks in greater depth than ever before.
7. Enhanced Usability
- Simple to use and visually appealing, "FuTech : Earnings Indicator" is designed with researchers in mind.
- Its intuitive interface ensures even novice users can navigate the wealth of data without feeling overwhelmed.
Applications of FuTech : Earnings Indicator
FuTech : Earnings Indicator is incredibly versatile and has applications in diverse fields of financial research and trading:
1. Corporate Finance
- Professionals in corporate finance can leverage "FuTech : Earnings Indicator" to benchmark company performance, study efficiency ratios, and evaluate financial health across various metrics.
2. Investors and Traders
- Long-term investors can use the tool to study the fundamental strengths of a stock before making buy-and-hold decisions.
- Traders can incorporate "FuTech : Earnings Indicator" into their analysis to align comprehensive fundamental trends with their targeted technical signals.
3. Equity Research Analysts
- Analysts can streamline their workflows by quickly identifying trends, outliers, and averages across large datasets.
4. Education and Research
- "FuTech : Earnings Indicator" is ideal for students and aspiring financial analysts who want a practical tool for understanding real-world data.
How FuTech : Earnings Indicator Stands Out
1. First-Ever Integration of All Financial Metrics
- It's an exclusive tool which offers the ability to explore all 269 financial metrics available on TradingView for a single stock research in-depth for quarters, years or TTM periods.
2. Period Customization
- Users have complete flexibility to select and analyze data across any range of time periods, allowing for customized insights tailored to specific research goals.
3. Data Visualization
- The intuitive use of color-coded symbols (green for positive trends, red for negative) makes complex data easy to interpret at a glance.
4. Actionable Insights
- The automated average calculations provide actionable insights for making informed decisions without manual computations.
5. Unique Metrics
- Metrics such as research and development costs, CapEx, and per-employee efficiency data offer unique angles that aren’t typically available in traditional analysis tools.
Why to Use FuTech : Earnings Indicator ?
1. Boost Your Research Power
- With FuTech, you can unlock a world of data that gives you the edge in analyzing stocks. Whether you’re a seasoned analyst or a beginner, this tool offers something for everyone.
2. Save Time and Effort
- The automated features and intuitive interface eliminate the need for time-consuming manual calculations and formatting.
3. Make Better Decisions
- "FuTech : Earnings Indicator's" detailed comparison capabilities and insightful visual aids allow for more accurate assessments of a stock’s performance and potential.
4. Broad Appeal
- From individual investors to financial institutions, FuTech is a valuable tool for anyone in the world of finance.
---
Conclusion
- The FuTech : Earnings Indicator is a must-have for anyone serious about financial analysis.
- It combines the depth of all 269 fundamental metrics with intuitive tools for comparison, visualization, and calculation.
- Designed for ease of use and powerful insights, FuTech : Earnings Indicator is set to transform the way financial data is analyzed and understood.
Thank you !
Boost, Share, Follow, and Enjoy with FuTech!
Jai Swaminarayan Dasna Das !
He Hari ! Bas Ek Tu Raji Tha !
BuySell%_ImtiazH_v2BuySell%_ImtiazH
This indicator includes two powerful volume metrics to complement your trading analysis:
30-Day Avg Vol (Blue Line): Tracks the average volume over the past 30 days, providing a baseline for typical trading activity.
Breakout Vol (White Line): Highlights the volume threshold needed for a potential breakout, calculated as a user-defined percentage above the 30-day average volume (default: 40%).
In addition to these enhancements, the indicator breaks down total trading volume into buying and selling components and calculates the percentage of buy volume for each bar.
🟥 Red Bars: Represent total volume.
🟩 Teal Bars: Show the buying volume within each candle.
🟨 Buy %: Displays the percentage of buy volume dynamically in the indicator panel, highlighted in yellow for quick visibility.
Use this tool to easily spot accumulation (buying pressure) or distribution (selling pressure) trends, customize breakout thresholds, and identify key breakout opportunities. Simple, clear, and effective for volume-based analysis!
How Are Buy Volume and Sell Volume Calculated?
This indicator uses a proportional approach to estimate buy and sell volumes based on price action:
Buy Volume: The portion of total volume where the price is moving upward, representing trades executed at the ask price.
Formula:
Buy Volume = (close - low) / (high - low) * volume
Sell Volume: The portion of total volume where the price is moving downward, representing trades executed at the bid price.
Formula:
Sell Volume = (high - close) / (high - low) * volume
If the high and low prices are the same (flat bar), both buy and sell volumes are set to 0.
Why This Matters
This calculation assumes the close price’s position within the high-to-low range reflects the balance of buying and selling activity:
Close near the high: Most volume is buy volume.
Close near the low: Most volume is sell volume.
Close in the middle: Volume is split between buying and selling.
By breaking down volume in this way, the indicator helps traders identify key trends like accumulation (buying pressure) and distribution (selling pressure), making it a powerful tool for volume-based analysis.
Heat Map Trend (VIDYA MA) [BigBeluga]The Heat Map Trend (VIDYA MA) - BigBeluga indicator is a multi-timeframe trend detection tool based on the Volumetric Variable Index Dynamic Average (VIDYA). This indicator calculates trends using volume momentum, or volatility if volume data is unavailable, and displays the trends across five customizable timeframes. It features a heat map to visualize trends, color-coded candles based on an average of the five timeframes, and a dashboard that shows the current trend direction for each timeframe. This tool helps traders identify trends while minimizing market noise and is particularly useful in detecting faster market changes in shorter timeframes.
🔵 KEY FEATURES & USAGE
◉ Volumetric Variable Index Dynamic Average (VIDYA):
The core of the indicator is the VIDYA moving average, which adjusts dynamically based on volume momentum. If volume data isn't available, the indicator uses volatility instead to smooth the moving average. This allows traders to assess the trend direction with more accuracy, using either volume or volatility, if volume data is not provided, as the basis for the trend calculation.
// VIDYA CALCULATION -----------------------------------------------------------------------------------------
// ATR (Average True Range) and volume calculation
bool volume_check = ta.cum(volume) <= 0
float atrVal = ta.atr(1)
float volVal = volume_check ? atrVal : volume // Use ATR if volume is not available
// @function: Calculate the VIDYA (Volumetric Variable Index Dynamic Average)
vidya(src, len, cmoLen) =>
float cmoVal = ta.sma(ta.cmo(volVal, cmoLen), 10) // Calculate the CMO and smooth it with an SMA
float absCmo = math.abs(cmoVal) // Absolute value of CMO
float alpha = 2 / (len + 1) // Alpha factor for smoothing
var float vidyaVal = 0.0 // Initialize VIDYA
vidyaVal := alpha * absCmo / 100 * src + (1 - alpha * absCmo / 100) * nz(vidyaVal ) // VIDYA formula
◉ Multi-Timeframe Trend Analysis with Heat Map Visualization:
The indicator calculates VIDYA across five customizable timeframes, allowing traders to analyze trends from multiple perspectives. The resulting trends are displayed as a heat map below the chart, where each timeframe is represented by a gradient color. The color intensity reflects the distance of the moving average (VIDYA) from the price, helping traders to identify trends on different timeframes visually. Shorter timeframes in the heat map are particularly useful for detecting faster market changes, while longer timeframes help to smooth out market noise and highlight the general trend.
Trend Direction:
Heat Map Reading:
◉ Dashboard for Multi-Timeframe Trend Directions:
The built-in dashboard displays the trend direction for each of the five timeframes, showing whether the trend is up or down. This quick overview provides traders with valuable insights into the current market conditions across multiple timeframes, helping them to assess whether the market is aligned or if there are conflicting trends. This allows for more informed decisions, especially during volatile periods.
◉ Color-Coded Candles Based on Multi-Timeframe Averages:
Candles are dynamically colored based on the average of the VIDYA across all five timeframes. When the price is in an uptrend, the candles are colored blue, while in a downtrend, they are colored red. If the VIDYA averages suggest a possible trend shift, the candles are displayed in orange to highlight a potential change in momentum. This color coding simplifies the process of identifying the dominant trend and spotting potential reversals.
BTC:
SP500:
◉ UP and DOWN Signals for Trend Direction Changes:
The indicator provides clear UP and DOWN signals to mark trend direction changes. When the average VIDYA crosses above a certain threshold, an UP signal is plotted, indicating a shift to an uptrend. Conversely, when it crosses below, a DOWN signal is shown, highlighting a transition to a downtrend. These signals help traders to quickly identify shifts in market direction and respond accordingly.
🔵 CUSTOMIZATION
VIDYA Length and Momentum Settings:
Adjust the length of the VIDYA moving average and the period for calculating volume momentum. These settings allow you to fine-tune how sensitive the indicator is to market changes, helping to match it with your preferred trading style.
Timeframe Selection:
Select five different timeframes to analyze trends simultaneously. This gives you the flexibility to focus on short-term trends, long-term trends, or a combination of both depending on your trading strategy.
Candle and Heat Map Color Customization:
Change the colors of the candles and heat map to fit your personal preferences. This customization allows you to align the visuals of the indicator with your overall chart setup, making it easier to analyze market conditions.
🔵 CONCLUSION
The Heat Trend (VIDYA MA) - BigBeluga indicator provides a comprehensive, multi-timeframe view of market trends, using VIDYA moving averages that adapt to volume momentum or volatility. Its heat map visualization, combined with a dashboard of trend directions and color-coded candles, makes it an invaluable tool for traders looking to understand both short-term market fluctuations and longer-term trends. By showing the overall market direction across multiple timeframes, it helps traders avoid market noise and focus on the bigger picture while being alert to faster shifts in shorter timeframes.
VRDisplays the volume ratio of the currently analyzed trading pair compared to the BTC/USD trading pair on Coinbase. It uses the ratio of their respective trading volumes and visualizes the data as a histogram (columns) with different colors based on specific thresholds.
Grey backgrounds on weekends.
Volume Rate of Change (VROC)Volume Rate of Change (VROC) is an indicator that calculates the percentage change in trading volume over a specific period, helping analyze market momentum and activity. It is calculated as:
VROC = ((Current Volume - Past Volume) ÷ Past Volume) × 100
This indicator shows changes in market interest. Positive values indicate increasing volume, while negative values signal a decrease. High VROC values often suggest potential trend reversals or breakouts.
Applications:
Breakout Validation: VROC > 200% confirms strong breakouts; below this may signal false moves.
Market Stagnation: VROC < 0% suggests shrinking volume and range-bound markets.
Trend End Alert: A drop below 0% during trends may indicate weakening momentum.
Adjusting for Timeframes: Tailor VROC to timeframes.
Examples:
Daily: VROC(5) compares with last week's same day; VROC(20) with 1 month ago.
Monthly: VROC(12) compares with the same month last year; VROC(1) with last month.
Intraday: VROC(24) (hourly) and VROC(288) (5 minutes) for the same time yesterday.
Adaptive ATR Trailing Stops█ Introduction
This script is based on the average true range (ATR) and has been improved with the HHV or LLV. The script supports the trader to have his stoploss trailed. In this case, the stoploss is dynamic and can be adjusted with each candleclose.
█ What Does This Indicator Do?
The ATR SL Trailing Indicator helps you dynamically adjust your stop-loss levels based on market movements. It uses market volatility to calculate trailing stop-loss levels, ensuring you can secure profits or minimize losses. The indicator creates two lines:
A green/red line for long positions (when you’re betting on prices going up).
A green/red line for short positions (when you’re betting on prices going down).
█ Key Concepts: How Does the Indicator Work?
The Average True Range (ATR) measures market volatility, showing how much the price moves over a specific period.
A high ATR indicates a volatile market (large price swings), while a low ATR indicates a quiet market (smaller price changes).
Why is ATR important? ATR helps dynamically adjust the distance between your stop-loss and the current price. In volatile markets, the stop-loss is placed further away to avoid being triggered by short-term fluctuations. In quieter markets, the stop-loss is set closer to the price.
The HHV is the highest price over a specific period. For long positions, the indicator uses the highest price minus an ATR-based value to determine the stop-loss level.
Why is HHV important? HHV ensures the stop-loss for long positions only moves up when the price reaches new highs. Once the price starts falling, the stop-loss remains unchanged to lock in profits or minimize losses.
The LLV is the lowest price over a specific period. For short positions, the indicator uses the lowest price plus an ATR-based value to determine the stop-loss level.
Why is LLV important? LLV ensures the stop-loss for short positions only moves down when the price reaches new lows. Once the price starts rising, the stop-loss remains unchanged to lock in profits or minimize losses.
█ How Does the Indicator Work?
For Long Positions:
The indicator sets the stop-loss below the current price, based on:
Market volatility (ATR).
The highest price over a specific period (HHV).
The line turns green when the current price is above the stop-loss.
The line turns red when the price drops below the stop-loss, signaling you may need to exit the trade.
For Short Positions:
The indicator sets the stop-loss above the current price, based on:
*Market volatility (ATR).
*The lowest price over a specific period (LLV).
*The line turns green when the current price is below the stop-loss.
*The line turns red when the price moves above the stop-loss, signaling you may need to exit the trade.
█ Advantages of the ATR SL Trailing Indicator
*Dynamic and adaptive: Automatically adjusts stop-loss levels based on market volatility.
*Visual clarity: Green and red lines clearly indicate whether your position is safe or at risk.
*Effective risk management: Helps you lock in profits and minimize losses without the need for constant manual adjustments.
█ When Should You Use This Indicator?
*If you practice trend-based trading and want your stop-losses to automatically adapt to market movements.
*In volatile markets, to avoid being stopped out by short-term fluctuations.
*When you want to implement efficient risk management without manually adjusting your positions.
█ Inputs
The user can set the indicator for both longs and shorts. This is particularly important because the calculation is different. The HHV is used for longs and the LLV for shorts. The user can therefore set the period/length for the ATR on the one hand and the HHV/LLV on the other. He also has a multiplier, which can also be customized. The multiplier multiplies the price change of each individual candle.
█ Color Change
If the SL is trailed and the price breaks a line, the color changes. In this case, it would have executed the SL on an open trade.
Candlestick DataCandlestick Data Indicator
The Candlestick Data indicator provides a comprehensive overview of key metrics for analyzing price action and volume in real-time. This overlay indicator displays essential candlestick data and calculations directly on your chart, offering an all-in-one toolkit for traders seeking in-depth insights.
Key Features:
Price Metrics: View the daily high, low, close, and percentage change.
Volume Insights: Analyze volume, relative volume, and volume buzz for breakout or consolidation signals.
Range Analysis: Includes closing range, distance from low of day (LoD), and percentage change in daily range expansion.
Advanced Metrics: Calculate ADR% (Average Daily Range %), ATR (Average True Range), and % from 52-week high.
Moving Averages: Supports up to four customizable moving averages (EMA or SMA) with distance from price.
Market Context: Displays the sector and industry group for the asset.
This indicator is fully customizable, allowing you to toggle on or off specific metrics to suit your trading style. Designed for active traders, it brings critical data to your fingertips, streamlining decision-making and enhancing analysis.
Perfect for momentum, swing, and day traders looking to gain a data-driven edge!
Monest Value Indicator (MVI)
Description
The Monest Value Indicator (MVI) is a modern oscillator designed to address common issues in traditional oscillators like RSI or MACD. Unlike classical oscillators, the MVI dynamically adjusts to relative price movements and market volatility, providing a transparent and reliable valuation for short-term trading decisions.
This indicator normalizes price data around a consensus line and accounts for market volatility using the Average True Range (ATR). It highlights overbought and oversold conditions, offering a unique perspective for traders.
Key Features
Dynamic Overbought/Oversold Levels : Highlights significant price extremes for better entry and exit signals. Volatility Normalization : Adapts to market conditions, ensuring consistent readings across various assets. Consensus-Based Valuation : Uses a moving average of the midrange price for baseline calculations. No Lag or Stickiness : Reacts promptly to price movements without getting stuck in extreme zones.
How It Works
Consensus Line :
Calculated as a 5-day moving average of the midrange:
Consensus = SMA((High + Low) / 2, 5) .
Offset OHLC Data :
All prices are adjusted relative to the consensus line:
Offset Price = Price - Consensus .
Volatility Normalization :
Adjusted prices are normalized using a 5-day ATR divided by 5:
Normalized Price = Offset Price / (ATR / 5) .
MVI Calculation :
The normalized closing price is plotted as the MVI.
Overbought/Oversold Levels :
Default levels are set at +8 (overbought) and -8 (oversold).
How to Use
Identifying Overbought/Oversold Conditions :
When the MVI crosses above +8 , the asset is overbought, signaling a potential reversal or pullback.
When the MVI drops below -8 , the asset is oversold, indicating a potential bounce or upward move.
Trend Confirmation :
Use the MVI to confirm trends by observing sustained movements above or below zero.
Combine with other trend indicators (e.g., Moving Averages) for robust analysis.
Alerts :
Set alerts for when the MVI crosses overbought or oversold levels to stay informed about potential trading opportunities.
Inputs
ATR Length : Default is 5. Adjust to modify the sensitivity of volatility normalization. Consensus Length : Default is 5. Change to tweak the baseline calculation.
Example
Overbought Signal : MVI exceeds +8 , indicating the asset may reverse from an overvalued position. Oversold Signal : MVI drops below -8 , suggesting the asset may recover from an undervalued state. Flat Market : MVI hovers near zero, indicating price consolidation.
Combined VolumeThis indicator displays the combined volume for all the exchanges listed in the settings menu.
For example, with the default settings, on BTCUSD the indicator will display the current market's volume AND the volume of all other major exchanges listed on TradingView.
The gray indicator value is the current exchange's volume, the colored volume is the combined volume of all other exchanges, allowing you to compare the current exchange's volume to the broad market to give you a better idea of local exchange activity versus broad market activity.
If you want to add more exchange tickers, turn "debug" mode on and a small label will appear in the top right telling you which market type & exchange ticker you're currently on. All exchange tickers must be separated by a comma.
The "Other Exchanges" input setting overrides all other lists allowing you to specify your own exchange list for assets not provided by the default settings (the indicator supports crypto, forex and stocks by default).
Bitcoin Events HistoryWith this tool, you can travel back to Bitcoin’s very first price quote and retrace its entire history directly on your chart. Major events are plotted as labels or markers, providing context for how significant moments shaped Bitcoin’s journey.
Key Features
Comprehensive Event Coverage: From Bitcoin’s inception to the most recent updates.
Custom View: Change label colors, styles, sizes, and fonts using the script’s settings.
Regular Updates: New events are added regularly to keep the history current.
Replay History
Use Bar Replay Mode to step through Bitcoin’s price history and see events unfold in sequence.
Follow the on-screen instructions for a more immersive experience.
Community Contributions
If you notice a significant event missing or misplaced on a particular date, feel free to leave a comment! Your suggestions will be considered for the next update.
To all Bitcoin enthusiasts, traders, and anyone eager to explore the history of cryptocurrency from its inception, I hope you enjoy this indicator :)
Bullish Candlestick with No or Small Bottom Wickthis indicator highlights bullish candles with no lower wick of with a very small lower wick. the idea is that when this occurs, price will sooner or later get back to this area. you could use it for a strategy that sets up shorts just below the bullish candle.
Global Market Strength IndicatorThe Global Market Strength Indicator is a powerful tool for traders and investors. It helps compare the strength of various global markets and indices. This indicator uses the True Strength Index (TSI) to measure market strength.
The indicator retrieves price data for different markets and calculates their TSI values. These values are then plotted on a chart. Each market is represented by a different colored line, making it easy to distinguish between them.
One of the main benefits of this indicator is its comprehensive global view. It covers major indices and country-specific ETFs, giving users a broad perspective on global market trends. This wide coverage allows for easy comparison between different markets and regions.
The indicator is highly customizable. Users can adjust the TSI smoothing period to suit their preferences. They can also toggle the visibility of individual markets. This feature helps reduce chart clutter and allows for more focused analysis.
To use the indicator, apply it to your chart in TradingView. Adjust the settings as needed, and observe the relative positions and movements of the TSI lines. Lines moving higher indicate increasing strength in that market, while lines moving lower suggest weakening markets.
The chart includes reference lines at 0.5 and -0.5. These help identify potential overbought and oversold conditions. Markets with TSI values above 0.5 may be considered strong or potentially overbought. Those below -0.5 may be weak or potentially oversold.
By comparing the movements of different markets, users can identify which markets are leading or lagging. They can also spot potential divergences between related markets. This information can be valuable for identifying sector rotations or shifts in global market sentiment.
A dynamic legend automatically updates to show only the visible markets. This feature improves chart readability and makes it easier to interpret the data.
The Global Market Strength Indicator is a versatile tool that provides valuable insights into global market performance. It helps traders and investors identify trends, compare market performances, and make more informed decisions. Whether you're looking to spot emerging global trends or identify potential trading opportunities, this indicator offers a comprehensive solution for global market analysis.
Upper and Lower bound for pairs/BTCUpper and Lower Bound for Pairs/BTC
This indicator provides dynamic upper and lower boundary levels for cryptocurrency pairs traded against BTC. It uses statistical or technical analysis methods, such as Z-Score, Bollinger Bands, or moving averages, to identify key resistance (upper bound) and support (lower bound) levels.
Key Features:
Dynamic Boundaries: Tracks real-time price fluctuations of selected pairs against BTC, adapting to market conditions.
Market Insights: Helps traders visualize potential overbought (upper bound) and oversold (lower bound) zones for pairs like ETH/BTC, DOGE/BTC, and others.
Customizable Settings: Allows users to configure lookback periods, standard deviations, or other parameters for boundary calculations.
Decision Support: Assists in identifying reversal or breakout points to refine entry and exit strategies.
This tool is ideal for traders seeking to optimize risk management and spot opportunities in BTC pair markets.
Volume Distribution Before/After Top
Description
This script visualizes the distribution of volume before and after a price peak within a specified time interval. The green area represents the volume accumulated before the peak, and the red area represents the volume accumulated after the peak. The script also calculates and displays the volume-weighted average price (VWAP) on each side of the peak with a dotted line and a label.
The key features include:
Volume Visualization: Transparent green and red bars indicate volume fractions before and after the peak.
VWAP Markers: Centered labels with VWAP values are plotted above the corresponding levels.
Interactive Inputs: Define the start and end points of the analysis interval using customizable anchor times.
This tool is ideal for traders who want to analyze how volume dynamics are distributed around key price levels. It can help identify potential zones of support and resistance and improve the understanding of market behavior in response to volume accumulation.
Instructions
Select the start and end anchor times using the input fields.
Observe the volume distribution and VWAP levels on the chart.
Use the visual data to make more informed trading decisions.
S&P 500 Sector StrengthsThe "S&P 500 Sector Strengths" indicator is a sophisticated tool designed to provide traders and investors with a comprehensive view of the relative performance of various sectors within the S&P 500 index. This indicator utilizes the True Strength Index (TSI) to measure and compare the strength of different sectors, offering valuable insights into market trends and sector rotations.
At its core, the indicator calculates the TSI for each sector using price data obtained through the request.security() function. The TSI, a momentum oscillator, is computed using a user-defined smoothing period, allowing for customization based on individual preferences and trading styles. The resulting TSI values for each sector are then plotted on the chart, creating a visual representation of sector strengths.
To use this indicator effectively, traders should focus on comparing the movements of different sector lines. Sectors with lines moving higher are showing increasing strength, while those with descending lines are exhibiting weakness. This comparative analysis can help identify potential investment opportunities and sector rotations. Additionally, when multiple sector lines move in tandem, it may signal a broader market trend.
The indicator includes dashed lines at 0.5 and -0.5, serving as reference points for overbought and oversold conditions. Sectors with TSI values above 0.5 might be considered overbought, suggesting caution, while those below -0.5 could be viewed as oversold, potentially indicating buying opportunities.
One of the key advantages of this indicator is its flexibility. Users can toggle the visibility of individual sectors and customize their colors, allowing for a tailored analysis experience. This feature is particularly useful when focusing on specific sectors or reducing chart clutter for clearer visualization.
The indicator's ability to provide a comprehensive overview of all major S&P 500 sectors in a single chart is a significant benefit. This consolidated view enables quick comparisons and helps in identifying relative strengths and weaknesses across sectors. Such insights can be invaluable for portfolio allocation decisions and in spotting emerging market trends.
Moreover, the dynamic legend feature enhances the indicator's usability. It automatically updates to display only the visible sectors, improving chart readability and interpretation.
By leveraging this indicator, market participants can gain a deeper understanding of sector dynamics within the S&P 500. This enhanced perspective can lead to more informed decision-making in sector allocation strategies and individual stock selection. The indicator's ability to potentially detect early trends by comparing sector strengths adds another layer of value, allowing users to position themselves ahead of broader market movements.
In conclusion, the "S&P 500 Sector Strengths" indicator is a powerful tool that combines technical analysis with sector comparison. Its user-friendly interface, customizable features, and comprehensive sector coverage make it an valuable asset for traders and investors seeking to navigate the complexities of the S&P 500 market with greater confidence and insight.
CandelaCharts - Volume Imbalance (VI) 📝 Overview
Volume Imbalance occurs when there’s a noticeable gap between the bodies of two consecutive candlesticks, with no overlap between them. While the wicks of the candles might intersect, the candle bodies remain entirely separate. This phenomenon often signifies that the algorithm driving market activity did not evenly distribute prices between these two levels, leaving behind a small Fair Value Gap (FVG).
A Bullish Volume Imbalance forms when the body of a green candlestick gaps above the previous candle’s body, with no overlap, indicating strong upward momentum and insufficient sell-side liquidity.
A Bearish Volume Imbalance forms when the body of a red candlestick gaps below the previous candle’s body, with no overlap, signaling intense downward pressure and a lack of buy-side liquidity.
This indicator can automatically identify volume imbalances by scanning candlestick patterns and detecting gaps between consecutive candle bodies. These volume imbalances act as price magnets, often attracting the market back to fill the gap before resuming its original direction. Recognizing and leveraging these gaps can be a powerful tool in technical analysis for predicting price movements.
📦 Features
MTF
Mitigation
Consequent Encroachment
Threshold
Hide Overlap
Advanced Styling
⚙️ Settings
Show: Controls whether FVGs are displayed on the chart.
Show Last: Sets the number of FVGs you want to display.
Length: Determines the length of each FVG.
Mitigation: Highlights when an FVG has been touched, using a different color without marking it as invalid.
Timeframe: Specifies the timeframe used to detect FVGs.
Threshold: Sets the minimum gap size required for FVG detection on the chart.
Show Mid-Line: Configures the midpoint line's width and style within the FVG. (Consequent Encroachment - CE)
Show Border: Defines the border width and line style of the FVG.
Hide Overlap: Removes overlapping FVGs from view.
Extend: Extends the FVG length to the current candle.
Elongate: Fully extends the FVG length to the right side of the chart.
⚡️ Showcase
Simple
Mitigated
Bordered
Consequent Encroachment
Extended
🚨 Alerts
This script provides alert options for all signals.
Bearish Signal
A bearish alert triggers when a red candlestick gaps below the previous body, signaling downward pressure.
Bullish Signal
A bullish alert triggers when a green candlestick gaps above the previous body, indicating upward momentum.
⚠️ Disclaimer
Trading involves significant risk, and many participants may incur losses. The content on this site is not intended as financial advice and should not be interpreted as such. Decisions to buy, sell, hold, or trade securities, commodities, or other financial instruments carry inherent risks and are best made with guidance from qualified financial professionals. Past performance is not indicative of future results.
[EmreKb] Supertrend FakeoutSupertrend Fakeout
This script is an enhanced version of the classic Supertrend indicator. It incorporates an additional feature that ensures trend reversals are more reliable by introducing a Fakeout Index Limit and a Fakeout ATR Mult. This helps avoid false trend changes that could occur due to short-term price fluctuations or market noise.
How It Works:
The Supertrend indicator uses Average True Range (ATR) and a multiplier to determine the direction of the trend. When the price is above the Supertrend line, it indicates an uptrend; when the price is below the Supertrend line, it signals a downtrend.
This version goes a step further by adding the following checks before confirming a trend reversal:
The script will monitor if the price moves "Fakeout ATR Mult" ATR away from the Supertrend line after a potential breach. This distance helps ensure that the trend change is significant and not just a minor fluctuation.
In addition, the script checks the price action for a specific number of bars, which is controlled by the Fakeout Index Limit. This limit determines how many bars the price must remain below (for a downtrend) or above (for an uptrend) the Supertrend line before the trend is officially reversed.
ETF-Benchmark AnalyzerHave you ever wondered which ETF performs the best? Which one is the most volatile, or which one has the smallest drawdown?
This Pine Script™ "ETF-Benchmark Analyzer" compares the performance of an ETF (such as SPY, the S&P 500 ETF) against a benchmark, which can also be adjusted by the user. It provides several key financial metrics, such as:
Performance (%): Displays the total return over a specified lookback period (e.g., 1 year). It compares the performance of the ETF against the benchmark and shows the difference.
Alpha (%): Measures the excess return of the ETF over the expected return, which is calculated using the benchmark’s return. Positive alpha indicates that the ETF has outperformed the benchmark, while negative alpha suggests underperformance. This metric is important because it isolates performance that cannot be explained by exposure to the benchmark's movements.
Sharpe Ratio: A risk-adjusted measure of return. It is calculated by dividing the excess return of the ETF (above the risk-free rate) by its standard deviation (volatility). A higher Sharpe ratio indicates better risk-adjusted returns. The Sharpe ratio is calculated for both the ETF and the benchmark, and their difference is displayed as well.
Drawdown: The percentage decrease from the highest price to the lowest price over the lookback period. This is a critical measure of risk, as it shows the largest potential loss an investor might face during a specific period.
Beta: Measures the ETF’s sensitivity to movements in the benchmark. A beta of 1 means the ETF moves in line with the benchmark; greater than 1 means it is more volatile, while less than 1 means it is less volatile.
These metrics provide a holistic view of the ETF’s performance compared to the benchmark, allowing traders to assess the risk and return profile more effectively.
Scientific Sources
Sharpe Ratio: Sharpe, W. F. (1994). The Sharpe Ratio. Journal of Portfolio Management, 21(1), 49-58. This paper defines and develops the Sharpe ratio as a measure of risk-adjusted return.
Alpha and Beta: Jensen, M. C. (1968). The Performance of Mutual Funds in the Period 1945–1964. The Journal of Finance, 23(2), 389-416. This paper discusses the concepts of alpha and beta in the context of mutual fund performance.
supertrendLibrary "supertrend"
supertrend : Library dedicated to different variations of supertrend
supertrend_atr(length, multiplier, atrMaType, source, highSource, lowSource, waitForClose, delayed)
supertrend_atr: Simple supertrend based on atr but also takes into consideration of custom MA Type, sources
Parameters:
length (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
delayed (simple bool) : : if set to true lags supertrend atr stop based on target levels.
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
supertrend_bands(bandType, maType, length, multiplier, source, highSource, lowSource, waitForClose, useTrueRange, useAlternateSource, alternateSource, sticky)
supertrend_bands: Simple supertrend based on atr but also takes into consideration of custom MA Type, sources
Parameters:
bandType (simple string) : : Type of band used - can be bb, kc or dc
maType (simple string) : : Moving Average type for Bands. This can be sma, ema, hma, rma, wma, vwma, swma
length (simple int) : : Band Length
multiplier (float) : : Std deviation or ATR multiplier for Bollinger Bands and Keltner Channel
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
useTrueRange (simple bool) : : Used for Keltner channel. If set to false, then high-low is used as range instead of true range
useAlternateSource (simple bool) : - Custom source is used for Donchian Chanbel only if useAlternateSource is set to true
alternateSource (float) : - Custom source for Donchian channel
sticky (simple bool) : : if set to true borders change only when price is beyond borders.
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
supertrend_zigzag(length, history, useAlternativeSource, alternativeSource, source, highSource, lowSource, waitForClose, atrlength, multiplier, atrMaType)
supertrend_zigzag: Zigzag pivot based supertrend
Parameters:
length (simple int) : : Zigzag Length
history (simple int) : : number of historical pivots to consider
useAlternativeSource (simple bool)
alternativeSource (float)
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
zupertrend(length, history, useAlternativeSource, alternativeSource, source, highSource, lowSource, waitForClose, atrlength, multiplier, atrMaType)
zupertrend: Zigzag pivot based supertrend
Parameters:
length (simple int) : : Zigzag Length
history (simple int) : : number of historical pivots to consider
useAlternativeSource (simple bool)
alternativeSource (float)
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
zsupertrend(zigzagpivots, history, source, highSource, lowSource, waitForClose, atrMaType, atrlength, multiplier)
zsupertrend: Same as zigzag supertrend. But, works on already calculated array rather than Calculating fresh zigzag
Parameters:
zigzagpivots (array) : : Precalculated zigzag pivots
history (simple int) : : number of historical pivots to consider
source (float) : : Default is close. Can Chose custom source
highSource (float) : : Default is high. Can also use close price for both high and low source
lowSource (float) : : Default is low. Can also use close price for both high and low source
waitForClose (simple bool) : : Considers source for direction change crossover if checked. Else, uses highSource and lowSource.
atrMaType (simple string) : : Moving Average type for ATR calculation. This can be sma, ema, hma, rma, wma, vwma, swma
atrlength (simple int) : : ATR Length
multiplier (simple float) : : ATR Multiplier
Returns: dir : Supertrend direction
supertrend : BuyStop if direction is 1 else SellStop
taLibrary "ta"
Collection of all custom and enhanced TA indicators
ma(source, maType, length)
returns custom moving averages
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
Returns: moving average for the given type and length
atr(maType, length)
returns ATR with custom moving average
Parameters:
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
Returns: ATR for the given moving average type and length
atrpercent(maType, length)
returns ATR as percentage of close price
Parameters:
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
Returns: ATR as percentage of close price for the given moving average type and length
bb(source, maType, length, multiplier, sticky)
returns Bollinger band for custom moving average
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
multiplier (float) : Standard Deviation multiplier
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Bollinger band with custom moving average for given source, length and multiplier
bbw(source, maType, length, multiplier, sticky)
returns Bollinger bandwidth for custom moving average
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
multiplier (float) : Standard Deviation multiplier
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Bollinger Bandwidth for custom moving average for given source, length and multiplier
bpercentb(source, maType, length, multiplier, sticky)
returns Bollinger Percent B for custom moving average
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
multiplier (float) : Standard Deviation multiplier
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Bollinger Percent B for custom moving average for given source, length and multiplier
kc(source, maType, length, multiplier, useTrueRange, sticky)
returns Keltner Channel for custom moving average
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
multiplier (float) : Standard Deviation multiplier
useTrueRange (simple bool) : - if set to false, uses high-low.
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Keltner Channel for custom moving average for given souce, length and multiplier
kcw(source, maType, length, multiplier, useTrueRange, sticky)
returns Keltner Channel Width with custom moving average
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
multiplier (float) : Standard Deviation multiplier
useTrueRange (simple bool) : - if set to false, uses high-low.
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Keltner Channel Width for custom moving average
kpercentk(source, maType, length, multiplier, useTrueRange, sticky)
returns Keltner Channel Percent K Width with custom moving average
Parameters:
source (float) : Moving Average Source
maType (simple string) : Moving Average Type : Can be sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
length (simple int) : Moving Average Length
multiplier (float) : Standard Deviation multiplier
useTrueRange (simple bool) : - if set to false, uses high-low.
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Keltner Percent K for given moving average, source, length and multiplier
dc(length, useAlternateSource, alternateSource, sticky)
returns Custom Donchian Channel
Parameters:
length (simple int) : - donchian channel length
useAlternateSource (simple bool) : - Custom source is used only if useAlternateSource is set to true
alternateSource (float) : - Custom source
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Donchian channel
dcw(length, useAlternateSource, alternateSource, sticky)
returns Donchian Channel Width
Parameters:
length (simple int) : - donchian channel length
useAlternateSource (simple bool) : - Custom source is used only if useAlternateSource is set to true
alternateSource (float) : - Custom source
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Donchian channel width
dpercentd(length, useAlternateSource, alternateSource, sticky)
returns Donchian Channel Percent of price
Parameters:
length (simple int) : - donchian channel length
useAlternateSource (simple bool) : - Custom source is used only if useAlternateSource is set to true
alternateSource (float) : - Custom source
sticky (simple bool) : - sticky boundaries which will only change when value is outside boundary.
Returns: Donchian channel Percent D
oscillatorRange(source, method, highlowLength, rangeLength, sticky)
oscillatorRange - returns Custom overbought/oversold areas for an oscillator input
Parameters:
source (float) : - Osillator source such as RSI, COG etc.
method (simple string) : - Valid values for method are : sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
highlowLength (simple int) : - length on which highlow of the oscillator is calculated
rangeLength (simple int) : - length used for calculating oversold/overbought range - usually same as oscillator length
sticky (simple bool) : - overbought, oversold levels won't change unless crossed
Returns: Dynamic overbought and oversold range for oscillator input
oscillator(type, length, shortLength, longLength, source, highSource, lowSource, method, highlowLength, sticky)
oscillator - returns Choice of oscillator with custom overbought/oversold range
Parameters:
type (simple string) : - oscillator type. Valid values : cci, cmo, cog, mfi, roc, rsi, stoch, tsi, wpr
length (simple int) : - Oscillator length - not used for TSI
shortLength (simple int) : - shortLength only used for TSI
longLength (simple int) : - longLength only used for TSI
source (float) : - custom source if required
highSource (float) : - custom high source for stochastic oscillator
lowSource (float) : - custom low source for stochastic oscillator
method (simple string) : - Valid values for method are : sma, ema, hma, rma, wma, vwma, swma, highlow, linreg, median
highlowLength (simple int) : - length on which highlow of the oscillator is calculated
sticky (simple bool) : - overbought, oversold levels won't change unless crossed
Returns: Oscillator value along with dynamic overbought and oversold range for oscillator input
TTM Grid StrategyThis strategy uses a TTM (based on EMAs of highs and lows) to determine the market's trend direction.
It then deploys a grid trading system around a dynamically updated base price, with the grid's direction and levels adjusting based on the trend.
Trades are executed as the price crosses the predefined grid levels, with the strategy risking a set percentage of equity per trade.
Core Strategy Logic:
TTM State Calculation (ttmState() function):
* Calculates two EMAs based on the `ttmPeriod`: one for the lows (`lowMA`) and one for the highs (`highMA`).
* Defines two threshold levels: `lowThird` (1/3 from the bottom) and `highThird` (2/3 from the bottom) of the range between `highMA` and `lowMA`.
* Returns the current TTM state as an integer:
+ `1` if the close price is above `highThird` (indicating an uptrend).
+ `0` if the close price is below `lowThird` (indicating a downtrend).
+ `-1` if the close price is between `lowThird` and `highThird` (indicating a neutral state).