掘金量化—Python SDK文档—5.API 介绍(3)

Python SDK文档

5.API介绍

5.8老版本数据函数

以下接口在终端版本号大于 3.17.0.0 的版本不再维护,请切换到新的通用接口

get_fundamentals - 查询基本面数据

获取基本面数据

此函数掘金公版(体验版/专业版/机构版)不支持,请切换到stk_get_fundamentals_balance - 查询资产负债表数据等新接口

函数原型:

get_fundamentals(table, symbols, start_date, end_date, fields=None, filter=None, order_by=None, limit=1000, df=False)

参数:

参数名 类型 说明
table str 表名,只支持单表查询. 具体表名及 fields 字段名及 filter 可过滤的字段参考 财务数据文档
symbols str or list 标的代码, 多个代码可用 ,(英文逗号)分割, 也支持 ['symbol1', 'symbol2'] 这种列表格式,使用时参考symbol ,免费版本只支持单个标的,多标的只返回第一个
start_date str 开始时间, (%Y-%m-%d 格式)
end_date str 结束时间, (%Y-%m-%d 格式)
fields str 查询字段 (必填)
filter str 查询过滤,使用方法参考例 3. 例 4
order_by str or None 排序方式, 默认 NoneTCLOSE 表示按 TCLOSE 升序排序. -TCLOSE 表示按 TCLOSE 降序排序. TCLOSE, -NEGOTIABLEMV 表示按 TCLOSE 升序, NEGOTIABLEMV 降序综合排序
limit int 数量. 默认是1000, 为保护服务器, 单次查询最多返回 40000 条记录
df bool 是否返回 dataframe 格式, 默认 False, 返回 list[dict]

返回值:

key value 类型 说明
symbol str 标的代码
pub_date datetime.datetime 公司发布财报的日期.
end_date datetime.datetime 财报统计的季度的最后一天.
fields dict 相应指定查询 fields 字段的值. 字典 key 值请参考 财务数据文档

示例:

例 1: 取股票代码 SHSE.600000, SZSE.000001, 离 2017-01-01 最近一个交易日的 股票交易财务衍生表的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI 字段的值

get_fundamentals(table='trading_derivative_indicator', symbols='SHSE.600000, SZSE.000001', start_date='2017-01-01', end_date='2017-01-01',             fields='TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI', df=True)

输出:

  symbol       pub_date             end_date             NEGOTIABLEMV  PEMRQ    PELFYNPAAEI    PETTMNPAAEI  PELFY    TURNRATE    PETTM    TOTMKTCAP    TCLOSE
SHSE.600000  2016-12-30 00:00:00  2016-12-30 00:00:00     3.3261e+11    6.4605         7.0707         6.6184   6.925       0.0598   6.4746  3.50432e+11     16.21
SZSE.000001  2016-12-30 00:00:00  2016-12-30 00:00:00     1.33144e+11   6.2604         7.1341         6.2644   7.1462      0.2068   6.8399  1.56251e+11      9.1

例 2: 取股票代码 SHSE.600000, SZSE.000001, 指定时间段 2016-01-01 -- 2017-01-01 股票交易财务衍生表 的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI 字段的值

get_fundamentals(table='trading_derivative_indicator', symbols='SHSE.600000, SZSE.000001', start_date='2016-01-01', end_date='2017-01-01',
fields='TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI', df=True)

例 3: 取指定股票 SHSE.600000, SHSE.600001, SHSE.600002 离 2017-01-01 最近一个交易日, 且满足条件 PCTTM > 0 and PCTTM < 10 股票交易财务衍生表 的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI 字段的值

get_fundamentals(table='trading_derivative_indicator', symbols='SHSE.600000, SHSE.600001, SHSE.600002', start_date='2017-01-01', end_date='2017-01-01', filter='PCTTM > 0 and PCTTM < 10',
fields='TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI', df=True)
# 或者这样写
my_symbols = ['SHSE.600000', 'SHSE.600001', 'SHSE.600002']
get_fundamentals(table='trading_derivative_indicator', start_date='2017-01-01', end_date='2017-01-01', filter='PCTTM > 0 and PCTTM < 10', symbols=my_symbols,
fields='TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI', df=True)

例 4: 取指定股票 SHSE.600000, SZSE.000001 离 2016-01-20 最近一个财报, 同时满足条件 CURFDS > 0 and TOTLIABSHAREQUI > 0 的 资产负债 的数据

get_fundamentals(table='balance_sheet', start_date='2016-01-20', end_date='2016-01-20',
                fields='CURFDS, SETTRESEDEPO, PLAC, TRADFINASSET, ',
                symbols='SHSE.600000, SZSE.000001',
                filter='CURFDS > 0 and TOTLIABSHAREQUI > 0',
                df=True)
# 或者这样写
my_symbols = ['SHSE.600000', 'SZSE.000001']
get_fundamentals(table='balance_sheet',  start_date='2016-01-20', end_date='2016-01-20',
                fields='CURFDS, SETTRESEDEPO, PLAC, TRADFINASSET, ',
                symbols=my_symbols,
                filter='CURFDS > 0 and TOTLIABSHAREQUI > 0',
                df=True)

注意:

1. 当 start_date == end_date 时, 取所举每个股票离 end_date 最近业务日期(交易日期或报告日期) 一条数据,当 start_date < end_date 时, 取指定时间段的数据,当 start_date > end_date 时, 返回空list/空DataFrame

2. 当不指定排序方式时,返回的list/DataFrame以参数pub_date/end_date来排序

3. start_date 和 end_date 中月,日均可以只输入个位数,例:'2010-7-8''2017-7-30'

4. 若输入包含无效标的代码,则返回的list/DataFrame只包含有效标的代码对应的数据

