By ahr999

Hoarding Bitcoin — Complete Implementation Specification

Based on ahr999, Hoarding Bitcoin (囤比特币), compiled by QKL123 (2018-2019)


Table of Contents

  1. Overview
  2. Core Thesis — Why Bitcoin
  3. The ahr999 Index — Core Quantitative Framework
  4. Entry Rules — When to Buy
  5. Exit Rules — When to Sell
  6. Position Sizing and Capital Allocation
  7. Risk Management
  8. Private Key Management — Operational Security
  9. Behavioral and Discipline Rules
  10. Common Mistakes
  11. The Bitcoin Standard Mindset
  12. Complete Investment Lifecycle Example
  13. Implementation Pseudocode
  14. Key Quotes

1. Overview

Hoarding Bitcoin is a collection of essays by the Chinese Bitcoin blogger ahr999, compiled into a systematic guide for long-term Bitcoin accumulation. Written during the 2018 bear market (Bitcoin at ~¥30,000-40,000 / ~$4,000-6,000), the book advocates a philosophy of buy-and-never-sell combined with a quantitative timing indicator (the ahr999 Index) to optimize entry points.

Core thesis: Bitcoin's primary application is store of value. It will become humanity's preferred savings instrument, displacing gold, fiat currency, and real estate. The total global store-of-value market is $134 trillion (gold $7.7T + broad money $90.4T x 92% + real estate $217T x 20%). With only 21 million BTC (minus ~3 million permanently lost), each Bitcoin could reach $7.5 million (¥50 million) if Bitcoin captures this market — a 1,000x upside from 2018 prices.

Applicable asset: Bitcoin only. The author explicitly holds zero altcoins and recommends against all other cryptocurrencies.

Time horizon: 4-20 year halving cycles. The author treats Bitcoin as a social experiment with failure risk, but believes the expected-value calculation overwhelmingly favors accumulation.

Target audience: Long-term holders ("hodlers" / 囤币者) who treat Bitcoin as savings, not traders seeking short-term profits.


2. Core Thesis — Why Bitcoin

The Store of Value Argument

Bitcoin's value derives from hodlers — people who buy and never sell. The market has three participants:

  1. Hodlers (囤币者) — the demand side, buy-only, source of all value
  2. Miners (矿工) — the supply side, must sell to cover costs
  3. Traders (炒币者) — swing between the two, amplifying cycles

Bitcoin continuously flows into hodlers' hands. This is inevitable because hodlers only buy, never sell. Under fixed total supply, circulating Bitcoin decreases over time. UTXO age data confirms: 90%+ of coins have not moved in over 1 month, 75%+ have not moved in over 6 months.

Why Price Must Rise After Each Halving

The Long-Term Price Target

Using exponential growth modeling:

Why Only Bitcoin


3. The ahr999 Index — Core Quantitative Framework

Definition

The ahr999 Index is a composite indicator that multiplies two ratios:

ahr999 Index = (BTC Price / 200-day DCA Cost) * (BTC Price / Exponential Growth Fitted Value)

Where:

The Exponential Growth Fit

On a log-log chart (log price vs. log age-in-days), Bitcoin's price follows a linear relationship:

log10(BTC Price in USD) = 5.84 * log10(Age in Days) - 17.01

Therefore:

Fitted Price = 10^(5.84 * log10(days_since_2009_01_03) - 17.01)

This fitted curve forms the "fair value" baseline. Since it uses 8+ years of historical data, short-term price movements have minimal impact on the fit.

Index Zones

Historical distribution analysis reveals three zones:

ahr999 Range Action Historical Frequency Interpretation
< 0.45 Bottom-fish (抄底) — buy aggressively ~8.5% of days Price is deeply undervalued vs. both DCA cost and exponential trend
0.45 - 1.2 DCA zone (定投) — dollar-cost average ~46.3% of days Price is below trend, good for systematic accumulation
1.2 - 5.0 Wait zone (等待起飞) — hold, do not buy ~29.3% of days Price is near or above trend, wait for takeoff
> 5.0 Overheated — not considered (author never sells) Rare Bubble territory

