OPEN-SOURCE SCRIPT
Bitcoin Macro Oscillator (Cuga)

Bitcoin Macro Oscillator (BMO) — WooCharts-Style Composite Indicator
A single-number macro health check for Bitcoin, combining 4 key signals into one oscillator:
══════════════════════════════════════════════
HOW IT'S CALCULATED
══════════════════════════════════════════════
1. MVRV Z-Score
• Data: On-chain MVRV Ratio (INTOTHEBLOCK:BTC_MVRV)
• Z = (MVRV - μ_4yr) / σ_4yr
• Measures over/undervaluation vs. realized cost basis
2. VWAP Ratio Z-Score
• VWAP = Cumulative (Price × Volume) / Cumulative Volume
• Ratio = (Price / VWAP) - 1
• Z = (Ratio - μ_4yr) / σ_4yr
• Tracks deviation from volume-weighted fair value
3. CVDD Ratio Z-Score (Approximated)
• CVDD Proxy = 200-week SMA (long-term holder cost)
• Ratio = (Price / CVDD) - 1
• Z = (Ratio - μ_4yr) / σ_4yr
• Captures coin-age destruction & HODL cost basis
4. Sharpe Ratio Z-Score
• 90-day rolling Sharpe = (Daily Return) / σ_daily
• Z = (Sharpe - μ_4yr) / σ_4yr
• Measures risk-adjusted momentum quality
══════════════════════════════════════════════
FINAL BMO FORMULA
══════════════════════════════════════════════
BMO = 0.25 × (Z_MVRV + Z_VWAP + Z_CVDD + Z_Sharpe)
• Lookback: 1,460 days (~4 years) for mean & std dev
• Equal weighting → BMO oscillates ~ –2.5 to +2.5
• Optional 1-period SMA smoothing
══════════════════════════════════════════════
SIGNAL LEVELS
══════════════════════════════════════════════
< –1.5 → Deep Oversold (Macro Buy)
–1.5 to –0.8 → Oversold
–0.8 to +0.8 → Neutral
+0.8 to +1.5 → Overbought
> +1.5 → Deep Overbought (Macro Sell)
A single-number macro health check for Bitcoin, combining 4 key signals into one oscillator:
══════════════════════════════════════════════
HOW IT'S CALCULATED
══════════════════════════════════════════════
1. MVRV Z-Score
• Data: On-chain MVRV Ratio (INTOTHEBLOCK:BTC_MVRV)
• Z = (MVRV - μ_4yr) / σ_4yr
• Measures over/undervaluation vs. realized cost basis
2. VWAP Ratio Z-Score
• VWAP = Cumulative (Price × Volume) / Cumulative Volume
• Ratio = (Price / VWAP) - 1
• Z = (Ratio - μ_4yr) / σ_4yr
• Tracks deviation from volume-weighted fair value
3. CVDD Ratio Z-Score (Approximated)
• CVDD Proxy = 200-week SMA (long-term holder cost)
• Ratio = (Price / CVDD) - 1
• Z = (Ratio - μ_4yr) / σ_4yr
• Captures coin-age destruction & HODL cost basis
4. Sharpe Ratio Z-Score
• 90-day rolling Sharpe = (Daily Return) / σ_daily
• Z = (Sharpe - μ_4yr) / σ_4yr
• Measures risk-adjusted momentum quality
══════════════════════════════════════════════
FINAL BMO FORMULA
══════════════════════════════════════════════
BMO = 0.25 × (Z_MVRV + Z_VWAP + Z_CVDD + Z_Sharpe)
• Lookback: 1,460 days (~4 years) for mean & std dev
• Equal weighting → BMO oscillates ~ –2.5 to +2.5
• Optional 1-period SMA smoothing
══════════════════════════════════════════════
SIGNAL LEVELS
══════════════════════════════════════════════
< –1.5 → Deep Oversold (Macro Buy)
–1.5 to –0.8 → Oversold
–0.8 to +0.8 → Neutral
+0.8 to +1.5 → Overbought
> +1.5 → Deep Overbought (Macro Sell)
Açık kaynak kodlu komut dosyası
Gerçek TradingView ruhuyla, bu komut dosyasının mimarı, yatırımcıların işlevselliğini inceleyip doğrulayabilmesi için onu açık kaynaklı hale getirdi. Yazarı tebrik ederiz! Ücretsiz olarak kullanabilseniz de, kodu yeniden yayınlamanın Topluluk Kurallarımıza tabi olduğunu unutmayın.
Feragatname
Bilgiler ve yayınlar, TradingView tarafından sağlanan veya onaylanan finansal, yatırım, alım satım veya diğer türden tavsiye veya öneriler anlamına gelmez ve teşkil etmez. Kullanım Koşulları bölümünde daha fazlasını okuyun.
Açık kaynak kodlu komut dosyası
Gerçek TradingView ruhuyla, bu komut dosyasının mimarı, yatırımcıların işlevselliğini inceleyip doğrulayabilmesi için onu açık kaynaklı hale getirdi. Yazarı tebrik ederiz! Ücretsiz olarak kullanabilseniz de, kodu yeniden yayınlamanın Topluluk Kurallarımıza tabi olduğunu unutmayın.
Feragatname
Bilgiler ve yayınlar, TradingView tarafından sağlanan veya onaylanan finansal, yatırım, alım satım veya diğer türden tavsiye veya öneriler anlamına gelmez ve teşkil etmez. Kullanım Koşulları bölümünde daha fazlasını okuyun.