{"uid":"cap_MB1AetaFq5dVtBAs4oQZG","slug":"btc-on-chain-macro-composite-signal-api-b9069027","name":"BTC On-Chain Macro Composite Signal API","description":"On-chain BTC macro composite signal API: aggregated 0-1 score plus per-signal scores for hash ribbons, GEX nearest major cluster, MVRV z-score, NUPL, realized-price ratio, Puell multiple, SOPR, short-term and long-term holder MVRV, reserve risk, and Fear & Greed. Macro regime input for cycle timing, position sizing, and risk-on/off rotation. Updated from onchain-macro-state.json.","url":"https://nonvisceral-eloisa-mousily.ngrok-free.dev/api/macro-signal","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","properties":{}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","properties":{"gex_btc":{"type":"object"},"signals":{"type":"object","description":"Per-metric score, raw value/state, and optional reason"},"updated_at":{"type":"string"},"state_fresh":{"type":"boolean"},"hash_ribbons":{"type":"object"},"composite_score":{"type":"number","description":"Aggregated 0-1 macro score; higher = more bullish/risk-on"},"composite_n_signals":{"type":"number"},"bot_state_age_seconds":{"type":"number"}}}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.03","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.03/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.03","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.03","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_SkQjcuaPhzSamJ_egieIB","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.03","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns an aggregated 0–1 macro bullish/bearish score for Bitcoin plus per-signal breakdowns across hash ribbons, MVRV z-score, NUPL, Puell multiple, SOPR, realized-price ratio, Fear & Greed, and more.","exampleAgentPrompt":"What's the current Bitcoin on-chain macro composite score, and which signals like MVRV z-score, Puell multiple, and NUPL are flashing risk-on or risk-off right now?","exampleUseCases":[{"title":"Cycle timing for BTC position entry","prompt":"I'm thinking about adding to my Bitcoin position — can you pull the on-chain macro composite score and tell me whether signals like MVRV z-score, NUPL, and Puell multiple suggest we're in an accumulation zone or overheated?"},{"title":"Automated risk-on/off rotation trigger","prompt":"Check the BTC on-chain macro signal right now and tell me if the composite score is above 0.6 so I can decide whether to rotate into risk-on crypto positions or stay defensive."},{"title":"Daily macro regime briefing for a trading bot","prompt":"Give me the full BTC macro regime snapshot — composite score, hash ribbons state, SOPR, reserve risk, Fear and Greed signal, and whether the data is fresh — so I can set today's position sizing rules."}],"resultDescription":"A JSON object containing: a composite_score (0–1 float, higher = more bullish/risk-on), per-signal objects each with a score, raw value or state, and optional reason (covering hash ribbons, GEX nearest major cluster, MVRV z-score, NUPL, realized-price ratio, Puell multiple, SOPR, short-term and long-term holder MVRV, reserve risk, Fear & Greed), updated_at timestamp, state_fresh boolean, composite_n_signals count, and bot_state_age_seconds.","failureModes":["Stale data: state_fresh=false when the upstream onchain-macro-state.json has not been refreshed recently; bot_state_age_seconds will be large","ngrok free-tier tunnel downtime: the underlying ngrok-free.dev hostname may go offline or rotate, causing connection errors","Upstream on-chain data provider lag: individual signals may be missing or null if their source APIs are unavailable","Payment failure: x402 payment of $0.03 USDC must succeed before data is returned; insufficient balance causes 402 error"],"whenToPreferThis":"Choose this endpoint when you need a single, pre-aggregated on-chain macro regime score for Bitcoin that synthesizes over ten distinct on-chain metrics (MVRV, NUPL, Puell, SOPR, reserve risk, etc.) into one actionable composite — saving you from querying and weighting each metric individually. Prefer it for cycle timing, risk-on/off rotation signals, and position sizing decisions where a holistic macro view is more useful than a single indicator. Not suitable for real-time tick-level trading signals or short-term momentum; use sibling endpoints (funding, OI, CVD, liquidations) for microstructure signals.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:36:20.197Z","isFirstParty":false}