Skip to main content

Bitcoin Halving 2024 Just Landed: Why This Time Is Different

· 8 min read
Alan Wu
CTO & Co-Founder @ Crypto Arsenal

With insights from giants in financial analysis and Web3 insight such as Goldman Sachs, BlackRock, Fidelity, Greyscale, Coinbase…etc this article delves into how the forthcoming halving could differ markedly from past events. We will explore an array of modern-day factors — ranging from monetary policies, demographic shifts, and geopolitical tensions, to the evolving roles of ETFs, miners, and holders — that are reshaping the supply and demand dynamics of Bitcoin.

Understanding Bitcoin Halving

What is Bitcoin Halving, and Why Does Bitcoin Need It?

Bitcoin halving, occurring every 210,000 blocks—or approximately every four years—cuts the block reward for miners in half. This scheduled event is a critical mechanism coded in the protocol (Github).

CAmount GetBlockSubsidy(int nHeight, const Consensus::Params& consensusParams)
int halvings = nHeight / consensusParams.nSubsidyHalvingInterval;
// Force block reward to zero when right shift is undefined.
if (halvings >= 64)
return 0;

CAmount nSubsidy = 50 * COIN;
// Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
nSubsidy >>= halvings;
return nSubsidy;

Bitcoin Halving is designed to control Bitcoin's inflation and maintain its long-term value by limiting the supply, much like precious metals.

The root problem with conventional currency is all the trust that's required to make it work. The central bank must be trusted not to debase the currency, but the history of fiat currencies is full of breaches of that trust.” - Satoshi Nakamoto 2009

Impact of Halving on Bitcoin's Price Dynamics

Historically, halvings have led to a reduction in the supply of new bitcoins as rewards decrease, creating potential upward pressure on prices if demand remains steady or increases. Historical data supports significant price increases post-halving, highlighting the importance of this event in Bitcoin's market dynamics.

Historical Context and Its Limitations

Historical Price Changes Post-Halving

  • 2012 Halving: Year after: +8,839%; Month after: +9%

  • 2016 Halving: Year after: +285%; Month after: -10%

  • 2020 Halving: Year after: +548%; Month after: +6%

These statistics illustrate that while the market tends to focus on short-term impacts, it often underestimates the long-term effects of halvings, as noted by Bitwise.

Although these statistics highlight significant post-halving price increases, relying solely on historical data can be misleading. Financial giants such as Goldman Sachs and BlackRock advise against depending exclusively on past halving patterns as they consider them unreliable indicators for future performance and should consider more macro and long-term factors.

New Factors Influencing This Halving

1. Fiscal and Monetary Policies:

The U.S.’s rising fiscal deficit and high interest rates, leading to approximately $1 trillion in annual interest payments, enhance Bitcoin’s appeal as a hedge against inflation, potentially increasing its demand as a “store of value.” This dynamic is underscored by Bitcoin’s growing stock-to-flow ratio, which is anticipated to surpass that of gold (Fidelity).

2. Tax Season and Market Liquidity:

The combination of U.S. tax liabilities coming due on 4/15 and the Federal Reserve's quantitative tightening could exacerbate market liquidity issues, leading to potential broad-based sell-offs in the crypto space as noted by the Cofounder of BitMEX, Arthur Hayes.

3. Demographic Shifts:

A significant demographic shift is underway as Millennials, who make up about 2% of U.S. millionaires, increasingly invest in digital assets. A 2023 CFA Institute study highlighted that Millennials hold a larger portion of their wealth in digital formats than previous generations, suggesting a shift in investment preferences towards cryptocurrencies, which could influence long-term demand dynamics (Fidelity).

4. Geopolitical Tensions:

Global instabilities, such as the Russia-Ukraine conflict and tensions between Israel and Iran, could impact market volatility and investment flows into cryptocurrencies. Recent studies, such as the one by Khalfaoui et al. (2022), show that geopolitical crises can create significant volatility in cryptocurrency markets, affecting prices both in the short and long term.

5. Role of ETFs and Institutional Investments:

The landscape of Bitcoin investing is notably being reshaped by the entry of ETFs and large-scale institutional investments. Despite recent data from Matrixport showing a decline in U.S.-listed Bitcoin ETF inflows with over $319 million in net outflows, the overall potential for these financial products remains high.

Institutions like Coinbase and 21Shares posit that ETFs could majorly absorb sell pressure post-halving, providing a new source of steady demand that may stabilize or even increase Bitcoin's price. Moreover, the promotional efforts by major financial players such as BlackRock, and anticipated capital inflows from institutional sectors managing approximately $114 trillion globally hint at a significant bullish potential for Bitcoin's market cap in the near future.

Post-halving Miner and Market Dynamics

