Ben's BTC Macro Fair Value OscillatorBen's BTC Macro Fair Value Oscillator
Overview
The **BTC Macro Fair Value Oscillator** is a non-crypto fair value framework that uses macro asset relationships (equities, dollar, gold) to estimate Bitcoin's "macro-driven fair value" and identify mean-reversion opportunities.
"Is BTC cheap or expensive right now?" on the 4 Hour Timeframe ONLY
### Key Features
✅ **Macro-driven**: Uses QQQ, DXY, XAUUSD instead of on-chain or crypto metrics
✅ **Dynamic weighting**: Assets weighted by rolling correlation strength
✅ **Mean-reversion signals**: Identifies when BTC is cheap/expensive vs macro
✅ **Validated parameters**: Optimized through 5-year backtest (Sharpe 6.7-9.9)
✅ **Visual transparency**: Live correlation panel, fair value bands, statistics
✅ **Non-repainting**: All calculations use confirmed historical data only
### What This Indicator Does
- Builds a **synthetic macro composite** from traditional assets
- Runs a **rolling regression** to predict BTC price from macro
- Calculates **deviation z-score** (how far BTC is from macro fair value)
- Generates **entry signals** when BTC is extremely cheap vs macro (dev < -2)
- Generates **exit signals** when BTC returns to fair value (dev > 0)
### What This Indicator Is NOT
❌ Not a high-frequency trading system (sparse signals by design)
❌ Not optimized for absolute returns (optimized for Sharpe ratio)
❌ Not suitable as standalone trading system (best as overlay/confirmation)
❌ Not predictive of short-term price movements (mean-reversion timeframe: days to weeks)
---
## Core Concept
### The Premise
Bitcoin doesn't trade in a vacuum. It's influenced by:
- **Risk appetite** (equities: QQQ, SPX)
- **Dollar strength** (DXY - inverse to risk assets)
- **Safe haven flows** (Gold: XAUUSD)
When macro conditions are "good for BTC" (risk-on, weak dollar, strong equities), BTC should trade higher. When macro conditions turn against it, BTC should trade lower.
### The Innovation
Instead of looking at BTC in isolation, this indicator:
1. **Measures how strongly** BTC currently correlates with each macro asset
2. **Builds a weighted composite** of those macro returns (the "D" driver)
3. **Regresses BTC price on D** to estimate "macro fair value"
4. **Tracks the deviation** between actual price and fair value
5. **Signals mean reversion** when deviation becomes extreme
### The Edge
The validated edge comes from:
- **Extreme deviations predict future returns** (dev < -2 → +1.67% over 12 bars)
- **Monotonic relationship** (more negative dev → higher forward returns)
- **Works out-of-sample** (test Sharpe +83-87% better than training)
- **Low correlation with buy & hold** (provides diversification value)
---
## Methodology
### Step 1: Macro Composite Driver D(t)
The indicator builds a weighted composite of macro asset returns:
**Process:**
1. Calculate **log returns** for BTC and each macro reference (QQQ, DXY, XAUUSD)
2. Compute **rolling correlation** between BTC and each reference over `corrLen` bars
3. **Weight each asset** by `|correlation|` if above `minCorrAbs` threshold, else 0
4. **Sign-adjust** weights (+1 for positive corr, -1 for negative) to handle inverse relationships
5. **Z-score normalize** each reference's returns over `fvWindow`
6. **Composite D(t)** = weighted sum of sign-adjusted z-scores
**Formula:**
```
For each reference i:
corr_i = correlation(BTC_returns, ref_i_returns, corrLen)
weight_i = |corr_i| if |corr_i| >= minCorrAbs else 0
sign_i = +1 if corr_i >= 0 else -1
z_i = (ref_i_returns - mean) / std
contrib_i = sign_i * z_i * weight_i
D(t) = sum(contrib_i) / sum(weight_i)
```
**Key Insight:** D(t) represents "how good macro conditions are for BTC right now" in a normalized, correlation-weighted way.
---
### Step 2: Fair Value Regression
Uses rolling linear regression to predict BTC price from D(t):
**Model:**
```
BTC_price(t) = α + β * D(t)
```
**Calculation (Pine Script approach):**
```
corr_CD = correlation(BTC_price, D, fvWindow)
sd_price = stdev(BTC_price, fvWindow)
sd_D = stdev(D, fvWindow)
cov = corr_CD * sd_price * sd_D
var_D = variance(D, fvWindow)
β = cov / var_D
α = mean(BTC_price) - β * mean(D)
fair_value(t) = α + β * D(t)
```
**Result:** A time-varying "macro fair value" line that adapts as correlations change.
---
### Step 3: Deviation Oscillator
Measures how far BTC price has deviated from fair value:
**Calculation:**
```
residual(t) = BTC_price(t) - fair_value(t)
residual_std = stdev(residual, normWindow)
deviation(t) = residual(t) / residual_std
```
**Interpretation:**
- `dev = 0` → BTC at fair value
- `dev = -2` → BTC is 2 standard deviations **cheap** vs macro
- `dev = +2` → BTC is 2 standard deviations **rich** vs macro
---
### Step 4: Signal Generation
**Long Entry:** `dev` crosses below `-2.0` (BTC extremely cheap vs macro)
**Long Exit:** `dev` crosses above `0.0` (BTC returns to fair value)
**No shorting** in default config (risk management choice - crypto volatility)
---
## How It Works
### Visual Components
#### 1. Price Chart (Main Panel)
**Fair Value Line (Orange):**
- The estimated "macro-driven fair value" for BTC
- Calculated from rolling regression on macro composite
**Fair Value Bands:**
- **±1σ** (light): 68% confidence zone
- **±2σ** (medium): 95% confidence zone
- **±3σ** (dark, dots): 99.7% confidence zone
**Entry/Exit Markers:**
- **Green "LONG" label** below bar: Entry signal (dev < -2)
- **Red "EXIT" label** above bar: Exit signal (dev > 0)
#### 2. Deviation Oscillator (Separate Pane)
**Line plot:**
- Shows current deviation z-score
- **Green** when dev < -2 (cheap)
- **Red** when dev > +2 (rich)
- **Gray** when neutral
**Histogram:**
- Visual representation of deviation magnitude
- Green bars = negative deviation (cheap)
- Red bars = positive deviation (rich)
**Threshold lines:**
- **Green dashed at -2.0**: Entry threshold
- **Red dashed at 0.0**: Exit threshold
- **Gray solid at 0**: Fair value line
#### 3. Correlation Panel (Top-Right)
Shows live correlation and weighting for each macro asset:
| Asset | Corr | Weight |
|-------|------|--------|
| QQQ | +0.45 | 0.45 |
| DXY | -0.32 | 0.32 |
| XAUUSD | +0.15 | 0.00 |
| Avg \|Corr\| | 0.31 | 0.77 |
**Reading:**
- **Corr**: Current rolling correlation with BTC (-1 to +1)
- **Weight**: How much this asset contributes to fair value (0 = excluded)
- **Avg |Corr|**: Average correlation strength (should be > 0.2 for reliable signals)
**Colors:**
- Green/Red corr = positive/negative correlation
- White weight = asset included, Gray = excluded (below minCorrAbs)
#### 4. Statistics Label (Bottom-Right)
```
━━━ BTC Macro FV ━━━
Dev: -2.34
Price: $103,192
FV: $110,500
Status: CHEAP ⬇
β: 103.52
```
**Fields:**
- **Dev**: Current deviation z-score
- **Price**: Current BTC close price
- **FV**: Current macro fair value estimate
- **Status**: CHEAP (< -2), RICH (> +2), or FAIR
- **β**: Current regression beta (sensitivity to macro)
---
## Installation & Setup
### TradingView Setup
1. Open TradingView and navigate to any **BTC chart** (BTCUSD, BTCUSDT, etc.)
2. Open **Pine Editor** (bottom panel)
3. Click **"+ New"** → **"Blank indicator"**
4. **Delete** all default code
5. **Copy** the entire Pine Script from `GHPT_optimized.pine`
6. **Paste** into the editor
7. Click **"Save"** and name it "BTC Macro Fair Value Oscillator"
8. Click **"Add to Chart"**
### Recommended Chart Settings
**Timeframe:** 4h (validated timeframe)
**Chart Type:** Candlestick or Heikin Ashi
**Overlay:** Yes (indicator plots on price chart + separate pane)
**Alternative Timeframes:**
- Daily: Works but slower signals
- 1h-2h: May work but not validated
- < 1h: Not recommended (too noisy)
### Symbol Requirements
**Primary:** BTC/USD or BTC/USDT on any exchange
**Macro References:** Automatically fetched
- QQQ (Nasdaq 100 ETF)
- DXY (US Dollar Index)
- XAUUSD (Gold spot)
**Data Requirements:**
- At least **90 bars** of history (warmup period)
- Premium TradingView recommended for full historical data
---
## Reading the Indicator
### Identifying Signals
#### Strong Long Signal (High Conviction)
- ✅ Deviation < -2.0 (extreme undervaluation)
- ✅ Avg |Corr| > 0.3 (strong macro relationships)
- ✅ Price touching or below -2σ band
- ✅ "LONG" label appears below bar
**Interpretation:** BTC is extremely cheap relative to macro conditions. Historical data shows +1.67% average return over next 12 bars (48 hours at 4h timeframe).
#### Moderate Long Signal (Lower Conviction)
- ⚠️ Deviation between -1.5 and -2.0
- ⚠️ Avg |Corr| between 0.2-0.3
- ⚠️ Price approaching -2σ band
**Interpretation:** BTC is cheap but not extreme. Consider as confirmation for other signals.
#### Exit Signal
- 🔴 Deviation crosses above 0 (returns to fair value)
- 🔴 "EXIT" label appears above bar
**Interpretation:** Mean reversion complete. Close long positions.
#### Strong Short/Avoid Signal
- 🔴 Deviation > +2.0 (extreme overvaluation)
- 🔴 Avg |Corr| > 0.3
- 🔴 Price touching or above +2σ band
**Interpretation:** BTC is expensive vs macro. Historical data shows -1.79% average return over next 12 bars. Consider exiting longs or reducing exposure.
### Regime Detection
**Strong Regime (Reliable Signals):**
- Avg |Corr| > 0.3
- Multiple assets weighted > 0
- Fair value line tracking price reasonably well
**Weak Regime (Unreliable Signals):**
- Avg |Corr| < 0.2
- Most weights = 0 (grayed out)
- Fair value line diverging wildly from price
- **Action:** Ignore signals until correlations strengthen
Cari dalam skrip untuk "spx"
BB SPY Mean Reversion Investment StrategySummary
Mean reversion first, continuation second. This strategy targets equities and ETFs on daily timeframes. It waits for price to revert from a Bollinger location with candle and EMA agreement, then manages risk with ATR based exits. Uniqueness comes from two elements working together. One, an adaptive band multiplier driven by volatility of volatility that expands or contracts the envelope as conditions change. Two, a bias memory that re arms the same direction after any stop, target, or time exit until a true opposite signal appears. Add it to a clean chart, use the markers and levels, and select on bar close for conservative alerts. Shapes can move while the bar is open and settle on close.
Scope and intent
• Markets. Currently adapted for SPY, needs to be optimized for other assets
• Timeframes. Daily primary. Other frames are possible but not the default
• Default demo. SPY on daily
• Purpose. Trade mean reversion entries that can chain into a longer swing by splitting holds into ATR or time segments
Originality and usefulness
• Novelty. Adaptive band width from volatility of volatility plus a persistent bias array that keeps the original direction alive across sequential entries until an opposite setup is confirmed
• Failure modes mitigated. False starts in chop are reduced by candle color and EMA location. Missed continuation after a take profit or stop is addressed by the re arm engine. Oversized envelopes during quiet regimes are avoided by the adaptive multiplier
• Testability. Every module has Inputs and visible levels so users can see why a suggestion appears
• Portable yardstick. All risk and targets are expressed in ATR units
Method overview in plain language
The engine measures where price sits relative to Bollinger bands, confirms with candle color and EMA location, requires ADX for shorts(in our case long close since we use it currently as long only), and optionally requires a trend or mean reversion regime using band width percent rank and basis slope. Risk uses ATR for stop, target, and optional breakeven. A small array stores the last confirmed direction. While flat, the engine keeps a pending order in that direction. The array flips only when a true opposite setup appears.
Base measures
• Range basis. True Range smoothed over a user defined ATR Length
• Return basis. Not required
Components
• Bollinger envelope. SMA length and standard deviation multiplier. Entry is based on cross of close through the band with location bias
• Candle and EMA filter. Close relative to open and close relative to EMA align direction
• ADX gate for shorts. Requires minimum trend strength for short trades
• Adaptive multiplier. Band width scales using volatility of volatility so envelopes breathe with conditions
• Regime gate optional. Band width percent rank and basis slope identify trend or mean reversion regimes
• Risk manager. ATR stop, ATR target, optional breakeven, optional time exit
• Bias memory. Array stores last confirmed direction and re arms entries while flat
Fusion rule
Minimum satisfied gates count style. All required gates must be true. Optional gates are controlled in Inputs. Bias memory never overrides an opposite confirmed setup.
Signal rule
• Long setup when close crosses up through the lower band, the bar closes green, and close is above the long EMA
• Short setup when close crosses down through the upper band, the bar closes red, close is below the short EMA, and ADX is above the minimum
• While flat the model keeps a pending order in the stored direction until a true opposite setup appears
• IN LONG or IN SHORT describes states between entry and exit
What you will see on the chart
• Markers for Long and Short setups
• Exit markers from ATR or time rules
• Reference levels for entry, stop, and target
• Bollinger bands and optional adaptive bands
Inputs with guidance
Setup
• Signal timeframe. Uses the chart timeframe
• Invert direction optional. Flips long and short
Logic
• BB Length. Typical 10 to 50. Higher smooths more
• BB Mult. Typical 1.0 to 2.5. Higher widens entries
• EMA Length long. Typical 10 to 50
• EMA Length short. Typical 5 to 30
• ADX Minimum for short. Typical 15 to 35
Filters
• Regime Type. none or trend or mean reversion
• Rank Lookback. Typical 100 to 300
• Basis Slope Length and Threshold. Larger values reduce false trends
Risk
• ATR Length. Typical 10 to 21
• ATR Stop Mult. Typical 1.0 to 3.0
• ATR Take Profit Mult. Typical 2.0 to 5.0
• Breakeven Trigger R. Move stop to entry after the chosen multiple
• Time Exit. Minimum bars and extension when profit exceeds a fraction of ATR
Bias and rearm
• Bias flips kept. Array depth
• Keep rearm when flat. Maintain a pending order while flat
UI
• Show markers and levels. Clean defaults
Usage recipes
Alerts update in real time and can change while the bar forms. Select on bar close for conservative workflows.
Properties visible in this publication
• Initial capital 25000
• Base currency USD
• If any higher timeframe calls are enabled, request.security uses lookahead off
• Commission 0.03 percent
• Slippage 3 ticks
• Default order size method Percent of equity with value 5
• Pyramiding 0
• Process orders on close On
• Bar magnifier Off
• Recalculate after order is filled Off
• Calc on every tick Off
Realism and responsible publication
No performance claims. Costs and fills vary by venue. Shapes can move intrabar and settle on close. Strategies use standard candles only.
Honest limitations and failure modes
High impact releases and thin liquidity can break assumptions. Gap heavy symbols may require larger ATR. Very quiet regimes can reduce contrast in the mean reversion signal. If stop and target can both be touched inside one bar, outcome follows the TradingView order model for that bar path.
Regimes with extreme one sided trend and very low volatility can reduce mean reversion edges. Results vary by symbol and venue. Past results never guarantee future outcomes.
Open source reuse and credits
None.
Backtest realism
Costs are realistic for liquid equities. Sizing does not exceed five percent per trade by default. Any departure should be justified by the user.
If you got any questions please le me know
Index Weighted Returns [SS]This is the index weighted return indicator.
It supports a few ETFs, including:
SPY/SPX
QQQ/NDX
ARKK
SMH
UFO
XBI
QTUM
What it does is it takes the top, approximately 40, of the most heavily weighted tickers on the ETF, monitors their returns using the request security function, and then uses their weight to calculate the synthetic returns of the ETF of interest.
For example, in the chart we have SMH.
The indicator is looking at the top weighted tickers of SMH, calculating their returns, adjusting it for their individual weight on SMH and then predicting the expected return of SMH based on the weighing and holding's returns themselves.
How to Use it
The indicator is pretty straight forward, you select which ever index you are on and your desired timeframe (you can do as low as 30-Minutes or as high as monthly or quarterly).
The indicator will then retrieve the top holdings for that ticker, their corresponding weights and calculate the expected daily return based on the weight and return of these tickers.
It will plot this return for you on the chart.
Other Options
There is an optional table for you to view the actual weight, ticker composition and period returns for each of the top x tickers for an index. You can simply toggle "Show Table" in the settings menu, and it will show you the list of all tickers included, their period returns and their weight on the ETF.
Tips for Use
Works well to see when an index may be over the actual top weighted tickers, implying a pullback/sell, or under. For example:
SPY today fell well below its top tickers and is currently rallying back up to the expected close range.
You can see in the primary chart, SMH fell below and returned to its balance, being at the expected close range based on its component tickers.
That is the indicator!
Its simple but powerful!
Hope you enjoy and as always, safe trades!
VIX OscillatorVIX Oscillator for catching vol signals on the same chart as your index of choice.
- Configurable levels that alert you when certain thresholds are broken
- Shaded background that make it simple to tell when you are in low vol/high vol regimes
- Moving line tracking price so that you can easily see bull/bear divergences against SPX building
NY VIX Channel Trend US Futures Day Trade StrategyNY VIX Channel Trend Strategy
Summary in one paragraph
Session anchored intraday strategy for index futures such as ES and NQ on one to fifteen minute charts. It acts only after the first configurable window of New York Regular Trading Hours and uses a VIX derived daily implied move to form a realistic channel from the session open. Originality comes from using a pure implied volatility yardstick as portable support and resistance, then committing in the direction of the first window close relative to the open. Add it to a clean chart and trade the simple visuals. For conservative alerts use on bar close.
Scope and intent
• Markets. Index futures ES and NQ
• Timeframes. One to thirty minutes
• Default demo. ES1 on five minutes
• Purpose. Provide a portable intraday yardstick for entries and exits without curve fitting
• Limits. This is a strategy. Orders are simulated on standard candles
Originality and usefulness
• Unique concept. A VIX only channel anchored at 09:30 New York plus a single window trend test
• Addresses. False urgency at session open and unrealistic bands from arbitrary multipliers
• Testability. Every input is visible and the channel is plotted so users can audit behavior
• Portable yardstick. Daily implied move equals VIX percent divided by square root of two hundred fifty two
• Protected status. None. Method and use are fully disclosed
Method overview in plain language
Take the daily VIX or VIX9D value, convert it to a daily fraction by dividing by square root of two hundred fifty two, then anchor a symmetric channel at the New York session open. Observe the first N minutes. If that window closes above the open the bias is long. If it closes below the open the bias is short. One trade per session. Exits occur at the channel boundary or at a bracket based on a user selected VIX factor. Positions are closed a set number of minutes before the session ends.
Base measures
Return basis. The daily implied move unit equals VIX percent divided by square root of two hundred fifty two and serves as the distance unit for targets and stops.
Components
• VIX Channel. Top, mid, bottom lines anchored at 09:30 New York. No extra multipliers
• Window Trend. Close of the first N minutes relative to the session open sets direction
• Risk Bracket. Take profit and stop loss equal to VIX unit times user factor
• Session Window. Uses the exchange time of the chart
Fusion rule
Minimum gates count equals one. The trade only arms after the window has elapsed and a direction exists. One entry per session.
Signal rule
• Long when the window close is above the session open and the window has completed
• Short when the window close is below the session open and the window has completed
• Exit on channel touch. Long exits at the top. Short exits at the bottom
• Flat thirty minutes before the session close or at the user setting
Inputs with guidance
Setup
• Use VIX9D. Width source. Typical true for fast tone or false for baseline
• Use daily OPEN. Toggle for sensitivity to overnight changes
Logic
• Window minutes. Five to one hundred twenty. Larger values delay entries and reduce whipsaw
• VIX factor for TP. Zero point five to two. Raising it widens the profit target
• VIX factor for SL. Zero point five to two. Raising it widens the stop
• Exit minutes before close. Fifteen to ninety. Raising it exits earlier
Properties visible in this publication
• Initial capital one hundred thousand USD
• Base currency USD
• request.security uses lookahead off
• Commission cash per contract two point five $ per each contract. Slippage one tick
• Default order size method FIXED with value one contract. Pyramiding zero. Process orders on close ON. Bar magnifier OFF. Recalculate after order is filled OFF. Calc on every tick ON
Realism and responsible publication
No performance claims. Past results never guarantee future outcomes. Fills and slippage vary by venue. Shapes can move while a bar forms and settle on close. Strategy uses standard candles.
Honest limitations and failure modes
Economic releases and thin liquidity can break the channel. Very quiet regimes can reduce signal contrast. Session windows follow the exchange time of the chart. If both stop and target can be hit within one bar, assume stop first for conservative reading without bar magnifier.
Works best in liquid hours of New York RTH. Very large gaps and surprise news may exceed the implied channel. Always validate on the symbols you trade.
Entries and exits
• Entry logic. After the first window, go long if the window close is above the session open, go short if below
• Exit logic. Long exits at the channel top or at the take profit or stop. Short exits at the channel bottom or at the take profit or stop. Flat before session close by the configured minutes
• Risk model. Initial stop and target based on the VIX unit times user factors. No trail and no break even. No cooldown
• Tie handling. Treat as stop first for conservative interpretation
Position sizing
Fixed size one contract per trade. Target risk per trade should generally remain near one percent of account equity. Risk is based on the daily volatility value, the max loss from the tests for one year duration with 5min chart was 4%, while the avg loss was below <1% of the total capital.
If you have any questions please let me know. Thank you for coming by !
Pullback Levels from ATH# ATH Pullback Levels
**Assess correction depth with precision – 5%, 10%, 15%, 20% below All-Time High**
---
### Overview
This indicator draws **horizontal support lines** at **5%, 10%, 15%, and 20%** below the **All-Time High (ATH)** of any asset. Perfect for **swing traders**, **long-term investors**, and **bull market participants** who want to:
- Measure **pullback depth** in real-time
- Identify **potential support zones**
- Set **alerts** when price enters key retracement levels
---
### Features
| Feature | Description |
|--------|-------------|
| **Dynamic ATH Tracking** | Automatically updates with every new high |
| **4 Pullback Levels** | 5%, 10%, 15%, 20% below ATH |
| **Live Pullback % Label** | Shows current % drop from ATH (top-right) |
| **Customizable Lines** | Toggle visibility, change colors & styles |
| **Built-in Alerts** | Trigger on entry into each zone |
| **No Errors** | Works on 50k+ bar charts (BTC, SPX, etc.) |
| **Time-Based Lines** | Uses `xloc.bar_time` – no 500-bar future limit |
---
### How to Use
1. Apply to any chart (stocks, crypto, forex, indices)
2. Watch the **info box** for current pullback %
3. Use lines as **potential buy zones** during corrections
4. Set **alerts** to be notified when price enters a level
> Example: If ATH = $100 →
> - 5% = $95
> - 10% = $90
> - 15% = $85
> - 20% = $80
---
### Inputs
- **Show 5% / 10% / 15% / 20% Level** → Toggle on/off
- **Line Colors** → Fully customizable
- **Line Style** → Solid, Dashed, or Dotted
---
### Alerts
Create alerts directly from the indicator:
- `"Entered 5% Pullback"`
- `"Entered 10% Pullback"`
- etc.
---
### Best For
- Bull market corrections
- Long-term position sizing
- Risk management in uptrends
- Swing entries on dips
---
### Notes
- Works on **all timeframes**
- **Log scale compatible** (lines adjust correctly)
- No repainting – ATH only updates on confirmed highs
---
**Built with Pine Script v6 – Clean, fast, reliable.**
*Happy trading!*
5-Year Returns Chart BTCvsSPXvsGOLDvsNVDACompare between thes 4 assets:
BTC
NVDA
SPX
GOLD
With an initial 1000$ investment in the last 5 years each return
S&P Trading System with PivotsThe S&P Trading System with Pivots is a TradingView indicator designed for the 30-minute SPX chart to guide SPY options trading. It uses a trend-following strategy with:
10 SMA and 50 SMA: Plots a 10-period (blue) and 50-period (red) Simple Moving Average. A bullish crossover (10 SMA > 50 SMA) signals a potential buy (green triangle below bar), while a bearish crossunder (10 SMA < 50 SMA) signals a sell or exit (red triangle above bar).
Trend Bias: Colors the background green (bullish) or red (bearish) based on SMA positions.
Pivot Points: Marks recent highs (orange circles) and lows (purple circles) as potential resistance and support levels, using a 5-bar lookback period.
Trading Toolkit - Comprehensive AnalysisTrading Toolkit – Comprehensive Analysis
A unified trading analysis toolkit with four sections:
📊 Company Info
Fundamentals, market cap, sector, and earnings countdown.
📅 Performance
Date‑range analysis with key metrics.
🎯 Market Sentiment
CNN‑style Fear & Greed Index (7 components) + 150‑SMA positioning.
🛡️ Risk Levels
ATR/MAD‑based stop‑loss and take‑profit calculations.
Key Features
CNN‑style Fear & Greed approximation using:
Momentum: S&P 500 vs 125‑DMA
Price Strength: NYSE 52‑week highs vs lows
Market Breadth: McClellan Volume Summation (Up/Down volume)
Put/Call Ratio: 5‑day average (inverted)
Volatility: VIX vs 50‑DMA (inverted)
Safe‑Haven Demand: 20‑day SPY–IEF return spread
Junk‑Bond Demand: HY vs IG credit spread (inverted)
Normalization: z‑score → percentile (0–100) with ±3 clipping.
CNN‑aligned thresholds:
Extreme Fear: 0–24 | Fear: 25–44 | Neutral: 45–54 | Greed: 55–74 | Extreme Greed: 75+.
Risk tools: ATR & MAD volatility measures with configurable multipliers.
Flexible layout: vertical or side‑by‑side columns.
Data Sources
S&P 500: CBOE:SPX or AMEX:SPY
NYSE: INDEX:HIGN, INDEX:LOWN, USI:UVOL, USI:DVOL
Options: USI:PCC (Total PCR), fallback INDEX:CPCS (Equity PCR)
Volatility: CBOE:VIX
Treasuries: NASDAQ:IEF
Credit Spreads: FRED:BAMLH0A0HYM2, FRED:BAMLC0A0CM
Risk Management
ATR risk bands: 🟢 ≤3%, 🟡 3–6%, ⚪ 6–10%, 🟠 10–15%, 🔴 >15%
MAD‑based stop‑loss and take‑profit calculations.
Author: Daniel Dahan
(AI Generated, Merged & enhanced version with CNN‑style Fear & Greed)
Distance % from sma/ema + Percentile BandsThis script is breadth indicator for long term bull and bear markets.
Default settings:
AU:
- 200m SMA
- Percentile Lookback: 99%
- Lookback Period: 240 M
AG: TBD
SPX: TBD
TriAnchor Elastic Reversion US Market SPY and QQQ adaptedSummary in one paragraph
Mean-reversion strategy for liquid ETFs, index futures, large-cap equities, and major crypto on intraday to daily timeframes. It waits for three anchored VWAP stretches to become statistically extreme, aligns with bar-shape and breadth, and fades the move. Originality comes from fusing daily, weekly, and monthly AVWAP distances into a single ATR-normalized energy percentile, then gating with a robust Z-score and a session-safe gap filter.
Scope and intent
• Markets: SPY QQQ IWM NDX large caps liquid futures liquid crypto
• Timeframes: 5 min to 1 day
• Default demo: SPY on 60 min
• Purpose: fade stretched moves only when multi-anchor context and breadth agree
• Limits: strategy uses standard candles for signals and orders only
Originality and usefulness
• Unique fusion: tri-anchor AVWAP energy percentile plus robust Z of close plus shape-in-range gate plus breadth Z of SPY QQQ IWM
• Failure mode addressed: chasing extended moves and fading during index-wide thrusts
• Testability: each component is an input and visible in orders list via L and S tags
• Portable yardstick: distances are ATR-normalized so thresholds transfer across symbols
• Open source: method and implementation are disclosed for community review
Method overview in plain language
Base measures
• Range basis: ATR(length = atr_len) as the normalization unit
• Return basis: not used directly; we use rank statistics for stability
Components
• Tri-Anchor Energy: squared distances of price from daily, weekly, monthly AVWAPs, each divided by ATR, then summed and ranked to a percentile over base_len
• Robust Z of Close: median and MAD based Z to avoid outliers
• Shape Gate: position of close inside bar range to require capitulation for longs and exhaustion for shorts
• Breadth Gate: average robust Z of SPY QQQ IWM to avoid fading when the tape is one-sided
• Gap Shock: skip signals after large session gaps
Fusion rule
• All required gates must be true: Energy ≥ energy_trig_prc, |Robust Z| ≥ z_trig, Shape satisfied, Breadth confirmed, Gap filter clear
Signal rule
• Long: energy extreme, Z negative beyond threshold, close near bar low, breadth Z ≤ −breadth_z_ok
• Short: energy extreme, Z positive beyond threshold, close near bar high, breadth Z ≥ +breadth_z_ok
What you will see on the chart
• Standard strategy arrows for entries and exits
• Optional short-side brackets: ATR stop and ATR take profit if enabled
Inputs with guidance
Setup
• Base length: window for percentile ranks and medians. Typical 40 to 80. Longer smooths, shorter reacts.
• ATR length: normalization unit. Typical 10 to 20. Higher reduces noise.
• VWAP band stdev: volatility bands for anchors. Typical 2.0 to 4.0.
• Robust Z window: 40 to 100. Larger for stability.
• Robust Z entry magnitude: 1.2 to 2.2. Higher means stronger extremes only.
• Energy percentile trigger: 90 to 99.5. Higher limits signals to rare stretches.
• Bar close in range gate long: 0.05 to 0.25. Larger requires deeper capitulation for longs.
Regime and Breadth
• Use breadth gate: on when trading indices or broad ETFs.
• Breadth Z confirm magnitude: 0.8 to 1.8. Higher avoids fighting thrusts.
• Gap shock percent: 1.0 to 5.0. Larger allows more gaps to trade.
Risk — Short only
• Enable short SL TP: on to bracket shorts.
• Short ATR stop mult: 1.0 to 3.0.
• Short ATR take profit mult: 1.0 to 6.0.
Properties visible in this publication
• Initial capital: 25000USD
• Default order size: Percent of total equity 3%
• Pyramiding: 0
• Commission: 0.03 percent
• Slippage: 5 ticks
• Process orders on close: OFF
• Bar magnifier: OFF
• Recalculate after order is filled: OFF
• Calc on every tick: OFF
• request.security lookahead off where used
Realism and responsible publication
• No performance claims. Past results never guarantee future outcomes
• Fills and slippage vary by venue
• Shapes can move during bar formation and settle on close
• Standard candles only for strategies
Honest limitations and failure modes
• Economic releases or very thin liquidity can overwhelm mean-reversion logic
• Heavy gap regimes may require larger gap filter or TR-based tuning
• Very quiet regimes reduce signal contrast; extend windows or raise thresholds
Open source reuse and credits
• None
Strategy notice
Orders are simulated by TradingView on standard candles. request.security uses lookahead off where applicable. Non-standard charts are not supported for execution.
Entries and exits
• Entry logic: as in Signal rule above
• Exit logic: short side optional ATR stop and ATR take profit via brackets; long side closes on opposite setup
• Risk model: ATR-based brackets on shorts when enabled
• Tie handling: stop first when both could be touched inside one bar
Dataset and sample size
• Test across your visible history. For robust inference prefer 100 plus trades.
FluxGate Daily Swing StrategySummary in one paragraph
FluxGate treats long and short as different ecosystems. It runs two independent engines so the long side can be bold when the tape rewards upside persistence while the short side can stay selective when downside is messy. The core reads three directional drivers from price geometry then removes overlap before gating with clean path checks. The complementary risk module anchors stop distance to a higher timeframe ATR so a unit means the same thing on SPY and BTC. It can add take profit breakeven and an ATR trail that only activates after the trade earns it. If a stop is hit the strategy can re enter in the same direction on the next bar with a daily retry cap that you control. Add it to a clean chart. Use defaults to see the intended behavior. For conservative workflows evaluate on bar close.
Scope and intent
• Markets. Large cap equities and liquid ETFs major FX pairs US index futures and liquid crypto pairs
• Timeframes. From one minute to daily
• Default demo in this publication. SPY on one day timeframe
• Purpose. Reduce false starts without missing sustained trends by fusing independent drivers and suppressing activity when the path is noisy
• Limits. This is a strategy. Orders are simulated on standard candles. Non standard chart types are not supported for execution
Originality and usefulness
• Unique fusion. FluxGate extracts three drivers that look at price from different angles. Direction measures slope of a smoothed guide and scales by realized volatility so a point of slope does not mean a different thing on different symbols. Persistence looks at short sign agreement to reward series of closes that keep direction. Curvature measures the second difference of a local fit to wake up during convex pushes. These three are then orthonormalized so a strong reading in one does not double count through another.
• Gates that matter. Efficiency ratio prefers direct paths over treadmills. Entropy turns up versus down frequency into an information read. Light fractal cohesion punishes wrinkly paths. Together they slow the system in chop and allow it to open up when the path is clean.
• Separate long and short engines. Threshold tilts adapt to the skew of score excursions. That lets long engage earlier when upside distribution supports it and keeps short cautious where downside surprise and venue frictions are common.
• Practical risk behavior. Stops are ATR anchored on a higher timeframe so the unit is portable. Take profit is expressed in R so two R means the same concept across symbols. Breakeven and trailing only activate after a chosen R so early noise does not squeeze a good entry. Re entry after stop lets the system try again without you babysitting the chart.
• Testability. Every major window and the aggression controls live in Inputs. There is no hidden magic number.
Method overview in plain language
Base measures
• Return basis. Natural log of close over prior close for stability and easy aggregation through time. Realized volatility is the standard deviation of returns over a moving window.
• Range basis for risk. ATR computed on a higher timeframe anchor such as day week or month. That anchor is steady across venues and avoids chasing chart specific quirks.
Components
• Directional intensity. Use an EMA of typical price as a guide. Take the day to day slope as raw direction. Divide by realized volatility to get a unit free measure. Soft clip to keep outliers from dominating.
• Persistence. Encode whether each bar closed up or down. Measure short sign agreement so a string of higher closes scores better than a jittery sequence. This favors push continuity without guessing tops or bottoms.
• Curvature. Fit a short linear regression and compute the second difference of the fitted series. Strong curvature flags acceleration that slope alone may miss.
• Efficiency gate. Compare net move to path length over a gate window. Values near one indicate direct paths. Values near zero indicate treadmill behavior.
• Entropy gate. Convert up versus down frequency into a probability of direction. High entropy means coin toss. The gate narrows there.
• Fractal cohesion. A light read of path wrinkliness relative to span. Lower cohesion reduces the urge to act.
• Phase assist. Map price inside a recent channel to a small signed bias that grows with confidence. This helps entries lean toward the right half of the channel without becoming a breakout rule.
• Shock control. Compare short volatility to long volatility. When short term volatility spikes the shock gate temporarily damps activity so the system waits for pressure to normalize.
Fusion rule
• Normalize the three drivers after removing overlap
• Blend with weights that adapt to your aggression input
• Multiply by the gates to respect path quality
• Smooth just enough to avoid jitter while keeping timing responsive
• Compute an adaptive mean and deviation of the score and set separate long and short thresholds with a small tilt informed by skew sign
• The result is one long score and one short score that can cross their thresholds at different times for the same tape which is a feature not a bug
Signal rule
• A long suggestion appears when the long score crosses above its long threshold while all gates are active
• A short suggestion appears when the short score crosses below its short threshold while all gates are active
• If any required gate is missing the state is wait
• When a position is open the status is in long or in short until the complementary risk engine exits or your entry mode closes and flips
Inputs with guidance
Setup Long
• Base length Long. Master window for the long engine. Typical range twenty four to eighty. Raising it improves selectivity and reduces trade count. Lowering it reacts faster but can increase noise
• Aggression Long. Zero to one. Higher values make thresholds more permissive and shorten smoothing
Setup Short
• Base length Short. Master window for the short engine. Typical range twenty eight to ninety six
• Aggression Short. Zero to one. Lower values keep shorts conservative which is often useful on upward drifting symbols
Entries and UI
• Entry mode. Both or Long only or Short only
Complementary risk engine
• Enable risk engine. Turns on bracket exits while keeping your signal logic untouched
• ATR anchor timeframe. Day Week or Month. This sets the structural unit of stop distance
• ATR length. Default fourteen
• Stop multiple. Default one point five times the anchor ATR
• Use take profit. On by default
• Take profit in R. Default two R
• Breakeven trigger in R. Default one R
Usage recipes
Intraday trend focus
• Entry mode Both
• ATR anchor Week
• Aggression Long zero point five Aggression Short zero point three
• Stop multiple one point five Take profit two R
• Expect fewer trades that stick to directional pushes and skip treadmill noise
Intraday mean reversion focus
• Session windows optional if you add them in your copy
• ATR anchor Day
• Lower aggression both sides
• Breakeven later and trailing later so the first bounce has room
• This favors fade entries that still convert into trends when the path stays clean
Swing continuation
• Signal timeframe four hours or one day
• Confirm timeframe one day if you choose to include bias
• ATR anchor Week or Month
• Larger base windows and a steady two R target
• This accepts fewer entries and aims for larger holds
Properties visible in this publication
• Initial capital 25.000
• Base currency USD
• Default order size percent of equity value three - 3% of the total capital
• Pyramiding zero
• Commission zero point zero three percent - 0.03% of total capital
• Slippage five ticks
• Process orders on close off
• Recalculate after order is filled off
• Calc on every tick off
• Bar magnifier off
• Any request security calls use lookahead off everywhere
Realism and responsible publication
• No performance promises. Past results never guarantee future outcomes
• Fills and slippage vary by venue and feed
• Strategies run on standard candles only
• Shapes can update while a bar is forming and settle on close
• Keep risk per trade sensible. Around one percent is typical for study. Above five to ten percent is rarely sustainable
Honest limitations and failure modes
• Sudden news and thin liquidity can break assumptions behind entropy and cohesion reads
• Gap heavy symbols often behave better with a True Range basis for risk than a simple range
• Very quiet regimes can reduce score contrast. Consider longer windows or higher thresholds when markets sleep
• Session windows follow the exchange time of the chart if you add them
• If stop and target can both be inside a single bar this strategy prefers stop first to keep accounting conservative
Open source reuse and credits
• No reused open source beyond public domain building blocks such as ATR EMA and linear regression concepts
Legal
Education and research only. Not investment advice. You are responsible for your decisions. Test on history and in simulation with realistic costs
Position Size ToolPosition Size Tool
What it does:
Shows a small on-chart table that converts per-ticker dollar amounts into share counts (shares = amount ÷ current price) for up to 4 configurable tickers.
Inputs (indicator settings)
Ticker 1–4 — select the symbol (TradingView will show the exchange-qualified form like BATS:TQQQ in the settings).
Ticker N $ Amount — dollar amount to convert into shares for that ticker.
Show Ticker N — toggle each row on/off.
Table Text Color — color of the table text.
Table Position — screen location (Top/ Middle/ Bottom × Left/Center/Right).
Font Size — Small / Medium / Large.
Show Empty Top Row — optional spacer row.
What the table displays
Left column: the ticker symbol only (the script strips the exchange prefix for display, so BATS:TQQQ appears as TQQQ in the table).
Right column: the calculated share count, formatted to two decimal places (or "—" if price is not available or zero).
Table updates on the chart’s timeframe using live/last bar prices.
How to use
Add the indicator to a chart.
Open the indicator’s settings panel.
In Ticker 1–4, type/select the symbols you want (you may see the exchange prefix there; that’s TradingView’s UI).
Enter the dollar amounts for each ticker.
Use Show Ticker N to hide/show rows.
Adjust text color, font size, and table position as desired.
Notes
The settings field will always show the exchange-qualified symbol (TradingView behavior); the script strips the exchange only for the on-chart display.
If the selected symbol has no price data on the chart/timeframe, the table shows "—".
Shares are computed as amt ÷ current close from the requested symbol and timeframe.
Example of how to use this tool:
Monitor an index and execute trades on leveraged derivative products. This tool will determine the quantity of shares that can be purchased with a pre-determined dollar amount. Ex: Monitor SPX for entry/exit signals and execute trades on UPRO/SPXU/SPXL/SPXS.
Input a ticker and a dollar amount for position size, shares that can be purchased will be calculated based on the current asset price.
This tool can be helpful for those that use multiple platforms simultaneously to monitor and execute trades.
xVWAP (Multi-Source VWAP)This indicator lets you plot a true cross-symbol VWAP — volume-weighted average price taken from any symbol or from your current chart. It’s ideal for futures, micros/minis, indices, and correlated assets (e.g., MGC ↔ GC1!, MNQ ↔ NQ1!, ES ↔ SPX).
You can choose the source symbol, anchor period, and display up to three standard-deviation bands around VWAP.
In the chart, since I trade Micros, I used MGC1! (colored), then overlay it with the VWAP from GC1! (Grey).
Inverse VIX / Custom Inverse Line🎯 Main Idea
This indicator creates a line that moves opposite to the VIX (Volatility Index) — or any symbol you choose.
When VIX rises (fear increases), → this line goes down.
When VIX falls (market calm), → this line goes up.
It helps you visually understand market sentiment — calm periods (bullish) vs fear periods (bearish).
⚙️ Input Settings
Setting Description
Symbol to invert The symbol to invert. Default is CBOE:VIX.
Inverse mode The method used to invert the values. There are 3 options:
① Negate Simply flips the sign (multiplies by -1). Very straightforward.
② Reciprocal Uses the mathematical inverse (1 ÷ value). High values become smaller, and vice versa.
③ Inverse Normalized The most useful mode 🔥 — normalizes values between 0–100 and flips them, similar to an RSI.
Normalization lookback How many bars to use for normalization (default 252 = roughly one trading year).
Smoothing (SMA) Number of bars for smoothing (makes the line smoother).
Use log for reciprocal Uses logarithmic scaling to stabilize big swings.
Plot color / width Customize the line’s color and thickness.
Show original source If enabled, shows the original VIX line for comparison.
📈 How It Works
The script fetches the close price of the VIX (or your chosen symbol).
It applies the selected inversion method.
The inverted line is plotted on the chart.
In “Inverse Normalized” mode:
The range is 0–100.
Values above 75 = high optimism (market often overheated).
Values below 25 = high fear (potential buying opportunity).
A middle line at 50 marks neutral sentiment.
⚠️ Alerts
The indicator includes two default alerts when using “Inverse Normalized” mode:
🔔 Above 75: Market showing strong optimism (potential top or correction zone).
🔔 Below 25: Market showing fear (potential bottom or buy signal).
🧠 How to Use It
Use it on daily or weekly charts for clearer signals.
Compare it with SPX or NASDAQ:
When the Inverse VIX line rises, markets often go up.
When it falls, markets usually drop or consolidate.
Combine it with other indicators (e.g., RSI, MACD) for confirmation.
TwinPulse Q Lead SPY x QQQ Intermarket Pulse 1HTwinPulse Q Lead is a concise one hour indicator for SPY and QQQ that converts three sources of market information into a single pulse line, a mode readout with BUY SELL WAIT, and compact alerts. It blends intermarket leadership between QQQ and SPY, intraday flow from the slope of session VWAP, and where the current price sits inside the regular trading hours range. The three components are normalized, fused, compressed to a stable range, and smoothed for clear thresholds. The aim is a readable intraday regime signal that helps you decide when to participate and when to stand aside.
The script is built with Pine v6, uses request security with lookahead off, and does not repaint. It is an indicator, not a strategy. It does not contain any solicitation, links, or outside references. The description is self contained and explains both logic and use so that any trader can understand the design without reading code.
What makes this original and useful
Intermarket leadership is measured directly from QQQ and SPY on your working timeframe using a Z score of the return spread. When growth is leading value heavy large caps, leadership turns positive. When it lags, leadership turns negative. This gives a real time read of the Nasdaq versus S and P tug of war that most day traders watch informally.
Intraday flow is taken from the slope of the session VWAP. A linear regression of VWAP over a short window captures whether value is rising or falling inside the day. Dividing by ATR normalizes slope by typical movement so that the signal is comparable across weeks.
Session position places price inside the current regular hours high to low. It answers whether the day is trading in the top half, the bottom half, or the middle. This is a simple but powerful context filter for breakouts and fades.
The three components are fused into one pulse, compressed with either hyperbolic tangent or softsign to keep values bounded, and then smoothed by a short EMA. This yields a stable range with a zero line so the eye can read shifts quickly.
The panel shows a human readable mode with reasons and a strength score. Traders who do not want to read lines can rely on a simple state and a compact justification that explains why the state is set.
This is not a mashup that simply overlays unrelated indicators. Each component was chosen to answer a distinct question that is common to SPY and QQQ intraday decision making. Leadership answers who is in charge, flow answers whether value inside the session is building or leaking, and position answers if price is pressing the extremes or circling the middle. The pulse ties the three together and prevents any single component from dominating.
How the calculations work
Leadership. Compute a short rate of change for SPY and QQQ. Subtract SPY from QQQ to get spread returns, then compute a rolling Z score over a longer window. Positive values mean QQQ is leading. Negative values mean SPY is leading.
Flow. Compute session VWAP on the active symbol. Regress VWAP over a short window to obtain a slope estimate. Divide by ATR to scale slope by current volatility so that a small rise on a quiet day is not treated the same as a small rise on a wild day.
Position. Track the highest high and lowest low since the start of regular hours. Place the current close inside that range on a zero to one scale, then recenter to a minus one to plus one scale. Positive means the top half of the day, negative means the bottom half.
Fusion. Multiply each component by a weight so users can emphasize or de emphasize leadership, flow, or position. Sum to a raw pulse.
Compression. Pass the raw pulse through a bounded function. Hyperbolic tangent is smooth and has natural saturation near the extremes. Softsign is faster and behaves like a smoother version of sign near zero. Compression avoids unbounded excursions and makes thresholds meaningful across days.
Smoothing. Apply a short EMA to the compressed pulse to reduce noise. This creates the main line called TwinPulse in the plot.
Thresholds. You can use static symmetric levels or adaptive levels. The adaptive option computes a mean and a standard deviation of the smoothed pulse over a user window, then sets upper and lower thresholds as mean plus or minus sigma times standard deviation. This allows thresholds to adjust across regimes. Static levels are still available for traders who want repeatable levels.
Events and mode. A long event fires when the smoothed pulse crosses the upper threshold with positive flow and any optional filters agree. A short event fires on the symmetric condition. The mode reads the current state rather than fire and forget. It returns BUY when the smoothed pulse is above the upper threshold with positive flow, SELL when the smoothed pulse is below the lower threshold with negative flow, otherwise WAIT. A cooldown controls how often events can fire so alerts do not spam during choppy periods.
Inputs and default values
The script ships with defaults chosen for SPY and QQQ on one hour charts.
Symbols. SPY and QQQ by default. You can switch to any pair. Many users may test IWM versus SPY for small cap reads.
Regular hours selector. On by default. This restricts the position factor to New York regular hours. Turn it off if you prefer full session behavior.
ROC length is three bars. Z score length is fifty bars. VWAP slope window is ten bars. ATR length is fourteen bars. Pulse smoothing length is three bars.
Compression mode. Choose hyperbolic tangent or softsign. Hyperbolic tangent is default.
Weights. Leadership and flow are one by default. Position is set to zero point seven to give a modest influence to where price sits inside the day.
Thresholds. Adaptive thresholds are on by default with a lookback of one hundred bars and a sigma width of zero point eight. Static levels at plus or minus zero point six are ready if you disable adaptive mode.
Filters. ADX filter is off by default. If you enable it, the script requires ADX above a user minimum before it will signal. Higher time frame confirmation is off by default. When enabled it compares the smoothed pulse on the confirm timeframe to zero and requires alignment for longs or shorts.
Cooldown. Three bars by default so that alerts do not trigger too frequently.
UI. Bar coloring is on by default. The panel is on by default and sits at the top right.
All request security calls use lookahead off and will not request future data. All persistent state variables are assigned in a way that prevents repainting. The indicator does not use non standard chart types in its logic.
How to use the indicator
Load a one hour chart of SPY or QQQ. Keep a clean chart so that the script output is easy to read.
Turn on regular hours if you want the session position to reflect the cash session. This is recommended for SPY and QQQ.
Watch the panel. Mode reads BUY or SELL or WAIT. The strength value is a simple vote based score that ranges from zero to one hundred. It counts leadership, flow, ADX if enabled, and higher time frame confirmation if enabled. You can use strength to filter weak states.
Consider action only when mode is BUY or SELL and the signal has not just fired on the last bar. The triangles mark where an event fired. Alerts use the same logic as the events. WAIT means stand aside.
To slow the system, enable ADX and set a higher minimum or enable higher time frame confirmation. To speed it up, disable the filters, disable adaptive thresholds, or tighten the sigma width.
When publishing, use a clean chart with only this indicator. Show the symbol and timeframe clearly and make sure the plot legend is visible. If you add drawings on the chart, only include ones that help readers understand the output.
Publication notes and compliance
This description is written in English. The title uses ASCII and only uses capital letters for common abbreviations. The script is original and explains how and why the components work together. There are no links or promotional material. The script does not claim performance. It does not use lookahead. The panel and alerts exist to help a human read and act with discipline. The indicator can be published as open source or as protected. If you choose protected, the description still allows readers to understand how the logic works without access to the code.
If you later convert the logic into a strategy for publication, use realistic commission and slippage, risk no more than a small share of equity per trade, and choose a dataset that yields a large enough sample. Explain any deviations from these default recommendations in your strategy description. Do not publish results from non standard chart types since they can mislead readers on signal timing.
Limitations and risks
Intermarket leadership is a relative measure. There are hours when both SPY and QQQ fall while leadership remains positive. Treat leadership as a context, not a stand alone trigger.
VWAP slope is a path measure inside the session. It can flip several times on a choppy day. That is why the script uses a short smoothing and an optional cooldown. Use ADX or higher time frame confirmation to avoid the worst chop.
Session position assumes a meaningful regular hours range. On half days or around openings with gaps the position factor can be less informative. If this bothers you, reduce the weight of position or turn it off.
Compression and smoothing introduce lag by design. The goal is stability and clarity. If you want earlier but noisier signals, reduce smoothing and weights, and use static thresholds.
No indicator guarantees future results. TwinPulse Q Lead is a decision aid. It should be combined with your risk rules, position size policy, and a clear exit plan. Past behavior is not a promise for the future.
Frequently asked questions
What symbols are supported. Any symbol can be used as the chart symbol. Leadership uses the two user symbols which default to SPY and QQQ. Many traders may try IWM versus SPY or DIA versus SPY.
Can I change the timeframe. Yes, but the design target is one hour. On very short timeframes the VWAP slope becomes very sensitive and you should consider stronger filters.
Does the script repaint. No. It uses request security with lookahead off and the panel updates on the last bar only. Events are based on bar close conditions unless you attach alerts on any alert function call which will still respect the logic without looking into the future.
How are the strength numbers built. The strength score is the share of aligned votes across leadership, flow, ADX if enabled, and higher time frame confirmation if enabled. A value near one hundred means many filters agree. A value near fifty means partial alignment. It is not a probability or an accuracy number.
Can I use non standard chart types. You can view the indicator on them but do not publish signals from non standard chart types because that can mislead readers about timing. Use classic candles or bars when you publish and when you test.
Why do I sometimes see BUY but the price is not moving. A BUY mode requires pulse above the upper threshold and positive flow. It does not require higher highs immediately. Treat BUY as a permission to look for entries using your own execution rules.
Overnight Z/VolRatio SignalThis indicator highlights overnight setups where both volatility expansion and prior-day range deviation suggest directional opportunity at the RTH open.
It calculates:
• Overnight Z-Score (Z_long): how far the overnight session’s range tilts from the 20-day overnight mean, standardized by its standard deviation.
• VolRatio: ratio of the current RTH session volume to the 20-day average, a proxy for participation and conviction.
Signal Logic (LONG bias)
A long-bias condition triggers when:
• Z_long ≥ 0.40 (overnight tilt strongly positive)
• VolRatio ≥ 1.30 (above-average RTH volume)
• Optional filters: R1/R4 region alignment, YDH/YDL proximity, and other context flags.
Visuals mark qualifying days with colored labels and session highlights.
It is intended as a context signal — not an auto-trading system — for SPY/SPX/ES or correlated large-cap indices.
Usage Notes
• Works best when applied to daily or intraday 5m chart with extended hours enabled.
• Typical exit: ~150 minutes after 09:30 ET.
• Fridays are optionally excluded to avoid expiration-related distortions.
Trend Discovery by Alex Trend States (Up / Reversal / Down)Author: © Alex Neighbors
Version: v6
The Call/Put Arrow Indicator is a complete market direction tool that identifies high-probability CALL (bullish) and PUT (bearish) opportunities using a combination of:
Simple Moving Averages (SMA)
RSI Momentum
MACD confirmation
VWAP trend filtering
Real-time trend classification (Trending Up, Trending Down, or Reversal)
It provides visual buy/sell arrows, trend labels, and alerts, helping traders quickly recognize optimal option entry points and directional momentum changes.
*** How It Works
✅ CALL Arrow (Green, Up Arrow Below Candle):
Triggered when:
Fast SMA > Slow SMA (uptrend)
RSI > Threshold (default 55)
MACD Line > Signal Line
(Optional) Price > VWAP
🔻 PUT Arrow (Red, Down Arrow Above Candle):
Triggered when:
Fast SMA < Slow SMA (downtrend)
RSI < Threshold (default 45)
MACD Line < Signal Line
(Optional) Price < VWAP
**Trend Detection System:
Trending Up: Both SMAs rising with bullish alignment
Trending Down: Both SMAs falling with bearish alignment
Trend Reversal: Detected instantly when Fast SMA crosses the Slow SMA (marked by a diamond)
Visuals
🟩 Green arrows below candles for CALL entries
🟥 Red arrows above candles for PUT entries
🟢/🔴 Diamonds mark trend reversals
Trend status panel in the top-right corner
Optional background or bar coloring for quick visual confirmation
Alerts
You can create alerts for:
CALL Buy Signal
PUT Buy Signal
Trend Reversal Up
Trend Reversal Down
All alerts trigger exactly when arrows or reversals appear on the chart.
--Best Use
Works on any symbol or timeframe (scalping, swing, or trend trading)
Optimized for SPX, QQQ, TSLA, and high-volume tickers
Ideal for traders combining options flow or price action confirmation
Customization
You can adjust:
SMA lengths
RSI thresholds
MACD parameters
VWAP filter toggle
Background/bar coloring and panel display
Why Traders Love It
Simple, clean chart visuals
Non-repainting, confirmed-bar signals
Multi-filter logic for high accuracy
Trend panel for instant context
Use this indicator to stay on the right side of the market.
Identify reversals early, trade the momentum confidently, and never miss your next CALL or PUT setup again.
Portfolio Simulator & BacktesterMulti-asset portfolio simulator with different metrics and ratios, DCA modeling, and rebalancing strategies.
Core Features
Portfolio Construction
Up to 5 assets with customizable weights (must total 100%)
Support for any tradable symbol: stocks, ETFs, crypto, indices, commodities
Real-time validation of allocations
Dollar Cost Averaging
Monthly or Quarterly contributions
Applies to both portfolio and benchmark for fair comparison
Model real-world investing behavior
Rebalancing
Four strategies: None, Monthly, Quarterly, Yearly
Automatic rebalancing to target weights
Transaction cost modeling (customizable fee %)
Key Metrics Table
CAGR: Annualized compound return (S&P 500 avg: ~10%)
Alpha: Excess return vs. benchmark (positive = outperformance)
Sharpe Ratio: Return per unit of risk (>1.0 is good, >2.0 excellent)
Sortino Ratio: Like Sharpe but only penalizes downside (better metric)
Calmar Ratio: CAGR / Max Drawdown (>1.0 good, >2.0 excellent)
Max Drawdown: Largest peak-to-trough decline
Win Rate: % of positive days (doesn't indicate profitability)
Visualization
Dual-chart comparison - Portfolio vs. Benchmark
Dollar or percentage view toggle
Customizable colors and line width
Two tables: Statistics + Asset Allocation
Adjustable table position and text size
🚀 Quick Start Guide
Enter 1-5 ticker symbols (e.g., SPY, QQQ, TLT, GLD, BTCUSD)
Make sure percentage weights total 100%
Choose date range (ensure chart shows full period - zoom out!)
Configure DCA and rebalancing (optional)
Select benchmark (default: SPX)
Analyze results in statistics table
💡 Pro Tips
Chart data matters: Load SPY or your longest-history asset as main chart
If you select an asset that was not available for the selected period, the chart will not show up! E.g. BTCUSD data: Only available from ~2017 onwards.
Transaction fees: 0.1% default (adjust to match your broker)
⚠️ Important Notes
Requires visible chart data (zoom out to show full date range)
Limited by each asset's historical data availability
Transaction fees and costs are modeled, but taxes/slippage are not
Past performance ≠ future results
Use for research and education only, not financial advice
Let me know if you have any suggestions to improve this simulator.
DynamoSent DynamoSent Pro+ — Professional Listing (Preview)
— Adaptive Macro Sentiment (v6)
— Export, Adaptive Lookback, Confidence, Boxes, Heatmap + Dynamic OB/OS
Preview / Experimental build. I’m actively refining this tool—your feedback is gold.
If you spot edge cases, want new presets, or have market-specific ideas, please comment or DM me on TradingView.
⸻
What it is
DynamoSent Pro+ is an adaptive, non-repainting macro sentiment engine that compresses VIX, DXY and a price-based activity proxy (e.g., SPX/sector ETF/your symbol) into a 0–100 sentiment line. It scales context by volatility (ATR%) and can self-calibrate with rolling quantile OB/OS. On top of that, it adds confidence scoring, a plain-English Context Coach, MTF agreement, exportable sentiment for other indicators, and a clean Light/Dark UI.
Why it’s different
• Adaptive lookback tracks regime changes: when volatility rises, we lengthen context; when it falls, we shorten—less whipsaw, more relevance.
• Dynamic OB/OS (quantiles) self-calibrates to each instrument’s distribution—no arbitrary 30/70 lines.
• MTF agreement + Confidence gate reduce false positives by highlighting alignment across timeframes.
• Exportable output: hidden plot “DynamoSent Export” can be selected as input.source in your other Pine scripts.
• Non-repainting rigor: all request.security() calls use lookahead_off + gaps_on; signals wait for bar close.
Key visuals
• Sentiment line (0–100), OB/OS zones (static or dynamic), optional TF1/TF2 overlays.
• Regime boxes (Overbought / Oversold / Neutral) that update live without repaint.
• Info Panel with confidence heat, regime, trend arrow, MTF readout, and Coach sentence.
• Session heat (Asia/EU/US) to match intraday behavior.
• Light/Dark theme switch in Inputs (auto-contrasted labels & headers).
⸻
How to use (examples & recipes)
1) EURUSD (swing / intraday blend)
• Preset: EURUSD 1H Swing
• Chart: 1H; TF1=1H, TF2=4H (default).
• Proxies: Defaults work (VIX=D, DXY=60, Proxy=D).
• Dynamic OB/OS: ON at 20/80; Confidence ≥ 55–60.
• Playbook:
• When sentiment crosses above 50 + margin with Δ ≥ signalK and MTF agreement ≥ 0.5, treat as trend breakout.
• In Oversold with rising Coach & TF agreement, take fade longs back toward mid-range.
• Alerts: Enable Breakout Long/Short and Fade; keep cooldown 8–12 bars.
2) SPY (daytrading)
• Preset: SPY 15m Daytrade; Chart: 15m.
• VIX (D) matters more; preset weights already favor it.
• Start with static 30/70; later try dynamic 25/75 for adaptive thresholds.
• Use Coach: in US session, when it says “Overbought + MTF agree → sell rallies / chase breakouts”, lean momentum-continuation after pullbacks.
3) BTCUSD (crypto, 24/7)
• Preset: BTCUSD 1H; Chart: 1H.
• DXY and BTC.D inform macro tone; keep Carry-forward ON to bridge sparse ticks.
• Prefer Dynamic OB/OS (15/85) for wider swings.
• Fade signals on weekend chop; Breakout when Confidence > 60 and MTF ≥ 1.0.
4) XAUUSD (gold, macro blend)
• Preset: XAUUSD 4H; Chart: 4H.
• Weights tilt to DXY and US10Y (handled by preset).
• Coach + MTF helps separate trend legs from news pops.
⸻
Best practices
• Theme: Switch Light/Dark in Inputs; the panel adapts contrast automatically.
• Export: In another script → Source → DynamoSent Pro+ → DynamoSent Export. Build your own filters/strategies atop the same sentiment.
• Dynamic vs Static OB/OS:
• Static 30/70: fast, universal baseline.
• Dynamic (quantiles): instrument-aware; use 20/80 (default) or 15/85 for choppy markets.
• Confidence gate: Start at 50–60% to filter noise; raise when you want only A-grade setups.
• Adaptive Lookback: Keep ON. For ultra-liquid indices, you can switch it OFF and set a fixed lookback.
⸻
Non-repainting & safety notes
• All request.security() calls use lookahead=barmerge.lookahead_off and gaps=barmerge.gaps_on.
• No forward references; signals & regime flips are confirmed on bar close.
• History-dependent funcs (ta.change, ta.percentile_linear_interpolation, etc.) are computed each bar (not conditionally).
• Adaptive lookback is clamped ≥ 1 to avoid lowest/highest errors.
• Missing-data warning triggers only when all proxies are NA for a streak; carry-forward can bridge small gaps without repaint.
⸻
Known limits & tips
• If a proxy symbol isn’t available on your plan/exchange, you’ll see the NA warning: choose a different symbol via Symbol Search, or keep Carry-forward ON (it defaults to neutral where needed).
• Intraday VIX is sparse—using Daily is intentional.
• Dynamic OB/OS needs enough history (see dynLenFloor). On short histories it gracefully falls back to static levels.
Thanks for trying the preview. Your comments drive the roadmap—presets, new proxies, extra alerts, and integrations.
Relative Strength vs. Benchmark (相對強度)This "Relative Strength vs. Benchmark" indicator helps you see a stock's true performance against a benchmark (like the S&P 500) at a glance. By calculating the price ratio between the two, it strips away the overall market noise, allowing you to focus on identifying true market leaders and underperforming laggards.
How It Works
Core Formula: Relative Strength = Stock Price / Benchmark Index Price
A Rising Line: Means the stock is outperforming the benchmark.
A Falling Line: Means the stock is underperforming the benchmark.
The indicator also includes a Moving Average (MA) of the Relative Strength line itself. This MA helps to confirm the trend of relative strength and filter out short-term noise.
How to Use
Find Market Leaders: When the market is in an uptrend or consolidating, look for stocks whose RS line is breaking out to new highs.
Avoid Laggards: If the RS line is consistently below its moving average or making new lows, the stock is significantly underperforming the market and should be treated with caution.
Trend Change Signals: A cross of the RS line above its MA can be seen as a signal that a new trend of relative outperformance is beginning. A cross below suggests the trend is weakening.
Features & Settings
Customizable Benchmark: You can change the default benchmark from TWSE:TSE to any symbol you need, such as SP:SPX for the S&P 500 or NASDAQ:NDX for the Nasdaq 100.
Adjustable MA Length: Customize the period for the RS Moving Average to fit your trading style (short-term or long-term).
Visual Toggle: Easily turn the colored background fill on or off according to your preference.
Hope you find this tool helpful in your analysis!
QQQ Ladder → Adjusted to Active Ticker (5s & 10s)This indicator allows you to a grid of QQQ levels directly on futures chart like NQ, MNQ, ES and MES, automatically adjusting for the spread between the displayed symbol and QQQ. This is particularly useful for traders who perform technical analysis on QQQ but execute trades on Futures.
Features:
Renders every 5 and 10 points steps of QQQ in your current chart.
The script adjusts these levels in real-time based on the current spread between QQQ and the displayed symbol!
Plots updated horizontal lines that move with the spread
Supports Multiple Tickers, ES1!, MES1!, NQ1!, MNQ1! SPY and SPX500USD.
NDX Ladder → Adjusted to Active Ticker (5s & 10s)This indicator allows you to a grid of NDX levels directly on the NQ! (E-mini NASDAQ 100 Futures) chart, automatically adjusting for the spread between NDX and NQ1!. This is particularly useful for traders who perform technical analysis on SPX but execute trades on NQ1!.
Features:
Renders every 5 and 10 points steps of the NDX in your current chart.
The script adjusts these levels in real-time based on the current spread between NDX and NQ / MNQ
Plots updated horizontal lines that move with the spread






















