Bitcoin Compass

Metodologia

Co dokładnie mierzy każdy wskaźnik, czego świadomie nie mierzy i ile dowodów historycznych za nim stoi. Progi i wagi są w wersjonowanych plikach konfiguracyjnych — poniżej pokazujemy tę samą konfigurację, którą liczone są wyniki.

Co mierzymy

Ocena długoterminowa bitcoina

Zwalidowany historycznie

Na ile obecne warunki wyceny i pozycjonowania rynku są korzystne dla horyzontu wieloletniego. Nie jest to prognoza ceny ani zalecenie transakcyjne — opisuje, jak dzisiejszy stan wypada na tle historii.

Czego nie mierzy: Nie prognozuje ceny, nie wskazuje momentu wejścia ani wyjścia i nie uwzględnia Twojej sytuacji finansowej.

Reżim rynku

Zwalidowany historycznie

Bieżący charakter zachowania rynku wyznaczony z trendu, zmienności i zachowania on-chain. Reżim zmienia się w tygodniach i nie jest fazą cyklu — badanie F7.5 wykazało, że dwa stany klasyfikatora różnią się wyłącznie trendem.

Czego nie mierzy: Nie jest fazą cyklu i nie mówi, jak długo potrwa. Audyt F7.5 wykazał, że dwa stany klasyfikatora różnią się wyłącznie trendem.

Ryzyko cyklu

Poparty dowodami

Jak wysoko względem historycznych zakresów cyklu znajduje się dziś rynek. Wysokie ryzyko nie znaczy, że spadek nastąpi — znaczy, że przestrzeń do dalszego wzrostu była historycznie mniejsza.

Czego nie mierzy: Nie jest prawdopodobieństwem spadku. Wysokie ryzyko znaczy, że przestrzeń do wzrostu była historycznie mniejsza — nie że spadek nastąpi.

Podobne okresy historyczne

Poparty dowodami

Okresy z przeszłości o zbliżonym otoczeniu rynkowym. Dobierane wyłącznie po stanie wejściowym, nigdy po tym, co stało się później. Miara zbieżności nie jest prawdopodobieństwem powtórzenia.

Czego nie mierzy: Nie jest prognozą powtórzenia. Badanie F8.1 wykazało brak wartości prognostycznej — analogi zostały zaklasyfikowane jako kontekst opisowy.

Sklasyfikowane w F8.1 jako obiecująca cecha kontekstowa: dopasowanie po wycenie ma wartość opisową, ale analogi nie wykazały wartości prognostycznej.

Stan rotacji

Poparty dowodami

Czy rynek kryptowalut jest prowadzony przez bitcoina, czy udział rozszerza się na altcoiny. Opis stanu bieżącego — moduł nie prognozuje altseasonu.

Czego nie mierzy: Nie przewiduje altseasonu. Badanie F9 nie znalazło sygnału wyprzedzającego, który przetrwałby walidację.

Miary są mierzalne i poprawne point-in-time, a stany rozdzielne ekonomicznie. Moduł jest opisowy — nie był i nie miał być walidowany pod kątem trafności prognoz.

Szerokość względna

Poparty dowodami

Udział kwalifikowanych altcoinów, które w wybranym okresie wypadły lepiej od bitcoina. Szeroki udział znaczy więcej niż wzrost skoncentrowany w jednym lub dwóch dużych aktywach.

Czego nie mierzy: Nie mówi, czy altcoiny rosną. Altcoin może pokonać bitcoina wyłącznie dlatego, że bitcoin spada szybciej — dlatego zawsze pokazujemy obok szerokość bezwzględną.

Miary są mierzalne i poprawne point-in-time, a stany rozdzielne ekonomicznie. Moduł jest opisowy — nie był i nie miał być walidowany pod kątem trafności prognoz.

Szerokość bezwzględna

Poparty dowodami

Udział kwalifikowanych altcoinów, których cena faktycznie rośnie — a nie tylko spada wolniej niż bitcoin. Bez tej miary krach, w którym altcoiny tracą mniej od bitcoina, wyglądałby jak zdrowy udział rynku.

Miary są mierzalne i poprawne point-in-time, a stany rozdzielne ekonomicznie. Moduł jest opisowy — nie był i nie miał być walidowany pod kątem trafności prognoz.

Jak to sprawdzamy

