Skip to main content
股票数据模块的方法返回 pandas DataFrame,方便进行数据分析。

公司信息

overview()

获取公司概览信息。
# 通过股票代码查询(支持多个,逗号分隔)
info = client.stock.overview(symbols="AAPL,00700")
print(info)

# 通过股票名称查询(支持多个,逗号分隔)
info = client.stock.overview(names="腾讯,苹果")
print(info)
symbols
string
股票代码,支持多个,用逗号分隔,如 AAPL,00700
names
string
股票名称,支持多个,用逗号分隔,如 腾讯,苹果
返回值
dict
公司信息,包含 name, description, sector, industry, market_cap

shareholders()

获取主要股东列表。
shareholders = client.stock.shareholders("AAPL")
for holder in shareholders:
    print(holder["name"], holder["percentage"])
symbol
string
required
股票代码
返回值
list[dict]
股东列表,包含 name, shares, percentage

财务报表

income_statement()

获取利润表数据。
income = client.stock.income_statement(
    symbol="AAPL",
    period="quarterly",
    limit=8
)
print(income[["revenue", "net_income", "eps"]].head())
symbol
string
required
股票代码
period
string
default:"annual"
报告期间:annual(年报)或 quarterly(季报)
limit
int
default:"8"
返回期数
start_date
str
开始日期,格式:YYYY-MM-DD
end_date
str
结束日期,格式:YYYY-MM-DD
calendar
str
default:"fiscal"
日历类型:calendar(公历)或 fiscal(财年)
fiscal_year
str
指定财年,如 2023
fiscal_quarter
str
指定财季(Q1, Q2, Q3, Q4, FY, H1, Q3 (9 months)
返回值
DataFrame
利润表数据,以日期为索引,包含 revenue, gross_profit, operating_income, net_income, eps 等列

balance_sheet()

获取资产负债表数据。
balance = client.stock.balance_sheet("AAPL", period="annual")
print(balance[["total_assets", "total_liabilities", "total_equity"]].head())
symbol
string
required
股票代码
period
string
default:"annual"
报告期间:annualquarterly
limit
int
default:"8"
返回期数
start_date
str
开始日期,格式:YYYY-MM-DD
end_date
str
结束日期,格式:YYYY-MM-DD
calendar
str
default:"fiscal"
日历类型:calendar(公历)或 fiscal(财年)
fiscal_year
str
指定财年,如 2023
fiscal_quarter
str
指定财季(Q1, Q2, Q3, Q4, FY)
返回值
DataFrame
资产负债表数据

cashflow_statement()

获取现金流量表数据。
cashflow = client.stock.cashflow_statement("AAPL")
print(cashflow[["operating_cashflow", "investing_cashflow", "financing_cashflow"]].head())
symbol
string
required
股票代码
period
string
default:"annual"
报告期间:annualquarterlycumulative quarterly
limit
int
default:"8"
返回期数
start_date
str
开始日期,格式:YYYY-MM-DD
end_date
str
结束日期,格式:YYYY-MM-DD
calendar
str
default:"fiscal"
日历类型:calendar(公历)或 fiscal(财年)
fiscal_year
str
指定财年,如 2023
fiscal_quarter
str
指定财季(Q1, Q2, Q3, Q4, FY, H1, Q3 (9 months)
返回值
DataFrame
现金流量表数据

revenue_breakdown()

获取营收分解数据。
breakdown = client.stock.revenue_breakdown("AAPL", limit=6)
print(breakdown)
symbol
string
required
股票代码
period
str
报告周期,如 FY(全年)、Q2(二季度)
limit
int
default:"6"
返回记录数
start_date
str
开始日期,格式:YYYY-MM-DD
end_date
str
结束日期,格式:YYYY-MM-DD
fiscal_year
str
指定财年,如 2023
返回值
DataFrame
营收分解数据

行情数据

quote()

获取股票行情数据(当前和历史价格)。
quote = client.stock.quote(
    symbol="AAPL",
    start_date="2024-01-01",
    end_date="2024-06-30"
)
print(quote[["close", "volume", "market_cap"]].tail())
symbol
string
required
股票代码
start_date
str
开始日期,格式:YYYY-MM-DD
end_date
str
结束日期,格式:YYYY-MM-DD
返回值
DataFrame
股票行情数据,包含 close, volume, market_cap, pe, ps

index_quote()

获取指数行情数据。
# 获取恒生指数行情
index = client.stock.index_quote(
    symbol="HSI",
    start_date="2024-01-01",
    end_date="2024-06-30"
)
print(index[["stock_price", "stock_change_percent"]].tail())

# 获取标普500指数
spx = client.stock.index_quote("SPX")
symbol
string
required
指数代码,如 HSI(恒生指数), SPX(标普500), DJI(道琼斯)
start_date
str
开始日期,格式:YYYY-MM-DD
end_date
str
结束日期,格式:YYYY-MM-DD
返回值
DataFrame
指数行情数据

指数和行业

index_constituents()

获取指数成分股列表。
# 获取沪深300指数成分股
csi300 = client.stock.index_constituents("000300")
print(csi300[["market", "symbol"]])

# 获取创业板指数成分股
chinext = client.stock.index_constituents("399006")
symbol
string
required
指数代码,如 000300(沪深300), 000016(上证50), 399006(创业板指)
返回值
DataFrame
成分股列表,包含 market, symbol

index_tracking_funds()

获取指数跟踪基金列表。
# 获取沪深300指数跟踪基金
funds = client.stock.index_tracking_funds("000300")
print(funds[["symbol", "short_name", "name"]])

# 获取中证500指数跟踪基金
funds = client.stock.index_tracking_funds("000905")
symbol
string
required
指数代码,如 000300(沪深300), 000016(上证50), 000905(中证500)
返回值
DataFrame
跟踪基金列表,包含 symbol, short_name, name

industry_constituents()

获取行业成分股列表。
# 获取中国军工行业成分股
stocks = client.stock.industry_constituents("cn", "军工")
print(stocks[["symbol", "name", "industry_one_level_name"]])

# 使用特定分类标准
stocks = client.stock.industry_constituents("cn", "军工", type="sw")
market
string
required
股票市场:cn(中国), hk(香港), us(美国)
name
string
required
行业名称,如 军工, Technology
type
string
行业分类类型:
  • CN: sw(申万,默认), wind
  • HK: hs(恒生,默认)
  • US: GICS(默认)
返回值
DataFrame
成分股列表,包含 symbol, name, industry_one_level_name, industry_second_level_name, industry_third_level_name

日历

earnings_calendar()

财报日历。
calendar = client.stock.earnings_calendar(
    market="us",
    start_date="2024-01-01",
    end_date="2024-01-31"
)
market
string
required
股票市场:cn, hk, us
start_date
str
开始日期
end_date
str
结束日期
symbol
str
指定股票代码

ipo_calendar_hk()

港股 IPO 日历。
ipos = client.stock.ipo_calendar_hk(status="Filing")
status
string
default:"Filing"
IPO 状态:Filing(申报), Hearing(聆讯), Priced(定价)