Volume_volatility_24)📊 TechData24h (24h Technical Metrics)
This TradingView indicator displays and alerts on key daily metrics for the current trading instrument, including:
Volume (24h, Yesterday, Day Before Yesterday)
Price Change (%) over 24h
Volatility (%) over 24h
Volume Change (%) vs Yesterday and Day Before
Correlation with BTC (custom symbol & timeframe)
🔔 Custom Alerts:
You can define your own percentage thresholds for both positive and negative changes. Alerts will trigger when:
Price change exceeds or drops below a set threshold
Volatility crosses a threshold
Volume increases or decreases significantly
Correlation with BTC moves beyond limits
📋 Table Dashboard:
All selected metrics are shown in a 2-column dashboard at the bottom left of the chart, with color-coded values based on increase/decrease.
Cerca negli script per "btc期权交割时间"
Master Litecoin Network Address Value Model BandThe Master Litecoin Network Address Value Model Band indicator compares Litecoin (LTC) and Bitcoin (BTC) network address activity to estimate LTC's value relative to BTC's price. It plots a band using new and total address ratios, adjusted by supply differences. Note: It excludes Litecoin's MWEB addresses, likely undervaluing the Litecoin network over time as MWEB adoption grows.
Altseason Index (Top 10)### Altseason Index (Top 10)
#### Overview
The "Altseason Index (Top 10)" indicator identifies whether the market is in an altseason (altcoins outperforming Bitcoin) or a Bitcoin season. It analyzes the performance of 9 top altcoins (ETH, BNB, ADA, XRP, SOL, DOT, AVAX, SHIB, LINK) against Bitcoin over 90 days, inspired by the Blockchain Center Altcoin Season Index.
#### How It Works
- Calculates the 90-day price change for BTC and 9 altcoins.
- Counts how many altcoins outperform BTC.
- Index = (number of outperforming altcoins / 9) * 100.
- >75%: Altseason (green zone).
- <25%: Bitcoin season (red zone).
- 25–75%: Neutral.
#### Visualization
- Blue line: Index value (0–100).
- Green line at 75: Altseason threshold.
- Red line at 25: Bitcoin season threshold.
- Green/red background fill for altseason/BTC season zones.
#### Usage
Add to your chart and interpret:
- Above 75: Consider altcoin investments.
- Below 25: Focus on Bitcoin.
Ensure tickers match your exchange (e.g., "BTCUSD" or "BINANCE:BTCUSDT").
#### Notes
- Limited to 9 altcoins due to TradingView's request.security() limit.
- Best on daily charts but adaptable to other timeframes.
TrendSync Pro (SMC)📊 TrendSync Pro (SMC) – Advanced Trend-Following Strategy with HTF Alignment
Created by Shubham Singh
🔍 Strategy Overview
TrendSync Pro (SMC) is a precision-based smart trend-following strategy inspired by Smart Money Concepts (SMC). It combines: Real-time pivot-based trendline detection
Higher Time Frame (HTF) filtering to align trades with dominant trend
Risk management via adjustable Stop Loss (SL) and Take Profit (TP)
Directional control — trade only bullish, bearish, or both setups
Realistic backtesting using commissions and slippage
Pre-optimized profiles for scalpers, intraday, swing, and long-term traders
🧠 How It Works:
🔧 Strategy Settings Image:
beeimg.com
The strategy dynamically identifies trend direction by using swing high/low pivots. When a new pivot forms: It draws a trendline from the last significant pivot
Detects whether the trend is up (based on pivot lows) or down (based on pivot highs)
Waits for price to break above/below the trendline
Confirms with HTF price direction (HTF close > previous HTF close = bullish)
Only then it triggers a long or short trade
It exits either at TP, SL, or a manual trendline break
🛠️ Adjustable Parameters:
Trend Period: Length for pivot detection (affects sensitivity of trendlines)
HTF Timeframe: Aligns lower timeframe entries with higher timeframe direction
SL% and TP%: Customize your risk-reward profile
Commission & Slippage: Make backtests more realistic
Trade Direction: Choose to trade: Long only, Short only, or Both
🎛️ Trade Direction Control:
In settings, you can choose: Bullish Only: Executes only long entries
Bearish Only: Executes only short entries
Both: Executes both long and short entries when conditions are met
This allows you to align trades with your own market bias or external analysis.
📈 Entry Logic: Long Entry:
• Price crosses above trendline
• HTF is bullish (HTF close > previous close)
• Latest pivot is a low (trend is considered up)
Short Entry:
• Price crosses below trendline
• HTF is bearish (HTF close < previous close)
• Latest pivot is a high (trend is considered down)
📉 Exit Logic: Hit Take Profit or Stop Loss
Manual trendline invalidation: If price crosses opposite of the trend direction
⏰ Best Timeframes & Recommended Settings:
Scalping (1m to 5m):
HTF = 15m | Trend Period = 7
SL = 0.5% | TP = 1% to 2%
Intraday (15m to 30m):
HTF = 1H | Trend Period = 10–14
SL = 0.75% | TP = 2% to 3%
6 Hour Trading (30m to 1H):
HTF = 4H | Trend Period = 20
SL = 1% | TP = 4% to 6%
Swing Trading (4H to 1D):
HTF = 1D | Trend Period = 35
SL = 2% | TP = 8% to 12%
Long-Term Investing (1D+):
HTF = 1W | Trend Period = 50
SL = 3% | TP = 15%+
Note: These are recommended base settings. Adjust based on volatility, asset class, or personal trading style.
📸 Testing Note:
beeimg.com
TradingView limits test length to 20k bars (~40 trades on smaller timeframes). To show long-term results: Test on higher timeframes (e.g., 1H, 4H, 1D)
Share images of backtest result in description
Host longer test result screenshots on Imgur or any public drive
📍 Asset Behavior Insight:
This strategy works on multiple assets, including BTC, ETH, etc.
Performance varies by trend strength:
Sometimes BTC performs better than ETH
Other times ETH gives better results
That’s normal as both assets follow different volatility and trend behavior
It’s a trend-following setup. Longer and clearer the trend → better the results.
✅ Best Practices: Avoid ranging markets
Use proper SL/TP for each timeframe
Use directional filter if you already have a directional bias
Always forward test before going live
⚠️ Trading Disclaimer:
This script is for educational and backtesting purposes only. Trading involves risk. Always use risk management and never invest more than you can afford to lose.
Supertrend + MACD CrossoverKey Elements of the Template:
Supertrend Settings:
supertrendFactor: Adjustable to control the sensitivity of the Supertrend.
supertrendATRLength: ATR length used for Supertrend calculation.
MACD Settings:
macdFastLength, macdSlowLength, macdSignalSmoothing: These settings allow you to fine-tune the MACD for better results.
Risk Management:
Stop-Loss: The stop-loss is based on the ATR (Average True Range), a volatility-based indicator.
Take-Profit: The take-profit is based on the risk-reward ratio (set to 3x by default).
Both stop-loss and take-profit are dynamic, based on ATR, which adjusts according to market volatility.
Buy and Sell Signals:
Buy Signal: Supertrend is bullish, and MACD line crosses above the Signal line.
Sell Signal: Supertrend is bearish, and MACD line crosses below the Signal line.
Visual Elements:
The Supertrend line is plotted in green (bullish) and red (bearish).
Buy and Sell signals are shown with green and red triangles on the chart.
Next Steps for Optimization:
Backtesting:
Run backtests on BTC in the 5-minute timeframe and adjust parameters (Supertrend factor, MACD settings, risk-reward ratio) to find the optimal configuration for the 60% win ratio.
Fine-Tuning Parameters:
Adjust supertrendFactor and macdFastLength to find more optimal values based on BTC's market behavior.
Tweak the risk-reward ratio to maximize profitability while maintaining a good win ratio.
Evaluate Market Conditions:
The performance of the strategy can vary based on market volatility. It may be helpful to evaluate performance in different market conditions or pair it with a filter like RSI or volume.
Let me know if you'd like further tweaks or explanations!
AI Trend Momentum SniperThe AI Trend Momentum Sniper is a powerful technical analysis tool designed for day trading. This strategy combines multiple momentum and trend indicators to identify high-probability entry and exit points. The indicator utilizes a combination of Supertrend, MACD, RSI, ATR (Average True Range), and On-Balance Volume (OBV) to generate real-time signals for buy and sell opportunities.
Key Features:
Supertrend for detecting market direction (bullish or bearish).
MACD for momentum confirmation, highlighting changes in market momentum.
RSI to filter out overbought/oversold conditions and ensure high-quality trades.
ATR as a volatility filter to adjust for changing market conditions.
OBV (On-Balance Volume) to confirm volume strength and trend validity.
Dynamic Stop-Loss & Take-Profit based on ATR to manage risk and lock profits.
This indicator is tailored for intraday traders looking for quick market moves, especially in volatile and high liquidity assets like Bitcoin (BTC) and Ethereum (ETH). It helps traders capture short-term trends with efficient risk management tools.
How to Apply:
Set Your Chart: Apply the AI Trend Momentum Sniper to a 5-minute (M5) or 15-minute (M15) chart for optimal performance.
Buy Signal: When the indicator generates a green arrow below the bar, it indicates a buy signal based on positive trend and momentum alignment.
Sell Signal: A red arrow above the bar signals a sell condition when the trend and momentum shift bearish.
Stop-Loss and Take-Profit: The indicator automatically calculates dynamic stop-loss and take-profit levels based on the ATR value for each trade, ensuring proper risk management.
Alerts: Set up custom alerts for buy or sell signals, and get notified instantly when opportunities arise.
Best Markets for Use:
BTC/USDT, ETH/USDT – High liquidity and volatility.
Major altcoins with sufficient volume.
Avoid using it on low-liquidity assets where price action may become erratic.
Timeframes:
This indicator is best suited for lower timeframes (5-minute to 15-minute charts) to capture quick price movements in trending markets.
Aggregated Spot vs Perp Volume (% Change)Aggregated Spot vs Perp Volume (% Change)
Description
The "Aggregated Spot vs Perp Volume (% Change)" indicator helps crypto traders compare the momentum of spot and perpetual futures (perp) trading volumes across 12 major exchanges. It calculates the percentage change in volume from one bar to the next, highlighting divergences and showing which market—spot or perp—is leading a move. By focusing on relative changes, it eliminates the issue of absolute volume differences, making trends clear.
The indicator aggregates data from Binance, Bybit, OKX, Coinbase, Bitget, MEXC, Phemex, BingX, WhiteBIT, BitMEX, Kraken, and HTX. Users can toggle exchanges and choose to measure volume in coin units (e.g., BTC) or USD.
How It Works
Volume Aggregation:
Fetches spot and perp volume data for the selected crypto (e.g., BTC) from up to 12 exchanges.
Spot volume is included only if perp volume is available for the same pair, ensuring consistency.
Volume can be measured in coin units or USD (volume × spot price).
Percentage Change:
Calculates the percentage change in spot and perp volumes from the previous bar:
Percentage Change = ((Current Volume − Previous Volume) / Previous Volume) ×100
This focuses on relative momentum, making spot and perp volumes directly comparable.
Visualization:
Spot volume % change is plotted as a blue line, and perp volume % change as a red line, both with a linewidth of 1.
Who Should Use It
Crypto Traders: To understand spot vs. perp market dynamics across exchanges.
Momentum Traders: To spot which market is driving price moves via volume divergences.
Scalpers/Day Traders: For identifying short-term shifts in market activity.
Analysts: To study liquidity and sentiment in crypto markets.
How to Use It
Blue line: Spot volume % change.
Red line: Perp volume % change.
Look for divergences (e.g., a sharp rise in the red line but not the blue line suggests perp markets are leading).
Combine with Price:
Use alongside price charts to confirm trends or spot potential reversals.
Context
Spot markets reflect actual asset trading, while perp markets, with leverage, attract speculative activity and often show higher volumes. This indicator uses percentage change to compare their momentum, helping traders identify market leadership and divergences. For example, a 50% increase in both spot and perp volumes plots at the same level, making it easy to see relative shifts across exchanges.
Session Profile AnalyzerWhat’s This Thing Do?
Hey there, trader! Meet the Session Profile Analyzer (SPA) your new go-to pal for breaking down market action within your favorite trading sessions. It’s an overlay indicator that mixes Rotation Factor (RF), Average Subperiod Range (ASPR), Volume Value Area Range (VOLVAR), and TPO Value Area Range (TPOVAR) into one tidy little toolkit. Think of it as your market vibe checker momentum, volatility, and key levels, all served up with a grin.
The Cool Stuff It Does:
Rotation Factor (RF) : Keeps tabs on whether the market’s feeling bullish, bearish, or just chilling. It’s like a mood ring for price action shows “UP ↑,” “DOWN ↓,” or “NONE ↔.”
ASPR : Averages out the range of your chosen blocks. Big swings? Tiny wiggles? This tells you the session’s energy level.
VOLVAR : Dives into volume to find where the action’s at, with a smart twist it adjusts price levels based on the session’s size and tiny timeframe moves (capped at 128 so your chart doesn’t cry).
TPOVAR : Grabs lower timeframe data to spot where price hung out the most, TPO-style. Value zones, anyone?
Dynamic Precision : No ugly decimal overload SPA matches your asset’s style (2 decimals for BTC, 5 for TRX, you get it).
How to Play With It:
Session Start/End : Pick your trading window (say, 0930-2200) and a timezone (America/New_York, or wherever you’re at).
Block Size : Set the chunk size for RF and ASPR like 30M if you’re into half-hour vibes.
Value Area Timeframe : Go micro with something like 1S for VOLVAR and TPOVAR precision.
Label : Size it (small to huge), color it (white, neon pink, whatever), and slap it where you want (start, mid, end).
How It All Works (No PhD Required):
RF : Imagine breaking your session into blocks (via Block Size). For each block, SPA checks if the high beats the last high (+1) or not (0), and if the low dips below the last low (-1) or not (0). Add those up, and boom positive RF means upward vibes, negative means downward, near zero is “meh.” Use it to catch trends or spot when the market’s napping.
ASPR : Takes those same blocks, measures high-to-low range each time, and averages them. It’s your volatility pulse big ASPR = wild ride, small ASPR = snooze fest. Great for sizing up session action.
VOLVAR : Here’s the fun part. It takes the session’s full range (high minus low), divides it by the average range of your tiny Value Area Timeframe bars (e.g., 1S), and picks a sensible number of price levels capped at 128 so it doesn’t overthink. Then it bins volume into those levels, finds the busiest price (POC), and grows a 70% value area around it. Perfect for spotting where the big players parked their cash.
TPOVAR : Grabs midpoints from those tiny timeframe bars, sorts them, and snips off the top and bottom 15% to find the 70% “value zone” where price chilled the most. Think of it as the market’s comfort zone great for support/resistance hunting.
Why You’ll Like It:
Whether you’re scalping crypto, swinging forex, or dissecting stocks, SPA’s got your back. Use RF to catch momentum shifts like jumping on an “UP ↑” trend or fading a “DOWN ↓” exhaustion. ASPR’s your secret weapon for sizing up trades: a big ASPR (say, 100 on BTC) means you can aim for juicy targets (like 1-2x ASPR) or set invalidations tight when it’s tiny (e.g., 0.001 on TRX) to dodge chop. VOLVAR and TPOVAR are your level-finders nail those key zones where price loves to bounce or break, perfect for entries, stops, or profit grabs. It’s like having a trading co-pilot who’s chill but knows their stuff.
Heads-Up:
Load enough history for those micro timeframes to shine (1S needs some bars to work with).
Keeps things light won’t bog down your chart even with decent-sized sessions.
Let’s Roll:
Slap SPA on your chart, tweak it to your style, and watch it spill the beans on your session. Happy trading, fam may your pips be plenty and your losses few!
ADX + DMI (HMA Version)📝 Description (What This Indicator Does)
🚀 ADX + DMI (HMA Version) is a trend strength oscillator that enhances the traditional ADX by using the Hull Moving Average (HMA) instead of EMA.
✅ This results in a much faster and more responsive trend detection while filtering out choppy price action.
🎯 What This Indicator Does:
1️⃣ Measures Trend Strength – ADX shows when a trend is strong or weak.
2️⃣ Identifies Trend Direction – DI+ (Green) shows bullish momentum, DI- (Red) shows bearish momentum.
3️⃣ Uses Hull Moving Average (HMA) for Faster Signals – Removes lag and reacts faster to trend changes.
4️⃣ Reduces False Signals – Traditional ADX lags behind, but this version reacts quickly to reversals.
5️⃣ Good for Scalping & Day Trading – Especially for BTC 5-min and lower timeframes.
⚙ Indicator Inputs (Customization)
Input Name Example Value Purpose
ADX Length 14 Defines the smoothing for the ADX value.
DI Length 14 Defines how DI+ and DI- are calculated.
HMA Length 24 Hull Moving Average smoothing for ADX & DI+.
Trend Threshold 25 The level above which ADX confirms a strong trend.
📌 You can adjust these settings to optimize for different assets and timeframes.
🎯 Trading Rules & How to Use It
✅ How to Identify a Strong Trend:
When ADX (Blue Line) is above 25→ A strong trend is in play.
When ADX is below 25 → The market is choppy or ranging.
✅ How to Use DI+ and DI- for Trend Direction:
If DI+ (Green) is above DI- (Red), the market is in an uptrend.
If DI- (Red) is above DI+ (Green), the market is in a downtrend.
✅ How to Confirm Entries & Exits:
1️⃣ Enter Long when DI+ crosses above DI- while ADX is rising above 25.
2️⃣ Enter Short when DI- crosses above DI+ while ADX is rising above 25.
3️⃣ Avoid trading when ADX is below 25 – the market is in a choppy range.
This should not be used as a stand alone oscillator. Trading takes skill and is risky. Use at your own risk.
This is not advise on how to trade, these are just examples of how I use the oscillator. Trade at your own risk.
You can put this on your chart versus the tradingview adx and you can adjust the settings to see the difference. This was optimized for btc on the 5 min chart. You can adjust for your trading strategy.
Panic Drop Bitcoin 5 EMA Buy & Sell SignalPanic Drop BTC 5 EMA
What It Does:
This indicator tracks Bitcoin’s price against a 5-period Exponential Moving Average (EMA) to deliver simple buy and sell signals. A green arrow below the candle signals a buy when Bitcoin closes above the 5-EMA, while a red arrow above signals a sell when it closes below. Perfect for spotting Bitcoin’s momentum shifts—whether you’re a newbie, crypto trader, or short on time.
Key Features:
Plots a customizable 5-EMA (default: blue line).
Buy () and Sell () signals on crossovers/crossunders.
Optional background highlight: green (above EMA), red (below).
Alerts for buy/sell triggers.
Fully adjustable: timeframe, colors, signal toggles.
How to Use It:
Add to your BTC/USD chart (works on any timeframe—daily default recommended).
Watch for green arrows (buy) below candles and red arrows (sell) above.
Customize via settings:
Adjust EMA period (default: 5).
Set timeframe (e.g., "D" for daily, "1H" for hourly).
Change colors or toggle signals/background off.
Set alerts: Right-click a signal > "Add Alert" > Select "Buy Signal" or "Sell Signal."
Trade smart: Use signals to catch Bitcoin dips (e.g., buy below $100K) or exits.
Why It’s Great:
Beginners: Clear arrows simplify decisions.
Crypto Traders: 5-EMA catches Bitcoin’s fast moves.
Busy Investors: Signals save time—no deep analysis needed.
Created by Timothy Assi (Panic Drop), eToro’s elite investor. Test it, tweak it, and trade with confidence!
Broad Market for Crypto**Broad Market for Crypto** indicator provides a comparative analysis of the price deviation of multiple major cryptocurrencies relative to their average closing price over a customizable lookback period. This tool helps traders identify market trends and spot relative strength or weakness among different assets.
### **How It Works:**
- The indicator calculates the percentage deviation of each cryptocurrency’s current price from its simple moving average (SMA) over the defined **lookback period (in hours).**
- The **default lookback period is 24 hours**, but it can be adjusted according to the trader's preference.
- It tracks major crypto assets, including **BTC, ETH, BNB, SOL, XRP, ADA, AVAX, LINK, DOGE, and TRX**, alongside the currently selected instrument.
- Each cryptocurrency’s deviation is plotted on a separate panel, allowing for quick visual comparison.
- Positive deviation indicates that the price is trading above its average, signaling potential bullish momentum.
- Negative deviation suggests the price is below its average, possibly indicating bearish conditions.
This indicator is particularly useful for crypto traders who want to gauge the broader market’s strength and detect divergence patterns across multiple assets.
---------------------------------------------------------------------------------
**Broad Market for Crypto - Описание индикатора**
Индикатор **Broad Market for Crypto** предоставляет сравнительный анализ отклонения цены различных крупных криптовалют относительно их среднего значения за настраиваемый период. Этот инструмент помогает трейдерам выявлять рыночные тренды и определять относительную силу или слабость активов.
### **Как это работает:**
- Индикатор рассчитывает **процентное отклонение** текущей цены каждой криптовалюты от её **простого скользящего среднего (SMA)** за заданный **период анализа (в часах)**.
- **Период анализа по умолчанию — 24 часа**, но его можно изменять в зависимости от предпочтений трейдера.
- В индикаторе отслеживаются основные криптоактивы: **BTC, ETH, BNB, SOL, XRP, ADA, AVAX, LINK, DOGE и TRX**, а также текущий выбранный инструмент.
- Отклонение каждой криптовалюты отображается на отдельной панели, что позволяет быстро проводить визуальное сравнение.
- **Положительное отклонение** означает, что цена торгуется выше своего среднего значения, что может сигнализировать о **бычьем тренде**.
- **Отрицательное отклонение** указывает, что цена ниже своего среднего значения, что может свидетельствовать о **медвежьей тенденции**.
Этот индикатор особенно полезен для криптотрейдеров, желающих оценить силу всего рынка и выявлять расхождения между различными активами.
Bitcoin Total VolumeThis Pine Script indicator, titled "Bitcoin Top 16 Volume," is designed to provide traders with an aggregate view of Bitcoin (BTC) spot trading volume across leading cryptocurrency exchanges. Unlike traditional volume indicators that focus on a single exchange, this tool compiles data from a selection of the top exchanges as ranked by CoinMarketCap, offering a broader perspective on overall market activity.
The indicator works by fetching real-time volume data for specific BTC trading pairs on various exchanges. It currently incorporates data from prominent platforms such as Binance (BTCUSDT), Coinbase (BTCUSD), OKX (BTCUSDT), Bybit (BTCUSDT), Kraken (BTCUSD), Bitfinex (BTCUSD), Bitstamp (BTCUSD), Gemini (BTCUSD), Upbit (BTCKRW), Bithumb (BTCKRW), KuCoin (BTCUSDT), Gate.io (BTCUSDT), MEXC (BTCUSDT), Crypto.com (BTCUSD), Poloniex (BTCUSDT), and BitMart (BTCUSDT). It's important to note that while the indicator aims to represent the "Top 16" exchanges, the actual number included may vary due to data availability within TradingView and the dynamic nature of exchange rankings.
The script then calculates the total volume by summing up the volume data retrieved from each of these exchanges. This aggregated volume is visually represented as a histogram directly on your TradingView chart, displayed in white by default. By observing the height of the histogram bars, traders can quickly assess the total trading volume for Bitcoin spot markets over different time periods, corresponding to the chart's timeframe.
This indicator is valuable for traders seeking to understand the overall market depth and liquidity of Bitcoin. Increased total volume can often signal heightened market interest and potential trend strength or reversals. Conversely, low volume might suggest consolidation or reduced market participation. Traders can use this indicator to confirm trends, identify potential breakouts, and gauge the general level of activity in the Bitcoin spot market across major exchanges. Keep in mind that the list of exchanges included may need periodic updates to accurately reflect the top exchanges as rankings on CoinMarketCap evolve.
Aggregated Volume (Multi-Exchange)Indicator: Aggregated Volume (Multi-Exchange)
Overview:
The Aggregated Volume (Multi-Exchange) indicator is designed to aggregate trading volume data from multiple exchanges for a specific cryptocurrency pair. The goal is to provide a consolidated view of the total trading volume across different platforms, helping traders and analysts gauge the overall market activity for a given asset.
Features:
Multi-Exchange Support: The indicator allows you to aggregate trading volume data from various exchanges. Users can enable or disable volume data from specific exchanges (e.g., Binance, Bybit, Kucoin, etc.).
Spot and Futures Volumes: The indicator can sum the volume for spot trading and futures trading separately if desired. However, in the current version, it only sums the volume for specific pairs across multiple exchanges, without distinguishing between spot and futures volumes (though this feature can be added if necessary).
Customizable Exchange Selection: Users can select which exchanges' volume data to include in the aggregation.
Real-Time Updates: The volume data is updated in real-time as new bars are formed on the chart, providing an up-to-date picture of the trading volume.
Purpose:
The primary purpose of this indicator is to consolidate trading volume information from multiple exchanges for the same trading pair (e.g., BTC/USD). Traders can use this aggregated volume to gain a better understanding of market activity across various platforms, as well as assess the level of liquidity and interest in a particular asset.
By viewing the total aggregated volume, traders can:
Track market trends: Higher aggregated volume can signal increased market interest, making it easier to spot trends or potential breakouts.
Analyze liquidity: This indicator can help traders assess liquidity in the market, especially when using multiple exchanges.
Identify potential market manipulation: If there is a sudden spike in volume on multiple exchanges, it could signal market manipulation or an event-driven surge.
How it Works:
Volume Aggregation: The indicator collects and sums the volume data for a given symbol (e.g., BTC/USD) from different exchanges like Binance, Bybit, Kucoin, and others.
Multiple Exchanges: The volume data is aggregated from each selected exchange and plotted as a single volume value on the chart.
Real-Time Volume Plotting: The total aggregated volume is then plotted as a histogram on the chart, with the color of the bars changing depending on whether the price is rising or falling (typically green for rising prices and red for falling prices).
Inputs/Settings:
Exchange Selection: A list of checkboxes where users can choose which exchanges' volume data to include (e.g., Binance, Bybit, Kucoin, etc.).
Color Settings: Users can set the color for the histogram bars based on price direction (e.g., green for rising and red for falling).
Volume Calculation: The indicator calculates the volume for a specific cryptocurrency pair across selected exchanges in real-time.
Internals Elite NYSE [Beta]Overview:
This indicator is designed to provide traders with a quick overview of key market internals and metrics in a single, easy-to-read table displayed directly on the chart. It incorporates a variety of metrics that help gauge market sentiment, momentum, and overall market conditions.
The table dynamically updates in real-time and uses color-coding to highlight significant changes or thresholds, allowing traders to quickly interpret the data and make informed trading decisions.
Features:
Market Internals:
TICK: Measures the difference between the number of stocks ticking up versus those ticking down on the NYSE. Green or red background indicates if it crosses a user-defined threshold.
Advance/Decline (ADD): Shows the net number of advancing versus declining stocks on the NYSE. Color-coded to show positive, negative, or neutral conditions.
Volatility Metrics:
VIX Change (%): Displays the percentage change in the Volatility Index (VIX), a key gauge of market fear or complacency. Color-coded for direction.
VIX Price: Displays the current VIX price with thresholds to indicate low, medium, or high volatility.
Other Market Metrics:
DXY Change (%): Percentage change in the US Dollar Index (DXY), indicating dollar strength or weakness.
VWAP Deviation (%): Percentage of stocks above VWAP (Volume Weighted Average Price), helping traders assess intraday buying and selling pressure.
Asset-Specific Metrics:
BTCUSD Change (%): Percentage change in Bitcoin (BTC) price, useful for monitoring cryptocurrency sentiment.
SPY Change (%): Percentage change in the S&P 500 ETF (SPY), a proxy for the overall stock market.
Current Ticker Change (%): Percentage change in the currently selected ticker on the chart.
US10Y Change (%): Percentage change in the yield of the 10-Year US Treasury Note (TVC:US10Y), an important macroeconomic indicator.
Customizable Appearance:
Adjustable text size to suit your chart layout.
User-defined thresholds for key metrics (e.g., TICK, ADD, VWAP, VIX).
Dynamic Table Placement:
You can position the table anywhere on the chart: top-right, top-left, bottom-right, bottom-left, middle-right, or middle-left.
How to Use:
Add the Indicator to Your Chart:
Apply the indicator to your chart from the Pine Script editor in TradingView.
Customize the Inputs:
Adjust the thresholds for TICK, ADD, VWAP, and VIX according to your trading style.
Enable or disable the metrics you want to see in the table by toggling the display options for each metric (e.g., Show TICK, Show BTC, Show SPY).
Set the table placement to your preferred position on the chart.
Interpret the Table:
Look for color-coded cells to quickly identify significant changes or breaches of thresholds.
Positive values are typically shown in green, negative values in red, and neutral/insignificant changes in gray.
Use metrics like TICK and ADD to gauge market breadth and momentum.
Refer to VWAP deviation to assess intraday buying or selling pressure.
Monitor the VIX and US10Y changes to stay aware of macroeconomic and volatility shifts.
Incorporate Into Your Strategy:
Use the indicator alongside technical analysis to confirm setups or identify areas of caution.
Keep an eye on correlated metrics (e.g., VIX and SPY) for broader market context.
Use BTCUSD or DXY as additional indicators of risk-on/risk-off sentiment.
Ideal Users:
Day Traders: Quickly gauge intraday market conditions and momentum.
Swing Traders: Identify broader sentiment shifts using metrics like ADD, DXY, and US10Y.
Macro Investors: Stay updated on key macroeconomic indicators like the 10-Year Treasury yield (US10Y) and the US Dollar Index (DXY).
This indicator serves as a comprehensive tool for understanding market conditions at a glance, enabling traders to act decisively based on the latest data.
Correlation Pro
Smart Correlation Pro is an indicator for assessing the correlation between two assets in the market. It analyzes correlation over a selected period and provides traders with flexible tools for making informed decisions.
Key Features:
1. Correlation coefficient (-1 to 1):
• 1: Perfect positive correlation (movement in the same direction).
• 0: No correlation (assets are independent).
• -1: Perfect negative correlation (movement in opposite directions).
2. Dynamic analysis:
• Changes the color of the line depending on the strength of the correlation:
• Green — high positive correlation.
• Red — high negative correlation.
• Gray — weak or no correlation.
3. Trading signals:
• Automatic alerts when important correlation levels are reached (> 0.8 or < -0.8).
• Visual cues for identifying potential entry points or risk diversification.
4. Customizable settings:
• Compare any two assets (e.g., BTC and ETH).
• Ability to choose the correlation calculation period.
Who it’s for:
• Traders analyzing coin movements in the cryptocurrency market.
• Investors looking for the strongest or weakest assets for their portfolio.
• Those working with hedging or diversification strategies.
How to Use:
1. Set the second asset in the indicator settings.
2. Analyze the correlation change on the chart:
• High positive correlation → similar price movement, opportunity for hedging.
• High negative correlation → opposite movement, suitable for diversification.
• Low correlation → independence of assets, opportunity to choose the stronger asset.
Benefits:
• Easy to use.
• Instant analysis of asset correlations.
• Increases decision-making accuracy in the market.
(Опис:
Smart Correlation Pro — це індикатор для оцінки взаємозв’язку між двома активами на ринку. Він аналізує кореляцію за обраним періодом та надає трейдерам гнучкі інструменти для ухвалення обґрунтованих рішень.
Основні можливості:
1. Коефіцієнт кореляції (-1 до 1):
• 1: Ідеальна позитивна кореляція (рух в одному напрямку).
• 0: Відсутність кореляції (активи незалежні).
• -1: Ідеальна негативна кореляція (рух у протилежних напрямках).
2. Динамічний аналіз:
• Змінює колір лінії залежно від сили кореляції:
• Зелений — висока позитивна кореляція.
• Червоний — висока негативна кореляція.
• Сірий — слабка або відсутня кореляція.
3. Сигнали для трейдингу:
• Автоматичні оповіщення при досягненні важливих рівнів кореляції (> 0.8 або < -0.8).
• Візуальні підказки для визначення можливих точок входу або диверсифікації ризиків.
4. Гнучкість налаштувань:
• Порівнюйте будь-які два активи (наприклад, BTC та ETH).
• Можливість обирати період розрахунку кореляції.
Кому підходить:
• Трейдерам, які аналізують рух монет на криптовалютному ринку.
• Інвесторам, що шукають найсильніші або найслабші активи для портфеля.
• Тих, хто працює з хеджуванням або диверсифікацією.
Як використовувати:
1. Встановіть другий актив у параметрах індикатора.
2. Аналізуйте зміну кореляції на графіку:
• Висока позитивна кореляція → схожий рух цін, можливість хеджування.
• Висока негативна кореляція → протилежний рух, підходить для диверсифікації.
• Низька кореляція → незалежність активів, можливість вибору сильнішого активу.
Переваги:
• Простота у використанні.
• Миттєвий аналіз взаємозв’язків між активами.
• Підвищує точність рішень на ринку.)
EMA RSI Trend Reversal Ver.1Overview:
The EMA RSI Trend Reversal indicator combines the power of two well-known technical indicators—Exponential Moving Averages (EMAs) and the Relative Strength Index (RSI)—to identify potential trend reversal points in the market. The strategy looks for key crossovers between the fast and slow EMAs, and uses the RSI to confirm the strength of the trend. This combination helps to avoid false signals during sideways market conditions.
How It Works:
Buy Signal:
The Fast EMA (9) crosses above the Slow EMA (21), indicating a potential shift from a downtrend to an uptrend.
The RSI is above 50, confirming strong bullish momentum.
Visual Signal: A green arrow below the price bar and a Buy label are plotted on the chart.
Sell Signal:
The Fast EMA (9) crosses below the Slow EMA (21), indicating a potential shift from an uptrend to a downtrend.
The RSI is below 50, confirming weak or bearish momentum.
Visual Signal: A red arrow above the price bar and a Sell label are plotted on the chart.
Key Features:
EMA Crossovers: The Fast EMA crossing above the Slow EMA signals potential buying opportunities, while the Fast EMA crossing below the Slow EMA signals potential selling opportunities.
RSI Confirmation: The RSI helps confirm trend strength—values above 50 indicate bullish momentum, while values below 50 indicate bearish momentum.
Visual Cues: The strategy uses green arrows and red arrows along with Buy and Sell labels for clear visual signals of when to enter or exit trades.
Signal Interpretation:
Green Arrow / Buy Label: The Fast EMA (9) has crossed above the Slow EMA (21), and the RSI is above 50. This is a signal to buy or enter a long position.
Red Arrow / Sell Label: The Fast EMA (9) has crossed below the Slow EMA (21), and the RSI is below 50. This is a signal to sell or exit the long position.
Strategy Settings:
Fast EMA Length: Set to 9 (this determines how sensitive the fast EMA is to recent price movements).
Slow EMA Length: Set to 21 (this smooths out price movements to identify the broader trend).
RSI Length: Set to 14 (default setting to track momentum strength).
RSI Level: Set to 50 (used to confirm the strength of the trend—above 50 for buy signals, below 50 for sell signals).
Risk Management (Optional):
Use take profit and stop loss based on your preferred risk-to-reward ratio. For example, you can set a 2:1 risk-to-reward ratio (2x take profit for every 1x stop loss).
Backtesting and Optimization:
Backtest the strategy on TradingView by opening the Strategy Tester tab. This will allow you to see how the strategy would have performed on historical data.
Optimization: Adjust the EMA lengths, RSI period, and risk-to-reward settings based on your asset and time frame.
Limitations:
False Signals in Sideways Markets: Like any trend-following strategy, this indicator may generate false signals during periods of low volatility or sideways movement.
Not Suitable for All Market Conditions: This indicator performs best in trending markets. It may underperform in choppy or range-bound markets.
Strategy Example:
XRP/USD Example:
If you're trading XRP/USD and the Fast EMA (9) crosses above the Slow EMA (21), while the RSI is above 50, the indicator will signal a Buy.
Conversely, if the Fast EMA (9) crosses below the Slow EMA (21), and the RSI is below 50, the indicator will signal a Sell.
Bitcoin (BTC/USD):
On the BTC/USD chart, when the indicator shows a green arrow and a Buy label, it’s signaling a potential long entry. Similarly, a red arrow and Sell label indicate a short entry or exit from a previous long position.
Summary:
The EMA RSI Trend Reversal Indicator helps traders identify potential trend reversals with clear buy and sell signals based on the EMA crossovers and RSI confirmations. By using green arrows and red arrows, along with Buy and Sell labels, this strategy offers easy-to-understand visual signals for entering and exiting trades. Combine this with effective risk management and backtesting to optimize your trading performance.
BGL - Bitcoin Global Liquidity Indicator [Da_Prof]This indicator takes global liquidity and shifts it forward by a set number of days. It can be used for any asset, but it is by default set for Bitcoin (BTC). The shift forward allows potential future prediction of BTC trends, especially uptrends. While not perfect, the current shift of 72 days seems to be best for the current cycle.
Sixteen currencies are used to calculate global liquidity.
Simple RSI stock Strategy [1D] The "Simple RSI Stock Strategy " is designed to long-term traders. Strategy uses a daily time frame to capitalize on signals generated by the Relative Strength Index (RSI) and the Simple Moving Average (SMA). This strategy is suitable for low-leverage trading environments and focuses on identifying potential buy opportunities when the market is oversold, while incorporating strong risk management with both dynamic and static Stop Loss mechanisms.
This strategy is recommended for use with a relatively small amount of capital and is best applied by diversifying across multiple stocks in a strong uptrend, particularly in the S&P 500 stock market. It is specifically designed for equities, and may not perform well in other markets such as commodities, forex, or cryptocurrencies, where different market dynamics and volatility patterns apply.
Indicators Used in the Strategy:
1. RSI (Relative Strength Index):
- The RSI is a momentum oscillator used to identify overbought and oversold conditions in the market.
- This strategy enters long positions when the RSI drops below the oversold level (default: 30), indicating a potential buying opportunity.
- It focuses on oversold conditions but uses a filter (SMA 200) to ensure trades are only made in the context of an overall uptrend.
2. SMA 200 (Simple Moving Average):
- The 200-period SMA serves as a trend filter, ensuring that trades are only executed when the price is above the SMA, signaling a bullish market.
- This filter helps to avoid entering trades in a downtrend, thereby reducing the risk of holding positions in a declining market.
3. ATR (Average True Range):
- The ATR is used to measure market volatility and is instrumental in setting the Stop Loss.
- By multiplying the ATR value by a custom multiplier (default: 1.5), the strategy dynamically adjusts the Stop Loss level based on market volatility, allowing for flexibility in risk management.
How the Strategy Works:
Entry Signals:
The strategy opens long positions when RSI indicates that the market is oversold (below 30), and the price is above the 200-period SMA. This ensures that the strategy buys into potential market bottoms within the context of a long-term uptrend.
Take Profit Levels:
The strategy defines three distinct Take Profit (TP) levels:
TP 1: A 5% from the entry price.
TP 2: A 10% from the entry price.
TP 3: A 15% from the entry price.
As each TP level is reached, the strategy closes portions of the position to secure profits: 33% of the position is closed at TP 1, 66% at TP 2, and 100% at TP 3.
Visualizing Target Points:
The strategy provides visual feedback by plotting plotshapes at each Take Profit level (TP 1, TP 2, TP 3). This allows traders to easily see the target profit levels on the chart, making it easier to monitor and manage positions as they approach key profit-taking areas.
Stop Loss Mechanism:
The strategy uses a dual Stop Loss system to effectively manage risk:
ATR Trailing Stop: This dynamic Stop Loss adjusts based on the ATR value and trails the price as the position moves in the trader’s favor. If a price reversal occurs and the market begins to trend downward, the trailing stop closes the position, locking in gains or minimizing losses.
Basic Stop Loss: Additionally, a fixed Stop Loss is set at 25%, limiting potential losses. This basic Stop Loss serves as a safeguard, automatically closing the position if the price drops 25% from the entry point. This higher Stop Loss is designed specifically for low-leverage trading, allowing more room for market fluctuations without prematurely closing positions.
to determine the level of stop loss and target point I used a piece of code by RafaelZioni, here is the script from which a piece of code was taken
Together, these mechanisms ensure that the strategy dynamically manages risk while offering robust protection against significant losses in case of sharp market downturns.
The position size has been estimated by me at 75% of the total capital. For optimal capital allocation, a recommended value based on the Kelly Criterion, which is calculated to be 59.13% of the total capital per trade, can also be considered.
Enjoy !
Universal Ratio Trend Matrix [InvestorUnknown]The Universal Ratio Trend Matrix is designed for trend analysis on asset/asset ratios, supporting up to 40 different assets. Its primary purpose is to help identify which assets are outperforming others within a selection, providing a broad overview of market trends through a matrix of ratios. The indicator automatically expands the matrix based on the number of assets chosen, simplifying the process of comparing multiple assets in terms of performance.
Key features include the ability to choose from a narrow selection of indicators to perform the ratio trend analysis, allowing users to apply well-defined metrics to their comparison.
Drawback: Due to the computational intensity involved in calculating ratios across many assets, the indicator has a limitation related to loading speed. TradingView has time limits for calculations, and for users on the basic (free) plan, this could result in frequent errors due to exceeded time limits. To use the indicator effectively, users with any paid plans should run it on timeframes higher than 8h (the lowest timeframe on which it managed to load with 40 assets), as lower timeframes may not reliably load.
Indicators:
RSI_raw: Simple function to calculate the Relative Strength Index (RSI) of a source (asset price).
RSI_sma: Calculates RSI followed by a Simple Moving Average (SMA).
RSI_ema: Calculates RSI followed by an Exponential Moving Average (EMA).
CCI: Calculates the Commodity Channel Index (CCI).
Fisher: Implements the Fisher Transform to normalize prices.
Utility Functions:
f_remove_exchange_name: Strips the exchange name from asset tickers (e.g., "INDEX:BTCUSD" to "BTCUSD").
f_remove_exchange_name(simple string name) =>
string parts = str.split(name, ":")
string result = array.size(parts) > 1 ? array.get(parts, 1) : name
result
f_get_price: Retrieves the closing price of a given asset ticker using request.security().
f_constant_src: Checks if the source data is constant by comparing multiple consecutive values.
Inputs:
General settings allow users to select the number of tickers for analysis (used_assets) and choose the trend indicator (RSI, CCI, Fisher, etc.).
Table settings customize how trend scores are displayed in terms of text size, header visibility, highlighting options, and top-performing asset identification.
The script includes inputs for up to 40 assets, allowing the user to select various cryptocurrencies (e.g., BTCUSD, ETHUSD, SOLUSD) or other assets for trend analysis.
Price Arrays:
Price values for each asset are stored in variables (price_a1 to price_a40) initialized as na. These prices are updated only for the number of assets specified by the user (used_assets).
Trend scores for each asset are stored in separate arrays
// declare price variables as "na"
var float price_a1 = na, var float price_a2 = na, var float price_a3 = na, var float price_a4 = na, var float price_a5 = na
var float price_a6 = na, var float price_a7 = na, var float price_a8 = na, var float price_a9 = na, var float price_a10 = na
var float price_a11 = na, var float price_a12 = na, var float price_a13 = na, var float price_a14 = na, var float price_a15 = na
var float price_a16 = na, var float price_a17 = na, var float price_a18 = na, var float price_a19 = na, var float price_a20 = na
var float price_a21 = na, var float price_a22 = na, var float price_a23 = na, var float price_a24 = na, var float price_a25 = na
var float price_a26 = na, var float price_a27 = na, var float price_a28 = na, var float price_a29 = na, var float price_a30 = na
var float price_a31 = na, var float price_a32 = na, var float price_a33 = na, var float price_a34 = na, var float price_a35 = na
var float price_a36 = na, var float price_a37 = na, var float price_a38 = na, var float price_a39 = na, var float price_a40 = na
// create "empty" arrays to store trend scores
var a1_array = array.new_int(40, 0), var a2_array = array.new_int(40, 0), var a3_array = array.new_int(40, 0), var a4_array = array.new_int(40, 0)
var a5_array = array.new_int(40, 0), var a6_array = array.new_int(40, 0), var a7_array = array.new_int(40, 0), var a8_array = array.new_int(40, 0)
var a9_array = array.new_int(40, 0), var a10_array = array.new_int(40, 0), var a11_array = array.new_int(40, 0), var a12_array = array.new_int(40, 0)
var a13_array = array.new_int(40, 0), var a14_array = array.new_int(40, 0), var a15_array = array.new_int(40, 0), var a16_array = array.new_int(40, 0)
var a17_array = array.new_int(40, 0), var a18_array = array.new_int(40, 0), var a19_array = array.new_int(40, 0), var a20_array = array.new_int(40, 0)
var a21_array = array.new_int(40, 0), var a22_array = array.new_int(40, 0), var a23_array = array.new_int(40, 0), var a24_array = array.new_int(40, 0)
var a25_array = array.new_int(40, 0), var a26_array = array.new_int(40, 0), var a27_array = array.new_int(40, 0), var a28_array = array.new_int(40, 0)
var a29_array = array.new_int(40, 0), var a30_array = array.new_int(40, 0), var a31_array = array.new_int(40, 0), var a32_array = array.new_int(40, 0)
var a33_array = array.new_int(40, 0), var a34_array = array.new_int(40, 0), var a35_array = array.new_int(40, 0), var a36_array = array.new_int(40, 0)
var a37_array = array.new_int(40, 0), var a38_array = array.new_int(40, 0), var a39_array = array.new_int(40, 0), var a40_array = array.new_int(40, 0)
f_get_price(simple string ticker) =>
request.security(ticker, "", close)
// Prices for each USED asset
f_get_asset_price(asset_number, ticker) =>
if (used_assets >= asset_number)
f_get_price(ticker)
else
na
// overwrite empty variables with the prices if "used_assets" is greater or equal to the asset number
if barstate.isconfirmed // use barstate.isconfirmed to avoid "na prices" and calculation errors that result in empty cells in the table
price_a1 := f_get_asset_price(1, asset1), price_a2 := f_get_asset_price(2, asset2), price_a3 := f_get_asset_price(3, asset3), price_a4 := f_get_asset_price(4, asset4)
price_a5 := f_get_asset_price(5, asset5), price_a6 := f_get_asset_price(6, asset6), price_a7 := f_get_asset_price(7, asset7), price_a8 := f_get_asset_price(8, asset8)
price_a9 := f_get_asset_price(9, asset9), price_a10 := f_get_asset_price(10, asset10), price_a11 := f_get_asset_price(11, asset11), price_a12 := f_get_asset_price(12, asset12)
price_a13 := f_get_asset_price(13, asset13), price_a14 := f_get_asset_price(14, asset14), price_a15 := f_get_asset_price(15, asset15), price_a16 := f_get_asset_price(16, asset16)
price_a17 := f_get_asset_price(17, asset17), price_a18 := f_get_asset_price(18, asset18), price_a19 := f_get_asset_price(19, asset19), price_a20 := f_get_asset_price(20, asset20)
price_a21 := f_get_asset_price(21, asset21), price_a22 := f_get_asset_price(22, asset22), price_a23 := f_get_asset_price(23, asset23), price_a24 := f_get_asset_price(24, asset24)
price_a25 := f_get_asset_price(25, asset25), price_a26 := f_get_asset_price(26, asset26), price_a27 := f_get_asset_price(27, asset27), price_a28 := f_get_asset_price(28, asset28)
price_a29 := f_get_asset_price(29, asset29), price_a30 := f_get_asset_price(30, asset30), price_a31 := f_get_asset_price(31, asset31), price_a32 := f_get_asset_price(32, asset32)
price_a33 := f_get_asset_price(33, asset33), price_a34 := f_get_asset_price(34, asset34), price_a35 := f_get_asset_price(35, asset35), price_a36 := f_get_asset_price(36, asset36)
price_a37 := f_get_asset_price(37, asset37), price_a38 := f_get_asset_price(38, asset38), price_a39 := f_get_asset_price(39, asset39), price_a40 := f_get_asset_price(40, asset40)
Universal Indicator Calculation (f_calc_score):
This function allows switching between different trend indicators (RSI, CCI, Fisher) for flexibility.
It uses a switch-case structure to calculate the indicator score, where a positive trend is denoted by 1 and a negative trend by 0. Each indicator has its own logic to determine whether the asset is trending up or down.
// use switch to allow "universality" in indicator selection
f_calc_score(source, trend_indicator, int_1, int_2) =>
int score = na
if (not f_constant_src(source)) and source > 0.0 // Skip if you are using the same assets for ratio (for example BTC/BTC)
x = switch trend_indicator
"RSI (Raw)" => RSI_raw(source, int_1)
"RSI (SMA)" => RSI_sma(source, int_1, int_2)
"RSI (EMA)" => RSI_ema(source, int_1, int_2)
"CCI" => CCI(source, int_1)
"Fisher" => Fisher(source, int_1)
y = switch trend_indicator
"RSI (Raw)" => x > 50 ? 1 : 0
"RSI (SMA)" => x > 50 ? 1 : 0
"RSI (EMA)" => x > 50 ? 1 : 0
"CCI" => x > 0 ? 1 : 0
"Fisher" => x > x ? 1 : 0
score := y
else
score := 0
score
Array Setting Function (f_array_set):
This function populates an array with scores calculated for each asset based on a base price (p_base) divided by the prices of the individual assets.
It processes multiple assets (up to 40), calling the f_calc_score function for each.
// function to set values into the arrays
f_array_set(a_array, p_base) =>
array.set(a_array, 0, f_calc_score(p_base / price_a1, trend_indicator, int_1, int_2))
array.set(a_array, 1, f_calc_score(p_base / price_a2, trend_indicator, int_1, int_2))
array.set(a_array, 2, f_calc_score(p_base / price_a3, trend_indicator, int_1, int_2))
array.set(a_array, 3, f_calc_score(p_base / price_a4, trend_indicator, int_1, int_2))
array.set(a_array, 4, f_calc_score(p_base / price_a5, trend_indicator, int_1, int_2))
array.set(a_array, 5, f_calc_score(p_base / price_a6, trend_indicator, int_1, int_2))
array.set(a_array, 6, f_calc_score(p_base / price_a7, trend_indicator, int_1, int_2))
array.set(a_array, 7, f_calc_score(p_base / price_a8, trend_indicator, int_1, int_2))
array.set(a_array, 8, f_calc_score(p_base / price_a9, trend_indicator, int_1, int_2))
array.set(a_array, 9, f_calc_score(p_base / price_a10, trend_indicator, int_1, int_2))
array.set(a_array, 10, f_calc_score(p_base / price_a11, trend_indicator, int_1, int_2))
array.set(a_array, 11, f_calc_score(p_base / price_a12, trend_indicator, int_1, int_2))
array.set(a_array, 12, f_calc_score(p_base / price_a13, trend_indicator, int_1, int_2))
array.set(a_array, 13, f_calc_score(p_base / price_a14, trend_indicator, int_1, int_2))
array.set(a_array, 14, f_calc_score(p_base / price_a15, trend_indicator, int_1, int_2))
array.set(a_array, 15, f_calc_score(p_base / price_a16, trend_indicator, int_1, int_2))
array.set(a_array, 16, f_calc_score(p_base / price_a17, trend_indicator, int_1, int_2))
array.set(a_array, 17, f_calc_score(p_base / price_a18, trend_indicator, int_1, int_2))
array.set(a_array, 18, f_calc_score(p_base / price_a19, trend_indicator, int_1, int_2))
array.set(a_array, 19, f_calc_score(p_base / price_a20, trend_indicator, int_1, int_2))
array.set(a_array, 20, f_calc_score(p_base / price_a21, trend_indicator, int_1, int_2))
array.set(a_array, 21, f_calc_score(p_base / price_a22, trend_indicator, int_1, int_2))
array.set(a_array, 22, f_calc_score(p_base / price_a23, trend_indicator, int_1, int_2))
array.set(a_array, 23, f_calc_score(p_base / price_a24, trend_indicator, int_1, int_2))
array.set(a_array, 24, f_calc_score(p_base / price_a25, trend_indicator, int_1, int_2))
array.set(a_array, 25, f_calc_score(p_base / price_a26, trend_indicator, int_1, int_2))
array.set(a_array, 26, f_calc_score(p_base / price_a27, trend_indicator, int_1, int_2))
array.set(a_array, 27, f_calc_score(p_base / price_a28, trend_indicator, int_1, int_2))
array.set(a_array, 28, f_calc_score(p_base / price_a29, trend_indicator, int_1, int_2))
array.set(a_array, 29, f_calc_score(p_base / price_a30, trend_indicator, int_1, int_2))
array.set(a_array, 30, f_calc_score(p_base / price_a31, trend_indicator, int_1, int_2))
array.set(a_array, 31, f_calc_score(p_base / price_a32, trend_indicator, int_1, int_2))
array.set(a_array, 32, f_calc_score(p_base / price_a33, trend_indicator, int_1, int_2))
array.set(a_array, 33, f_calc_score(p_base / price_a34, trend_indicator, int_1, int_2))
array.set(a_array, 34, f_calc_score(p_base / price_a35, trend_indicator, int_1, int_2))
array.set(a_array, 35, f_calc_score(p_base / price_a36, trend_indicator, int_1, int_2))
array.set(a_array, 36, f_calc_score(p_base / price_a37, trend_indicator, int_1, int_2))
array.set(a_array, 37, f_calc_score(p_base / price_a38, trend_indicator, int_1, int_2))
array.set(a_array, 38, f_calc_score(p_base / price_a39, trend_indicator, int_1, int_2))
array.set(a_array, 39, f_calc_score(p_base / price_a40, trend_indicator, int_1, int_2))
a_array
Conditional Array Setting (f_arrayset):
This function checks if the number of used assets is greater than or equal to a specified number before populating the arrays.
// only set values into arrays for USED assets
f_arrayset(asset_number, a_array, p_base) =>
if (used_assets >= asset_number)
f_array_set(a_array, p_base)
else
na
Main Logic
The main logic initializes arrays to store scores for each asset. Each array corresponds to one asset's performance score.
Setting Trend Values: The code calls f_arrayset for each asset, populating the respective arrays with calculated scores based on the asset prices.
Combining Arrays: A combined_array is created to hold all the scores from individual asset arrays. This array facilitates further analysis, allowing for an overview of the performance scores of all assets at once.
// create a combined array (work-around since pinescript doesn't support having array of arrays)
var combined_array = array.new_int(40 * 40, 0)
if barstate.islast
for i = 0 to 39
array.set(combined_array, i, array.get(a1_array, i))
array.set(combined_array, i + (40 * 1), array.get(a2_array, i))
array.set(combined_array, i + (40 * 2), array.get(a3_array, i))
array.set(combined_array, i + (40 * 3), array.get(a4_array, i))
array.set(combined_array, i + (40 * 4), array.get(a5_array, i))
array.set(combined_array, i + (40 * 5), array.get(a6_array, i))
array.set(combined_array, i + (40 * 6), array.get(a7_array, i))
array.set(combined_array, i + (40 * 7), array.get(a8_array, i))
array.set(combined_array, i + (40 * 8), array.get(a9_array, i))
array.set(combined_array, i + (40 * 9), array.get(a10_array, i))
array.set(combined_array, i + (40 * 10), array.get(a11_array, i))
array.set(combined_array, i + (40 * 11), array.get(a12_array, i))
array.set(combined_array, i + (40 * 12), array.get(a13_array, i))
array.set(combined_array, i + (40 * 13), array.get(a14_array, i))
array.set(combined_array, i + (40 * 14), array.get(a15_array, i))
array.set(combined_array, i + (40 * 15), array.get(a16_array, i))
array.set(combined_array, i + (40 * 16), array.get(a17_array, i))
array.set(combined_array, i + (40 * 17), array.get(a18_array, i))
array.set(combined_array, i + (40 * 18), array.get(a19_array, i))
array.set(combined_array, i + (40 * 19), array.get(a20_array, i))
array.set(combined_array, i + (40 * 20), array.get(a21_array, i))
array.set(combined_array, i + (40 * 21), array.get(a22_array, i))
array.set(combined_array, i + (40 * 22), array.get(a23_array, i))
array.set(combined_array, i + (40 * 23), array.get(a24_array, i))
array.set(combined_array, i + (40 * 24), array.get(a25_array, i))
array.set(combined_array, i + (40 * 25), array.get(a26_array, i))
array.set(combined_array, i + (40 * 26), array.get(a27_array, i))
array.set(combined_array, i + (40 * 27), array.get(a28_array, i))
array.set(combined_array, i + (40 * 28), array.get(a29_array, i))
array.set(combined_array, i + (40 * 29), array.get(a30_array, i))
array.set(combined_array, i + (40 * 30), array.get(a31_array, i))
array.set(combined_array, i + (40 * 31), array.get(a32_array, i))
array.set(combined_array, i + (40 * 32), array.get(a33_array, i))
array.set(combined_array, i + (40 * 33), array.get(a34_array, i))
array.set(combined_array, i + (40 * 34), array.get(a35_array, i))
array.set(combined_array, i + (40 * 35), array.get(a36_array, i))
array.set(combined_array, i + (40 * 36), array.get(a37_array, i))
array.set(combined_array, i + (40 * 37), array.get(a38_array, i))
array.set(combined_array, i + (40 * 38), array.get(a39_array, i))
array.set(combined_array, i + (40 * 39), array.get(a40_array, i))
Calculating Sums: A separate array_sums is created to store the total score for each asset by summing the values of their respective score arrays. This allows for easy comparison of overall performance.
Ranking Assets: The final part of the code ranks the assets based on their total scores stored in array_sums. It assigns a rank to each asset, where the asset with the highest score receives the highest rank.
// create array for asset RANK based on array.sum
var ranks = array.new_int(used_assets, 0)
// for loop that calculates the rank of each asset
if barstate.islast
for i = 0 to (used_assets - 1)
int rank = 1
for x = 0 to (used_assets - 1)
if i != x
if array.get(array_sums, i) < array.get(array_sums, x)
rank := rank + 1
array.set(ranks, i, rank)
Dynamic Table Creation
Initialization: The table is initialized with a base structure that includes headers for asset names, scores, and ranks. The headers are set to remain constant, ensuring clarity for users as they interpret the displayed data.
Data Population: As scores are calculated for each asset, the corresponding values are dynamically inserted into the table. This is achieved through a loop that iterates over the scores and ranks stored in the combined_array and array_sums, respectively.
Automatic Extending Mechanism
Variable Asset Count: The code checks the number of assets defined by the user. Instead of hardcoding the number of rows in the table, it uses a variable to determine the extent of the data that needs to be displayed. This allows the table to expand or contract based on the number of assets being analyzed.
Dynamic Row Generation: Within the loop that populates the table, the code appends new rows for each asset based on the current asset count. The structure of each row includes the asset name, its score, and its rank, ensuring that the table remains consistent regardless of how many assets are involved.
// Automatically extending table based on the number of used assets
var table table = table.new(position.bottom_center, 50, 50, color.new(color.black, 100), color.white, 3, color.white, 1)
if barstate.islast
if not hide_head
table.cell(table, 0, 0, "Universal Ratio Trend Matrix", text_color = color.white, bgcolor = #010c3b, text_size = fontSize)
table.merge_cells(table, 0, 0, used_assets + 3, 0)
if not hide_inps
table.cell(table, 0, 1,
text = "Inputs: You are using " + str.tostring(trend_indicator) + ", which takes: " + str.tostring(f_get_input(trend_indicator)),
text_color = color.white, text_size = fontSize), table.merge_cells(table, 0, 1, used_assets + 3, 1)
table.cell(table, 0, 2, "Assets", text_color = color.white, text_size = fontSize, bgcolor = #010c3b)
for x = 0 to (used_assets - 1)
table.cell(table, x + 1, 2, text = str.tostring(array.get(assets, x)), text_color = color.white, bgcolor = #010c3b, text_size = fontSize)
table.cell(table, 0, x + 3, text = str.tostring(array.get(assets, x)), text_color = color.white, bgcolor = f_asset_col(array.get(ranks, x)), text_size = fontSize)
for r = 0 to (used_assets - 1)
for c = 0 to (used_assets - 1)
table.cell(table, c + 1, r + 3, text = str.tostring(array.get(combined_array, c + (r * 40))),
text_color = hl_type == "Text" ? f_get_col(array.get(combined_array, c + (r * 40))) : color.white, text_size = fontSize,
bgcolor = hl_type == "Background" ? f_get_col(array.get(combined_array, c + (r * 40))) : na)
for x = 0 to (used_assets - 1)
table.cell(table, x + 1, x + 3, "", bgcolor = #010c3b)
table.cell(table, used_assets + 1, 2, "", bgcolor = #010c3b)
for x = 0 to (used_assets - 1)
table.cell(table, used_assets + 1, x + 3, "==>", text_color = color.white)
table.cell(table, used_assets + 2, 2, "SUM", text_color = color.white, text_size = fontSize, bgcolor = #010c3b)
table.cell(table, used_assets + 3, 2, "RANK", text_color = color.white, text_size = fontSize, bgcolor = #010c3b)
for x = 0 to (used_assets - 1)
table.cell(table, used_assets + 2, x + 3,
text = str.tostring(array.get(array_sums, x)),
text_color = color.white, text_size = fontSize,
bgcolor = f_highlight_sum(array.get(array_sums, x), array.get(ranks, x)))
table.cell(table, used_assets + 3, x + 3,
text = str.tostring(array.get(ranks, x)),
text_color = color.white, text_size = fontSize,
bgcolor = f_highlight_rank(array.get(ranks, x)))
Bitcoin Cycle Master [InvestorUnknown]The "Bitcoin Cycle Master" indicator is designed for in-depth, long-term analysis of Bitcoin's price cycles, using several key metrics to track market behavior and forecast potential price tops and bottoms. The indicator integrates multiple moving averages and on-chain metrics, offering a comprehensive view of Bitcoin’s historical and projected performance. Each of its components plays a crucial role in identifying critical cycle points:
Top Cap: This is a multiple of the Average Cap, which is calculated as the cumulative sum of Bitcoin’s price (price has a longer history than Market Cap) divided by its age in days. Top Cap serves as an upper boundary for speculative price peaks, multiplied by a factor of 35.
Time_dif() =>
date = ta.valuewhen(bar_index == 0, time, 0)
sec_r = math.floor(date / 1000)
min_r = math.floor(sec_r / 60)
h_r = math.floor(min_r / 60)
d_r = math.floor(h_r / 24)
// Launch of BTC
start = timestamp(2009, 1, 3, 00, 00)
sec_rb = math.floor(start / 1000)
min_rb = math.floor(sec_rb / 60)
h_rb = math.floor(min_rb / 60)
d_rb = math.floor(h_rb / 24)
difference = d_r - d_rb
AverageCap() =>
ta.cum(btc_price) / (Time_dif() + btc_age)
TopCap() =>
// To calculate Top Cap, it is first necessary to calculate Average Cap, which is the cumulative sum of Market Cap divided by the age of the market in days.
// This creates a constant time-based moving average of market cap.
// Once Average cap is calculated, those values are multiplied by 35. The result is Top Cap.
// For AverageCap the BTC price was used instead of the MC because it has more history
// (the result should have minimal if any deviation since MC would have to be divided by Supply)
AverageCap() * 35
Delta Top: Defined as the difference between the Realized Cap and the Average Cap, this metric is further multiplied by a factor of 7. Delta Top provides a historically reliable signal for Bitcoin market cycle tops.
DeltaTop() =>
// Delta Cap = Realized Cap - Average Cap
// Average Cap is explained in the Top Cap section above.
// Once Delta Cap is calculated, its values over time are then multiplied by 7. The result is Delta Top.
(RealizedPrice() - AverageCap()) * 7
Terminal Price: Derived from Coin Days Destroyed, Terminal Price normalizes Bitcoin’s historical price behavior by its finite supply (21 million bitcoins), offering an adjusted price forecast as all bitcoins approach being mined. The original formula for Terminal Price didn’t produce expected results, hence the calculation was adjusted slightly.
CVDD() =>
// CVDD stands for Cumulative Value Coin Days Destroyed.
// Coin Days Destroyed is a term used for bitcoin to identify a value of sorts to UTXO’s (unspent transaction outputs). They can be thought of as coins moving between wallets.
(MCR - TV) / 21000000
TerminalPrice() =>
// Theory:
// Before Terminal price is calculated, it is first necessary to calculate Transferred Price.
// Transferred price takes the sum of > Coin Days Destroyed and divides it by the existing supply of bitcoin and the time it has been in circulation.
// The value of Transferred Price is then multiplied by 21. Remember that there can only ever be 21 million bitcoin mined.
// This creates a 'terminal' value as the supply is all mined, a kind of reverse supply adjustment.
// Instead of heavily weighting later behavior, it normalizes historical behavior to today. By normalizing by 21, a terminal value is created
// Unfortunately the theoretical calculation didn't produce results it should, in pinescript.
// Therefore the calculation was slightly adjusted/improvised
TransferredPrice = CVDD() / (Supply * math.log(btc_age))
tp = TransferredPrice * 210000000 * 3
Realized Price: Calculated as the Market Cap Realized divided by the current supply of Bitcoin, this metric shows the average value of Bitcoin based on the price at which coins last moved, giving a market consensus price for long-term holders.
CVDD (Cumulative Value Coin Days Destroyed): This on-chain metric analyzes Bitcoin’s UTXOs (unspent transaction outputs) and the velocity of coins moving between wallets. It highlights key market dynamics during prolonged accumulation or distribution phases.
Balanced Price: The Balanced Price is the difference between the Realized Price and the Terminal Price, adjusted by Bitcoin's supply constraints. This metric provides a useful signal for identifying oversold market conditions during bear markets.
BalancedPrice() =>
// It is calculated by subtracting Transferred Price from Realized Price
RealizedPrice() - (TerminalPrice() / (21 * 3))
Each component can be toggled individually, allowing users to focus on specific aspects of Bitcoin’s price cycle and derive meaningful insights from its long-term behavior. The combination of these models provides a well-rounded view of both speculative peaks and long-term value trends.
Important consideration:
Top Cap did historically provide reliable signals for cycle peaks, however it may not be a relevant indication of peaks in the future.
CVD with Moving Average (Trend Colors) [SYNC & TRADE]Yesterday I wrote a simple and easy code for the indicator "Cumulative Delta Volume with a moving average" using AI.
Introduction:
Delta is the difference between buys and sells. If there are more purchases, the delta is positive, if there are more sales, the delta is negative. We look at each candle separately on a particular time frame, which does not give us an overall picture over time.
Cumulative volume delta is in many ways an extension of volume delta, but it covers longer periods of time and provides different trading signals. Like the volume delta indicator, the Cumulative Volume Delta (CVD) indicator measures the relationship between buying and selling pressure, but does not focus on one specific candle (or other chart element), but rather gives a picture over time.
What did you want to get?
I have often seen that they tried to attach RSI and the Ichimoku cloud to the cumulative delta of volume, but I have never seen a cumulative delta of volume with a moving average. A moving average that takes data from the cumulative volume delta will be different from the moving average of the underlying asset. It has been noted that often at the intersection of the cumulative volume delta and the moving average, this is a more accurate signal to buy or sell than the same intersections for the underlying asset.
Initially, 5 moving averages were made with values of 21, 55, 89, 144 and 233, but I realized that this overloads the chart. It is easier to change the length of the moving average depending on the time frame you are using than to overload the chart. The final version with one moving SMA, EMA, RMA, WMA, HMA.
The logic for applying a moving average to a cumulative volume delta:
You choose a moving average, just like you would on your underlying asset. Use the moving average you like and the period you are used to working with. Each TF has its own settings.
What we see on the graph:
This is not an oscillator, but an adapted version for a candlestick chart (line only). Using it, you can clearly see where the market is moving based on the cumulative volume delta. The cool thing is that you can include your moving average applied to the cumulative volume delta. Thanks to this, you can see a trend movement, a return to the moving average to continue the trend.
Opportunities not lost:
The most interesting thing is that it remains possible to observe the divergence of the asset and the cumulative delta of the volume. This gives a great advantage. Those who have not worked with divergence do not rush into it right away. There may be 3 peaks in divergence (as with oversold/overbought), but it works many times more clearly than RSI and MACD.
Here's a good example on the daily chart. The moment we were all waiting for 75,000. The cumulative Delta Volume fell with each peak, while the price chart (tops) were approximately level.
Usually they throw (allow to buy) without volume for sales (delta down, price up) in order to merge at a more interesting price. And they also drain without the volume of purchases for a squeeze (price down / delta up) and again I buy back at a more interesting price. There are more complex estimation options; you can read about the divergence of the cumulative delta of the CVD volume. I just recommend doing a backtest.
Recommendations:
One more moment. Use the indicator on the stock exchange, where there is the most money, by turnover and by asset. Choose Binance, not Bybit. Those. choose the BTC asset, for example, but on the Binance exchange. Not futures, but spot.
The greater the turnover on the exchange for an asset, and the fewer opportunities to enter with leverage, the less volatile the price and the more beautiful and accurate the chart.
Works on all assets. There is a subscription limit (the number of calculated bars) that has little effect on anything. Can be applied to any asset where there is volume (not SPX, but ES1, not MOEX, but MX1!).
Перевод на русский.
Вчера написал с помощью AI простой и легкий код индикатора "Кумулятивная Дельта Объема со скользящей средней".
Введение:
Дельта (Delta) — это разница между покупками и продажами. Если покупок больше — дельта положительная, если больше продаж — дельта отрицательная. Мы смотрим на каждую свечу отдельно на том или ином таймфрейме, что не дает нам общей картины во времени.
Кумулятивная дельта объема — во многом продолжение дельты объёмов, но она включает более длительные периоды времени и дает другие торговые сигналы. Как и индикатор дельты объёма, индикатор кумулятивной дельты объема (Cumulative Volume Delta, CVD) измеряет связь между давлением покупателей и продавцов, но при этом не фокусируется на одной конкретной свече (или другом элементе графика), а дает картину во времени.
Что хотел получить?
Часто видел, что к кумулятивной детьте объема пытались прикрепить RSI и облако ишимоку, но никогда не видел кумулятивную дельту объема со скользящей средней. Скользящая средняя которая берет данные от кумулятивной дельты объема будет отличатся от скользящей средней основного актива. Было замечено, что часто в местах пересечения кумулятивной дельты объема и скользящей средней - это более точный сигнал к покупке или продаже, чем такие же пересечения по основному активу.
Изначально было сделанно 5 скользящих со значениями 21, 55, 89, 144 и 233, но я понял, что это перегружает график. Проще менять длину скользящей средней от используемого таймфрейма, чем перегружать график. Финальный вариант с одной скользящей SMA, EMA, RMA, WMA, HMA.
Логика применения скользящей средней к кумулятивной дельте объема:
Вы выбираете скользящую среднюю, так же как и на основном активе. Применяйте ту скользящую среднюю, которая вам нравится и период, с которым привыкли работать. На каждом TF свои настройки.
Что мы видим на графике:
Это не осциллятор, а адаптированная версия к свечному графику (только линия). С помощью него вы можете наглядно посмотреть куда движется рынок по кумулятивной дельте объема. Самое интересное, что вы можете включить свою скользящую среднюю, применимую к кумулятивной дельте объема. Благодаря этому вы можете видеть трендовое движение, возврат к средней скользящей для продолжения тренда.
Не потерянные возможности:
Самое интересное, что осталась возможность наблюдать за дивергенцией актива и кумулятивной дельтой объема. Это дает большое преимущество. Те кто не работал с дивергенцией не бросайтесь на нее сразу. Может быть и 3 пика в дивергенции (как с перепроданностью / перекупленностью), но работает в разы четче чем RSI и MACD.
Вот хороший пример на дневном графике. Момент когда мы все ждали 75000. Кумулятивная Дельта Объема падала с каждым пиком, в то время как ценовой график (вершины) были примерно на уровне.
Обычно закидывают (разрешают покупать) без объема на продажи (дельта вниз цена вверх), чтобы слить по более интересной цене. И также сливают без объема покупок для сквиза (цена вниз / дельта вверх) и опять откупаю по более интересной цене. Существуют более сложные варианты оценки, можете почитать про дивергенцию кумулятивной дельты объема CVD. Только рекомендую сделать бэктест.
Рекомендации:
Еще момент. Используйте индикатор, на бирже, там где больше всего денег, по обороту и по активу. Выбирайте не Bybit, а Binance. Т.е. выбираете актив BTC, к примеру, но на бирже Binance. Не фьючерс, а спот.
Чем более большие обороты на бирже, по активу, и меньше возможностей заходить с плечами, тем менее волатильная цена и более красивый и точный график.
Работает на всех активах. Есть ограничение по подписке (количество рассчитываемых баров) мало влияет на что. Можно применить к любому активу где есть объем (не SPX, а ES1, не MOEX, а MX1!).
Fibo Level DailyOverview
The "Fibo Level Daily" strategy is designed for trading Bitcoin (BTC) using the 1-hour timeframe. This strategy relies on Fibonacci levels calculated from the previous day's range and determines entry and exit points based on whether the previous daily candle was bullish or bearish.
How It Works
Fibonacci Levels Calculation:
The indicator calculates Fibonacci levels (0.8, 0.5, and 0.2) based on the high and low of the previous day.
The levels are calculated as follows:
0.8: This level is calculated by multiplying the difference between the previous day's high and low by 0.8 and adding the result to the previous day's low.
0.5: This is the midpoint of the previous day's range.
0.2: This level is calculated by multiplying the difference between the previous day's high and low by 0.2 and adding the result to the previous day's low.
Identifying the Previous Day's Trend:
The indicator checks if the previous daily candle closed bullish (close greater than open) or bearish (close less than open).
Setting Entry and Take Profit Levels:
If the previous daily candle was bearish:
Sell Entry: Wait for the price to rise to the 0.5 level (midpoint of the previous day's range) to enter a sell position.
Take Profit: The profit target is set at the 0.2 level.
If the previous daily candle was bullish:
Buy Entry: Wait for the price to drop to the 0.5 level (midpoint of the previous day's range) to enter a buy position.
Take Profit: The profit target is set at the 0.8 level.
Visual Representation on the Chart:
The indicator draws horizontal lines on the chart representing the Fibonacci levels (0.8, 0.5, and 0.2) from the previous day. These lines help visualize entry and exit points clearly.
Additionally, the last 15 minutes of the daily session are highlighted with a light red background to indicate the session's end.
Conditions of Use:
Timeframe: This indicator is specifically designed for use on the 1-hour timeframe.
Assets: While it can be used on any asset, it is optimized for trading Bitcoin (BTC).
Steps to Use the Indicator
Add the Indicator:
Insert the "Fibo Level Daily" indicator script into your trading platform (such as TradingView).
Select Timeframe:
Change the chart timeframe to 1 hour.
Interpret the Levels:
Observe the horizontal lines drawn on the chart representing the Fibonacci levels.
Identify whether the previous daily candle was bullish or bearish.
Wait for the Entry Price:
For a bearish previous daily candle: Wait for the price to rise to the 0.5 level to enter a sell position.
For a bullish previous daily candle: Wait for the price to drop to the 0.5 level to enter a buy position.
Set the Profit Target:
For a sell: Set your profit target at the 0.2 level.
For a buy: Set your profit target at the 0.8 level.
Execute the Trade:
Initiate the trade once the price reaches the entry level and set your take profit according to the identified trend from the previous day.
Conclusion
The "Fibo Level Daily" strategy provides a clear and precise methodology for identifying entry and exit points in Bitcoin using Fibonacci levels. By following this step-by-step guide, any trader can take advantage of market movements based on the previous day's price action, optimizing their trading opportunities on the 1-hour timeframe.
Volume Weighted Average Price Ratio (log) [ilyaQwerty]The VWAP Ratio indicator is a valuable tool for traders aiming to assess market trends and price movements in relation to the Volume Weighted Average Price (VWAP). Volume Weighted Average Price Ratio represents the ratio of the price of the asset compared to total traded volume in US Dollars. In a context of Bitcoin, VWAP ratio helps traders assess the market state, if it is overvalued or undervalued. High values of the indicator can suggest that the market is highly overvalued and low values can indicate a great buying opportunity.
Ratio Calculation: The VWAP Ratio is computed by dividing the current price by the VWAP (Price / VWAP). VWAP represents a ratio between a cumulative sum of a traded value (price multiplied by the volume) and a cumulative traded volume.
BTC-Specific Optimization: Although the indicator can be applied to various assets, the VWAP Ratio indicator is particularly useful for Bitcoin (BTC) due to its significant trading volume and unique market behaviour.