The Two Component Ratios

Each component ratio also carries independent meaning:

  1. BTC Price / 200-day DCA Cost: When < 1, buying now beats the average DCA buyer — you are getting in at a discount
  2. BTC Price / Exponential Growth Fit: When < 1, price is below the long-term trend — Bitcoin is undervalued

When both ratios are simultaneously < 1, Bitcoin is deeply undervalued. This has historically occurred only twice:

These represented the best buying opportunities in Bitcoin's history.


4. Entry Rules — When to Buy

Primary Strategy: Dollar-Cost Averaging (DCA)

DCA is the default strategy for most time periods. The 200-day DCA cost line runs below the actual price most of the time, meaning consistent DCA buyers outperform most one-time buyers.

DCA Rules:

Enhanced Strategy: ahr999-Guided Buying

Use the ahr999 Index to modulate buying intensity:

ahr999 Value Action
< 0.45 Increase allocation significantly — deploy reserve cash, buy aggressively
0.45 - 1.2 Standard DCA — regular fixed-amount purchases
> 1.2 Stop buying — hold existing position, wait

Bottom-Fishing Strategy

During bear markets, the author also maintains bottom-fishing ammunition (抄底资金):

Mining Cost as Price Floor

The author argues Bitcoin's price floor is the electricity cost of mainstream mining equipment:

When NOT to Buy


5. Exit Rules — When to Sell

The Core Rule: Never Sell

The author's fundamental rule is never sell Bitcoin:

"我不得不给自己订下一条死规则——不卖币。不卖币就意味着,我赚不到法币,也就意味着我的投入跟这个实验共存亡。" (I had to set myself an ironclad rule — never sell. Not selling means I cannot earn fiat, which means my investment lives or dies with this experiment.)

Rationale:

Exception: Emergency Liquidity

The author acknowledges that life emergencies may require selling. If you must sell:

No Profit-Taking Target

There is no price target at which to sell. The author explicitly rejects:

The philosophy is that Bitcoin's upside is essentially unlimited if it captures the global store-of-value market.


6. Position Sizing and Capital Allocation

Maximum Allocation: 30% of Total Assets

The author recommends investing no more than 30% of total assets in Bitcoin:

Expected value calculation:

Even with only 10% success probability, the expected value overwhelmingly favors hodling. But:

The "All-In Over Time" Dynamic

If Bitcoin succeeds, your 30% allocation will grow to dominate your portfolio:

Anti-Leverage Principle

Going all-in (梭哈) is a critical mistake the author warns against:


7. Risk Management

Accept the Experiment May Fail

Bitcoin is a social experiment. The author explicitly acknowledges:

Risk mitigation: Only invest what you can afford to lose entirely (max 30% of assets).

Drawdown Management

Historical drawdowns in Bitcoin:

How to survive drawdowns:

  1. Keep position size at 30% or less — remaining 70% sustains your life
  2. Never check the price obsessively (delete all price apps if needed)
  3. Store private keys in cold storage that is deliberately inconvenient to access — this prevents panic selling
  4. Remember: even a 90% drop only costs you 30% x 90% = 27% of total wealth — painful but survivable

Expected Value Framework for Decisions

The author uses explicit expected-value calculations for all decisions:

Example — "Bearish but not selling":

Example — "Why not buy altcoins with higher potential upside":

Black Swan Preparedness

Never sell Bitcoin in anticipation of crashes:


8. Private Key Management — Operational Security

Core Principle: Hold Your Own Keys

"Hoarding" means the coins are in your own hands — you and only you hold the private keys. This is non-negotiable for long-term holders.

