Total Returns indicator by PtahXPtahX Total Returns – True Total-Return View for Any Symbol
Most charts only show price. This script shows what your position actually did once you include dividends and, optionally, inflation.
What this indicator does
1. Builds a Total Return series
You choose how dividends are treated:
* Reinvest (default): All gross dividends are automatically reinvested into more shares on the ex-dividend bar.
* Cash: Dividends are kept as cash added on top of your initial position.
* Ignore: Price only, like a regular chart.
This answers: “If I bought once at the start and held, how much would that position be worth now, given this dividend policy?”
2. Optional inflation-adjusted (real) returns
You can also plot a real total-return line, which adjusts for inflation using a CPI series.
This answers: “How did my purchasing power change after inflation?”
3. Stats window and exponential trendline
You can pick the time window:
* Since inception (full available history)
* YTD
* Last 1 Year
* Last 5 Years
* Custom start date
For that window, the script:
* Normalizes Total Return to 1.0 at the window start.
* Fits an exponential trendline (pink) to the normalized series.
* Displays a stats table in the bottom-right showing:
• Overall Return (%) over the selected range
• CAGR (compound annual growth rate, % per year)
• Trendline growth (% per year)
• R² of the trendline (fit quality)
• A separate “Since inception” block (overall return and CAGR from the first bar on the chart)
How to use it
1. Add the indicator to your chart.
2. Open the settings:
Total Return & Dividends
* Dividend mode
• Reinvest: closest to a true total-return curve (default).
• Cash: price plus cash dividends.
• Ignore: price only.
* Plot inflation-adjusted TR line
• Turn this on if you want to see a real (CPI-adjusted) total-return line.
Inflation / Real Returns
* Inflation country code and field code
• Leave defaults if you just want a standard CPI series.
* Use real TR for stats & trendline
• On: stats and trendline use the inflation-adjusted curve.
• Off: stats use the nominal (non-adjusted) total return.
Stats Range & Trendline
* Stats range: Since inception, YTD, 1 Year, 5 Years, or Custom date.
* Custom date: set year, month, and day if you choose “Custom date”.
* Plot TR exponential trendline: show or hide the pink curve.
* Show stats table / Show Overall Return / Show Trendline stats: toggle what appears in the table.
3. Zoom and change timeframe as usual. The stats range is based on calendar time (YTD, 1Y, 5Y, etc.), not bar count, so the numbers stay meaningful as you change resolutions.
How to read the outputs
* Teal line: Nominal Total Return (using your chosen dividend mode).
* Orange line (if enabled): Real (inflation-adjusted) Total Return.
* Pink line (if enabled): Exponential trendline for the selected stats window.
On the right edge, small labels show the latest value of each active line.
In the bottom-right stats table:
* Overall Return: total percentage gain or loss over the chosen stats range.
* CAGR: the smoothed annual rate that would turn 1.0 into the current value over that range.
* Exponential Trendline: the average trendline growth per year and the R².
• R² near 1 means prices follow a clean exponential path.
• Lower R² means more noise or sideways movement around the trend.
* Range: which window those stats apply to (YTD, 1Y, 5Y, etc.).
* Since inception: overall return and CAGR from the first bar on the chart up to the latest bar, independent of the current stats range.
Use this when you want to compare true performance, not just price – especially for dividend-heavy ETFs, funds, and income strategies.
Regressions
Donchian Predictive Channel (Zeiierman)█ Overview
Donchian Predictive Channel (Zeiierman) extends the classic Donchian framework into a predictive structure. It does not just track where the range has been; it projects where the Donchian mid, high, and low boundaries are statistically likely to move based on recent directional bias and volatility regime.
By quantifying the linear drift of the Donchian midline and the expansion or compression rate of the Donchian range, the indicator generates a forward propagation cone that reflects the prevailing trend and volatility state. This produces a cleaner, more analytically grounded projection of future price corridors, and it remains fully aligned with the signal precision of the underlying Donchian logic.
█ How It Works
⚪ Donchian Core
The script first computes a standard Donchian Channel over a configurable Length:
Upper Band (dcHi) – highest high over the lookback.
Lower Band (dcLo) – lowest low over the lookback.
Midline (dcMd) – simple midpoint of upper and lower: (dcHi + dcLo)/ 2.
f_getDonchian(length) =>
hi = ta.highest(high, length)
lo = ta.lowest(low, length)
md = (hi + lo) * 0.5
= f_getDonchian(lenDC)
⚪ Slope Estimation & Range Dynamics
To turn the Donchian Channel into a predictive model, the script measures how both the midline and the range are changing over time:
Midline Slope (mSl) – derived from a 1-bar difference in linear regression of the midline.
Range Slope (rSl) – derived from a 1-bar difference in linear regression of the Donchian range (dcHi − dcLo).
This pair describes both directional drift (uptrend vs. downtrend) and range expansion/compression (volatility regime).
f_getSlopes(midLine, rngVal, length) =>
mSl = ta.linreg(midLine, length, 0) - ta.linreg(midLine, length, 1)
rSl = ta.linreg(rngVal, length, 0) - ta.linreg(rngVal, length, 1)
⚪ Forward Projection Engine
At the last bar, the indicator constructs a set of forward points for the mid, upper, and lower projections over Forecast Bars:
The midline is projected linearly using the midline slope per bar.
The range is adjusted using the range slope per bar, creating either a widening cone (expansion) or a tightening cone (compression).
Upper and lower projections are then anchored around the projected midline, with logic that keeps the structure consistent and prevents pathological flips when slope changes sign.
f_generatePoints(hi0, md0, lo0, steps, midSlp, rngSlp) =>
upPts = array.new()
mdPts = array.new()
dnPts = array.new()
fillPts = array.new()
hi_vals = array.new_float()
md_vals = array.new_float()
lo_vals = array.new_float()
curHiLocal = hi0
curLoLocal = lo0
curMidLocal = md0
segBars = math.floor(steps / 3)
segBars := segBars < 1 ? 1 : segBars
for b = 0 to steps
mdProj = md0 + midSlp * b
prevRange = curHiLocal - curLoLocal
rngProj = prevRange + rngSlp * b
hiTemp = 0.0
loTemp = 0.0
if midSlp >= 0
hiTemp := math.max(curHiLocal, mdProj + rngProj * 0.5)
loTemp := math.max(curLoLocal, mdProj - rngProj * 0.5)
else
hiTemp := math.min(curHiLocal, mdProj + rngProj * 0.5)
loTemp := math.min(curLoLocal, mdProj - rngProj * 0.5)
hiProj = hiTemp < mdProj ? curHiLocal : hiTemp
loProj = loTemp > mdProj ? curLoLocal : loTemp
if b % segBars == 0
curHiLocal := hiProj
curLoLocal := loProj
curMidLocal := mdProj
array.push(hi_vals, curHiLocal)
array.push(md_vals, curMidLocal)
array.push(lo_vals, curLoLocal)
array.push(upPts, chart.point.from_index(bar_index + b, curHiLocal))
array.push(mdPts, chart.point.from_index(bar_index + b, curMidLocal))
array.push(dnPts, chart.point.from_index(bar_index + b, curLoLocal))
ptSet.new(upPts, mdPts, dnPts)
⚪ Rejection Signals
The script also tracks failed Donchian breakouts and marks them as potential reversal/reversion cues:
Signal Down: Triggered when price makes an attempt above the upper Donchian band but then pulls back inside and closes above the midline, provided enough bars have passed since the last signal.
Signal Up: Triggered when price makes an attempt below the lower Donchian band but then snaps back inside and closes below the midline, also requiring sufficient spacing from the previous signal.
// Base signal conditions (unfiltered)
bearCond = high < dcHi and high >= dcHi and close > dcMd and bar_index - lastMarker >= lenDC
bullCond = low > dcLo and low <= dcLo and close < dcMd and bar_index - lastMarker >= lenDC
// Apply MA filter if enabled
if signalfilter
bearCond := bearCond and close < ma // Bearish only below MA
bullCond := bullCond and close > ma // Bullish only above MA
signalUp := false
signalDn := false
if bearCond
lastMarker := bar_index
signalDn := true
if bullCond
lastMarker := bar_index
signalUp := true
█ How to Use
The Donchian Predictive Channel is designed to outline possible future price trajectories. Treat it as a directional guide, not a fixed prediction tool.
⚪ Map Future Support & Resistance
Use the projected upper and lower paths as dynamic future reference levels:
Projected upper band ≈ is likely a resistance corridor if the current trend and volatility persist.
Projected lower band ≈ likely support corridor or expected downside range.
⚪ Trend Path & Volatility Cone
Because the projection is driven by midline and range slopes, the channel behaves like a trend + volatility cone:
Steep positive midline slope + expanding range → accelerating, high-volatility trend.
Flat midline + compressing range → coiling/contracting regime ahead of potential expansion.
This helps you distinguish between a gentle drift and an aggressive move that likely needs more risk buffer.
⚪ Reversion & Rejection Signals
The Donchian-based signals are especially useful for mean-reversion and fade-style trades.
A Signal Down near the upper band can mark a failed breakout and a potential rotation back toward the midline or the lower projected band.
A Signal Up near the lower band can flag a failed breakdown and a potential snap-back up the channel.
When Filter Signals is enabled, these signals are only generated when they align with the chart’s directional bias as defined by the moving average. Bullish signals are allowed only when the price is above the MA, and bearish signals only when the price is below it.
This reduces noise and helps ensure that reversions occur in harmony with the prevailing trend environment.
█ Settings
Length – Donchian lookback length. Higher values produce a smoother channel with fewer but more stable signals. Lower values make the channel more reactive and increase sensitivity at the cost of more noise.
Forecast Bars – Number of bars used for projecting the Donchian channel forward.
Higher values create a broader, longer-term projection. Lower values focus on short-horizon price path scenarios.
Filter Signals – Enables directional filtering of Donchian signals using the selected moving average. When ON, bullish signals only trigger when the price is above the MA, and bearish signals only trigger when the price is below it. This helps reduce noise and aligns reversions with the broader trend context.
Moving Average Type – The type of moving average used for signal filtering and optional plotting.
Choose between SMA, EMA, WMA, or HMA depending on desired responsiveness. Faster averages (EMA, HMA) react quickly, while slower ones (SMA, WMA) smooth out short-term noise.
Moving Average Length – Lookback length of the moving average. Higher values create a slower, more stable trend filter. Lower values track price more tightly and can flip the directional bias more frequently.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
MOMO Exhaustion Short Signal Strategy v6 alexh1166Prints Short Signals for Exhausted Momentum stocks primed for reversals
Raymond Swing Day [Qanexra] - The Multi-Timeframe Level PlannerThe Raymond Swing Day indicator is the essential final piece of the Qanexra trading suite. While RaymondTrending confirms momentum and RaymondRatio filters noise, this tool provides the critical price levels necessary to execute trades with precision.
It automatically calculates and plots Fibonacci Pivot Points across various timeframes, transforming static price action into a dynamic roadmap for the trading day or week.
Why Use Pivot Points? Pivot Points are foundational tools, acting as gravitational price levels where supply and demand are expected to meet or reverse. They are crucial for setting:
Entry Zones
Stop-Loss (Invalidation)
Take-Profit Targets
Core Features & Calculation:
Advanced Fibonacci Pivots: Calculates the central , three Resistance , and three Support levels using the widely respected Fibonacci formula.
Flexible Timeframe Engine: Choose a major anchor timeframe (Daily, Weekly, Monthly, etc.) or set it to Auto for adaptive level calculation.
Multi-Layer Overlay: Simultaneously view price levels from up to three different timeframes (e.g., Daily, overlaid with 120m/H2, and 30m/M30 levels) to identify areas of confluence—the strongest decision zones.
Clear Trading Interpretation: Each level comes with a label indicating its suggested use:
Look for Entry: The central decision point.
Bullish/Bearish Try to Extend: The initial boundary for a directional move.
Bullish/Bearish Take Profit: Common targets for intraday or swing moves.
Aggressive Bullish/Bearish: Extreme levels for high-volatility moves or max extension targets.
Integration with the Qanexra Suite: Combine Raymond Swing Day levels with:
RaymondTrending confirmation of momentum.
RaymondRatio filter for noise avoidance.
When your volatility indicators confirm a breakout, the Raymond Swing Day levels tell you exactly where to enter and where to target your exit.
Relative Performance Areas [LuxAlgo]The Relative Performance Areas tool enables traders to analyze the relative performance of any asset against a user-selected benchmark directly on the chart, session by session.
The tool features three display modes for rescaled benchmark prices, as well as a statistics panel providing relevant information about overperforming and underperforming streaks.
🔶 USAGE
Usage is straightforward. Each session is highlighted with an area displaying the asset price range. By default, a green background is displayed when the asset outperforms the benchmark for the session. A red background is displayed if the asset underperforms the benchmark.
The benchmark is displayed as a green or red line. An extended price area is displayed when the benchmark exceeds the asset price and is set to SPX by default, but traders can choose any ticker from the settings panel.
Using benchmarks to compare performance is a common practice in trading and investing. Using indexes such as the S&P 500 (SPX) or the NASDAQ 100 (NDX) to measure our portfolio's performance provides a clear indication of whether our returns are above or below the broad market.
As the previous chart shows, if we have a long position in the NASDAQ 100 and buy an ETF like QQQ, we can clearly see how this position performs against BTSUSD and GOLD in each session.
Over the last 15 sessions, the NASDAQ 100 outperformed the BTSUSD in eight sessions and the GOLD in six sessions. Conversely, it underperformed the BTCUSD in seven sessions and the GOLD in nine sessions.
🔹 Display Mode
The display mode options in the Settings panel determine how benchmark performance is calculated. There are three display modes for the benchmark:
Net Returns: Uses the raw net returns of the benchmark from the start of the session.
Rescaled Returns: Uses the benchmark net returns multiplied by the ratio of the benchmark net returns standard deviation to the asset net returns standard deviation.
Standardized Returns: Uses the z-score of the benchmark returns multiplied by the standard deviation of the asset returns.
Comparing net returns between an asset and a benchmark provides traders with a broad view of relative performance and is straightforward.
When traders want a better comparison, they can use rescaled returns. This option scales the benchmark performance using the asset's volatility, providing a fairer comparison.
Standardized returns are the most sophisticated approach. They calculate the z-score of the benchmark returns to determine how many standard deviations they are from the mean. Then, they scale that number using the asset volatility, which is measured by the asset returns standard deviation.
As the chart above shows, different display modes produce different results. All of these methods are useful for making comparisons and accounting for different factors.
🔹 Dashboard
The statistics dashboard is a great addition that allows traders to gain a deep understanding of the relationship between assets and benchmarks.
First, we have raw data on overperforming and underperforming sessions. This shows how many sessions the asset performance at the end of the session was above or below the benchmark.
Next, we have the streaks statistics. We define a streak as two or more consecutive sessions where the asset overperformed or underperformed the benchmark.
Here, we have the number of winning and losing streaks (winning means overperforming and losing means underperforming), the median duration of each streak in sessions, the mode (the number of sessions that occurs most frequently), and the percentages of streaks with durations equal to or greater than three, four, five, and six sessions.
As the image shows, these statistics are useful for traders to better understand the relative behavior of different assets.
🔶 SETTINGS
Benchmark: Benchmark for comparison
Display Mode: Choose how to display the benchmark; Net Returns: Uses the raw net returns of the benchmark. Rescaled Returns: Uses the benchmark net returns multiplied by the ratio of the benchmark and asset standard deviations. Standardized Returns: Uses the benchmark z-score multiplied by the asset standard deviation.
🔹 Dashboard
Dashboard: Enable or disable the dashboard.
Position: Select the location of the dashboard.
Size: Select the dashboard size.
🔹 Style
Overperforming: Enable or disable displaying overperforming sessions and choose a color.
Underperforming: Enable or disable displaying underperforming sessions and choose a color.
Benchmark: Enable or disable displaying the benchmark and choose colors.
Bitcoin vs M2 Global Liquidity (Lead 3M) - Table Ticker═══════════════════════════════════════════════════════════════
Bitcoin vs M2 Global Liquidity - Regression Indicator
═══════════════════════════════════════════════════════════════
TECHNICAL SPECS
• Pine Script v6
• Overlay: false (separate pane)
• Data sources: 5 M2 series + 4 FX pairs (request.security)
• Calculation: Rolling OLS linear regression with configurable lead
• Output: Regression line + ±1σ/±2σ confidence bands + R² ticker
CORE FUNCTIONALITY
Aggregates M2 money supply from 5 central banks (CN, US, EU, JP, GB),
converts to USD, applies time-lead, runs rolling linear regression
vs Bitcoin price, plots predicted value with confidence intervals.
CONFIGURABLE PARAMETERS
Input Controls:
• Lead Period: 0-365 days (default: 90)
• Lookback Window: 50-2000 bars (default: 750)
• Bands: Toggle ±1σ and ±2σ visibility
• Colors: BTC, M2, regression line, confidence zones
• Ticker: Position, size, colors, transparency
Advanced Settings:
• Table display: R², lead, M2 total, country breakdown (%)
• Ticker customization: 9 position options, 6 text sizes
• Border: Width 0-10px, color, outline-only mode
DATA AGGREGATION
Sources (via request.security):
• ECONOMICS:CNM2, USM2, EUM2, JPM2, GBM2
• FX_IDC:CNYUSD, JPYUSD (others: FX:EURUSD, GBPUSD)
• Conversion: All M2 → USD → Sum / 1e12 (trillions)
REGRESSION ENGINE
• Arrays: m2Array, btcArray (dynamic sizing, auto-trim)
• Window: Rolling (lookbackPeriod bars)
• Lead: Time-shift via array indexing (i + leadPeriodDays)
• Calc: Manual OLS (covariance/variance), no built-in ta functions
• Outputs: slope, intercept, r2, stdResiduals
CONFIDENCE BANDS
±1σ and ±2σ calculated from standard deviation of residuals.
Fill zones between upper/lower bounds with configurable transparency.
ALERTS
5 pre-configured alertcondition():
• Divergence > 15%
• Price crosses ±1σ bands (up/down)
• Price crosses ±2σ bands (up/down)
TICKER TABLE
Dynamic table.new() with 9 rows:
• R² value (4 decimals)
• Lead period (days + months)
• M2 Global total (trillions USD)
• Country breakdown: CN, US, EU, JP, GB (absolute + %)
• Optional: Hide/show M2 details
VISUAL CUSTOMIZATION
All plot() elements support:
• Color picker inputs (group="Couleurs")
• Line width: 1-3px
• Transparency: 0-100% for zones
• Offset: M2 plot has +leadPeriodDays offset option
PERFORMANCE
• Max arrays size: lookbackPeriod + leadPeriodDays + 200
• Calculations: Only when array.size >= lookbackPeriod + leadPeriodDays
• Table update: barstate.islast (once per bar)
• Request.security: gaps_off mode
CODE STRUCTURE
1. Inputs (lines 7-54)
2. Data fetch (lines 56-76)
3. M2 aggregation (line 78)
4. Array management (lines 84-95)
5. Regression calc (lines 97-172)
6. Prediction + bands (lines 174-183)
7. Plots (lines 185-199)
8. Ticker table (lines 201-236)
9. Alerts (lines 238-246)
DEPENDENCIES
None. Pure Pine Script v6. No external libraries.
LIMITATIONS
• Daily timeframe recommended (1D)
• Requires 750+ bars history for optimal calculation
• M2 data availability: TradingView ECONOMICS feed
• Max lines: 500 (declared in indicator())
CUSTOMIZATION EXAMPLES
• Shorter lookback (200d): More reactive, lower R²
• Longer lookback (1500d): More stable, regime mixing
• No bands: Set showBands=false for clean view
• Different lead: Test 60d, 120d for sensitivity analysis
TECHNICAL NOTES
• Manual OLS implementation (no ta.linreg)
• Array-based lead application (not plot offset)
• M2 values stored in trillions (/ 1e12) for readability
• Residuals array cleared/rebuilt each calculation
OPEN SOURCE
Code fully visible. Modify, fork, analyze freely.
No hidden calculations. No proprietary data.
VERSION
1.0 | November 2025 | Pine Script v6
═══════════════════════════════════════════════════════════════
Smart Trend Signal with Bands [wjdtks255]Indicator Description for TradingView
Title: Adaptive Trend Kernel
Description:
The "Adaptive Trend Kernel " is a versatile trend-following and volatility indicator designed to help traders identify dynamic market trends, potential reversals, and price extremes within a channel. Built upon a customized linear regression model, this indicator provides clear visual cues to enhance your trading decisions.
Key Features:
Regression Line: A central dynamic line representing the core trend direction, calculated based on a user-defined "Regression Length."
Regression Bands: Standard deviation-based bands plotted around the Regression Line, which act like a dynamic channel. These bands expand and contract with market volatility, indicating potential overbought/oversold conditions relative to the trend.
Trend Reversal Signals: Distinct "Up" (green triangle up) and "Down" (red triangle down) signals are generated when the price (close) crosses over or under the Regression Line. These signals suggest potential shifts in the short-term trend direction.
Visual Customization: Highly flexible input options for adjusting line colors, band colors, line width, and panel opacity. Users can toggle the visibility of bands and trend labels to suit their chart preferences.
Panel Label: A subtle "Regression" label is dynamically positioned, offering clear context without cluttering the main chart.
How it Works: The indicator calculates a linear regression line as the adaptive center of the price movement. Standard deviation is then used to create upper and lower bands, encapsulating typical price fluctuations. Signals are fired when price breaks out of the regression line, suggesting a momentum shift in line with the established trend or a potential reversal.
Trading Methods & Strategies
Here are some trading strategies you can apply using the "Adaptive Trend Kernel " indicator:
Trend-Following with Confirmation:
Long Entry: Look for an "Up" signal (green triangle up) when the price is above the Regression Line, especially after a brief retracement towards the line. This confirms that the uptrend is likely resuming.
Short Entry: Look for a "Down" signal (red triangle down) when the price is below the Regression Line, especially after a brief rally towards the line. This confirms that the downtrend is likely resuming.
Exit Strategy: Consider exiting if an opposite signal appears, or if the price closes outside the opposite band, indicating potential overextension or reversal.
Reversal / Counter-Trend Play:
Long Entry (Aggressive): When the price approaches or briefly dips below the Lower Regression Band and then generates an "Up" signal (green triangle up). This could indicate a potential bounce from an oversold condition relative to the trend.
Short Entry (Aggressive): When the price approaches or briefly moves above the Upper Regression Band and then generates a "Down" signal (red triangle down). This could indicate a potential pullback from an overbought condition relative to the trend.
Confirmation: This strategy works best when combined with other reversal confirmation patterns (e.g., bullish/bearish engulfing candlesticks) or divergences in other momentum indicators (like RSI).
Volatility Breakout:
Entry (Long): After a period of low volatility where the Regression Bands are narrow, observe if the price decisively breaks above the Upper Regression Band and an "Up" signal appears. This suggests a strong bullish momentum breakout.
Entry (Short): After a period of low volatility where the Regression Bands are narrow, observe if the price decisively breaks below the Lower Regression Band and a "Down" signal appears. This suggests a strong bearish momentum breakdown.
Management: Volatility breakouts can be swift; use appropriate risk management and profit-taking strategies.
Important Considerations:
Risk Management: Always apply proper stop-loss and take-profit levels. No indicator is infallible.
Timeframe Sensitivity: Adjust the "Regression Length" and "Band Multiplier" according to the asset and timeframe you are trading. Shorter lengths might suit scalping, while longer lengths are better for swing trading.
Confirmation with Other Tools: For higher conviction trades, use this indicator in conjunction with other technical analysis tools such like volume, MACD, or RSI on an oscillator pane.
Backtesting: Always backtest any strategy on historical data to understand its performance characteristics before live trading.
Bitcoin AHR999 Indicator
AHR999 Indicator
The AHR999 Indicator is created by a Weibo user named ahr999. It assists Bitcoin investors in making investment decisions based on a timing strategy. This indicator implies the short-term returns of Bitcoin accumulation and the deviation of Bitcoin price from its expected valuation.
When the AHR999 index is < 0.45 , it indicates a buying opportunity at a low price.
When the AHR999 index is between 0.45 and 1.2 , it is suitable for regular investment.
When the AHR999 index is > 1.2 , it suggests that the coin price is relatively high and not suitable for trading.
In the long term, Bitcoin price exhibits a positive correlation with block height. By utilizing the advantage of regular investment, users can control their short-term investment costs, keeping them mostly below the Bitcoin price.
Jace's Raff ChannelJust a basic, no-frills, Raff Regression channel. You can adjust the regression length and provide a starting point offset.
STEVEN Breakout VWAP (M1/M5/M15)This strategy combines breakout detection, VWAP confirmation, and ATR-based risk management to identify high-probability trading setups.
It automatically generates Long and Short entries when price action breaks key levels and aligns with VWAP direction, providing clear visual signals and automated backtesting capability.
🔍 How It Works
Breakout Detection:
The script identifies when price breaks above recent highs or below recent lows (based on the last 10 candles).
VWAP Confirmation:
A Long signal is generated when price breaks above resistance and stays above VWAP.
A Short signal is generated when price breaks below support and stays below VWAP.
ATR-based Stop Loss & Take Profit:
Stop Loss = 1× ATR (adjustable).
Take Profit = 1.5× risk (Risk/Reward 1:1.5).
Both are calculated dynamically at signal time.
Backtesting Ready:
Fully compatible with TradingView’s Strategy Tester, allowing users to analyze performance, win rate, and profit factors automatically.
🧩 Visual Features
Green triangles below the bars → Long signal.
Red triangles above the bars → Short signal.
Orange VWAP line → confirms trend direction.
⚙️ Inputs
ATR Length and Multiplier
VWAP Display toggle
Stop Loss and Risk/Reward settings
Signal marker size
Bcnk——GJBBcnk-GJB Trend Detection Indicator
Basic Introduction
Bcnk-GJB is a technical indicator based on Pine Script 6, displayed as an overlay on the price chart. This indicator analyzes market trend conditions using multiple moving average lines.
Visual Features
· Displayed directly on the candlestick chart
· Uses two colors: green and red
· Includes both upward and downward arrow shapes
· Arrows appear above or below the candlesticks
Technical Components
· Utilizes 10 calculation lines with different periods
· Period parameters increase from 31 to 40
· Each line has independent color status
· Employs linear regression calculation method
Display Elements
Color Status
· Green represents upward movement
· Red represents downward movement
Arrow Signals
· Green upward triangles: displayed below candlesticks
· Red downward triangles: displayed above candlesticks
Parameter Settings
Data Source Selection
· Default calculation uses closing price
Offset Adjustment
· Adjustable display position of the indicator
Feature Characteristics
· Multiple lines displayed simultaneously
· Intuitive and easy-to-understand color changes
· Clear and distinct arrow markers
· Simple and direct status recognition
Interface Description
· Indicator name: Bcnk——GJB
· Short title: Bcnk——GJB
· Display position: Overlay on top of price chart
This is a trend status visualization tool that helps observe market movement changes through colors and arrows.
Bcnk——MFB//@version=6
indicator(title = '', shorttitle = 'Bcnk——MFB', overlay = true)
length = input(title = 'Length', defval = 32)
offset = input(title = 'Offset', defval = 0)
src = input(close, title = 'Source')
// ZLSMA 计算
lsma = ta.linreg(src, length, offset)
lsma2 = ta.linreg(lsma, length, offset)
zlsma = lsma + lsma - lsma2
// 趋势方向(颜色用它控制)
isUp = zlsma >= zlsma
col = isUp ? color.green : color.red
// 主线
plot(zlsma, color = col, linewidth = 3)
// ============================
// 变色(趋势方向变)就画箭头
// ============================
// 红 → 绿
upSignal = isUp and not isUp
// 绿 → 红
downSignal = not isUp and isUp
// 上箭头
plotshape(upSignal, title = 'Up Arrow', style = shape.arrowup, location = location.belowbar, color = color.new(color.green, 0), size = size.small)
// 下箭头
plotshape(downSignal, title = 'Down Arrow', style = shape.arrowdown, location = location.abovebar, color = color.new(color.red, 0), size = size.small)
Lorentzian Length Adaptive Moving Average [LLAMA] Adaptation of "Machine Learning: Lorentzian Classification" by
Gradient color by base on work by
LLAMA: A regime-aware adaptive moving average that bends with the market.
Start with a problem traders know:
Traditional moving averages are either too slow (EMA200) or too fast (EMA9)
Adaptive MAs exist, but they often hug price too tightly or smooth too much, failing to balance bias and tactics
LLAMA uses a Lorentzian distance function to adapt its length dynamically. Instead of a fixed smoothing window, it stretches or contracts depending on market conditions. This distortion reduces lag while still providing a clear bias line.
The indicator looks back at recent bars and measures how similar they are using a Lorentzian distance (a log‑scaled absolute difference). It keeps track of the “nearest neighbors” — bars that most resemble the current regime. Each neighbor carries a label (long, short, neutral) based on simple price comparisons. By averaging these labels, LLAMA predicts whether the market is leaning bullish or bearish. That prediction is then mapped into a dynamic length between and .
Bullish bias -> length stretches toward max (smoother, more stable).
Bearish bias -> length contracts toward min (snappier, more reactive).
During breakouts, LLAMA tightens and comes into contact with bars, giving actionable signals. During chop, it stretches to avoid false triggers. It covers both ends of the spectrum (bias and tactics) in one line, something static MA's can't do.
Think of LLAMA as a lens that bends with the market:
Wide lens (max length) for big picture bias.
Narrow lens (min length) for tactical precision.
The "Lorentzian Loop" is the math that decides when to widen or narrow.
Gold𝑺𝒀𝑵𝑪🟡 Gold𝑺𝒀𝑵𝑪 - BTC follows GOLD
Gold𝑺𝒀𝑵𝑪 is a quantitative projection tool that visualizes how Bitcoin (BTC/USD) would perform if it mirrored the recent price behavior of Gold (XAU/USD).
It extends Gold’s last n days of normalized performance forward on the BTC chart and builds a volatility-adjusted projection corridor.
⚙️ Core Mechanics
Projection Engine:
Calculates Gold’s relative performance over the selected lookback window and applies it to BTC’s last closing price.
Volatility Scaling:
Computes the rolling standard deviation of Gold’s logarithmic returns to estimate the potential deviation range.
Dynamic Gradient Bands:
Three upper and lower standard deviation layers (1σ, 2σ, 3σ) are drawn using fading gradient fills to visualize increasing uncertainty.
Scenario Labels:
Displays key levels for:
𝑩𝑼𝑳𝑳𝑪𝑨𝑺𝑬 — +2σ projection
𝑬𝑿𝑷𝑬𝑪𝑻𝑬𝑫 — mean projection
𝑩𝑬𝑨𝑹𝑪𝑨𝑺𝑬 — −2σ projection
📈 Usage
Designed for 1D charts (daily timeframe).
Provides a comparative “sync” between Gold and Bitcoin to study cross-asset momentum, volatility symmetry, and directional bias.
Useful in macro correlation analysis or when modeling BTC’s potential movement under Gold-like conditions.
🧠 Interpretation
Gold𝑺𝒀𝑵𝑪 doesn’t predict - it synchronizes.
It offers a contextual view of BTC’s potential path if it followed Gold’s rhythm, enhanced by statistically derived volatility zones.
Created by: @SP_Quant
Credits: BitAura
Session H/L + Mid + Quarters — Live EvolvingSession High and Low with quarter lines for stop progressions with lines projected back X days
R Dominante by Mata (CRT Madre + CRT Interior)Dominant Range (Green + Red + Outstanding Lines)
This script automatically identifies the dominant parent candle (CRT – Candle Range Theory) and draws its range with a green box. It also allows you to create independent red parent candles that function autonomously.
Main Features:
Main Green Box: Represents the dominant parent candle, following the actual CRT:
It is activated and remains active while the price reaches the extremes.
It is only invalidated if there is a close outside the range.
It is automatically deactivated when it reaches both extremes (high and low).
Independent Red Box: Detects ranges independent of the green box and is deactivated when both extremes are reached.
Fully Automatic: No manual range adjustments required.
Configuration: Adjust the transparency of the boxes and the maximum number of bars to review.
Recommended Use:
Ideal for traders who apply Candle Range Theory (CRT).
Allows for clear identification of dominant and secondary ranges.
Useful for determining touch points of extremes and planning strategic entries and exits.
CME GapThe win rate is 99%, but the stoploss is uncertain
you will loss all your money in one failure
EPS Trendline (Fundamentals Insight by Mazhar Karimi)Overview
This indicator visualizes a company’s Earnings Per Share (EPS) data directly on the chart—pulled from TradingView’s fundamental database—and applies a dynamic linear regression trendline to highlight the long-term direction of earnings growth or decline.
It’s designed to help investors and quantitative traders quickly see how the company’s profitability (EPS) has evolved over time and whether it’s trending upward (growth), flat (stagnant), or downward (decline).
How it Works
Uses request.financial() to fetch EPS data (Diluted or Basic).
You can select whether to use TTM (Trailing Twelve Months), FQ (Fiscal Quarter), or FY (Fiscal Year) data.
The script fits a regression line (using ta.linreg) over a configurable window to visualize the underlying EPS trend.
Updates automatically when new financial data is released.
Inputs
EPS Period: Choose between FQ / FY / TTM
Use Diluted EPS: Toggle to compare Diluted vs. Basic EPS
Regression Window: Adjust how many bars are used to fit the trendline
Interpretation Tips
A rising trendline indicates earnings momentum and potential investor confidence.
A flat or declining trendline may warn of profitability slowdowns.
Combine with price action or valuation ratios (like P/E) for deeper analysis.
Works best on stocks or ETFs with fundamental data (not available for crypto or FX).
Suggestions / Use Cases
Pair with Price/Earnings ratio indicators to evaluate valuation vs. fundamentals.
Use in conjunction with earnings release events for context.
Ideal for long-term investors, swing traders, or fundamental quants tracking financial health trends.
Future Enhancements (Planned Ideas)
🔹 Option to display multiple regression lines (short-term and long-term)
🔹 Support for comparing multiple tickers’ EPS in the same pane
🔹 Integration with Net Income, Revenue, or Free Cash Flow trends
🔹 Add a “Rate of Change” signal for momentum-based EPS analysis
Hybrid Linear Regression Channel with Fibonacci LevelsHow to Use the LRC Fib Hybrid Indicator (Detailed Guide)
1. Read the Trend
2.The thick blue line is the linear regression midline.
If it’s sloping upward → uptrend (favor longs).
If sloping downward → downtrend (favor shorts).
The gray channel bounds are ±2 standard deviations (adjustable).
3. Understand Fibonacci Levels
Fib lines are projected parallel to the regression slope using the channel width as 100%:
Red dashed lines (0.0 to 0.786): Support zones in uptrends.
Blue dashed line (0.5): Midline/neutral.
Green dashed lines (1.0 to 2.618): Resistance zones in downtrends.
Strongest levels: 0.618 (support) and 1.618 (resistance).
4. Buy Signal (Long Entry)
Triggered when:
Midline is rising (uptrend confirmed).
Price crosses above a red Fib level (0.0–0.786).
Volume > 20-period average (if confirmation enabled).
Action:
Enter long on the green triangle (▲).
Stop Loss: Below the lower gray channel or recent swing low.
Take Profit: At 1.0, 1.272, or 1.618 green Fibs.
5. Sell Signal (Short Entry)
Triggered when:
Midline is falling (downtrend).
Price crosses below a green Fib level (1.272–2.618).
Volume > average.
Action:
Enter short on the red triangle (▼).
Stop Loss: Above the upper gray channel.
Take Profit: At 1.0, 0.786, or 0.618 red Fibs.
6. Use the Info Table (Bottom-Right)
Shows live prices of all Fib levels, current trend ("Up"/"Down"), and signal status ("BUY"/"SELL"/"None").
7. Customize via Settings (Gear Icon)
Regression Length: 50–200 (shorter = faster response).
Std Dev Multiplier: 1.5–3.0 (tighter/wider channel).
Toggle Fibs: Hide unused levels to declutter.
Volume Confirmation: Turn off for pure price action.
8. Set Alerts
Right-click chart → Add Alert → Select "Buy Signal" or "Sell Signal" → Enable popup/email/webhook.
9. Best Practices
Best in trending markets (avoid chop).
Wait for volume spike on bounce.
Combine with higher timeframe bias.
Use 0.618/1.618 as primary reversal zones.
This indicator gives you adaptive trend, precise entries, volume filter, and dynamic targets — all in one clean overlay.
Henry's MA & RSProviding 10 21 50 200 MA and RS rating based on S&P 500, basically for US stocks. Enjoy!
NSR - Dynamic Linear Regression ChannelOverview
The NSR - Dynamic Linear Regression Channel is a powerful overlay indicator that plots a dynamic regression-based channel around price action. Unlike static channels, this tool continuously recalculates the linear regression trendline from a user-defined starting point and builds upper and lower boundaries using a combination of standard deviation and maximum price deviations (highs/lows).
It visually separates "Premium" (overvalued) and "Discount" (undervalued) zones relative to the regression trend — ideal for mean-reversion, breakout, or trend-following strategies.
Key Features
Dynamic Regression Line Calculates slope, intercept, and average using full lookback from a reset point.
Adaptive Channel Width Combines standard deviation of residuals with max high/low deviations for robust boundaries.
Auto-Reset on Breakout Channel resets when price closes beyond upper/lower band twice in direction of trend .
Visual Zones Blue shaded = Premium (resistance zone)
Red shaded = Discount (support zone)
Real-Time Updates Live channel extends with each bar; historical channels preserved on reset.
How It Works
Regression Calculation
Uses all bars since last reset to compute the best-fit line:
y = intercept + slope × bar_position
Deviation Bands
Statistical : Standard deviation of price from regression line
Structural : Maximum distance from highs to line (upper) and lows to line (lower)
Final band = Regression Line ± (Deviation Input × StdDev)
Channel Reset Logic
Resets when:
Price closes above upper band twice in an uptrend (slope > 0)
OR closes below lower band twice in a downtrend (slope < 0)
Prevents overextension and adapts to new trends.
Visual Output
Active channel updates in real-time
Completed channels saved as historical reference (up to 500 lines/boxes)
Input Parameters
Deviation (2.0) - Multiplier for standard deviation to set channel width
Premium Color - blue color for upper (resistance) zone
Discount Color - red color for lower (support) zone
Best Use Cases
Mean Reversion - Buy near lower band in uptrend, sell near upper band
Breakout Trading - Enter on confirmed close beyond band + volume
Trend Confirmation - Use slope direction + price position in channel
Stop Loss / Take Profit - Place stops beyond opposite band
Pro Tips
Use on higher timeframes (4H, Daily) for cleaner regression fits
Combine with volume or momentum to filter false breakouts
Lower Deviation (e.g., 1.5) for tighter, more responsive channels
Watch channel resets — they often mark significant trend shifts
Why Use DLRC?
"Most channels are static. This one evolves with the market."
The NSR-DLRC gives you a mathematically sound, visually intuitive way to see:
Where price should be (regression)
Where it has been (deviation extremes)
When the trend is breaking structure
Perfect for traders who want regression-based precision without rigid assumptions.
Add to chart → Watch price dance within the evolving trend corridor.
Dual Harmonic-based AHR DCA (Default :BTC-ETH)A panel indicator designed for dual-asset BTC/ETH DCA (Dollar Cost Averaging) decisions.
It is inspired by the Chinese community indicator "AHR999" proposed by “Jiushen”.
How to use:
Lower HM-based AHR → cheaper (potential buy zone).
Higher HM-based AHR → more expensive (potential risk zone).
Higher than Risk Threshold → consider to sell, but not suitable for DCA.
When both AHR lines are below the Risk threshold → buy the cheaper one (or split if similar).
If one AHR is above Risk → buy the other asset.
If both are above Risk → simulation shows “STOP (both risk)”.
Not limited to BTC/ETH — you can freely change symbols in the input panel
to build any dual-asset DCA pair you want (e.g., BTC/BNB, ETH/SOL, etc.).
What you’ll see:
Two lines: AHR BTC (HM) and AHR ETH (HM)
Two dashed lines: OppThreshold (green) and RiskThreshold (red)
Colored fill showing which asset is cheaper (BTC or ETH)
Buy markers:
- B = Buy BTC
- E = Buy ETH
- D = Dual (split budget)
Top-right table: prices, AHRs, thresholds, qOpp/qRisk%, simulation, P&L
Labels showing last-bar AHR values
Core idea:
Use an AHR based on Harmonic Moving Average (HM) — a ratio that measures how “cheap or expensive” price is relative to both its short-term mean and long-term trend.
The original AHR999 used SMA and was designed for BTC only.
This indicator extends it with cross-exchange percentile mapping, allowing the empirical “opportunity/risk” zones of the AHR999 (on Bitstamp) to adapt automatically to the current market pair.
The indicator derives two adaptive thresholds:
OppThreshold – opportunity zone
RiskThreshold – risk zone
These thresholds are compared with the current HM-based AHR of BTC and ETH to decide which asset is cheaper, and whether it is good to DCA or not, or considering to sell(When it in risk area).
This version uses
Display base: Binance (default: perpetual) with HM-based AHR
Percentile base: Bitstamp spot SMA-AHR (complete, stable history)
Rolling window: 2920 daily bars (~8 years) for percentile tracking
Concept summary
AHR measures the ratio of price to its long-term regression and short-term mean.
HM replaces SMA to better reflect equal-fiat-cost DCA behavior.
Cross-exchange percentile mapping (Bitstamp → Binance) keeps thresholds consistent with the original AHR999 interpretation.
Recommended settings (1D):
DCA length (harmonic): 200
Log-regression lookback: 1825 (≈5 years)
Rolling window: 2920 (≈8 years)
Reference thresholds: 0.45 / 1.20 (AHR999 empirical priors)
Tie split tolerance (ΔAHR): 0.05
Daily budget: 15 USDT (simulation)
All display options can be toggled: table, markers, labels, etc.
Notes:
When the rolling window is filled (2920 bars by default), thresholds are first calculated and then visually backfilled as left-extended lines.
The “buy markers” and “decision table” are light simulations without fees or funding costs — for rhythm and relative analysis, not backtesting.
Sector Analysis [SS]Introducing the most powerful sector analysis tool/indicator available, to date, in Pine!
This is a whopper indicator, so be sure to read carefully to ensure you understand its applications and uses!
First of all, because this is a whopper, let's go over the key functional points of the indicator.
The indicator compares the 11 main sector ETFs against whichever ticker you are looking at.
The functions include the following:
Ability to pull technicals from the sectors, such as RSI, Stochastic and Z-Score;
Ability to look at the correlation of the sector ETF to the current ticker you are looking at.
Ability to calculate the R2 value between the ticker you are looking at and each sector.
The ability to run a Two Tailed T-Test against the log returns of the Ticker of interest and the Sector (to analyze statistically significant returns between sectors/tickers).
The ability to analyze the distribution of returns across all sector ETFs.
The ability to pull buying and selling volume across all sector ETFs.
The ability to create an integrated moving average using a sector ETF to predict the expected close range of a ticker of interest.
These are the highlight functions. Below, I will go more into them, what they mean and how to use them.
Pulling Technicals
This is pretty straight forward. You can pull technicals, such as RSI, Stochastic and Z-Score from all the sector ETFs and view them in a table.
See below for the example:
Pulling Correlation
In order to see which sector your ticker of interest follows more closely, we need to look first at correlation and then at R2.
The correlation will look at the immediate relationship over a specified time. A highly positive value, indicates a strong, symbiotic relationship, which the sector and the ticker follow each other. This would be represented by a correlation of 0.8 or higher.
A strong negative correlation, such as -0.8 or lower, indicates that the sector and the ticker are completely opposite. When one goes up, the other goes down and vice versa.
You can adjust your correlation assessment length directly in the settings menu:
If you want to use a sector ETF to find the expected range for a ticker of interest, it is important to locate the highest, POSITIVE, correlation value. Here are the results for MSFT at a correlation lookback of 200:
In this example, we can see the best relationship is with the ETF XLK.
Analysis of R2
R2 is an important metric. It essentially measures how much of the variance between 2 tickers are explained by a simple, linear relationship.
A high R2 means that a huge degree of variance can be explained between the 2 tickers. A low R2 means that it cannot and that the 2 tickers are likely not integrated or closely related.
In general, if you want to use the sector ETF to find the mean and trading range and identify over-valuation/over-extension and under-extension statistically, you need to see both a high correlation and a high R-Squared. These 2 metrics should be analyzed together.
Let's take a look at MSFT:
Here, despite the correlation implying that XLK was the ticker we should use to analyze, when we look at the R Squared, we see actually, we should be using XLI.
XLI has a strong positive relationship with MSFT, albeit a bit less than XLK, but the R2 is solid, > 0.9, indicating the XLI explains much of MSFT's variance.
Two Tailed T-Test
A two tailed T-test analyzes whether there is a statistically significant difference between 2 different groups, or in our case, tickers.
The T-Test is conducted on the log returns of the ticker of interest and the sector. You then can see the P value results, whether it is significant or not. Let's look at MSFT again:
Looking at this, we can see there is no statistically significant difference in returns between MSFT and any of the sectors.
We can also see the SMA of the log returns for more detailed comparison.
If we were to observe a significant finding on the T-Test metrics, this would indicate that one sector either outperforms or underperforms your ticker to a statistically significant degree! If you stumble upon this, you would check the average log returns to compare against the average returns of your ticker of interest, to see whether there is better performance or worse performance from the sector ETF vs. your ticker of interest.
Analyzing the Distribution
The indicator will also analyze the distribution of returns.
This is an interesting option as it can help you ascertain risk. Normally distributed returns imply mean reverting behavviour. Deviations from that imply trending behaviour with higher risk expectancy. If we look at the distribution statistics currently over the last 200 trading days, here are the results:
Here, we can see all show signs of trending, as none of the returns are normally distributed. The highest risk sectors are XLK and XLY.
Why are they the highest risk?
Because the indicator has found a heavy right tailed distribution, indicated sudden and erratic mean reversion/losses are possible.
Creating an MA
Now for the big bonus of the indicator!
The indicator can actually create a regression based range from closely correlated sectors, so you can see, in sectors that are strongly correlated to your ticker, whether your ticker is over-bought, oversold or has mean reverted.
Let's look at MSFT using XLI, our previously identified sector with a high correlation and high R2 value:
The results are pretty impressive.
You can see that MSFT has rode the mean of the sector on the daily timeframe for quite some time. Each time it over extended itself above the sector implied range, it mean reverted.
Currently, if you were to trade based on Pairs or statistics, MSFT is no trade as it is currently trading at its sector mean.
If you are a visual person, you can have the indicator plot the mean reversion points directly:
Green represents a bullish mean reversion and red a bearish mean reversion.
Concluding Remarks
If you like pair trading, following the link between sectors and tickers or want a more objective way to determine whether a ticker is over-bought or oversold, this indicator can help you.
In addition to doing this, the indicator can provide risk insights into different sectors by looking at the distribution, as well as identify under-performing sectors or tickers.
It can also shed light on sectors that may be technically over-bought or oversold by looking at Z-Score, stochastics and RSI.
Its a whopper and I really hope you find it helpful and useful!
Thanks everyone for reading and checking this out!
Safe trades!






















