期权
大约 6 分钟
get_option_expirations 获取期权到期日
value get_option_expiration(const value &symbols);
说明
获取期权到期日
请求频率
频率限制请参考:接口请求限制
参数
参量名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
symbols | value | Yes | 证券代码列表 |
返回
各 column 的含义如下:
参量名 | 类型 | 描述 |
---|---|---|
symbol | str | 证券代码 |
dates | str | 到日期 YYYY-MM-DD 格式的字符串 |
timestamps | int | 到期日,精确到毫秒的时间戳 |
periodTags | str | 期权周期标签,m为月期权,w为周期权 |
示例
#include "tigerapi/quote_client.h"
using namespace std;
using namespace web;
using namespace web::json;
using namespace TIGER_API;
int main(int argc, char *args[]) {
/************************** set config **********************/
ClientConfig config = ClientConfig();
config.private_key = "xxxxxx your private key string xxxxxxxx";
config.tiger_id = "your tiger id";
config.account = "your account";
/**
* 使用封装后的行情接口 QuoteClient
*/
std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
value symbols = value::array();
symbols[0] = value::string("TSLA");
cout << "symbols " << symbols << endl;
value result = quote_client->get_option_expirations(symbols);
cout << result << endl;
return 0;
}
返回示例
[{"count":21,"dates":["2023-01-13","2023-01-20","2023-01-27","2023-02-03","2023-02-10","2023-02-17","2023-02-24","2023-03-03","2023-03-17","2023-04-21","2023-05-19","2023-06-16","2023-07-21","2023-09-15","2023-12-15","2024-01-19","2024-03-15","2024-06-21","2024-09-20","2025-01-17","2025-06-20"],"symbol":"TSLA","timestamps":[1673586000000,1674190800000,1674795600000,1675400400000,1676005200000,1676610000000,1677214800000,1677819600000,1679025600000,1682049600000,1684468800000,1686888000000,1689912000000,1694750400000,1702616400000,1705640400000,1710475200000,1718942400000,1726804800000,1737090000000,1750392000000]}]
get_option_chain 获取期权链
value get_option_chain(const string symbol, long expiry, value option_filter= value::null());
value get_option_chain(const string symbol, string expiry, value option_filter= value::null());
说明
获取期权链
请求频率
频率限制请参考:接口请求限制
参数
参量名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
symbol | utility::string_t | Yes | 期权对应的正股代码 |
expiry | utility::string_t | Yes | 期权到期日,毫秒单位的数字时间戳或日期字符串,如 1705640400000 或 '2024-01-19' |
option_filter | value | No | 过滤参数,可选 |
过滤参数:
各筛选指标, 除去 in_the_money 属性外, 其他指标使用时均对应 _min 后缀(表示范围最小值) 或 _max 后缀(表示范围最大值) 的字段名, 如 delta_min, theta_max, 参见代码示例.
OptionFilter可筛选指标如下:
参数 | 类型 | 是否必填 | 描述 |
---|---|---|---|
implied_volatility | float | No | 隐含波动率, 反映市场预期的未来股价波动情况, 隐含波动率越高, 说明预期股价波动越剧烈. |
in_the_money | bool | No | 是否价内 |
open_interest | int | No | 未平仓量, 每个交易日完结时市场参与者手上尚未平仓的合约数. 反映市场的深度和流动性. |
delta | float | No | delta, 反映正股价格变化对期权价格变化对影响. 股价每变化1元, 期权价格大约变化 delta. 取值 -1.0 ~ 1.0 |
gamma | float | No | gamma, 反映正股价格变化对于delta的影响. 股价每变化1元, delta变化gamma. |
theta | float | No | theta, 反映时间变化对期权价格变化的影响. 时间每减少一天, 期权价格大约变化 theta. |
vega | float | No | vega, 反映波动率对期权价格变化的影响. 波动率每变化1%, 期权价格大约变化 vega. |
rho | float | No | rho, 反映无风险利率对期权价格变化的影响. 无风险利率每变化1%, 期权价格大约变化 rho. |
返回
字段名 | 类型 | 描述 |
---|---|---|
identifier | utility::string_t | 期权代码 |
symbol | utility::string_t | 期权对应的正股代码 |
expiry | int | 期权到期日,毫秒级别的时间戳 |
strike | float | 行权价 |
put_call | utility::string_t | 期权的方向 |
multiplier | float | 乘数 |
ask_price | float | 卖价 |
ask_size | int | 卖量 |
bid_price | float | 买价 |
bid_size | int | 买量 |
pre_close | float | 前收价 |
latest_price | float | 最新价 |
volume | int | 成交量 |
open_interest | int | 未平仓数量 |
示例
#include "tigerapi/quote_client.h"
using namespace std;
using namespace web;
using namespace web::json;
using namespace TIGER_API;
int main(int argc, char *args[]) {
/************************** set config **********************/
ClientConfig config = ClientConfig();
config.private_key = "xxxxxx your private key string xxxxxxxx";
config.tiger_id = "your tiger id";
config.account = "your account";
/**
* 使用封装后的行情接口 QuoteClient
*/
std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
value result = quote_client->get_option_chain("TSLA", "2023-01-20");
cout << result << endl;
return 0;
}
返回示例
get_option_brief 获取期权最新行情
QuoteClient.get_option_brief(identifiers)
说明
获取期权最新行情,包括盘口数据,最新成交数据等
请求频率
频率限制请参考:接口请求限制
参数
参量名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
identifiers | value | Yes | 期权代码列表,单次上线30只,如 ['AAPL 220128C000175000']. 格式说明 |
返回
结构如下:
参量名 | 类型 | 描述 |
---|---|---|
identifier | str | 期权代码 |
symbol | str | 期权对应的正股代码 |
expiry | int | 到期日,毫秒级时间戳 |
strike | float | 行权价 |
put_call | str | 期权方向 |
multiplier | float | 乘数 |
ask_price | float | 卖价 |
ask_size | int | 卖量 |
bid_price | float | 买价 |
bid_size | int | 买量 |
pre_close | float | 前收价 |
latest_price | float | 最新价 |
latest_time | int | 最新交易时间 |
volume | int | 成交量 |
open_interest | int | 未平仓数量 |
rates_bonds | float | 一年期美国国债利率,每天更新一次,如:0.0078 表示实际利率为:0.78% |
open | float | 开盘价 |
high | float | 最高价 |
low | float | 最低价 |
示例
#include "tigerapi/quote_client.h"
using namespace std;
using namespace web;
using namespace web::json;
using namespace TIGER_API;
int main(int argc, char *args[]) {
/************************** set config **********************/
ClientConfig config = ClientConfig();
config.private_key = "xxxxxx your private key string xxxxxxxx";
config.tiger_id = "your tiger id";
config.account = "your account";
/**
* 使用封装后的行情接口 QuoteClient
*/
std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
value result = quote_client->get_option_brief("AAPL 220923C000155000");
cout << result << endl;
return 0;
}
返回示例
get_option_kline 获取期权日K数据
value get_option_kline(value identifiers, long begin_time=-1, long end_time=-1);
说明
获取期权日线数据
请求频率
频率限制请参考:接口请求限制
参数
参量名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
identifiers | str | Yes | 期权代码列表, 单次上线30只, 如 ['AAPL 220128C000175000'] |
begin_time | str或int | Yes | 开始时间,毫秒级时间戳或日期字符串,如 1643346000000 或 '2019-01-01' |
end_time | str或int | Yes | 结束时间,毫秒级时间戳或日期字符串,如 1643346000000 或 '2019-01-01' |
返回
结构如下:
参量名 | 类型 | 描述 |
---|---|---|
identifier | str | 期权代码 |
symbol | str | 期权对应的正股代码 |
expiry | int | 到期日,毫秒级时间戳 |
put_call | str | 期权方向 |
strike | float | 行权价 |
time | int | Bar对应的时间,毫秒级时间戳 |
open | float | 开盘价 |
high | float | 最高价 |
low | float | 最低价 |
close | float | 收盘价 |
volume | int | 成交量 |
open_interest | int | 未平仓数量 |
示例
#include "tigerapi/quote_client.h"
using namespace std;
using namespace web;
using namespace web::json;
using namespace TIGER_API;
int main(int argc, char *args[]) {
/************************** set config **********************/
ClientConfig config = ClientConfig();
config.private_key = "xxxxxx your private key string xxxxxxxx";
config.tiger_id = "your tiger id";
config.account = "your account";
std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
value identifiers = value::array();
identifiers[0] = value::string("AAPL 220923C000155000");
value result = quote_client->get_option_kline(identifiers);
cout << result << endl;
return 0;
}
返回示例
get_option_trade_tick 获取期权的逐笔成交数据
value get_option_trade_tick(value identifiers);
说明
获取期权的逐笔成交数据
请求频率
频率限制请参考:接口请求限制
参数
参量名 | 类型 | 是否必填 | 描述 |
---|---|---|---|
identifiers | value | Yes | 期权代码列表,如 ['AAPL 220128C000175000'] |
返回
结构如下:
参量名 | 类型 | 描述 |
---|---|---|
symbol | str | 期权对应的正股代码 |
expiry | str | 期权到期时间, YYYY-MM-DD 格式的字符串 |
put_call | str | 期权方向 |
strike | float | 行权价 |
time | int | 成交时间 |
price | float | 成交价格 |
volume | int | 成交量 |
示例
#include "tigerapi/quote_client.h"
using namespace std;
using namespace web;
using namespace web::json;
using namespace TIGER_API;
int main(int argc, char *args[]) {
/************************** set config **********************/
ClientConfig config = ClientConfig();
config.private_key = "xxxxxx your private key string xxxxxxxx";
config.tiger_id = "your tiger id";
config.account = "your account";
/**
* 使用封装后的行情接口 QuoteClient
*/
std::shared_ptr<QuoteClient> quote_client = std::make_shared<QuoteClient>(config);
value identifiers = value::array();
identifiers[0] = value::string("AAPL 230923C000155000");
value result = quote_client->get_option_trade_tick(identifiers);
cout << result << endl;
return 0;
}