- current - 查询当前行情快照
- history_ticks - 查询历史Tick行情
- history_bars - 查询历史Bar行情
- history_ticks_n - 查询最新n条Tick行情
- history_bars_n - 查询最新n条Bar行情
- history_l2ticks - 查询历史L2 Tick行情
- history_l2bars - 查询历史L2 Bar行情
- history_l2transactions - 查询历史L2 逐笔成交
- history_l2orders -查询历史L2 逐笔委托
- history_l2orders_queue -查询历史L2 委托队列
- get_fundamentals - 查询基本面数据
- get_fundamentals_n - 查询基本面数据最新n条
- get_instruments - 查询最新交易标的信息
- get_history_instruments - 查询交易标的历史数据
- get_instrumentinfos - 查询交易标的基本信息
- get_constituents - 查询指数成份股
- get_industry - 查询行业股票列表
- get_trading_dates - 查询交易日历
- get_previous_trading_date - 返回指定日期的上一个交易日
- get_next_trading_date - 返回指定日期的下一个交易日
- get_dividend - 查询分红送配
- get_continuous_contracts - 获取连续合约
current - 查询当前行情快照
查询当前行情快照,返回tick数据。回测时,返回回测时间点的tick数据
函数原型:
DataArray<Tick>* current(const char *symbols);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 查询代码,如有多个代码, 中间用 , (英文逗号) 隔开 |
返回值 | DataArray |
Tick数组 |
示例:
DataArray<Tick>* current_data = current("SZSE.000001,SZSE.000002");
注意:
1.start_time和end_time中月,日,时,分,秒均可以只输入个位数,例:"2010-7-8 9:40:0"
或"2017-7-30 12:3:0"
,但若对应位置为零,则0
不可被省略,如不可输入"2017-7-30 12:3: "
history_ticks - 查询历史Tick行情
函数原型:
DataArray<Tick>* history_ticks(const char *symbols, const char *start_time, const char *end_time, int adjust = 0, const char *adjust_end_time = NULL, bool skip_suspended = true, const char *fill_missing = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 |
adjust_end_time | const char * | 复权基点时间, 默认当前时间 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | const char * | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
返回值 | DataArray |
一个Tick数组 |
示例:
DataArray<Tick>* history_tick = history_ticks(symbol="SHSE.000300", start_time="2010-07-28", end_time="2017-07-30")
注意:
1.start_time和end_time中月,日,时,分,秒均可以只输入个位数,例:"2010-7-8 9:40:0"
或"2017-7-30 12:3:0"
,但若对应位置为零,则0
不可被省略,如不可输入"2017-7-30 12:3: "
2. skip_suspended 和 fill_missing 参数暂不支持
3. 单次返回数据量最大返回33000, 超出部分不返回
history_bars - 查询历史Bar行情
函数原型:
DataArray<Bar>* history_bars(const char *symbols, const char *frequency, const char *start_time, const char *end_time, int adjust = 0, const char *adjust_end_time = NULL, bool skip_suspended = true, const char *fill_missing = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
frequency | const char * | 频率, 支持 ‘1d’, ‘60s’, ‘300s’ , ‘1800s’ , ‘3600s’ 等 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 |
adjust_end_time | const char * | 复权基点时间, 默认当前时间 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | const char * | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
返回值 | DataArray |
一个Bar数组 |
示例:
//获取1分钟的bar
DataArray<Bar>* history_bar = history_bars(symbol="SHSE.000300", "60s", start_time="2010-07-28", end_time="2017-07-30");
//获取60分钟的bar
DataArray<Bar>* history_bar = history_bars(symbol="SHSE.000300", "3600s", start_time="2010-07-28", end_time="2017-07-30");
//获取日线
DataArray<Bar>* history_bar = history_bars(symbol="SHSE.000300", "1d", start_time="2010-07-28", end_time="2018-07-30");
注意:
1.start_time和end_time中月,日,时,分,秒均可以只输入个位数,例:"2010-7-8 9:40:0"
或"2017-7-30 12:3:0"
,但若对应位置为零,则0
不可被省略,如不可输入"2017-7-30 12:3: "
2. skip_suspended 和 fill_missing 参数暂不支持
3. 单次返回数据量最大返回33000, 超出部分不返回
history_ticks_n - 查询最新n条Tick行情
函数原型:
DataArray<Tick>* history_ticks_n(const char *symbol, int n, const char *end_time = NULL, int adjust = 0, const char *adjust_end_time = NULL, bool skip_suspended = true, const char *fill_missing = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbol | const char * | 标的代码,只支持单个标的 |
n | int | 获取行情的数量 |
end_time | const char * | 从此时间开始,往前取行情, 如果为NULL, 那么为当前时间开始 |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 |
adjust_end_time | const char * | 复权基点时间, 默认当前时间 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | const char * | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
返回值 | DataArray |
一个Tick数组 |
示例:
//获取沪深300最新10条tick
DataArray<Tick>* history_tick_n = history_ticks_n(symbol="SHSE.000300", 10);
注意:
1.end_time中月,日,时,分,秒均可以只输入个位数,例:"2010-7-8 9:40:0"
或"2017-7-30 12:3:0"
,但若对应位置为零,则0
不可被省略,如不可输入"2017-7-30 12:3:"
2. skip_suspended 和 fill_missing 参数暂不支持
3. 单次返回数据量最大返回33000, 超出部分不返回
history_bars_n - 查询最新n条Bar行情
函数原型:
DataArray<Bar>* history_bars_n(const char *symbol, const char *frequency, int n, const char *end_time = NULL, int adjust = 0, const char *adjust_end_time = NULL, bool skip_suspended = true, const char *fill_missing = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbol | const char * | 标的代码,只支持单个标的 |
frequency | const char * | 频率, 支持 ‘1d’, ‘60s’, ‘300s’ , ‘1800s’ , ‘3600s’ 等 |
n | int | 获取行情的数量 |
end_time | const char * | 从此时间开始,往前取行情, 如果为NULL, 那么为当前时间开始 |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 |
adjust_end_time | const char * | 复权基点时间, 默认当前时间 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | const char * | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
返回值 | DataArray |
一个Bar数组 |
示例:
//获取沪深300最新10条1分钟bar
DataArray<Bar>* history_bars_n = history_bars_n(symbol="SHSE.000300", "60s", 10);
注意:
1.end_time中月,日,时,分,秒均可以只输入个位数,例:"2010-7-8 9:40:0"
或"2017-7-30 12:3:0"
,但若对应位置为零,则”0”不可被省略,如不可输入"2017-7-30 12:3: "
2. skip_suspended 和 fill_missing 参数暂不支持
3. 单次返回数据量最大返回33000, 超出部分不返回
history_l2ticks - 查询历史L2 Tick行情
函数原型:
DataArray<Tick>* history_l2ticks(const char *symbols, const char *start_time, const char *end_time, int adjust = 0, const char *adjust_end_time = NULL, bool skip_suspended = true, const char *fill_missing = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 |
adjust_end_time | const char * | 复权基点时间, 默认当前时间 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | const char * | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
返回值 | DataArray |
一个Tick数组 |
示例:
DataArray<Tick>* history_tick = history_l2ticks(symbol="SHSE.600000", start_time="2020-03-28", end_time="2020-03-29")
history_l2bars - 查询历史L2 Bar行情
函数原型:
DataArray<Bar>* history_l2bars(const char *symbols, const char *frequency, const char *start_time, const char *end_time, int adjust = 0, const char *adjust_end_time = NULL, bool skip_suspended = true, const char *fill_missing = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
frequency | const char * | 频率, 支持 ‘1d’, ‘60s’, ‘300s’ , ‘1800s’ , ‘3600s’ 等 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
adjust | int | ADJUST_NONE or 0: 不复权 , ADJUST_PREV or 1: 前复权 , ADJUST_POST or 2: 后复权 默认不复权 |
adjust_end_time | const char * | 复权基点时间, 默认当前时间 |
skip_suspended | bool | 是否跳过停牌, 默认跳过 |
fill_missing | const char * | 填充方式, None - 不填充, 'NaN' - 用空值填充, 'Last' - 用上一个值填充, 默认None |
返回值 | DataArray |
一个Bar数组 |
示例:
//获取1分钟的bar
DataArray<Bar>* history_bar = history_l2bars(symbol="SHSE.000300", "60s", start_time="2010-07-28", end_time="2017-07-30");
//获取60分钟的bar
DataArray<Bar>* history_bar = history_l2bars(symbol="SHSE.000300", "3600s", start_time="2010-07-28", end_time="2017-07-30");
history_l2transactions - 查询历史L2 逐笔成交
函数原型:
DataArray<L2Transaction>* history_l2transactions(const char *symbols, const char *start_time, const char *end_time);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
返回值 | DataArray |
一个L2Transaction数组 |
示例:
DataArray<L2Transaction>* data = history_l2transactions(symbol="SHSE.600000", start_time="2020-03-28", end_time="2020-03-29");
history_l2orders -查询历史L2 逐笔委托
函数原型:
DataArray<L2Order>* history_l2orders(const char *symbols, const char *start_time, const char *end_time);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
返回值 | DataArray |
一个L2Order数组 |
示例:
DataArray<L2Order>* data = history_l2orders(symbol="SHSE.600000", start_time="2020-03-28", end_time="2020-03-29");
history_l2orders_queue -查询历史L2 委托队列
函数原型:
DataArray<L2OrderQueue>* history_l2orders_queue(const char *symbols, const char *start_time, const char *end_time);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码,若要获取多个标的的历史数据,可以采用中间用 , (英文逗号) 隔开的方法 |
start_time | const char * | 开始时间 (%Y-%m-%d %H:%M:%S 格式),其中日线包含start_time数据, 非日线不包含start_time数据 |
end_time | const char * | 结束时间 (%Y-%m-%d %H:%M:%S 格式), |
返回值 | DataArray |
一个L2OrderQueue数组 |
示例:
DataArray<L2OrderQueue>* data = history_l2orders_queue(symbol="SHSE.600000", start_time="2020-03-28", end_time="2020-03-29");
get_fundamentals - 查询基本面数据
函数原型:
DataSet* get_fundamentals(const char *table, const char *symbols, const char *start_date, const char *end_date, const char *fields, const char *filter = NULL, const char *order_by = NULL, int limit = 1000);
参数:
参数名 | 类型 | 说明 |
---|---|---|
table | const char* | 表名,只支持单表查询. 具体表名及fields字段名及filter可过滤的字段参考 财务数据文档 |
symbols | const char* | 标的代码, 多个代码可用 , (英文逗号)分割 |
start_date | const char* | 开始时间, (%Y-%m-%d 格式) |
end_date | const char* | 结束时间, (%Y-%m-%d 格式) |
fields | const char* | 查询字段 (必填) |
filter | const char* | 查询过滤,使用方法参考例3、例4 |
order_by | const char* | 排序方式, 默认 None . TCLOSE 表示按 TCLOSE 升序排序. -TCLOSE 表示按 TCLOSE 降序排序. TCLOSE, -NEGOTIABLEMV 表示按 TCLOSE 升序, NEGOTIABLEMV 降序综合排序 |
limit | int | 数量. 为保护服务器, 一次查询最多返回 40000 条记录 |
返回值 | DataSet* | 一个结果集 |
示例:
例1: 取股票代码 SHSE.600000, SZSE.000001
, 离 2017-01-01
最近一个交易日的 股票交易财务衍生表 的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI
字段的值
DataSet* ds = get_fundamentals("trading_derivative_indicator", "SHSE.600000,SZSE.000001", "2017-01-01", "2017-01-01", "TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI")
例2: 取股票代码 SHSE.600000, SZSE.000001
, 指定时间段 2016-01-01 -- 2017-01-01
股票交易财务衍生表 的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI
字段的值
DataSet* ds = get_fundamentals("trading_derivative_indicator", "SHSE.600000,SZSE.000001", "2016-01-01", "2017-01-01",
"TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI")
例3: 取指定股票 SHSE.600000, SHSE.600001, SHSE.600002
离 2017-01-01
最近一个交易日, 且满足条件 PCTTM > 0 and PCTTM < 10
股票交易财务衍生表 的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI
字段的值
DataSet* ds = get_fundamentals("trading_derivative_indicator", "SHSE.600000,SHSE.600001,SHSE.600002", "2017-01-01", "2017-01-01", "PCTTM > 0 and PCTTM < 10",
"TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI")
例4: 取指定股票 SHSE.600000,SZSE.000001
离 2016-01-20
最近一个财报, 同时满足条件 CURFDS > 0 and TOTLIABSHAREQUI > 0
的 资产负债 的数据
DataSet* ds = get_fundamentals("balance_sheet", "2016-01-20", "2016-01-20",
"CURFDS, SETTRESEDEPO, PLAC, TRADFINASSET, ',
symbols="SHSE.600000, SZSE.000001",
"CURFDS > 0 and TOTLIABSHAREQUI > 0"
)
注意:
1.当 start_date
== end_date
时, 取所举每个股票离 end_date
最近业务日期(交易日期或报告日期) 一条数据,当 start_date
< end_date
时, 取指定时间段的数据,当 start_date
> end_date
时, 返回空
2.start_date和end_date中月,日均可以只输入个位数,例:"2010-7-8"
或"2017-7-30"
3.在该函数中,table参数只支持输入一个表名,若表名输入错误或以"table1,table2"
方式输入多个表名,函数返回空结果集
4.若表名输入正确,但查询字段中出现非指定字符串,则返回错误
get_fundamentals_n - 查询基本面数据最新n条
取指定股票的最近 end_date
的 n
条记录
函数原型:
DataSet* get_fundamentals_n(const char *table, const char *symbols, const char *end_date, const char *fields, int n = 1, const char *filter = NULL, const char * order_by = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
table | const char * | 表名. 具体表名及fields字段名及filter可过滤的字段参考 财务数据文档 |
symbols | const char * | 标的代码, 多个代码可用 , (英文逗号)分割 |
end_date | const char * | 结束时间, (%Y-%m-%d 格式) |
fields | const char * | 查询字段 (必填) |
filter | const char * | 查询过滤,,使用方法参考get_fundamentals 的例3、例4 |
n | int | 每个股票取最近的数量(正整数) |
返回值 | DataSet* | 一个结果集 |
示例:
例: 取股票代码 SHSE.600000, SZSE.000001
, 离 2017-01-01
最近3条(每个股票都有3条) 股票交易财务衍生表 的 TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI
字段的值
DataSet* ds = get_fundamentals_n("trading_derivative_indicator", "SHSE.600000, SZSE.000001", "2017-01-01", 3,
"TCLOSE,NEGOTIABLEMV,TOTMKTCAP,TURNRATE,PELFY,PETTM,PEMRQ,PELFYNPAAEI,PETTMNPAAEI")
注意:
1.end_date中月,日均可以只输入个位数,例:'2010-7-8'
或'2017-7-30'
2.在该函数中,table参数只支持输入一个表名,若表名输入错误或以'table1,table2'
方式输入多个表名,函数返回空结果集
3.若表名输入正确,但查询字段中出现非指定字符串,则返回错误
get_instruments - 查询最新交易标的信息
查询最新交易标的信息,有基本数据及最新日频数据
函数原型:
DataSet* get_instruments(const char *exchanges = NULL, const char *sec_types = NULL, const char* fields = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
exchanges | const char * | 交易所代码, 多个交易所代码可用 , (英文逗号)分割, NULL表示所有 |
sec_types | const char * | 指定类别, 品种类型,stock: 股票, fund: 基金, index: 指数, future: 期货, bond: 债券, bond_convertible: 可转债, option: 期权, confuture: 虚拟合约, 多个品种可用 , (英文逗号)分割, NULL表示所有品种 |
fields | const char * | 查询字段 默认NULL 表示所有 |
返回值 | DataSet* | 一个结果集 |
字段:
字段名 | 类型 | 说明 |
---|---|---|
symbol | string | 标的代码 |
sec_level | int | 1-正常,2-ST 股票,3-*ST 股票,4-股份转让,5-处于退市整理期的证券,6-上市开放基金LOF,7-交易型开放式指数基金(ETF),8-非交易型开放式基金(暂不交易,仅揭示基金净值及开放申购赎回业务),9-仅提供净值揭示服务的开放式基金;,10-仅在协议交易平台挂牌交易的证券,11-仅在固定收益平台挂牌交易的证券,12-风险警示产品,13-退市整理产品,99-其它 |
is_suspended | int | 是否停牌. 1: 是, 0: 否 |
multiplier | double | 合约乘数 |
margin_ratio | double | 保证金比率 |
settle_price | double | 结算价 |
position | int | 持仓量 |
pre_close | double | 昨收价 |
pre_settle | double | 昨结算价 |
upper_limit | double | 涨停价 |
lower_limit | double | 跌停价 |
adj_factor | double | 复权因子.基金跟股票才有 |
created_at | longlong(utc) | 交易日期 |
示例:
//取深交所所有代码
DataSet* ds = get_instruments("SZSE");
//取深交所所有股票和基金
DataSet* ds = get_instruments("SZSE", "stock,fund");
注意:
1.停牌时且股票发生除权除息, 涨停价和跌停价可能有误差
2.预上市股票以1900-01-01为虚拟发布日期,未退市股票以2038-01-01为虚拟退市日期。
get_history_instruments - 查询交易标的历史数据
返回指定symbols的标的日频历史数据
函数原型:
DataSet* get_history_instruments(const char *symbols, const char *start_date, const char *end_date, const char *fields = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码, 多个代码可用 , (英文逗号)分割 |
start_date | const char * | 开始时间. (%Y-%m-%d 格式) |
end_date | const char * | 结束时间. (%Y-%m-%d 格式) |
fields | const char * | 查询字段. NULL表示所有字段 |
返回值 | DataSet* | 一个结果集 |
字段:
字段名 | 类型 | 说明 |
---|---|---|
symbol | string | 标的代码 |
sec_level | int | 1-正常,2-ST 股票,3-*ST 股票,4-股份转让,5-处于退市整理期的证券,6-上市开放基金LOF,7-交易型开放式指数基金(ETF),8-非交易型开放式基金(暂不交易,仅揭示基金净值及开放申购赎回业务),9-仅提供净值揭示服务的开放式基金;,10-仅在协议交易平台挂牌交易的证券,11-仅在固定收益平台挂牌交易的证券,12-风险警示产品,13-退市整理产品,99-其它 |
is_suspended | int | 是否停牌. 1: 是, 0: 否 |
multiplier | double | 合约乘数 |
margin_ratio | double | 保证金比率 |
settle_price | double | 结算价 |
position | int | 持仓量 |
pre_close | double | 昨收价 |
pre_settle | double | 昨结算价 |
upper_limit | double | 涨停价 |
lower_limit | double | 跌停价 |
adj_factor | double | 复权因子.基金跟股票才有 |
created_at | longlong(utc) | 交易日期 |
示例:
get_history_instruments(symbols="SZSE.000001,SZSE.000002", start_date="2017-09-19", end_date="2017-09-19");
注意:
1.停牌时且股票发生除权除息, 涨停价和跌停价可能有误差
2.为保护服务器, 单次查询最多返回 3300 条记录
3.start_date和end_date中月,日均可以只输入个位数,例:'2010-7-8'
或'2017-7-30'
get_instrumentinfos - 查询交易标的基本信息
获取到交易标的基本信息, 与时间无关.
函数原型:
DataSet* get_instrumentinfos(const char *symbols = NULL, const char *exchanges = NULL, const char * sec_types = NULL, const char *names = NULL, const char *fields = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbols | const char * | 标的代码, 多个代码可用 , (英文逗号)分割, NULL 表示所有 |
exchanges | const char * | 交易市场代码, 多个交易所代码可用 , (英文逗号)分割, NULL 表示所有市场 |
sec_types | const char * | 指定类别, 品种类型, stock: 股票, fund: 基金, index: 指数, future: 期货, option: 期权, confuture: 虚拟合约, 多个品种可用 , (英文逗号)分割, NULL表示所有品种 |
names | const char * | 查询代码, NULL 表示所有 |
fields | const char * | 查询字段 NULL 表示所有 |
返回值 | DataSet* | 一个结果集 |
字段:
字段名 | 类型 | 说明 |
---|---|---|
symbol | string | 标的代码 |
sec_type | int | 1: 股票, 2: 基金, 3: 指数, 4: 期货, 5: 期权, 10: 虚拟合约 |
exchange | string | 见交易所代码 |
sec_id | string | 代码 |
sec_name | string | 名称 |
price_tick | double | 最小变动单位 |
listed_date | longlong(utc) | 上市日期 |
delisted_date | longlong(utc) | 退市日期 |
示例:
DataSet* ds = get_instrumentinfos("SHSE.000001,SHSE.000002");
注意:
1.对于检索所需标的信息的4种手段symbols,exchanges,sec_types,names
,若输入参数之间出现任何矛盾(换句话说,所有的参数限制出满足要求的交集为空),则返回空结果集
例如get_instrumentinfos("SZSE","4")
返回的是空结果集
get_constituents - 查询指数成份股
函数原型:
DataSet* get_constituents(const char *index, const char *trade_date = NULL);
参数:
参数名 | 类型 | 说明 |
---|---|---|
index | const char * | 表示指数的symbol,比如上证指数SHSE.000001, 不支持多个 symbol |
trade_date | const char * | 交易日 (%Y-%m-%d 格式) NULL 表示最新日期 |
返回值 | DataSet* | 一个结果集 |
字段:
字段名 | 类型 | 说明 |
---|---|---|
symbol | string | 标的代码 |
weight | double | 权重 |
示例:
DataSet* ds = get_constituents("SHSE.000001", "2017-07-10");
注意:
1.trade_date 中月,日均可以只输入个位数,例:"2010-7-8"
或"2017-7-30"
,但若对应位置为零,则0
不可被省略
get_industry - 查询行业股票列表
函数原型:
DataArray<Symbol>* get_industry(const char *code);
参数:
参数名 | 类型 | 说明 |
---|---|---|
code | const char * | 行业代码 |
返回值 | DataArray |
一个symbol数组 |
示例:
#返回所有以J6开头的行业代码对应的成分股(包括:J66,J67,J68,J69的成分股)
DataArray<Symbol>* da = get_industry("j6");
注意:
1.在该函数中,code参数只支持输入一个行业代码
get_trading_dates - 查询交易日历
函数原型:
DataArray<TradingDate>* get_trading_dates(const char *exchange, const char *start_date, const char *end_date);
参数:
参数名 | 类型 | 说明 |
---|---|---|
exchange | const char * | 交易市场代码 |
start_date | const char * | 开始时间 (%Y-%m-%d 格式) |
end_date | const char * | 结束时间 (%Y-%m-%d 格式) |
返回值 | DataArray |
一个交易日数组 |
示例:
DataArray<TradingDate>* da = get_trading_dates("SZSE", "2017-01-01", "2017-01-30");
注意:
1.exchange
参数仅支持输入单个交易所代码
2.start_date
和end_date
中月,日均可以只输入个位数,
例:'2010-7-8'
或'2017-7-30'
get_previous_trading_date - 返回指定日期的上一个交易日
函数原型:
int get_previous_trading_date(const char *exchange, const char *date, char *output_date);
参数:
参数名 | 类型 | 说明 |
---|---|---|
exchange | const char * | 交易市场代码 |
date | const char * | 时间 (%Y-%m-%d 格式) |
output_date | char * | 出参,返回值,上一个交易日,字符串格式, 由用户分配buf, 大于32字节即可 |
返回值 | int | 0表示成功,非0表示失败 |
示例:
char trading_date[32] = {0};
get_previous_trading_date("SZSE", "2017-05-01", trading_date);
注意:
1.exchange
参数仅支持输入单个交易所代码
2.date
中月,日均可以只输入个位数,
例:"2010-7-8"
或"2017-7-30"
get_next_trading_date - 返回指定日期的下一个交易日
函数原型:
int get_next_trading_date(const char *exchange, const char *date, char *output_date);
参数:
参数名 | 类型 | 说明 |
---|---|---|
exchange | const char * | 交易市场代码 |
date | const char * | 时间 (%Y-%m-%d 格式) |
output_date | char * | 出参,返回值,下一个交易日,字符串格式, 由用户分配buf, 大于32字节即可 |
返回值 | int | 0表示成功,非0表示失败 |
示例:
char trading_date[32] = {0};
get_next_trading_date(exchange="SZSE", date="2017-05-01", trading_date);
注意:
1.exchange
参数仅支持输入单个交易所代码
2.date
中月,日均可以只输入个位数,
例:"2010-7-8"
或"2017-7-30"
get_dividend - 查询分红送配
函数原型:
DataSet* get_dividend(const char *symbol, const char *start_date, const char *end_date);
参数:
参数名 | 类型 | 说明 |
---|---|---|
symbol | const char * | 标的代码, (必填) |
start_date | const char * | 开始时间 (%Y-%m-%d 格式) |
end_date | const char * | 结束时间 (%Y-%m-%d 格式) |
返回值 | DataSet* | 一个结果集 |
字段:
字段名 | 类型 | 说明 |
---|---|---|
symbol | string | 标的代码 |
cash_div | double | 每股派现 |
allotment_ratio | double | 每股配股比例 |
allotment_price | double | 配股价 |
share_div_ratio | double | 每股送股比例 |
share_trans_ratio | double | 每股转增比例 |
示例:
DataSet* ds = get_dividend("SHSE.600000", "2000-01-01", "2017-12-31");
注意:
1.在该函数中,symbol参数只支持输入一个标的代码
2.start_date
和end_date
中月,日均可以只输入个位数,
例:'2010-7-8'
或'2017-7-30'
get_continuous_contracts - 获取连续合约
函数原型:
DataSet* get_continuous_contracts(const char *csymbol, const char *start_date, const char *end_date);
参数:
参数名 | 类型 | 说明 |
---|---|---|
csymbol | const char * | 虚拟合约代码, 比如获取主力合约,输入SHFE.AG;获取连续合约,输入SHFE.AG01 |
start_date | const char * | 开始时间 (%Y-%m-%d 格式) |
end_date | const char * | 结束时间 (%Y-%m-%d 格式) |
返回值 | DataSet* | 一个结果集 |
字段:
字段名 | 类型 | 说明 |
---|---|---|
symbol | string | 真实合约 |
created_at | longlong(utc) | 交易日 |
示例:
DataSet* get_continuous_contracts"SHFE.AG", "2017-07-01", "2017-08-01");
注意:
1.在该函数中,csymbol参数只支持输入一个标的代码
2.start_date
和end_date
中月,日均可以只输入个位数,
例:'2017-7-1'
或'2017-8-1'