ADR/H-share/A-share cross-listing premium analysis — track pricing gaps between US-listed ADRs, HK-listed H-shares, and A-shares for arbitrage signals, dual-listing valuation, and delisting risk assessment.
Many Chinese companies are listed on multiple exchanges — A-shares in Shanghai/Shenzhen, H-shares in Hong Kong, and ADRs in the US. Pricing gaps between these listings create arbitrage opportunities and reveal market-specific sentiment differences. This skill provides frameworks for analyzing cross-listing premiums, identifying arbitrage signals, and assessing delisting risk for US-listed Chinese ADRs.
| Structure | Description | Examples |
|---|---|---|
| A + H dual-listed | Same company listed on both A-share and HK exchange | PetroChina (601857.SH / 0857.HK), ICBC (601398.SH / 1398.HK) |
| H + ADR dual-listed | HK-listed with US ADR | Alibaba (9988.HK / BABA), JD.com (9618.HK / JD) |
| A + H + ADR triple-listed | All three markets | China Life (601628.SH / 2628.HK / LFC) |
| HK primary + US secondary |
| Primary listing in HK, secondary ADR |
| Tencent (0700.HK / TCEHY OTC) |
| US primary → HK secondary | Originally US, added HK listing | Alibaba (BABA → 9988.HK), Baidu (BIDU → 9888.HK) |
AH Premium = (A-share price / H-share price in CNY terms - 1) × 100%
def calculate_ah_premium(a_price_cny, h_price_hkd, usdcny, usdhkd):
"""Calculate AH premium for a dual-listed stock."""
h_price_cny = h_price_hkd * (usdcny / usdhkd) # Convert HKD to CNY
ah_premium = (a_price_cny / h_price_cny - 1) * 100
return ah_premium
# Example: PetroChina
# A-share: 8.50 CNY, H-share: 6.20 HKD
# USDCNY: 7.25, USDHKD: 7.82
# H in CNY: 6.20 * (7.25/7.82) = 5.75 CNY
# AH Premium: (8.50/5.75 - 1) * 100 = 47.8%
AH Premium signal interpretation:
| Premium Level | Interpretation | Action |
|---|---|---|
| >50% | Extreme A-share premium; A-share speculative bubble or H-share extreme undervaluation | Strong: buy H, sell/avoid A |
| 30-50% | Elevated premium; normal for high-retail-participation names | Moderate: favor H if fundamentals same |
| 10-30% | Normal range for most AH pairs | Neutral; no strong arbitrage signal |
| 0-10% | Compressed premium; A-shares relatively cheap | Unusual; investigate catalyst |
| <0% | H-share premium over A-share | Very rare; usually near-term event-driven |
Structural drivers of AH premium:
ADR premium = (ADR price in USD / HK equivalent in USD - 1) × 100%
def calculate_adr_premium(adr_price_usd, hk_price_hkd, adr_ratio, usdhkd):
"""
Calculate ADR premium over HK listing.
adr_ratio: number of HK shares per 1 ADR (e.g., BABA: 1 ADR = 8 HK shares)
"""
hk_equivalent_usd = (hk_price_hkd * adr_ratio) / usdhkd
premium = (adr_price_usd / hk_equivalent_usd - 1) * 100
return premium
# Example: Alibaba
# BABA ADR: $85.00, 9988.HK: HKD 82.50
# ADR ratio: 1 ADR = 8 HK shares
# HK equivalent: (82.50 * 8) / 7.82 = $84.40
# ADR premium: (85.00/84.40 - 1) * 100 = 0.71%
Key ADR conversion ratios:
| Company | ADR Ticker | HK Ticker | ADR Ratio (HK:ADR) | ADR Exchange |
|---|---|---|---|---|
| Alibaba | BABA | 9988.HK | 8:1 | NYSE |
| JD.com | JD | 9618.HK | 2:1 | NASDAQ |
| Baidu | BIDU | 9888.HK | 8:1 | NASDAQ |
| Bilibili | BILI | 9626.HK | 1:1 | NASDAQ |
| NIO | NIO | 9866.HK | 1:1 | NYSE |
| XPeng | XPEV | 9868.HK | 2:1 | NYSE |
| Li Auto | LI | 2015.HK | 2:1 | NASDAQ |
| NetEase | NTES | 9999.HK | 5:1 | NASDAQ |
| Trip.com | TCOM | 9961.HK | 1:1 | NASDAQ |
| Pinduoduo | PDD | N/A (US-only) | N/A | NASDAQ |
ADR premium drivers:
HFCAA (Holding Foreign Companies Accountable Act) framework:
Since 2022, PCAOB gained access to audit workpapers of Chinese companies. Key risks:
| Risk Level | Criteria | Impact |
|---|---|---|
| Low | PCAOB inspection completed, no issues | ADR status stable |
| Medium | PCAOB inspection completed, deficiencies noted | Monitor for resolution |
| High | PCAOB access revoked or restricted | 3-year delisting countdown activated |
| Critical | On SEC "identified issuer" list for 3 consecutive years | Forced delisting |
Delisting risk indicators:
delisting_risk_factors = {
"pcaob_status": "inspected", # inspected / pending / blocked
"sec_identified_years": 0, # 0, 1, 2, or 3 (3 = delist)
"has_hk_listing": True, # Backup listing reduces impact
"hk_listing_type": "primary", # primary (can be in Connect) vs secondary
"vie_structure": True, # Variable Interest Entity adds legal risk
"state_owned": False, # SOE status adds geopolitical risk
}
# Companies with HK primary listing (BABA, JD, BIDU, NTES, etc.) have
# a safety net if US delisting occurs → fungible conversion ADR → HK shares
# Companies with US-only listing (PDD until HK listing) face higher risk
Strategy 1: AH Premium Mean-Reversion
# When AH premium for a specific stock diverges significantly from its historical average
ah_premium_current = 45 # current premium
ah_premium_mean_12m = 35 # 12-month average
ah_premium_std = 8 # standard deviation
z_score = (ah_premium_current - ah_premium_mean_12m) / ah_premium_std
if z_score > 2.0:
signal = "fade_premium" # A-share overvalued vs H; buy H, avoid A
elif z_score < -2.0:
signal = "buy_premium" # A-share undervalued vs H; buy A, avoid H