通用数据函数(免费)
C++ 通用数据 API 包含在 3.5.18 版本及以上版本,不需要引入新库
get_symbol_infos
- 查询标的基本信息
获取指定(范围)交易标的基本信息,与时间无关.
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准
函数原型:
DataArray<SymbolInfo>* get_symbol_infos(long long sec_type1, long long sec_type2 = 0, const char *exchanges = NULL, const char *symbols = NULL)
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
sec_type1 | int | 证券品种大类 | Y | 无 | 指定一种证券大类,只能输入一个. 证券大类 sec_type1 清单 1010: 股票, 1020: 基金, 1030: 债券 , 1040: 期货, 1050: 期权, 1060: 指数,1070:板块. |
sec_type2 | int | 证券品种细类 | N | 0 | 指定一种证券细类,只能输入一个. 默认0 表示不区分细类,即证券大类下所有细类. 证券细类见 sec_type2 清单 - 股票 101001:A 股,101002:B 股,101003:存托凭证 - 基金 102001:ETF,102002:LOF,102005:FOF - 债券 103001:可转债,103008:回购 - 期货 104001:股指期货,104003:商品期货,104006:国债期货 - 期权 105001:股票期权,105002:指数期权,105003:商品期权 - 指数 106001:股票指数,106002:基金指数,106003:债券指数,106004:期货指数 - 板块:107001:概念板块 |
exchanges | str | 交易所代码 | N | NULL | 输入交易所代码,可输入多个. 采用 str 格式时,多个交易所代码必须用英文逗号分割,如:"SHSE,SZSE" 默认NULL 表示所有交易所. 交易所代码清单 SHSE:上海证券交易所,SZSE:深圳证券交易所 , CFFEX:中金所,SHFE:上期所,DCE:大商所, CZCE:郑商所, INE:上海国际能源交易中心 ,GFEX:广期所 |
symbols | str | 标的代码 | N | NULL | 输入标的代码,可输入多个. 采用 str 格式时,多个标的代码必须用英文逗号分割,如:"SHSE.600008,SZSE.000002" 默认NULL 表示所有标的. |
|
返回值:
SymbolInfo
结构数组,参见SymbolInfo
定义与DataArray
类的用法。
示例:
get_symbol_infos(1010, 0, NULL, "SHSE.600008,SZSE.000002")
注意:
1. sec_type1
为必填参数,即一次只能查询一个品种的标的基本信息。
2. 查询的标的信息根据参数组合sec_type1, sec_type2, exchanges, symbols
取交集,若输入参数之间出现任何矛盾(换句话说,所有的参数限制出满足要求的交集为空),则返回空
3. 若输入包含无效标的代码symbols
,则返回只包含有效标的代码对应的数据。
4. 参数组合示例:
查询以下范围 symbol 的基本信息 | sec_type1 | sec_type2 | exchanges | symbols |
---|---|---|---|---|
查询指定股票 | 1010 | 0 | NULL | "SHSE.600008,SZSE.000002" |
查询 A 股股票 | 1010 | 101001 | NULL | NULL |
查询深交所股票 | 1010 | 0 | "SZSE" | NULL |
查询 ETF | 1020 | 102001 | NULL | NULL |
查询上交所 LOF | 1020 | 102002 | "SHSE" | NULL |
查询可转债 | 1030 | 103001 | NULL | NULL |
查询深交所可转债 | 1030 | 103001 | "SZSE" | NULL |
查询股指期货 | 1040 | 104001 | NULL | NULL |
查询商品期货 | 1040 | 104003 | NULL | NULL |
查询郑商所和大商所期货 | 1040 | 0 | "CZCE,DCE" | NULL |
查询股票期权 | 1050 | 105001 | NULL | NULL |
查询上交所股票期权 | 1050 | 105001 | "SHSE" | NULL |
查询指数期权 | 1050 | 105002 | NULL | NULL |
查询商品期权 | 1050 | 105003 | NULL | NULL |
查询上期所商品期权 | 105003 | 0 | "SHFE" | NULL |
查询股票指数 | 1060 | 106001 | NULL | NULL |
get_symbols_by_date
- 查询指定交易日多标的交易信息
获取指定交易日多个标的交易信息,包括基本信息及日度数据.
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准
函数原型:
DataArray<SymbolContent>* get_symbols_by_date(long long sec_type1, long long sec_type2 = 0, const char *exchanges = NULL, const char *symbols = NULL, bool skip_suspended = true, bool skip_st = true, const char *trade_date = NULL);
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
sec_type1 | int | 证券品种大类 | Y | 无 | 指定一种证券大类,只能输入一个. 证券大类 sec_type1 清单 1010: 股票, 1020: 基金, 1030: 债券 , 1040: 期货, 1050: 期权, 1060: 指数,1070:板块. |
sec_type2 | int | 证券品种细类 | N | 0 | 指定一种证券细类,只能输入一个. 默认0 表示不区分细类,即证券大类下所有细类. 证券细类见 sec_type2 清单 - 股票 101001:A 股,101002:B 股,101003:存托凭证 - 基金 102001:ETF,102002:LOF,102005:FOF - 债券 103001:可转债,103008:回购 - 期货 104001:股指期货,104003:商品期货,104006:国债期货 - 期权 105001:股票期权,105002:指数期权,105003:商品期权 - 指数 106001:股票指数,106002:基金指数,106003:债券指数,106004:期货指数 - 板块:107001:概念板块 |
exchanges | str | 交易所代码 | N | NULL | 输入交易所代码,可输入多个. 采用 str 格式时,多个交易所代码必须用英文逗号分割,如:"SHSE,SZSE" 默认NULL 表示所有交易所. 交易所代码清单 SHSE:上海证券交易所,SZSE:深圳证券交易所 , CFFEX:中金所,SHFE:上期所,DCE:大商所, CZCE:郑商所, INE:上海国际能源交易中心 ,GFEX:广期所 |
symbols | str | 标的代码 | N | NULL | 输入标的代码,可输入多个. 采用 str 格式时,多个标的代码必须用英文逗号分割,如:"SHSE.600008,SZSE.000002" 默认NULL 表示所有标的. |
skip_suspended | bool | 跳过停牌 | N | true | 是否跳过全天停牌,默认true 跳过 |
skip_st | bool | 跳过 ST | N | true | 是否跳过包含 ST 的股票:ST, *ST, SST, S*ST , 默认true 跳过 |
trade_date | str | 交易日期 | N | NULL | 交易日期,%Y-%m-%d 格式,默认NULL 取最新截面(包含退市标的) |
返回值:
SymbolContent
结构数组,参见SymbolContent
定义与DataArray
类的用法。
示例:
get_symbols_by_date(sec_type1=1010, 0, NULL, "SHSE.600008,SZSE.000002")
注意:
1. sec_type1
为必填参数,即一次只能查询一个品种的标的最新交易日信息。
2. 查询的标的信息根据参数组合sec_type1, sec_type2, exchanges, symbols
取交集,若输入参数之间出现任何矛盾(换句话说,所有的参数限制出满足要求的交集为空),则返回空
3. 若输入包含无效标的代码symbols
,则返回只包含有效标的代码对应的数据。
4. 获取全 A 股票代码示例get_symbols(1010, 101001)
5. 可转债的到期日(退市日期)为delisted_date
,转股价值为转股价值 = 转股数*股价 = (100/可转债转股价) * 股价
get_history_symbol
- 查询指定标的多日交易信息
获取指定标的多个历史交易日的交易信息,包括基本信息及日度数据.
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准
函数原型:
DataArray<SymbolContent>* get_history_symbol(const char *symbol, const char *start_date = NULL, const char *end_date = NULL);
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
symbol | str | 标的代码 | Y | 无 | 输入标的代码,只能输入一个. |
start_date | str | 开始时间 | N | NULL | 开始时间日期,%Y-%m-%d 格式,默认NULL 表示当前时间 |
end_date | str | 结束时间 | N | NULL | 结束时间日期,%Y-%m-%d 格式,默认NULL 表示当前时间 |
返回值:
SymbolContent
结构数组,参见SymbolContent
定义与DataArray
类的用法。
示例:
get_history_symbol("SZSE.000002", "2022-09-01", "2022-09-30")
注意:
1. 若输入包含无效标的代码symbol
,则返回只包含有效标的代码对应的数据。
2. 停牌时且股票发生除权除息,涨停价和跌停价可能有误差。
3. 对每个标的,数据根据trade_date
的升序进行排序。
4. start_date
和end_date
中月份和日期都可以只输入个位数,例:"2010-7-8"或"2017-7-30"
5. 当start_date
大于或者等于 end_date
时, 取指定时间段的数据,当 start_date
> end_date
时, 返回报错
6. 可转债的到期日(退市日期)delisted_date
,转股价值为转股价值 = 转股数*股价 = (100/可转债转股价) * 股价
get_trading_dates_by_year
- 查询年度交易日历
查询一个交易所的指定年份的交易日历.
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准
函数原型:
DataArray<TradingDateContent>* get_trading_dates_by_year(const char *exchange, int start_year, int end_year);
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
exchange | str | 交易所代码 | Y | 无 | 只能填写一个交易所代码 交易所代码清单: SHSE:上海证券交易所,SZSE:深圳证券交易所,CFFEX:中金所,SHFE:上期所,DCE:大商所,CZCE:郑商所,INE:上海国际能源交易中心,GFEX:广期所 |
start_year | int | 开始年份 | Y | 无 | 查询交易日历开始年份(含),yyyy 格式 |
end_year | int | 结束年份 | Y | 无 | 查询交易日历结束年份(含),yyyy 格式 |
**返回值:
TradingDateContent
结构数组,参见TradingDateContent
定义与DataArray
类的用法。
示例:
get_trading_dates_by_year("SHSE", 2020, 2023)
注意:
1. exchange
参数仅支持输入单个交易所代码,若代码错误,会报错
2. 开始年份必须不晚于结束年份,否则返回空
get_previous_n_trading_dates
- 查询指定日期的前n个交易日
查询一个交易所指定日期的前n个交易日
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准, gm SDK 3.6.14 版本新增
函数原型:
DataArray<TradingDate>* get_previous_n_trading_dates(const char *exchange, const char *date, int n)
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
exchange | str | 交易所代码 | Y | 无 | 只能填写一个交易所代码,交易所代码清单: SHSE:上海证券交易所,SZSE:深圳证券交易所,CFFEX:中金所,SHFE:上期所,DCE:大商所,CZCE:郑商所,INE:能源中心,GFEX:广期所 |
date | str | 指定日期 | Y | 无 | 指定的基准日期T,%Y-%m-%d 格式 |
n | int | 交易日个数 | N | 无 | 前n个交易日,默认为1,即前一天,取值范围[1,支持的最早交易日至当前交易日个数-1] |
返回值:
TradingDate
结构数组,参见TradingDate
定义与DataArray
类的用法。
get_previous_n_trading_dates("SHSE", "2023-10-10", 10)
注意:
1. exchange参数仅支持输入单个交易所代码。
2. n必须为非零正整数,n=0时会报错,n超出最早支持的交易日时只会返回至最早交易日。
3. 获取date前N个交易日,不包括date日期。
get_next_n_trading_dates
- 查询指定日期的后n个交易日
查询一个交易所指定日期的后n个交易日
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准, gm SDK 3.6.14 版本新增
函数原型:
DataArray<TradingDate>* get_next_n_trading_dates(const char *exchange, const char *date, int n)
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
exchange | str | 交易所代码 | Y | 无 | 只能填写一个交易所代码,交易所代码清单: SHSE:上海证券交易所,SZSE:深圳证券交易所,CFFEX:中金所,SHFE:上期所,DCE:大商所,CZCE:郑商所,INE:能源中心,GFEX:广期所 |
date | str | 指定日期 | Y | 无 | 指定的基准日期T,%Y-%m-%d 格式 |
n | int | 交易日个数 | N | 无 | 前n个交易日,默认为1,即前一天,取值范围[1,支持的最早交易日至当前交易日个数-1] |
返回值:
TradingDate
结构数组,参见TradingDate
定义与DataArray
类的用法。
get_next_n_trading_dates("SHSE", "2023-09-27", 10)
注意:
1. exchange参数仅支持输入单个交易所代码。
2. n必须为非零正整数,n=0时会报错,n超出最早支持的交易日时只会返回至最早交易日。
3. 获取date前N个交易日,不包括date日期。
get_trading_session
- 查询交易时段
查询一个标的所属品种交易时间段.
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准
函数原型:
DataArray<TradingSession>* get_trading_session(const char *symbols);
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
symbols | str | 标的代码 | Y | 无 | 输入标的代码,可输入多个. 多个标的代码必须用英文逗号分割,如:"SHSE.600008,SZSE.000002" |
返回值:
TradingSession
结构数组,参见TradingSession
定义与DataArray
类的用法。
示例:
get_trading_session("SHFE.au2306")
注意:
1. 如果输入不存在的合约代码 symbol,会报错提示"该合约[symbol]不存在"。
get_contract_expire_rest_days
- 查询合约到期剩余天数
查询期货合约、期权合约、可转债的到期剩余天数。
此函数为掘金公版(体验版/专业版/机构版)函数,券商版以升级提示为准
函数原型:
DataArray<ContractExpireRestDays>* get_contract_expire_rest_days(const char *symbols, const char *start_date, const char *end_date, bool trade_flag = false);
参数:
参数名 | 类型 | 中文名称 | 必填 | 默认值 | 参数用法说明 |
---|---|---|---|---|---|
symbols | str | 标的代码 | Y | 无 | 输入标的代码,可输入多个. 多个标的代码必须用英文逗号分割,如:"CFFEX.IF2212,CFFEX.IC2212" |
start_date | str | 开始日期 | Y | 无 | %Y-%m-%d 格式,不早于合约上市日 |
end_date | str | 结束日期 | Y | 无 | %Y-%m-%d 格式,不早于指定的开始日期,否则返回报错 |
trade_flag | bool | 交易日 | N | false | 是否需要按交易日计算,默认false 按自然日计算,则返回到期剩余自然日天数; 设置为true 按交易日计算,则返回到期剩余交易日天数 |
返回值:
ContractExpireRestDays
结构数组,参见ContractExpireRestDays
定义与DataArray
类的用法。
示例:
get_contract_expire_rest_days("CFFEX.IM2212", "2022-12-12", "2022-12-16", true)
注意:
1. 参数start_date
和end_date
必须是yyyy-mm-dd字符串格式
2. 在到期日当天,到期剩余天数为 0。正数表示距离到期日的剩余天数,0 表示到期日当天,负数表示距离到期日已经过去的天数。
3. 如果输入不存在的合约代码symbol
,会报错提示"该合约[symbol]不存在"。
4. 如果输入的合约代码symbol
在时间段内的某个日期未上市,在该日期的到期剩余天数返回空。
5. 用于剩余天数计算的到期日是最后交易日。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论