iFinD Excel Plugin

iFinD 同花顺 Excel 插件函数参考手册,包含股票、港股、美股、债券、基金、期货等全部金融数据指标的函数表达式、参数代码和使用说明。生成 Excel 数据文件时可参考此 skill 的指标描述。

Audits

Pass

Install

openclaw skills install ifind-excel-plugin

iFinD Excel 插件函数参考

简介

iFinD(同花顺)Excel 数据插件是同花顺机构版金融数据终端的外挂模块,可在 Excel 中直接提取金融数据。

本 skill 包含全部指标函数表达式参考,用于指导生成带 iFinD 公式的 Excel 文件。

thsiFinD 函数详解

函数概述

Excel 插件的核心功能是 Excel 函数表达式。thsiFinD 是同花顺最新研发的函数,函数命名表明是同花顺 iFinD 的函数。机构版终端各交易品种的数据浏览器指标在 Excel 中的函数表达式统一使用 thsiFinD 函数,新函数的数据提取更趋稳定快速。

插件总共自定义了约 14000 个指标代码,用于提取各种证券的指标数据。

函数格式

=thsiFinD("指标代码", "证券代码", 参数1, 参数2, ...)

函数参数由 "指标代码""指标参数" 两部分组成。

指标代码命名规则

指标代码的命名逻辑:THS_指标名称_证券品种

  • 指标名称:采用指标英文名称组合
  • 证券品种:采用证券英文名称
证券品种英文名称示例
股票STOCKths_close_stockths_pe_stock
债券BONDths_yield_bond
可转债CBONDths_close_cbond
基金FUNDths_nav_fund
指数INDEXths_close_index
期货FUTURESths_close_futures
港股HKths_close_hk
美股USths_close_us

示例

=thsiFinD("ths_stock_short_name_stock", "")  // 获取股票简称(基本资料)
=thsiFinD("ths_close_stock", "300033", "2024-01-01")  // 获取收盘价

指标参数详解

指标参数涉及 5 个常用变量

参数名称参数变量说明
代码thsCode证券代码(交易代码或同花顺代码)
日期Date交易日、区间首日(StartDate)、区间尾日(EndDate)
报告期ReportDate定期报告截止日(年报、中报、一季报、三季报)
类型参数Type对指标的进一步描述和说明
指标编码ItemsCode主要应用于报表科目

1. 代码参数 (thsCode)

在机构版终端,证券代码可以是 交易代码,也可以是 同花顺代码

交易代码:一串数字(整型数据),在 Excel 中可以直接引用:

=thsiFinD("ths_stock_short_name_stock", 300033)  // 整型,无需引号

同花顺代码:字符串格式,在 Excel 中必须用双引号引用:

=thsiFinD("ths_stock_short_name_stock", "300033")  // 字符串,必须带引号
=thsiFinD("ths_close_stock", "000001.SZ", "2024-01-01")

2. 日期参数 (Date)

日期参数具体分为:

  • 交易日 (Date):单个日期
  • 区间首日 (StartDate):日期区间起始
  • 区间尾日 (EndDate):日期区间结束

支持 3 种日期格式

格式类型格式示例Excel 引用方式
整型 YYYYMMDD20130109直接引用,无需引号
字符串 YYYY-MM-DD"2013-01-09"必须带双引号
字符串 YYYY/MM/DD"2013/01/09"必须带双引号

示例

=thsiFinD("ths_close_price_stock", "300033", 20130109, 100, "")  // 整型日期
=thsiFinD("ths_close_price_stock", "300033", "2013-01-09", 100, "")  // 字符串日期
=thsiFinD("ths_close_stock", "000001.SZ", "2024-01-01", "2024-12-31")  // 日期区间

3. 报告期/截止日期参数 (ReportDate)

重要说明:报告期/截止日期参数需要包含在每一个函数调用示例中,并非只有财务报告才有该参数。

  • 对于财务类指标:报告期就是定期报告截止日(年报、中报、一季报、三季报)
  • 对于行情类指标:报告期就是行情日期
  • 对于估值类指标:报告期就是估值日期

核心原理:所有公式都是提取时序指标,报告期参数对应于时序值的时间点。

财务报告期代码对照表