Replay point-in-time
Każdy model odtwarzamy dzień po dniu na danych dostępnych w tamtym momencie. Metryka, która zaczyna się w 2019 roku, nie istnieje w replayu roku 2018 — nie zastępujemy jej żadną wartością. Bez tego wyniki historyczne wyglądałyby lepiej, niż były w istocie.
Uniwersum z danego dnia
Skład koszyka altcoinów wyznacza ranga kapitalizacji z tamtego dnia, nie dzisiejsza lista tokenów. Inaczej historia zawierałaby wyłącznie aktywa, które przetrwały.
Dojrzałość modelu
Cztery poziomy: zwalidowany historycznie, poparty dowodami, eksperymentalny, za mało dowodów. Status należy do komponentu, nie do całego produktu — część modułów jest zwalidowana historycznie, część pozostaje opisowa.
Braki danych
Brakująca wartość nigdy nie staje się zerem ani „stanem neutralnym”. Produkt pokazuje brak oceny z podaniem powodu, bo częściowa awaria nie może po cichu stać się wnioskiem o rynku.
Audytowalność
Każda publikacja stanu zapisuje niezmienną wersję ze skrótem treści, wersją modelu, konfiguracji i dostawcy danych. Dzięki temu da się odtworzyć, co produkt twierdził w dowolnej chwili z przeszłości.

Znane ograniczenia

  • Szerokość rynku altcoinów jest mierzalna od 2018 roku. Wcześniej uniwersum liczyło kilkanaście aktywów — historia sprzed 2018 jest oznaczana jako brak danych.
  • Dominacja bitcoina i agregaty kapitalizacji są liczone na uniwersum produktu, więc są wartościami zastępczymi, nie publikowanymi wartościami globalnymi.
  • Bias przeżywalności jest ograniczony, ale nieusunięty: katalog dostawcy powstał współcześnie, więc projekty, które zniknęły bardzo wcześnie, w danych nie istnieją.
  • Liczba niezależnych epizodów historycznych bywa mała. Statystyki trwania opisują przeszłość i nie są oczekiwaniem co do przyszłości.
  • Dane pochodzą z publicznych API i mogą być opóźnione lub niekompletne — status każdej wartości jest oznaczony.

Zasady systemu

  • Wskaźniki grupowane są w niezależne obszary; wagi dotyczą obszarów, co ogranicza wpływ skorelowanych metryk.
  • Brak danych ⇒ renormalizacja wag + spadek confidence. Nigdy nie fabrykujemy wartości.
  • Obszary „proxy” (bez potwierdzenia on-chain) obniżają confidence o skonfigurowaną karę.
  • Statystyki historyczne sygnałów będą liczone wyłącznie na realnych danych (Etap 7) — do tego czasu prezentujemy status „insufficient data”.
  • Historia Bitcoina obejmuje ~3 pełne cykle — każda analogia cykliczna ma bardzo małą próbę statystyczną.
  • Korelacja nie oznacza przyczynowości; progi historyczne nie są gwarancją.

Konfiguracja scoringu (2026.08-mvp4)

Bitcoin Cycle Score

wyżej = późniejsza faza cyklu / większe przegrzanie

ObszarWagaMetryki (waga wewn.)
onchain_valuation25%mvrv_zscore (50%), mayer_multiple (20%), price_vs_200w_ma (15%), drawdown_from_ath (15%)
holder_behaviour15%brak dostępnych metryk w MVP — waga renormalizowana
liquidity15%stablecoin_mcap_change_30d (50%), stablecoin_mcap_change_90d (50%)
derivatives15%funding_rate_daily (60%), oi_market_cap_ratio (40%)
technical10%price_vs_200d_sma (60%), price_vs_21w_ema (40%)
macro10%dxy_change_90d (50%), real_yield_10y (50%)
sentiment5%fear_greed (100%)
miners5%hashrate_change_60d (100%)

Interpretacja: ≤20: Głęboka bessa / kapitulacja · ≤40: Akumulacja · ≤60: Wczesna hossa · ≤75: Dojrzała hossa · ≤90: Euforia · ≤100: Ekstremalne ryzyko cykliczne

Market Risk Score

wyżej = wyższe ryzyko rynkowe