Post-halving, the cost of mining Bitcoin is expected to increase significantly, with CoinShares projecting expenses to rise to between $27,900 and $37,800 per Bitcoin. This increase sets a new potential price floor and highlights the importance of monitoring mining operations for insights into market stability and supply constraints (CoinShares Research).

Miner Selling Dynamics:

Reduction in Miner Selling: Galaxy Research posits that halving reduces miners' sell pressure as they have already built up cash reserves to prepare for the halving event so their infrastructure remain competitive or engage in acquisitions or mergers. This pattern is evident in previous halvings (November 2012, July 2016, and May 2020) and might repeat in 2024 (Galaxy). This is supported by CryptoQuant’s CEO, who observes decreased selling from miners through reduced exchange inflow and outflow data (CryptoQuant).

Forced Selling by Miners: Conversely, reduced block rewards compel miners to sell to cover expenses, making them "forced sellers," says Bitwise's CIO, Hougan. Miners are increasingly turning to equity or debt financing to sustain operations, as discussed in Grayscale's report (Grayscale Report). Relocation to areas with cheaper energy costs is also a strategy being adopted to mitigate costs, per industry trends and JPMorgan’s analysis.

Market Impact and Industry Consolidation:

Industry Consolidation: Financial pressure from the halving is expected to drive consolidation, favoring larger miners with the capacity to operate on thinner margins, according to VanEck (VanEck Analysis). This consolidation could influence the decentralization and dynamics of the Bitcoin network.

Changing Seller Dynamics: The reduction in miner output will decrease the availability of Bitcoin from forced sellers (who are insensitive towards to selling price as miners always sell a portion of their block rewards for fiat to pay for operational expenses like energy, labor, debt, and new machines), thereby increasing reliance on willing sellers who may demand higher prices, leading to potential market volatility or upward buying pressure, as analyzed by Bitwise (Bitwise Insights).

Traders and Market Dynamics

Futures Traders:

Funding Rate has turned negative since start of 2024 showing traders are willing to pay for opening and maintaining short positions (CryptoQuant)

Long Term Holder Behavior:

The market's liquidity is increasingly influenced by the behavior of long-term holders (LTHs), who now retain nearly 70% of all circulating Bitcoin. This holding pattern suggests a more illiquid market which could stabilize prices in the face of supply shocks (21Shares).

Market Value to Realized Value (MVRV) Ratio

This metric, which compares the current market price of Bitcoin to its realized price across all coins, suggests strong investor confidence. The MVRV ratio has averaged 2.4 over the past 30 days, notably higher than the 1.07 average observed during similar pre-halving periods in previous cycles. This elevated ratio indicates that investors are willing to pay premium prices for Bitcoin, suggesting an optimistic outlook on its value stability and growth potential (21Shares).

Net Unrealized Profit and Loss (NUPL)

Another critical indicator, NUPL, helps gauge the overall market sentiment by differentiating between unrealized profit and loss within the market. Currently, the NUPL stands at 0.6, which is below the 'greed' level of 0.7 observed in 2021 but still substantially higher than the 0.42 average of previous halving events. This metric underscores a growing bullish sentiment among investors, further buoyed by the recent U.S. approval of a spot Bitcoin ETF which has attracted over $10 billion in capital and accumulated more than 400,000 BTC, reinforcing bullish market trends (21Shares).

On-Chain Indicators

Exchange Reserve:

The decrease in Bitcoin's exchange balances to a five-year low signals a looming supply crunch, reinforcing bullish sentiment. (21Shares).

On-Chain Activities and Their Implications:

Bitcoin's Total Value Locked (TVL) has also surged reaching 2.7 billion, marking a sevenfold increase in March alone, positioning Bitcoin among the top networks by TVL. This surge is indicative of a healthy and expanding ecosystem, potentially heralding a new era for Bitcoin's utility and investor interest post-halving.

Additionally, the introduction of ordinals has revitalized the blockchain, constituting approximately 20% of total miner revenue and underscoring innovative use cases beyond simple transactions.


While the foundational mechanics of Bitcoin halving remain constant—reducing the supply of new bitcoins to control inflation—the 2024 event is set against a backdrop of unique fiscal, demographic, and geopolitical factors. These elements introduce new variables that could significantly influence Bitcoin's traditional halving impact. Understanding these dynamics requires a multifaceted approach, blending traditional financial analysis with insights from contemporary global trends.


· 7 min read

一、ETF 的巨大需求量

市場參與者經常將比特幣減半視為多頭市場的前兆,因為它旨在降低新比特幣的產生速度增加稀缺性,但目前的市場狀況與歷史常態不同。隨著減半的臨近,且 ETF 不斷增長的需求,新開採並釋放到流通中的比特幣的影響變得越來越小。