报告类型截止日期代码
年报12月31日100
一季报3月31日101
中报6月30日102
三季报9月30日103

绝对日期格式(优先推荐)

重要:报告期/截止日期/交易日期推荐使用绝对日期格式,优先级高于相对代码格式。

绝对日期格式即直接指定具体日期,格式与日期参数一致:

  • YYYYMMDD(整型):如 2024123120240630
  • YYYY-MM-DD(字符串):如 "2024-12-31""2024-06-30"
  • YYYY/MM/DD(字符串):如 "2024/12/31""2024/06/30"

绝对日期示例

// 财务类指标 - 使用绝对日期指定报告期
=thsiFinD("ths_revenue_stock", "000001.SZ", "2024-12-31", 100)  // 2024年报
=thsiFinD("ths_net_profit_stock", "000001.SZ", "2024-06-30", 100)  // 2024中报

// 行情类指标 - 使用绝对日期指定交易日期
=thsiFinD("ths_close_stock", "000001.SZ", "2024-12-31")  // 2024年12月31日收盘价
=thsiFinD("ths_close_stock", "000001.SZ", 20241231)  // 整型日期格式

// 估值类指标 - 使用绝对日期指定估值日期
=thsiFinD("ths_pe_stock", "000001.SZ", "2024-12-31", 100)  // 2024年12月31日PE

相对代码格式(仅限财务类指标):

代码含义
100去年年报
101今年一季
102今年中报
103今年三季
104最新一期 (MRQ)
105去年一季
106去年中报
107去年三季

建议:优先使用绝对日期格式,避免相对代码的时间歧义问题。

注意:港股财务报告期可能有特殊情况。

4. 类型参数 (Type)

类型参数是对指标的进一步描述和说明,不同指标的类型参数指向的内容不同。使用时需参考函数搜索里面的参数定义说明。

常见类型参数:

类型代码含义
100合并报表
101母公司报表
102合并报表(调整)
103母公司报表(调整)

5. 指标编码参数 (ItemsCode)

主要应用于报表科目,具体详见下方"编码表"。

参数默认规则

一般而言,函数表达式中的参数设置规则:

参数是否必须设置默认值
thsCode(代码)必须设置无默认
ItemsCode(指标编码)必须设置无默认
ReportDate(报告期/截止日期)必须设置无默认
Date(日期)可不设置当前机器日期
Type(类型)可不设置默认取一个数值

说明:报告期参数对应时序指标的时间点,所有指标(行情、估值、财务)都需要设置该参数以获取特定时点的数据。

具体情况可查看函数搜索里面的参数定义说明。

指标数值单位说明

金额类指标单位

重要:金额类指标(如营业收入、净利润、总资产等)的数值单位一般为,需要根据场景自行换算。

常见金额指标及单位

指标类型单位换算示例
营业收入除以10000 = 万元,除以100000000 = 亿元
净利润除以10000 = 万元,除以100000000 = 亿元
总资产除以10000 = 万元,除以100000000 = 亿元
总市值除以100000000 = 亿元
流通市值除以100000000 = 亿元

Excel 公式换算示例

// 获取营业收入并转换为亿元
=thsiFinD("ths_revenue_stock", "000001.SZ", "2024-12-31", 100)/100000000

// 使用单元格引用换算
=thsiFinD("ths_revenue_stock", $B$1, 参数设置!$B$2, 参数设置!$B$4)/100000000

// 设置单元格格式显示(亿元)
// 在Excel中设置单元格格式为:0.00"亿"

建议

  1. 对于大型公司财务数据,建议转换为亿元显示
  2. 对于中小型公司财务数据,建议转换为万元显示
  3. 使用 Excel 单元格格式或公式进行换算,保持原始数据不变

其他指标单位

指标类型单位
收盘价元/股
成交量
成交额
市盈率 PE
市净率 PB
ROE百分比(%)
涨跌幅百分比(%)
基金净值元/份
期货持仓量

参数代码对照表

报告期代码 (100-107)

代码含义
100去年年报
101今年一季
102今年中报
103今年三季
104最新一期 (MRQ)
105去年一季
106去年中报
107去年三季

报表类型代码 (100-103)

代码含义
100合并报表
101母公司报表
102合并报表(调整)
103母公司报表(调整)