5. 在该函数中,table 参数只支持输入一个表名,若表名输入错误或以'table1,table2'方式输入多个表名,函数返回空list/空DataFrame

6. 若表名输入正确,但查询字段中出现非指定字符串,则程序直接报错

get_fundamentals_n - 查询基本面数据最新 n 条

取指定股票的最近 end_date 的 count 条记录

此函数掘金公版(体验版/专业版/机构版)不支持,请切换到stk_get_fundamentals_balance_pt - 查询资产负债表截面数据等新接口

函数原型:

get_fundamentals_n(table, symbols, end_date, fields=None, filter=None, order_by=None, count=1, df=False)

参数:

参数名 类型 说明
table str 表名,只支持单表查询. 具体表名及 fields 字段名及 filter 可过滤的字段参考 财务数据文档
symbols str 标的代码, 多个代码可用 ,(英文逗号)分割, 也支持 ['symbol1', 'symbol2'] 这种列表格式,使用时参考
<think> 首先,用户的问题是:“我想查找使用Python下载gm.api的方法”。这是在询问如何使用Python下载或访问gm.api库。 回顾系统指令: - 所有行内数学表达式必须使用$...$格式。 - 独立公式必须使用$$...$$格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识。 用户提供的引用是从站内引用的: - 引用[1]:描述了gm.history_n()函数的使用。 - 引用[2]:关于如何导入zip文件中的模块。 - 引用[3]:展示了如何使用gm.api获取数据并计算技术指标。 - 引用[4]:提及掘金量化Python SDK文档的输出。 用户说:“上述引用仅供参考,并不是用户真正的需求,请尽可能多的参考用户上一次的问题和你的回答。” 但在对话历史上,这是我的第一条消息,所以没有“上一次的问题和回答”。用户可能指的是引用中的内容。 关键是用户的当前问题:如何下载gm.api使用Python。gm.api似乎是掘金量化平台的一个API库。 从引用[3]中,我看到代码示例:`from gm.api import *`,这表明gm.api是一个Python库,可能通过pip安装。 gm.api掘金量化(Golden Mind)提供的API,用于量化交易。 所以,下载方法通常是使用pip安装相应的包。 在引用中,没有直接说如何安装,但通常,Python库通过pip安装。 我应该基于常识回答: - gm.api库可以通过pip安装。 - 命令可能是pip install gm.api或类似。 检查引用: - 引用[2]提到导入zip文件,但不相关。 - 引用[1]、[3]、[4]展示使用gm.api,但没有安装说明。 用户可能误解了“下载”;在Python上下文中,“下载”通常意味着安装包。 回答结构: - 使用中文。 - 清晰步骤。 - 生成相关问题。 - 末尾添加引用标识。 回答应包括: 1. 解释gm.api是什么(基于引用)。 2. 如何安装它。 3. 示例代码(如果需要)。 4. 生成相关问题。 从引用[3],gm.api用于获取历史数据等。 所以,步骤: - 安装包:可能pip install gm或pip install gm.api(我需要确认)。 - 实际包名:掘金量化的包通常是gm或goldenmind。 在线搜索(但作为AI,我应基于知识库):掘金量化Python SDK文档提到安装方式。 用户提供了引用[4]:"掘金量化Python SDK文档5.API 介绍3)",但没有URL。 在回答中,我可以假设使用pip安装。 标准方式:pip install gm 例如,在引用[3],他们有`set_token("自己的token码")`,所以需要账号和token。 安装后,导入库。 回答大纲: 1. 下载(安装)gm.api的方法。 2. 简要说明如何使用。 3. 生成相关问题。 最后,添加引用标识。 相关问题生成: - 基于主题:Python安装库、gm.api使用等。 完整回答: - 开头解释。 - 步骤。 - 代码示例(如果需要)。 - 相关问题。 </think> 基于您的查询和提供的引用内容,我将清晰解释如何使用Python下载并安装gm.api库(掘金量化平台的Python SDK)。gm.api是一个用于量化交易的第三方库,提供获取历史数据、技术指标计算等功能(如引用[3]中所示)。在Python中,“下载”通常指通过包管理器(如pip)安装库。以下是详细步骤: ### 1. **安装gm.api库** gm.api库可以通过Python的pip包管理器安装。确保您已安装Python(建议Python 3.6+版本)和pip。然后运行以下命令: ```bash pip install gm ``` 这里的包名是`gm`(掘金量化的主包),安装后会包含`gm.api`模块。安装完成后,您可以在Python中导入它(如`from gm.api import *`)。 注意:安装前可更新pip以确保兼容性: ```bash pip install --upgrade pip ``` ### 2. **验证安装和基本使用** 安装后,您可以导入库并设置token(如引用[3]所述)来访问掘金量化API。token需要从掘金量化官网申请(免费注册获取)。以下是简单示例代码: ```python # 导入gm.api模块 from gm.api import * # 设置您的token(替换为实际token) set_token("您的token码") # 测试获取数据(例如:海康威视近5天收盘价) data = history_n(symbol="SZSE.002415", frequency="1d", count=5, fields="close", df=True) print(data) ``` - 此代码基于引用[1]和引用[3]的函数`history_n()`演示数据获取[^1][^3]。 - 如果遇到依赖问题(如缺少numpy或talib),运行`pip install numpy talib`安装。 ### 3. **常见问题解决** - **安装失败?** 确保网络畅通,或使用国内镜像加速(如`pip install gm -i https://pypi.tuna.tsinghua.edu.cn/simple`)。 - **导入错误?** 检查Python环境路径(如引用[2]中提到的sys.path.append()可用于添加自定义路径)[^2]。 - **文档参考:** 完整API文档掘金量化官网(如引用[4]的输出部分)[^4]。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值