# Get Institution Holding List

get_institution_holding_list(market, institution_id, change_type=None, sort_field=None, sort_dir=None, count=None, page=None, keyword=None)

  • Description

    Get institution holding list, returning the complete holding details of the specified institution (including market value, holding proportion, changes, etc.), with support for filtering by change type, multi-dimensional sorting, and keyword search.

  • Parameters

    Parameter Type Description
    market Market Market type (HK/US) (required)
    institution_id int Institution ID (required)
    change_type InstitutionHoldingChangeType Filter by change type (all if not provided)
    sort_field InstitutionHoldingListSortField Sort field, default holding market value
    sort_dir RankSortDir Sort direction, default descending
    count int Number of results [1, 200], default 20
    page str Page cursor
    keyword str Search keyword (stock name/code)
  • Return

    Parameter Type Description
    ret RET_CODE API call result
    data pd.DataFrame When ret == RET_OK, returns data
    str When ret != RET_OK, returns error description
    • Data format:
      Field Type Description
      security str Stock code (e.g. 'US.AAPL')
      name str Stock name
      industry_name str Industry
      holding_value float Holding market value
      holding_pct float Holding proportion - percentage of total stock market cap (%)
      last_holding_pct float Previous period holding proportion (%)
      change_shares int Changed shares
      portfolio_pct float Proportion of institution total position (%)
      change_pct float Change percentage (%)
      holding_date int Holding date (timestamp)
      source str Disclosure source
      currency str Currency
  • Example

from futu import *

quote_ctx = OpenQuoteContext(host='127.0.0.1', port=11111)

# First get institution ID
ret, data, _, _ = quote_ctx.get_institution_list(market=Market.US, count=1)
if ret == RET_OK and len(data) > 0:
    inst_id = data.iloc[0]['institution_id']

    # Query holding list
    ret, data, next_page, all_count = quote_ctx.get_institution_holding_list(
        market=Market.US, institution_id=inst_id, count=2)
    if ret == RET_OK:
        print(f'Total count: {all_count}')
        print(data)
    else:
        print('error:', data)

quote_ctx.close()
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  • Output
Total count: 4430
  security name industry_name  holding_value  holding_pct  last_holding_pct  change_shares  portfolio_pct  change_pct holding_date source currency
0  US.NVDA  英伟达            电子   3.887350e+11       7.9295            7.8996      -19284971         4.9289     -0.0796   2026-03-30    13F      USD
1  US.AAPL   苹果           计算机   3.398298e+11       7.7520            7.7624      -10565359         4.3088     -0.0719   2026-03-30    13F      USD
1
2
3
4

API Limits

  • Maximum 60 requests within 30 seconds
  • Only the first page of paginated requests counts towards rate limiting