数据类别代码 (100-103)

代码含义
100账面余额
101跌价准备
102账面价值
103占合计百分比

常用指标速查

股票行情类

指标名称指标代码公式示例
股票简称ths_stock_short_name_stock=thsiFinD("ths_stock_short_name_stock", "000001.SZ")
收盘价ths_close_stock=thsiFinD("ths_close_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期
开盘价ths_open_stock=thsiFinD("ths_open_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期
最高价ths_high_stock=thsiFinD("ths_high_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期
最低价ths_low_stock=thsiFinD("ths_low_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期
成交量ths_vol_stock=thsiFinD("ths_vol_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期
成交额ths_amt_stock=thsiFinD("ths_amt_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期
涨跌幅ths_chg_stock=thsiFinD("ths_chg_stock", "000001.SZ", "2024-01-01") ※ 报告期=行情日期

说明:行情类指标的"报告期"参数即为行情日期,表示提取该交易日的时序数据。

股票估值类

指标名称指标代码公式示例
市盈率 PEths_pe_stock=thsiFinD("ths_pe_stock", "000001.SZ", 104, 100) ※ 报告期=估值日期(104=最新)
市净率 PBths_pb_stock=thsiFinD("ths_pb_stock", "000001.SZ", 104, 100) ※ 报告期=估值日期(104=最新)
市销率 PSths_ps_stock=thsiFinD("ths_ps_stock", "000001.SZ", 104, 100) ※ 报告期=估值日期(104=最新)
总市值ths_mv_stock=thsiFinD("ths_mv_stock", "000001.SZ", "2024-01-01") ※ 报告期=估值日期
流通市值ths_free_mv_stock=thsiFinD("ths_free_mv_stock", "000001.SZ", "2024-01-01") ※ 报告期=估值日期

说明:估值类指标的"报告期"参数即为估值日期,表示提取该日期的估值时序数据。

股票财务类

指标名称指标代码公式示例
营业收入ths_revenue_stock=thsiFinD("ths_revenue_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期(104=最新)
净利润ths_net_profit_stock=thsiFinD("ths_net_profit_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期
总资产ths_total_assets_stock=thsiFinD("ths_total_assets_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期
总负债ths_total_liab_stock=thsiFinD("ths_total_liab_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期
净资产ths_total_owner_equity_stock=thsiFinD("ths_total_owner_equity_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期
ROEths_roe_stock=thsiFinD("ths_roe_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期
ROAths_roa_stock=thsiFinD("ths_roa_stock", "000001.SZ", 104, 100) ※ 报告期=财务报告期
毛利率ths_gross_margin_stock=thsiFinD("ths_gross_margin_stock", "000001.SZ", 104) ※ 报告期=财务报告期
净利率ths_net_margin_stock=thsiFinD("ths_net_margin_stock", "000001.SZ", 104) ※ 报告期=财务报告期

说明:财务类指标的"报告期"参数为定期报告截止日(100=去年年报、104=最新一期等)。

证券公司业务收入类

指标名称指标代码公式示例
营业收入ths_revenue_stock=thsiFinD("ths_revenue_stock", "600030.SH", 104, 100)
经纪业务手续费净收入ths_brokerage_charge_net_income_stock=thsiFinD("ths_brokerage_charge_net_income_stock", "600030.SH", 104, 100)
投资银行业务手续费净收入ths_net_income_from_invest_banking_stock=thsiFinD("ths_net_income_from_invest_banking_stock", "600030.SH", 104, 100)
资产管理业务手续费净收入ths_ams_charge_net_income_stock=thsiFinD("ths_ams_charge_net_income_stock", "600030.SH", 104, 100)
利息净收入ths_interest_net_income_stock=thsiFinD("ths_interest_net_income_stock", "600030.SH", 104, 100)
投资收益ths_invest_income_stock=thsiFinD("ths_invest_income_stock", "600030.SH", 104, 100)
公允价值变动收益ths_fv_chg_income_stock=thsiFinD("ths_fv_chg_income_stock", "600030.SH", 104, 100)
其他业务收入ths_other_bussiness_income_stock=thsiFinD("ths_other_bussiness_income_stock", "600030.SH", 104, 100)

基金类

指标名称指标代码公式示例
基金净值ths_nav_fund=thsiFinD("ths_nav_fund", "000001.OF", "2024-01-01") ※ 报告期=净值日期
基金累计净值ths_acc_nav_fund=thsiFinD("ths_acc_nav_fund", "000001.OF", "2024-01-01") ※ 报告期=净值日期
基金份额ths_share_fund=thsiFinD("ths_share_fund", "000001.OF", "2024-01-01") ※ 报告期=份额日期

说明:基金类指标的"报告期"参数即为净值/份额公布日期。

指数类

指标名称指标代码公式示例
指数收盘ths_close_index=thsiFinD("ths_close_index", "000001.SH", "2024-01-01") ※ 报告期=行情日期
指数涨跌幅ths_chg_index=thsiFinD("ths_chg_index", "000001.SH", "2024-01-01") ※ 报告期=行情日期

说明:指数类指标的"报告期"参数即为指数行情日期。

期货类

指标名称指标代码公式示例
期货收盘价ths_close_futures=thsiFinD("ths_close_futures", "IF2401", "2024-01-01") ※ 报告期=行情日期
期货结算价ths_settle_futures=thsiFinD("ths_settle_futures", "IF2401", "2024-01-01") ※ 报告期=行情日期
期货持仓量ths_open_interest_futures=thsiFinD("ths_open_interest_futures", "IF2401", "2024-01-01") ※ 报告期=行情日期

说明:期货类指标的"报告期"参数即为期货行情日期。

证券代码格式

市场格式示例
A股000001.SZ, 600000.SH
港股00700.HK, 09988.HK
美股AAPL.US, MSFT.US
债券110000.SH (上证债券)
基金000001.OF (开放式基金)
指数000001.SH (上证指数)
期货IF2401 (沪深300期货)

Excel 公式生成最佳实践

批量应用时的单元格引用(重要建议)

重要:批量生成 Excel 文件时,证券代码、报告期等参数项建议使用单元格引用的形式,便于快速调整。

单元格引用的优势

优势说明
快速调整修改一个单元格即可更新整张表格
减少错误避免逐个修改公式时的遗漏或错误
便于切换可快速切换报告期、股票标的等参数
参数集中所有参数集中在一处,便于管理和审核

推荐结构

  1. 创建参数设置页:将证券代码、报告期、报表类型、换算系数等参数集中存放
  2. 使用绝对引用:公式中使用 $ 符号锁定参数单元格
  3. 分离数据与参数:股票代码放在数据表首行,其他参数放在参数设置页

参数设置页示例

A列(参数名称)B列(参数值)C列(说明)
1参数名称参数值说明
2报告期_当年2025-12-31当年报告期
3报告期_上年2024-12-31同比基数
4报表类型100合并报表
5金额换算100000000换算到亿元

公式示例(单元格引用版)

// 传统方式(不推荐):参数硬编码在公式中
=thsiFinD("ths_revenue_stock", "600030.SH", "2024-12-31", 100)/100000000

// 推荐方式:使用单元格引用
=thsiFinD("ths_revenue_stock", $B$1, 参数设置!$B$2, 参数设置!$B$4)/参数设置!$B$5

// 说明:
$B$1 = 数据表第1行的股票代码(绝对引用)
参数设置!$B$2 = 报告期(2025-12-31)
参数设置!$B$4 = 报表类型(100=合并报表)
参数设置!$B$5 = 换算系数(100000000=亿元)

快速调整示例

场景操作效果
切换报告期修改参数设置!B2所有公式自动更新为新报告期
调整金额单位修改参数设置!B5改为10000显示万元
更换股票标的修改数据表第1行替换股票代码
切换报表类型修改参数设置!B4改为101获取母公司报表

Excel 公式生成示例

Python + openpyxl 生成带 iFinD 公式的 Excel(单元格引用版)

import openpyxl

wb = openpyxl.Workbook()
ws = wb.active
ws.title = "股票数据"

# 表头
ws['A1'] = '股票代码'
ws['B1'] = '收盘价'
ws['C1'] = '市盈率'
ws['D1'] = '净利润(最新)'

# 数据 + iFinD 公式(统一使用 thsiFinD 格式)
stocks = ['000001.SZ', '600000.SH', '000002.SZ']
for i, stock in enumerate(stocks, start=2):
    ws.cell(row=i, column=1, value=stock)
    # 日期参数:字符串格式必须带引号
    ws.cell(row=i, column=2, value=f'=thsiFinD("ths_close_stock", "{stock}", "2024-01-01")')
    # 报告期+报表类型参数
    ws.cell(row=i, column=3, value=f'=thsiFinD("ths_pe_stock", "{stock}", 104, 100)')
    ws.cell(row=i, column=4, value=f'=thsiFinD("ths_net_profit_stock", "{stock}", 104, 100)')

wb.save('stock_data.xlsx')

批量生成证券公司业务收入对比表

import openpyxl
from openpyxl.chart import PieChart, Reference

# 证券Ⅲ股票列表
stocks = [
    ("600030.SH", "中信证券"),
    ("601688.SH", "华泰证券"),
    ("000776.SZ", "广发证券"),
    # ... 更多股票
]

# 业务条线指标
metrics = [
    ("ths_revenue_stock", "营业收入"),
    ("ths_brokerage_charge_net_income_stock", "经纪业务手续费净收入"),
    ("ths_net_income_from_invest_banking_stock", "投行手续费净收入"),
    ("ths_ams_charge_net_income_stock", "资管手续费净收入"),
    ("ths_interest_net_income_stock", "利息净收入"),
]

wb = openpyxl.Workbook()
ws = wb.active

# 表头
ws.cell(row=1, column=1, value="指标")
for j, (code, name) in enumerate(stocks, start=2):
    ws.cell(row=1, column=j, value=name)

# 数据行 - 使用 thsiFinD 公式
for i, (metric_code, metric_name) in enumerate(metrics, start=2):
    ws.cell(row=i, column=1, value=metric_name)
    for j, (stock_code, _) in enumerate(stocks, start=2):
        formula = f'=thsiFinD("{metric_code}", "{stock_code}", 104, 100)'
        ws.cell(row=i, column=j, value=formula)

wb.save('证券业务收入对比.xlsx')

指标代码参考文件

按金融品类分组的指标代码文件(位于 ref/ 目录):

品类文件数量
股票ref/codes_stock.json4579
港股ref/codes_hk.json1388
美股ref/codes_us.json953
债券ref/codes_bond.json3758
回购ref/codes_repo.json46
可转债ref/codes_cbond.json240
基金ref/codes_fund.json657
香港基金ref/codes_hkf.json120
美国基金ref/codes_usf.json12
券商集合理财ref/codes_bcm.json77
阳光私募ref/codes_sp.json39
指数ref/codes_index.json313
现货ref/codes_spot.json168
期货ref/codes_future.json280
期权ref/codes_option.json186
信托产品ref/codes_trust.json15
其他理财ref/codes_obcm.json28
全部指标ref/codes_all.json12859

JSON 文件格式

每个指标包含四个字段:

{
  "code": "ths_close_stock",
  "name": "收盘价",
  "description": "行情指标",
  "params": "日期区间参数说明"
}

字段说明

  • code: 指标代码(如 ths_pe_stock
  • name: 指标名称(如 市盈率
  • description: 指标分类/路径(如 报表附注/应收账款明细
  • params: 参数说明(如 报告期(100-去年年报,...),报表类型(100-合并报表,...)

使用说明

  1. 查阅指标代码:根据品种选择对应的 codes_xxx.json 文件
  2. 查看指标详情:打开 JSON 文件,检查名称和说明与需求匹配
  3. 生成 Excel 公式:按照统一格式 =thsiFinD("指标代码", "证券代码", 参数...) 生成公式
  4. 参数注意事项
    • 同花顺代码必须用双引号引用
    • 日期字符串格式必须用双引号引用
    • 整型日期和整型代码可直接引用

使用注意

  • iFinD Excel 插件需要同花顺机构版终端登录后才能使用
  • 批量提取时建议控制证券数量,避免服务器负载过高
  • 公式格式统一为 =thsiFinD("指标代码", "证券代码", 参数...)
  • thsiFinD 是同花顺最新研发的函数,数据提取更稳定快速
  • 报告期/截止日期参数必须设置:所有指标(行情、估值、财务)都需要设置该参数,对应时序指标的时间点