ObszarWagaMetryki (waga wewn.)
valuation20%mvrv_zscore (50%), mayer_multiple (30%), price_vs_200w_ma (20%)
leverage20%funding_rate_daily (50%), oi_market_cap_ratio (50%)
news10%news_risk_score (100%)
trend_deviation20%price_vs_200d_sma (100%)
sentiment10%fear_greed (100%)
macro10%dxy_change_90d (50%), real_yield_10y (50%)
liquidity10%stablecoin_mcap_change_30d (100%)

Interpretacja: ≤20: Niskie ryzyko · ≤40: Umiarkowane · ≤60: Podwyższone · ≤80: Wysokie · ≤100: Ekstremalne

Altseason Score

wyżej = silniejsza rotacja do altcoinów

ObszarWagaMetryki (waga wewn.)
btc_dominance20%btc_dominance_level (50%), btc_dominance_change_30d (50%)
eth_btc20%eth_btc_change_30d (60%), eth_btc_change_90d (40%)
alt_breadth20%top100_outperform_btc_30d (50%), top100_outperform_btc_7d (30%), advance_share_24h (20%)
total2_total315%total2_change_30d (50%), total3_change_30d (50%)
stablecoin_liquidity10%stablecoin_mcap_change_30d (100%)
alt_volume10%alt_volume_share (100%)
retail_speculation5%meme_mcap_change_24h (100%)

Interpretacja: ≤20: Bitcoin Season · ≤40: BTC Dominance · ≤60: Transition · ≤75: Early Altseason · ≤90: Broad Altseason · ≤100: Altcoin Euphoria

Leverage Risk

wyżej = większe ryzyko delewarowania

ObszarWagaMetryki (waga wewn.)
funding40%funding_rate_daily (50%), funding_rate_percentile_90d (50%)
open_interest60%oi_market_cap_ratio (50%), oi_change_30d (50%)

Interpretacja: ≤20: Low Leverage Risk · ≤40: Normal · ≤60: Elevated · ≤80: High · ≤100: Extreme Deleveraging Risk

Liquidity Impulse

wyżej = silniejszy impuls płynności wspierający ryzyko

ObszarWagaMetryki (waga wewn.)
stablecoins50%stablecoin_mcap_change_30d (50%), stablecoin_mcap_change_90d (50%)
fiat_liquidity50%m2_change_90d (40%), fed_bs_change_90d (30%), dxy_change_90d (15%), real_yield_10y (15%)

Interpretacja: ≤20: Silna kontrakcja · ≤40: Kontrakcja · ≤60: Neutralnie · ≤80: Ekspansja · ≤100: Silna ekspansja

Reguły Decision Bias (2026.07-mvp1)

Pierwsza pasująca reguła (od góry) wybiera Primary Bias. Silnik zapisuje identyfikator reguły przy każdym wyniku (audytowalność).

  1. [extreme_deleverage] jeżeli leverage_safety.status == 'Extreme Deleveraging Risk'Avoid Leverage
  2. [capitulation_watch] jeżeli capitulation.score >= 60Wait for Confirmation
  3. [cycle_top_extreme] jeżeli cycle_top_risk.status in ['High','Extreme']Reduce Risk Gradually
  4. [overheated_valuation] jeżeli long_term_accumulation.status == 'Historically Overheated'Avoid New Exposure
  5. [strong_accumulation] jeżeli long_term_accumulation.status == 'Strong Accumulation Conditions' && trend_continuation.score >= 35Strong Accumulation Conditions
  6. [gradual_accumulation] jeżeli long_term_accumulation.status in ['Strong Accumulation Conditions','Moderate Accumulation Conditions'] && trend_continuation.score >= 42Gradual Accumulation Conditions
  7. [falling_knife] jeżeli long_term_accumulation.status in ['Strong Accumulation Conditions','Moderate Accumulation Conditions'] && trend_continuation.status == 'Strong Downtrend'Wait for Confirmation
  8. [uptrend_hold] jeżeli trend_continuation.score >= 58 && cycle_top_risk.score < 60Hold / Maintain Exposure
  9. [expensive_weakness_only] jeżeli long_term_accumulation.status == 'Expensive' && trend_continuation.score >= 42Add Only on Weakness
  10. [downtrend_avoid] jeżeli trend_continuation.score < 42Avoid New Exposure
  11. [default_wait] jeżeli trueWait for Confirmation

Pełna dokumentacja: docs/SCORING_MODEL.md, docs/DECISION_INDICATORS.md, docs/INDICATORS.md w repozytorium.