"如果你不掌握私钥,你就无法享受这革命性的储值方式。" (If you don't hold the private keys, you cannot enjoy this revolutionary store of value.)

Tiered Security Model

Manage keys in two tiers based on security needs:

Tier Purpose Amount Security Level
Cold Storage Long-term hodling (90%+) 9+ BTC of 10 Maximum — offline, airgapped
Hot Wallet Occasional spending 1 BTC of 10 Convenient — on a device

Cold Storage Procedure

  1. Prepare an offline device (old laptop or phone)
  2. Download wallet software that can generate addresses/keys offline
  3. Disconnect from internet (or physically destroy the network card)
  4. Generate new addresses and private keys offline
  5. Encrypt the private keys with a password you know well
  6. Create 3 backups in different forms (2 electronic + 1 paper) stored in 3 geographically separate locations
  7. Send Bitcoin to the generated addresses from an online device
  8. Verify the transaction on a blockchain explorer

Key Management Rules

Hardware Wallets

For those unwilling to learn cold storage:

The Ultimate Test: Uninstall Everything

The author's personal practice:


9. Behavioral and Discipline Rules

The Four Psychological Challenges

  1. Impulse (冲动): Altcoin rallies of 10-100x create irresistible urges to speculate

    • Counter-strategy: Store private keys in cold storage that is deliberately hard to access. By the time you can act, the impulse has passed and rationality returns.
  2. Loneliness (孤独): Believers in Bitcoin are isolated. You cannot discuss it with friends or family. For years, nobody around you will understand.

    • Counter-strategy: Write down your thoughts. When you are comfortable with loneliness, your thinking will have matured.
  3. Boredom (无聊): Hodling requires doing nothing. This is profoundly anti-human-nature.

    • Counter-strategy: Recognize that hodling itself IS the contribution to Bitcoin's network. Go exercise, stay healthy, invest in yourself. Wait for financial freedom to come to you.
  4. Contradiction (矛盾): You simultaneously want price to rise (richer) and fall (buy more). This never resolves.

    • Counter-strategy: Accept the contradiction. It has no practical impact on your hodling behavior.

Three Rules for Idealists

  1. Don't get too excited — Don't proselytize, don't bring up Bitcoin in every conversation, don't become a zealot. Study economics and cryptography quietly.

  2. Don't ask "where's the bottom" — For an asset with no ceiling, debating the bottom is pointless. Whether you bought at ¥5,000, ¥1,000, ¥130,000, or ¥40,000, you are still buying.

  3. Stay true to your original intent, remain patient — Don't chase altcoins. Don't get scammed. Don't fight trolls online. Time will prove Bitcoin's greatness.

DCA Over Bottom-Guessing

If you want the lowest possible cost, DCA beats trying to time the bottom:


10. Common Mistakes

1. Going All-In / Leverage (梭哈)

2. Trading Altcoins

3. Trying to Time the Market

4. Following Feelings

5. Evangelical Proselytizing ("Pulling People In" / 拉人头)

6. Storing Coins on Exchanges

7. Trusting "Wallets" That Are Not Real Wallets

8. Fork Coin Attachment


11. The Bitcoin Standard Mindset

Shifting Your Unit of Account

Once you adopt BTC as your unit of account (币本位思维):

Consumption Becomes Rational

With BTC as mental unit of account:

Wealthy Mindset vs. Scarcity Mindset

Running a Full Node

The final expression of the Bitcoin Standard:


12. Complete Investment Lifecycle Example

Scenario: New Entrant in Late 2018

Background: You have ¥1,000,000 in total assets. Bitcoin is at ¥30,000 (~$4,300). The ahr999 Index is ~0.68 (in the DCA zone, approaching bottom-fishing zone).

Step 1: Determine allocation

Step 2: Split into DCA and bottom-fishing funds

Step 3: Begin DCA

Step 4: Set up cold storage

Step 5: Monitor ahr999 Index (weekly check only)

Step 6: Bear market grind (2019)

Step 7: Accumulation result after 18 months

Step 8: Halving cycle (2020)

Step 9: Bull market (2021)

Step 10: Do NOT sell


13. Implementation Pseudocode

ahr999 Index Calculation

import math
from datetime import datetime, date

BITCOIN_BIRTHDAY = date(2009, 1, 3)

def bitcoin_age_days(current_date):
    """Days since Bitcoin genesis block."""
    return (current_date - BITCOIN_BIRTHDAY).days

def exponential_growth_fit(current_date):
    """
    Predicted BTC price (USD) from log-log regression.
    Formula: log10(price) = 5.84 * log10(age_days) - 17.01
    """
    age = bitcoin_age_days(current_date)
    log_price = 5.84 * math.log10(age) - 17.01
    return 10 ** log_price

def dca_200_day_cost(daily_prices_last_200):
    """
    Geometric mean of the last 200 daily prices.
    This represents the average cost of someone who invested
    a fixed USD amount each day for the past 200 days.
    
    Geometric mean = exp(mean(ln(prices)))
    """
    n = len(daily_prices_last_200)
    log_sum = sum(math.log(p) for p in daily_prices_last_200)
    return math.exp(log_sum / n)

def ahr999_index(current_price, dca_cost, fitted_price):
    """
    ahr999 Index = (price / 200d_dca_cost) * (price / fitted_price)
    """
    ratio_dca = current_price / dca_cost
    ratio_fit = current_price / fitted_price
    return ratio_dca * ratio_fit

def get_action(index_value):
    """Determine action based on ahr999 Index."""
    if index_value < 0.45:
        return "BOTTOM_FISH"    # Buy aggressively with reserve capital
    elif index_value <= 1.2:
        return "DCA"            # Regular dollar-cost averaging
    else:
        return "WAIT"           # Hold, do not buy

Daily Decision Engine

def daily_routine(state):
    """
    Daily decision process for a Bitcoin hodler.
    State contains: portfolio, cash reserves, ahr999 history.
    """
    today = date.today()
    current_price = get_btc_price_usd()
    
    # Calculate indicators
    prices_200d = get_daily_prices(last_n_days=200)
    dca_cost = dca_200_day_cost(prices_200d)
    fitted = exponential_growth_fit(today)
    index = ahr999_index(current_price, dca_cost, fitted)
    
    action = get_action(index)
    
    if action == "BOTTOM_FISH":
        # Deploy one portion of bottom-fishing reserve
        if state.bottom_fish_portions_remaining > 0:
            amount = state.bottom_fish_reserve / 10
            buy_btc(amount)
            state.bottom_fish_portions_remaining -= 1
        # Also continue regular DCA
        if is_dca_day(today, state.dca_schedule):
            buy_btc(state.dca_amount)
    
    elif action == "DCA":
        if is_dca_day(today, state.dca_schedule):
            buy_btc(state.dca_amount)
    
    elif action == "WAIT":
        pass  # Do nothing. Hold.
    
    # After every purchase: move to cold storage
    if btc_in_hot_wallet() > TRANSFER_THRESHOLD:
        transfer_to_cold_storage()
    
    # NEVER SELL
    # There is no sell logic in this system.
    
    return state

Capital Allocation Setup

def initialize_hodling_plan(total_assets, monthly_income):
    """
    Set up the initial hodling plan.
    """
    # Maximum 30% of total assets for Bitcoin
    btc_allocation = total_assets * 0.30
    
    # Split into DCA and bottom-fishing
    dca_fund = btc_allocation * 0.67          # 2/3 for DCA
    bottom_fish_reserve = btc_allocation * 0.33  # 1/3 for bottom-fishing
    
    # DCA over 12-18 months
    dca_months = 18
    monthly_dca = dca_fund / dca_months
    
    # Also allocate portion of future income
    monthly_btc_savings = monthly_income * 0.10  # 10% of income
    
    return {
        "total_btc_allocation": btc_allocation,
        "dca_fund": dca_fund,
        "bottom_fish_reserve": bottom_fish_reserve,
        "bottom_fish_portions": 10,
        "monthly_dca": monthly_dca + monthly_btc_savings,
        "dca_months_remaining": dca_months,
    }

Private Key Management State Machine

class ColdStorageManager:
    """
    States: SETUP -> TESTING -> ACTIVE -> VERIFIED
    """
    
    def setup(self):
        """Initial cold storage creation."""
        # 1. Prepare offline device
        # 2. Download key generation tool
        # 3. DISCONNECT FROM INTERNET
        # 4. Generate N addresses + private keys
        # 5. Encrypt private keys with personal password
        # 6. Create 3 backups:
        #    - Backup A: encrypted USB drive -> Location 1
        #    - Backup B: encrypted USB drive -> Location 2  
        #    - Backup C: paper printout      -> Location 3
        self.state = "TESTING"
    
    def test(self):
        """Verify backup/restore process with small amount."""
        # 1. Send 0.001 BTC to generated address
        # 2. Verify on blockchain explorer
        # 3. Practice restoring from each backup
        # 4. Practice sending from restored keys
        # If all tests pass:
        self.state = "ACTIVE"
    
    def deposit(self, btc_amount):
        """Send BTC to cold storage."""
        assert self.state in ("ACTIVE", "VERIFIED")
        # Send to next unused cold storage address
        # Verify transaction on blockchain explorer
        # Log the deposit
    
    def verify_periodic(self):
        """Annual verification that backups are intact."""
        # Check all 3 backup locations
        # Verify backup integrity (can decrypt, keys match)
        # Do NOT connect cold storage device to internet
        self.state = "VERIFIED"

14. Key Quotes

"我们在参与一场社会实验,它存在失败的可能性,但是我们无怨无悔。" "We are participating in a social experiment. It may fail, but we have no regrets." — Opening epigraph

"下车太早只因愿景太小。" "Those who get off the train too early do so only because their vision is too small." — Chapter 2 title

"比特币是人类历史上第一次,用技术手段实现了私有财产神圣不可侵犯。" "Bitcoin is the first time in human history that the sanctity of private property has been achieved through technological means." — Li Xiaolai, quoted in Chapter 1

"哪怕明知囤比特币可以实现财富自由,你可能还是囤不住,因为你不想等,你还想走捷径。" "Even knowing that hoarding Bitcoin can achieve financial freedom, you still might not be able to hold — because you don't want to wait, you still want shortcuts." — Chapter 3

"我的策略是,交易所不放钱也不放币,把私钥藏得深一点。每当行情到来,冲动的时候,我没法立刻操作私钥;而当可以操作私钥的时候,行情已经过去,理性又占据了上风。" "My strategy is: keep nothing on exchanges, hide the private keys deep. When the market moves and impulse strikes, I cannot access the keys immediately; by the time I can access them, the moment has passed and rationality prevails." — Chapter 4

"囤比特币其实是反复决策的结果。别人觉得简单是因为只看到结果,而看不到决策的过程。" "Hoarding Bitcoin is actually the result of repeated deliberation. Others think it's simple because they only see the result, not the decision-making process." — Chapter 10

"手中有币,心中无币。" "Coins in your hands, no coins in your heart." — Chapter 12 (the ideal state of a hodler)

"成就最好的自己就是对比特币最大的贡献!" "Becoming the best version of yourself is the greatest contribution to Bitcoin!" — Chapter 13

"私钥决定比特币所有权,全节点捍卫比特币规则。" "Private keys determine Bitcoin ownership; full nodes defend Bitcoin's rules." — Chapter 14

"Don't trust. Verify." — Chapter 14 closing line

"坐在火箭上的人,不会在乎地面上的人怎么说,因为心中只有星辰大海。至于火箭危不危险,在踏上征程的那一刻,就已经有心理准备了。" "Those riding the rocket don't care what people on the ground say, because in their hearts there are only stars and oceans. As for whether the rocket is dangerous — they were mentally prepared the moment they embarked on the journey." — Final page