×

Overview

cibo is a HK IPO data analytics platform built by Panda Securities CEO JW using AI-assisted programming. Core capabilities: (1) oversubscription-multiple and allotment hit-rate prediction during the subscription period (with adjustable subscription multiple and allocation-method coefficient α); (2) Stock Connect inclusion analysis (including not-yet-listed IPOs); (3) allotment results and allottee profiling (region/nationality/gender/age inference); (4) allotment tiers, A/B comparison, and institution rankings; (5) HKEXnews disclosures (buybacks / interest / suspension / earnings calendar / director changes / corporate actions), full-market financials, and listing hearings. All endpoints use GET requests and return JSON.

Base URL: https://cibo.hk

All responses are JSON. Successful responses include "ok": true. Errors include ok: false and an error message.

Authentication

All public API endpoints are open — no authentication required. Free tier rate limits: 30 requests per minute per IP, 5,000 per day.

Rate Limits

Free tier: 30 requests per minute per IP, 5,000 per day

MCP Server (AI Agents)

cibo exposes its full site data as a set of tools via the Model Context Protocol (MCP), directly callable by AI agents: oversub/allotment prediction, inclusion analysis, allottee profiling, allotment tiers, A/B comparison, institution rankings (sponsors/underwriters/cornerstone/stabilizing managers), frozen-capital calendar, market insights, flash news, HKEXnews disclosures (buybacks/interest/suspension/earnings/director changes/corporate actions), full-market financials and director rosters, listing hearings, prices (first-day close/dual-listing/OHLC), registrar analysis, HK company directory, blog posts, hynix arbitrage, A-share ETF flow, and data-center macro/US-market data.

Endpoint: https://cibo.hk/mcp

Tools: 58

Client config:

{ "mcpServers": { "cibo": {"url": "https://cibo.hk/mcp"} } }
Prediction & Allotmentpredict_allotment subscription_cost get_prediction get_agent_grid get_allotment_tiers get_oversub
Stockslist_stocks search_stocks get_stock_summary get_stock_overview get_stock_ccass get_allottee_profile get_stock_announcements get_stock_buyback get_stock_disclosure get_stock_narrative compare_stocks
Inclusion Analysisget_inclusion_batch get_stock_inclusion
Institution Rankingsget_sponsor_ranking get_underwriter_ranking get_cornerstone_ranking get_coinvestment_network get_stabilizing_ranking
A/B Comparisonget_ab_comparison get_group_ab
Market Dataget_frozen_calendar get_market_insights get_scatter get_cmp_overview
Flash Newsget_flash_events
HKEXnews Disclosuresget_buyback_ranking get_disclosure_interest get_suspension_resumption get_earnings_calendar get_director_changes get_corporate_actions
Full-market Financialsget_financial_data get_director_roster get_listing_hearings
Pricesget_listing_day_close get_dual_listing_price get_stock_ohlc
Registrarget_registrar_analysis get_registrar_research
HK Company Directorylist_hk_companies
Blogget_blog_posts
Hynixget_hynix_snapshot get_hynix_history
A-share ETFget_a_share_etf_flow
Data Centerget_macro_tags get_macro_indicators get_macro_indicator_data get_us_corp_actions get_us_listings

Allotment Prediction

GET /api/stocks/{code}/predict
Full default-parameter allotment prediction for a stock (predicted oversubscription and recommended α)
NameTypeRequired
codestringYes
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/predict' | python3 -m json.tool
GET /api/stocks/{code}/predict/custom
Custom-parameter allotment prediction: specify final oversubscription multiple (oversub) and allocation-method coefficient (alpha); omitting alpha uses the model's recommended α
NameTypeRequiredDescription
codestringYes5-digit stock code
oversubnumberNoFinal oversubscription multiple (>0). When omitted, cibo's predicted multiple is used (model median weighted by margin statistics).
alphanumberNoAllocation method coefficient alpha in [0,1]. When omitted, the model's recommended value is used.
agentstringNoPrediction agent (default: knn_calibrated)
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/predict/custom?oversub=300&alpha=0.5' | python3 -m json.tool
GET /api/predict-agent-grid/{code}
Prediction matrix across multiple prediction agents (expected lots for different multiple × α combinations)
cURL Example
curl -s 'https://cibo.hk/api/predict-agent-grid/06872' | python3 -m json.tool