以下圖片是 ETF 和比特幣的每日交易量,可以看出 ETF 是比特幣的好幾倍。

橘色 : 比特幣

藍色 : ETF



LTH : 被 Glassnode 定義為持有比特幣超過 155 天,觀察到超過 155 天的持有人的比特幣不太會因市場波動而被出售,這說明持有人對長期價值有更強的信念。


它顯示了 LTH 相較於每日礦工發行量的比特幣累積的年化率。

  • 我們將相對於流通供應量向礦工發行的比特幣視為名目通膨率(黃色軌跡),被認為是持續的賣方壓力。

  • 我們將長期持有者供應量減市場流通供應量再進行年化,作為市場需求的衡量標準。將該值乘以負 1,


我們將此 LTH 累積率添加到名目通膨率中,以計算市場通膨率(綠色跡線)。我們可以看到的是:

  • 在熊市後期 2015 年,市場通膨率嚴重為負(可用供應處於通貨緊縮狀態),達到-14%至-15%。這意味著 LTH 每年累積的流通供應量超過礦工發行量的 15%。
  • 在牛市頂峰 2018 年,市場通膨達到峰值,高於名目通膨,這表明 LTH 透過撤資顯著增加了賣方壓力(可用供應的通膨率非常高)。這最終導致供應過剩並引發熊市
  • 目前由負轉正中,可能為多頭轉空頭的現象。



2016 年,市場減半使價格從 $760 跌至 $540,這次下跌展示了減半引發立即市場波動的影響

image 2.png

2020 年減半沒有出現大幅拋售,由於減半前價格回升,表示市場受到更廣泛的經濟狀況市場情緒影響。

image 3.png


但如果與 2021 年 4 月的 ATH 保持一致,週期的進展就會和歷史發展一樣。

ATH : 「all time high」意思為幣價創造歷史新高。


總結 : 此週期有什麼不同

以週期性模式來看,在減半之前突破 ATH 並不意味著我們已經偏離了比特幣的歷史規範。關鍵是要評估上一周期牛市見頂的時間,發生在 2021 年 4 月

從技術上講,比特幣的價格在 2021 年 11 月上漲。基於以下原因:在 4 月高點後,絕大多數技術指標市場情緒投資者行為顯示出典型的熊市價值,但並且未正確恢復。

image 4.png

2021 年 4 月為上一次多頭高點,可知當前週期非常符合歷史常態。這暗示著牛市可能會持續更長時間,儘管我們在減半之前已經突破了先前的最高水平。本週期的調整幅度較小,與過去多頭市場中典型的 30-40% 的大幅下跌不同。

image 5.png

  • 2024/4/11

    image 6.png


    隨著 BTC 已進入減半前的最後倒數,該話題的主導已達到今年的最高水平!

    本主題中的峰值應該被視為 Crypto 市場的高可信度價格反轉。目前 BTC 可能只是暫時在頂部,如果價格回落至 67,000 美元時,關於減半話題討論激增,這代表此時是 FUD 的跡象 ! 你將有機會信心購買 !


    image 7.png

    走勢了解目前各大平台討論度 :

ACE X CA X Lead Capital 量化課程

· 4 min read
BCA Daniel
Quant Lead & BD & MM


  • 註冊連結 (可以 Google 註冊)
  • 如何用 CA 串接和自動化任何 TradingView 策略: 到 Strategy > New Strategy > TradingView (詳細教學)
  • 如何用 CA 回測和實單策略: 到 Strategy > New Strategy > Technical Indicator > EMA


7/26 簡易EMA策略 + 簡易 Filter (濾網) i.e RSI & Momentum

strategy(title="CA_test", shorttitle="EMA", overlay=true, default_qty_value = 80)

ema10 = ta.ema(close,10)
ema20 = ta.ema(close,20)
rsi = ta.rsi(close,20)
mom = math.abs(,49) )

long = ta.crossover(ema10,ema20)
short = ta.crossunder(ema10,ema20)

if(long and mom >= 10 and rsi < 50)
if(strategy.position_size != 0)
if(short and mom >= 10 and rsi > 50)
if(strategy.position_size != 0)

if( rsi > 80 or rsi < 20 )

plot(rsi , color =
plot(ema10, color=#f37f20)
plot(ema20 , color =

7/19 簡易EMA策略

// This source code is subject to the terms of the Mozilla Public License 2.0 at
// © Crypto-Arsenal

strategy("我的策略", overlay=true, margin_long=100, margin_short=100)
//indicator(title="Moving Average Exponential", shorttitle="EMA", overlay=true, timeframe="", timeframe_gaps=true)
ema10 = ta.ema(close,10)
ema20 = ta.ema(close,20)
plot(ema10, title="Smoothing Line", color=#f37f20)
plot(ema20, title="Smoothing Line", color=#4320f3)

longCondition = ta.crossover(ema10,ema20)
if (longCondition)
strategy.entry("My Long Entry Id", strategy.long)

shortCondition = ta.crossunder(ema10,ema20)
if (shortCondition)
strategy.entry("My Short Entry Id", strategy.short)


7/19 Superposition EMA Python 策略

Contributed by BCA_Daniel @BCA_Quantrade / Crypto-Arsenal & Alan Wu @Crypto-Arsenal
Superposition EMAs are designed to smooth out EMAs and reduce noise interference.
This strategy utilizes four EMAs and uses the output of the previous EMA as the input for the next EMA.

Strategy designer: BCA_Daniel 2023.07.16
class Strategy(StrategyBase):
def __init__(self):
# strategy property
self.subscribed_books = {}
self.period = 60 * 30
self.options = {}
self.last_type = 'sell'

### fast / slow ema period
self.fast_period = 14
self.sp1_period = 14
self.sp2_period =14
self.slow_period = 14

self.divide_quote = 0
self.proportion = 0.2

def on_order_state_change(self, order):

# called every self.period
def trade(self, candles):
exchange, pair, base, quote = CA.get_exchange_pair()
ca_position = self.get_ca_position()

close_price_history = [candle['close'] for candle in candles[exchange][pair]]
high_price_history = [candle['high'] for candle in candles[exchange][pair]]
low_price_history = [candle['low'] for candle in candles[exchange][pair]]

# convert to chronological order for talib

# convert np.array
close_price_history = np.array(close_price_history)
high_price_history = np.array(high_price_history)
low_price_history = np.array(low_price_history)

close_price = close_price_history[0]
high_price = high_price_history[0]

#ema fast / slow create
#np.nan_to_num used to refilled nan to 0 for output array
EMA_fast = talib.EMA(close_price_history, timeperiod=self.fast_period)
EMA_fast_filled = np.nan_to_num(EMA_fast, nan=0)
EMA_superposition_1 = talib.EMA(EMA_fast_filled, timeperiod=self.sp1_period)
EMA_superposition_1_filled = np.nan_to_num(EMA_superposition_1, nan=0)
EMA_superposition_2 = talib.EMA(EMA_superposition_1_filled,self.sp2_period)
EMA_superposition_2_filled = np.nan_to_num(EMA_superposition_2, nan=0)
EMA_slow = talib.EMA(EMA_superposition_2_filled, self.slow_period)

if len(close_price_history) < self.slow_period + 1:
return []

# current ema fast / slow
curr_ema_fast = EMA_fast[-1]
curr_ema_slow = EMA_slow[-1]

# previous time stamp ema
prev_ema_fast = EMA_fast[-2]
prev_ema_slow = EMA_slow[-2]

# get available balance
base_balance = CA.get_balance(exchange, base)
quote_balance = CA.get_balance(exchange, quote)
available_base_amount = base_balance.available
available_quote_amount = quote_balance.available
if self.divide_quote == 0:
self.divide_quote = np.round(available_quote_amount* self.proportion, 5)

# initialize signal to be 0
signal = 0
if available_base_amount< self.divide_quote/high_price and available_base_amount > -self.divide_quote/high_price:
# open long position
if curr_ema_fast > curr_ema_slow and prev_ema_fast < prev_ema_slow:
signal = 1
# open short position
if curr_ema_fast < curr_ema_slow and prev_ema_fast > prev_ema_slow:
signal = -1

# Sell short
if signal == -1:
self['is_shorting'] = 'true'
CA.log('Sell short ' + str(base))
if ca_position:
CA.place_order(exchange, pair, action='close_long', conditional_order_type='OTO', child_conditional_orders=[{'action': 'open_short', 'percent':80}])
CA.place_order(exchange, pair, action='open_short', percent=80)

# Buy long
if signal == 1:
self['is_shorting'] = 'false'
CA.log('Buy ' + str(base))
if ca_position:
CA.place_order(exchange, pair, action='close_short', conditional_order_type='OTO', child_conditional_orders=[{'action': 'open_long', 'percent':80}])
CA.place_order(exchange, pair, action='open_long', percent=80)

# return current total position: -n 0, +n where n is number of contracts
def get_ca_position(self):
exchange, pair, base, quote = CA.get_exchange_pair()

long_position = CA.get_position(exchange, pair, CA.PositionSide.LONG)
if long_position:
return abs(long_position.total_size)

short_position = CA.get_position(exchange, pair, CA.PositionSide.SHORT)
if short_position:
return -1 * abs(short_position.total_size)

return 0