Stock Data

GET /api/stocks
Get basic list of all stocks (code, name, listing date)
cURL Example
curl -s 'https://cibo.hk/api/stocks' | python3 -m json.tool | head -30
Response Example
{ "ok": true, "stocks": [ {"code": "06872", "name": "丹诺医药", "name_zh": "丹诺医药", "listing_date": 20260522}, {"code": "03388", "name": "創想三維", "name_zh": "创想三维", "listing_date": 20260529}, ... ] }
GET /api/stocks/oversub
Batch fetch oversubscription multiple and frozen capital for all stocks (optional ?year= filter)
cURL Example
curl -s 'https://cibo.hk/api/stocks/oversub?year=2026' | python3 -m json.tool | head -40
Response Example
{ "ok": true, "stocks": [ {"stock_code": "06872", "name": "丹诺医药", "listing_date": 20260522, "oversubscription": 178.73, "frozen_bn": 12.34, "offer_price": 5.5, "hit_rate": 1.2, "n_applicants": 43120}, ... ], "n": 101 }
Field reference
FieldDescription
stock_code5-digit stock code
nameStock name
listing_dateListing date (YYYYMMDD)
oversubscriptionOversubscription multiple
frozen_bnFrozen capital (HK$100M)
offer_priceOffer price (HKD)
hit_rateOne-lot hit rate (%)
n_applicantsNumber of applicants
GET /api/stocks/index
Get index page stock card data (with recent and upcoming categories)
cURL Example
curl -s 'https://cibo.hk/api/stocks/index' | python3 -m json.tool | head -50
Response Example
{ "ok": true, "normal": [{"c":"06872","n":"丹诺医药","o":"9015","p":"75.7","d":20260522,"f":178.73,...}], "recent": [{"c":"03310","n":"云英谷科技","f":91.73,...}], "prelist": [{"c":"03388","n":"創想三維","d":20260529,...}] }
Field reference
FieldDescription
c5-digit stock code
nStock name
oOversubscription multiple
pOffer price (HKD)
dListing date (YYYYMMDD)
fFirst-day change (%)
hOne-lot hit rate (%)
mOffering mechanism text
kOffering mechanism key
GET /api/stocks/homepage
Homepage data (recent listings, upcoming IPOs, market overview cards)
cURL Example
curl -s 'https://cibo.hk/api/stocks/homepage' | python3 -m json.tool
GET /api/stocks/compare
Compare multiple stocks with enriched data from prospectus_details (market cap, greenshoe, listing expenses, etc.)
NameTypeRequiredDescription
codesstringYesComma-separated stock codes (max 10), e.g. 01779,01081
localestringNoLocale code (default: zh-CN). Affects text fields like industry, mechanism names.
cURL Example
curl -s 'https://cibo.hk/api/stocks/compare?codes=01779,01081&locale=zh-CN' | python3 -m json.tool
Response Example
{ "stocks": [ { "code": "01779", "name": "天辰生物-B", "listing_date": 20260605, "offer_price": 96.06, "oversub": 4762.58, "first_day_change": 37.21, "applicants_hk_public": 266377, "lot_size": 50, "hit_rate": "<1%", "reallocation_zero": true, "industry": "生物医药", "mechanism": "机制B", "listing_chapter": "第18A章", "market_cap_hkd": 11500000000, "raised_amount": 989310000, "greenshoe": true, "total_shares_post_ipo": 119740740, "hk_initial_pct": 5.0, "listing_expenses_hkd": 88900000, "listing_expenses_ratio_pct": 8.99, "entry_threshold": 4803, "face_value_cny": 1.0, "registration_location": "开曼群岛", "listing_method": "发售以供认购", "price_upper": 96.06, "price_lower": null }, ... ], "count": 2 }
GET /api/stocks/{code}/overview
Get full overview for a single stock (registrar allotment profile, allotment summary, cornerstone investors, syndicate, etc.)
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/overview' | python3 -m json.tool | head -50
Response Example
{ "ok": true, "data": { "code": "06872", "name": "丹诺医药", "summary": {"oversubscription": 9015, "hit_rate": 6.0, "price": 75.7, ...}, "ccass": {"total_holders": 15821, "cn_pct": 63.6, "hk_pct": 35.6, ...}, "allotment": {"tiers": [...], "lot_size": 50}, "cornerstone": [...], "syndicate": {...}, "close_price": {...} }, "cmp": {...} }
GET /api/stocks/{code}/prospectus
Get the full prospectus info page data for a stock (prospectus details, cornerstone investors, IPO financial statements)
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/prospectus' | python3 -m json.tool
Response Example
{ "ok": true, "code": "06872", "prospectus": {"offer_price": 75.7, "mechanism": "机制B", "greenshoe": true, "secondary_listing": false, "global_shares": 100000000, "market_cap_hkd": 11500000000, "listing_expenses_hkd": 88900000, ...}, "cornerstone": [{"investor_name": "...", "shares_subscribed": 1000000, ...}], "financial": {"income": {"periods": [...], "items": [...]}, "balance": {...}, "cashflow": {...}, "currency": "CNY", "unit": "thousand"} }
GET /api/stocks/{code}/allotment-result
Get the full allotment results page data for a stock (allotment summary incl. international placing and greenshoe, placing concentration, cornerstone allocation + lock-up, Pool A/B tiers)
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/allotment-result' | python3 -m json.tool
Response Example
{ "ok": true, "code": "06872", "summary": {"offer_price": 75.7, "oversubscription": 178.73, "frozen_bn": 12.34, "hk_public_shares": 10000000, "intl_shares": 90000000, "intl_oversubscription": 3.2, "placee_count": 131, "reallocation": "...", "greenshoe": true, "hit_rate": 1.2, "n_applicants": 43120, ...}, "concentration": [{"rank_label": "前5名承配人", "intl_pct": 45.2, "total_pct": 40.1, "shares": ...}], "cornerstone": [{"investor_name": "...", "shares": 1000000, "pct_offer": 8.0, "lockup_end_date": 20261122, ...}], "tiers": [{"tier_group": "甲组", "applied_shares": 50, "allotment_pct": 1.2, ...}] }
GET /api/stocks/{code}/allottee-profile
Get the allottee profile (中签画像) for a single stock: winner demographics parsed from registrar ID data (total lots, person/company split, region, gender, age histogram + pyramid, HK ID letter/era/district)
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
localestringNoLocale code: zh-CN / zh-HK / en (default: zh-CN)
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/allottee-profile' | python3 -m json.tool
Response Example
{ "ok": true, "code": "06872", "profile": {"s": {"total": 100000000, "person": ..., "comp": ...}, "type": [...], "country": [...], "province": [...], "gender": [...], "ah": {...}, "py": {...}, "hl": [...], "he": [...], "hd": [...]} }
GET /api/stocks/{code}/announcements
Get all HKEXnews announcements for one stock (个股公告中心), grouped by headline category with publish date and file URL
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
localestringNoLocale code: zh-CN / zh-HK / en (default: zh-CN)
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/announcements' | python3 -m json.tool
Response Example
{ "ok": true, "code": "06872", "name": "...", "groups": [{"category": "...", "label": "...", "announcements": [{"title": "...", "publish_date": 20261122, "file_url": "..."}]}], "stats": {"total": 42} }
GET /api/stocks/{code}/buyback
Get share buyback records for one stock (回购明细), newest first, with per-day shares/amount and aggregate totals
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
localestringNoLocale code: zh-CN / zh-HK / en (default: zh-CN)
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/buyback' | python3 -m json.tool
Response Example
{ "ok": true, "code": "06872", "name": "...", "records": [{"date": 20261122, "shares": 500000, "amount": 1234567.0, ...}], "stats": {"total_days": 12, "total_shares": 6000000, "total_amount": ...} }
GET /api/stocks/{code}/disclosure
Get disclosure-of-interest records for one stock (增减持明细), newest first, with holder, capacity, event type, shares and pct
NameTypeRequiredDescription
codestringYes5-digit stock code, e.g. 06872
localestringNoLocale code: zh-CN / zh-HK / en (default: zh-CN)
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/disclosure' | python3 -m json.tool
Response Example
{ "ok": true, "code": "06872", "name": "...", "items": [{"holder": "...", "capacity": "...", "event_type": "buy", "shares_display": "1,000,000", "pct_display": "5.2%", "event_date": 20261122}], "stats": {"total": 8, "buy": 5, "sell": 3} }
GET /api/stocks/{code}/summary
Get summary statistics for a single stock (oversubscription, hit rate, offer price, applicant count, etc.)
NameTypeRequiredDescription
codestringYes5-digit stock code
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/summary' | python3 -m json.tool
Response Example
{ "ok": true, "s": { "oversubscription": 9015, // Oversubscription multiple "hit_rate": 6.0, // One-lot hit rate (%) "price": 75.7, // Offer price (HKD) "n_applicants": 275978, // Number of applicants "frozen_bn": 5651.3, // Frozen capital (HK$100M) "cn_pct": 63.6, // Mainland China holder share (%) "hk_pct": 35.6, // Hong Kong holder share (%) "offering_mechanism": "机制B", // Offering mechanism text "final_public_pct": 9.35 // Final public offering share (%) }, "tier": {...} // Allotment tier data }
GET /api/stocks/{code}/ccass
Get registrar allotment results profile for a single stock (region, gender, age distribution)
NameTypeRequired
codestringYes
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/ccass' | python3 -m json.tool | head -30

Stock Connect Inclusion

GET /api/stocks/{code}/inclusion-analysis
Stock Connect (HK Connect) inclusion analysis for a single stock
cURL Example
curl -s 'https://cibo.hk/api/stocks/06872/inclusion-analysis' | python3 -m json.tool
GET /api/stocks/batch-inclusion-analysis
Batch Stock Connect inclusion analysis for multiple stocks
cURL Example
curl -s 'https://cibo.hk/api/stocks/batch-inclusion-analysis' | python3 -m json.tool

Chart Data

GET /api/charts/frozen-calendar
Get frozen capital calendar chart data (daily frozen amount, number of IPOs)
cURL Example
curl -s 'https://cibo.hk/api/charts/frozen-calendar' | python3 -m json.tool | head -30
GET /api/charts/scatter-oversub-pnl
Get oversubscription vs first-day P&L scatter chart data
cURL Example
curl -s 'https://cibo.hk/api/charts/scatter-oversub-pnl' | python3 -m json.tool | head -20
GET /api/market-insights
Cross-IPO market insights and aggregate analysis
cURL Example
curl -s 'https://cibo.hk/api/market-insights' | python3 -m json.tool

Flash News

GET /api/flash-events
IPO flash news / event stream
cURL Example
curl -s 'https://cibo.hk/api/flash-events?locale=zh-CN&limit=50' | python3 -m json.tool

Allotment Tiers

GET /api/allotment-tiers/{code}
Get allotment tier details (Pool A/B classification, applicant count, success rate per tier)
NameTypeRequired
codestringYes
cURL Example
curl -s 'https://cibo.hk/api/allotment-tiers/06872' | python3 -m json.tool | head -40
Response Example
{ "ok": true, "lot_size": 50, "tiers_a": [ // Pool A: subscription amount <= HK$5M {"applied_shares": 50, "applicant_count": 124567, "winner_count": 7474, "allotment_pct": 6.0}, ... ], "tiers_b": [ // Pool B: subscription amount > HK$5M {"applied_shares": 500000, "applicant_count": 1234, "winner_count": 12, "allotment_pct": 0.97}, ... ] }

Closing Prices

GET /api/listing-day-close-price/{code}
Get listing day closing price for a single stock
NameTypeRequired
codestringYes
cURL Example
curl -s 'https://cibo.hk/api/listing-day-close-price/06872'
Response Example
{"ok": true, "code": "06872", "listing_date": 20260522, "listing_day_close_price": 16.2, "source": "hkex"}
GET /api/listing-day-close-prices-batch
Batch get listing day closing prices for multiple stocks (supports GET and POST)
NameTypeRequired
codesstringYes
cURL Example
# GET curl -s 'https://cibo.hk/api/listing-day-close-prices-batch?codes=06872,03310' # POST curl -s -X POST 'https://cibo.hk/api/listing-day-close-prices-batch' \ -H 'Content-Type: application/json' \ -d '{"codes": ["06872", "03310"]}'
GET /api/stock-ohlc/{code}
Daily OHLC price series for a single stock
cURL Example
curl -s 'https://cibo.hk/api/stock-ohlc/06872' | python3 -m json.tool
GET /api/dual-listing-price/{stock_code}
Counterpart market price for dual-listed stocks (A+H etc.)
cURL Example
curl -s 'https://cibo.hk/api/dual-listing-price/06872' | python3 -m json.tool
GET /api/agents
Heartbeat status and runtime for each data pipeline agent
cURL Example
curl -s 'https://cibo.hk/api/agents' | python3 -m json.tool

Cross-IPO Comparison

GET /api/cmp/overview
Get cross-IPO comparison overview (key metrics side-by-side for multiple stocks)
cURL Example
curl -s 'https://cibo.hk/api/cmp/overview' | python3 -m json.tool | head -30

Social Media

GET /api/social-qr
Get all social platform QR code data
cURL Example
curl -s 'https://cibo.hk/api/social-qr' | python3 -m json.tool
GET /api/social-qr/{platform_id}/image
Get QR code image for a specific platform (PNG format)
NameTypeRequired
platform_idstringYes
cURL Example
curl -s 'https://cibo.hk/api/social-qr/wechat/image' -o qr.png

Cached Data (Pre-computed)

The following endpoints return pre-computed aggregated statistics and chart data from database cache tables rather than real-time computation, offering faster response times. Ideal for external bots to fetch processed high-value data in bulk.

GET /api/cache/status
Return row counts and last build time for all cache tables
cURL Example
curl -s 'https://cibo.hk/api/cache/status' | python3 -m json.tool
GET /api/cache/stocks/{code}/analysis
Return pre-computed per-stock analysis (allotment tiers, demographics, etc.)
NameTypeRequired
codestringYes
cURL Example
curl -s 'https://cibo.hk/api/cache/stocks/02511/analysis' | python3 -m json.tool
GET /api/cache/cmp
Return pre-computed cross-IPO comparison data (province distribution, age, gender, etc.)
cURL Example
curl -s 'https://cibo.hk/api/cache/cmp' | python3 -m json.tool
GET /api/cache/ab
Return pre-computed A-tail vs B-head comparison (lot efficiency, capital efficiency ratios)
cURL Example
curl -s 'https://cibo.hk/api/cache/ab' | python3 -m json.tool
GET /api/cache/group-ab
Return pre-computed Pool A/B aggregate data (applicants, frozen funds by group)
cURL Example
curl -s 'https://cibo.hk/api/cache/group-ab' | python3 -m json.tool
GET /api/cache/frozen-calendar
Return pre-computed frozen capital calendar data (daily frozen capital totals)
cURL Example
curl -s 'https://cibo.hk/api/cache/frozen-calendar' | python3 -m json.tool
GET /api/cache/scatter
Return pre-computed scatter plot data (oversubscription vs first-day P&L%)
cURL Example
curl -s 'https://cibo.hk/api/cache/scatter' | python3 -m json.tool
GET /api/cache/rankings/sponsors
Return pre-computed sponsor ranking with performance statistics
cURL Example
curl -s 'https://cibo.hk/api/cache/rankings/sponsors' | python3 -m json.tool
GET /api/cache/rankings/underwriters
Return pre-computed underwriter ranking
cURL Example
curl -s 'https://cibo.hk/api/cache/rankings/underwriters' | python3 -m json.tool
GET /api/cache/rankings/cornerstone
Return pre-computed cornerstone investor ranking
cURL Example
curl -s 'https://cibo.hk/api/cache/rankings/cornerstone' | python3 -m json.tool
GET /api/cache/rankings/coinvestment
Return pre-computed cornerstone co-investment network data
cURL Example
curl -s 'https://cibo.hk/api/cache/rankings/coinvestment' | python3 -m json.tool
GET /api/cache/rankings/stabilizing
Stabilizing-manager ranking cache
cURL Example
curl -s 'https://cibo.hk/api/cache/rankings/stabilizing' | python3 -m json.tool

Cross-market & Data Center

GET /api/stocks/full-market
Directory of all HK-listed companies (code, zh/en name, board, ISIN) with optional search filter
cURL Example
curl -s 'https://cibo.hk/api/stocks/full-market?search=&limit=200' | python3 -m json.tool | head -40
GET /api/hynix/snapshot
SK Hynix cross-market arbitrage snapshot (instrument premiums, FX rates, KRW base price)
cURL Example
curl -s 'https://cibo.hk/api/hynix/snapshot' | python3 -m json.tool
GET /api/a-share-etf/overview
A-share ETF capital-flow overview (merged proxy, ETF inflow, margin balance)
cURL Example
curl -s 'https://cibo.hk/api/a-share-etf/overview?limit=60' | python3 -m json.tool

Complete Endpoint Reference

Auto-generated from the single source of truth; every public endpoint is listed.

MethodPathAuthDescription
GET /api/stocks public List all IPO stocks with basic info (code, name, listing date).
GET /api/stocks/oversub public Batch oversubscription + frozen capital for all stocks with allotment data. Query: ?year=2026. (params: year)
GET /api/flash-events public Derived flash-event feed (ipo_launch / allotment_result / listing / inclusion / prediction) as structured JSON for AI crawlers. Query: ?locale=zh-CN&limit=50&stock_code=07688. (params: locale, limit, stock_code)
GET /api/stocks/index public Stock cards grouped by index with filtering, pagination, search.
GET /api/stocks/homepage public Homepage stock cards: upcoming (prelist) and recently listed stocks with status.
GET /api/stocks/{code}/overview public Full per-stock IPO analysis: subscription rates, allotment tiers, PnL scenarios, CCASS demographics.
GET /api/stocks/{code}/prospectus public Full prospectus info page data: prospectus details (offer price, mechanism, greenshoe, secondary listing), cornerstone investors, and IPO financial statements.
GET /api/stocks/{code}/allotment-result public Full allotment results page data: allotment summary (incl. international placing, greenshoe), placing concentration, cornerstone allocation + lock-up, Pool A/B tiers.
GET /api/stocks/{code}/allottee-profile public 中签画像 (allottee profile): winner demographics from the registrar allotment dataset — total lots, person/company split, region/nationality, province, gender, age histogram + pyramid, HK ID letter/era/district.
GET /api/stocks/{code}/announcements public 个股公告中心 (announcement center): all HKEXnews announcements for one stock, grouped by headline category with publish date and file URL.
GET /api/stocks/{code}/buyback public 回购明细 (per-stock buyback): share buyback records for one stock, newest first, with per-day shares/amount and aggregate totals.
GET /api/stocks/{code}/disclosure public 增减持明细 (per-stock disclosure-of-interest): DI records for one stock, newest first, with holder, capacity, event type, shares and pct.
GET /api/stocks/{code}/summary public Lightweight stock summary: key stats and tier classification.
GET /api/stocks/{code}/ccass public CCASS custodian demographics: type, province, gender, age distributions.
GET /api/stocks/{code}/narrative public AI-generated narrative (zh/en) summarizing the IPO's key characteristics.
GET /api/stocks/compare public Side-by-side comparison of up to 10 stocks. Query: ?codes=00001,00002 (params: codes)
GET /api/allotment-tiers/{code} public Detailed allotment tier table: Pool A and Pool B subscription tiers with expected lots.
GET /api/stocks/{code}/predict public Full allotment prediction data (default predicted oversub/alpha) backing the prediction page.
GET /api/stocks/{code}/predict/custom public On-demand single-point allotment prediction for arbitrary parameters. Query: ?oversub=300&alpha=0.5&agent=knn_calibrated. (params: oversub, alpha, agent)
GET /api/predict-agent-grid/{code} public Pre-computed prediction grid (18 oversub x 5 alpha) for interpolation.
POST /api/stocks/{code}/predict/batch public Exact single-point predictions for a batch of (oversub, alpha) pairs in one request. Body: {"points":[{"oversub":300,"alpha":0.5}],"agent":"knn_calibrated"} (<=64 points). (params: points, agent)
GET /api/listing-day-close-price/{code} public First-day closing price for a single stock.
GET|POST /api/listing-day-close-prices-batch public Batch first-day closing prices. GET: ?codes=07688,01511 POST: {"codes":[...]}
GET /api/market-insights public Cross-IPO market insights, trends, and aggregate analysis.
GET /api/cmp/overview public Cross-market comparison overview for peer stock context.
GET /api/charts/frozen-calendar public Frozen capital calendar: date series, daily max, regulatory milestones (for index page stacked bar chart).
GET /api/charts/scatter-oversub-pnl public Oversubscription vs first-day P&L scatter plot data.
GET /api/cache/rankings/sponsors public Sponsor institution rankings by IPO involvement.
GET /api/cache/rankings/underwriters public Underwriter institution rankings by IPO involvement.
GET /api/cache/rankings/cornerstone public Cornerstone investor rankings.
GET /api/cache/rankings/coinvestment public Co-investment rankings.
GET /api/cache/rankings/stabilizing public Stabilizing manager (稳价人) institution rankings by IPO involvement.
GET /api/cache/stocks/{code}/analysis public Pre-computed per-stock analysis (tier data, demographic distributions, HK letter/era breakdowns).
GET /api/cache/ab public A-tail vs B-head comparison matrix.
GET /api/cache/frozen-calendar public Pre-computed frozen capital calendar (dates, series, max_daily).
GET /api/cache/scatter public Pre-computed scatter plot data (oversubscription vs P&L).
GET /api/cache/status public Freshness status for all cache tables (row count, last_built timestamp).
GET /api/blog/posts public List published blog posts with pagination. Query: ?locale=zh-CN&limit=20&offset=0
GET /api/blog/posts/{slug} public Get a single published blog post by slug.
GET /api/stocks/full-market public Directory of all HK-listed companies (code, zh/en name, board, isin). Query: ?search=&limit=200. (params: search, limit)
GET /api/hynix/snapshot public SK Hynix cross-market arbitrage snapshot (instruments with premium_pct, FX rates, base price).
GET /api/a-share-etf/overview public A-share ETF capital flow overview (merged proxy, ETF inflow, margin). Query: ?limit=60.
GET /api/dual-listing-price/{stock_code} public Dual-listing (A+H / secondary) cross-market price and premium/discount.
GET /api/stocks/batch-inclusion-analysis public Batch Stock Connect inclusion analysis for all candidate stocks (full data as JSON).
GET /api/stocks/{code}/inclusion-analysis public Per-stock Stock Connect inclusion analysis across all review periods.
GET /api/user/me optional JWT Current user info from JWT. Returns {user: null} when unauthenticated.
GET /api/user/watchlist pcell JWT User's watchlist as array of stock codes.
POST /api/user/watchlist/{stock_code} pcell JWT Toggle a stock in/out of the watchlist. Returns {in_watchlist: bool}.
GET|PUT /api/user/preferences pcell JWT Get or update saved user preferences JSON.
GET /api/ public API discovery root: lists all endpoints with methods, auth, and return types.
GET /.well-known/agent-protocol public Machine-readable agent protocol: service description, auth methods, data categories, recommended agent onboarding flow.
GET /health public Health check: uptime, DB stats, agent status, cache warmth, pipeline health (no pid or internal error messages).
GET /api/agents public Agent heartbeat status, last run, age and duration (public leaderboard; internal error messages omitted).
Cibo — HK IPO Allotment Forecasts, Allottee Profiling & Stock Connect