期权

获取期权到期日

对应的请求类:OptionExpirationQueryRequest

说明

获取指定股票的期权到期日信息,批量请求单次最多30条。

参数

参数是否必填类型描述
symbolsYesarray股票代码列表,上限为:30
marketYesstringUS / HK港股

返回 com.tigerbrokers.stock.openapi.client.https.response.option.OptionExpirationResponsesource

结构如下:

public class OptionExpirationResponse extends TigerResponse {
  @JSONField(name = "data")
  private List<OptionExpirationItem> optionExpirationItems;
}

返回数据可通过OptionExpirationResponse.getOptionExpirationItems()方法访问,返回OptionExpirationItem对象,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionExpirationItem 属性如下:

名称类型说明
symbolstring股票代码
countint过期日期个数
datesarray过期时间,日期格式,如:2024-06-28
timestampsarray过期日期,时间戳格式,如:1544763600000(美国NewYork时间对应的时间戳)
periodTagsarray期权周期标签,m为月期权,w为周期权
optionSymbolsarray对应期权四要素的symbol

具体字段可通过对象的get方法,如getSymbol()进行访问,或通过对象的toString()方法转换为字符串

示例

List<String> symbols = new ArrayList<>();
symbols.add("VIX");
OptionExpirationResponse response = client.execute(
        new OptionExpirationQueryRequest(symbols, Market.US));
// HK market opition. market parameter must be Market.HK
// symbols.add("PAI.HK");
// OptionExpirationResponse response = client.execute(
//        new OptionExpirationQueryRequest(symbols, Market.HK));
if (response.isSuccess()) {
  System.out.println(JSONObject.toJSONString(response));
} else {
  System.out.println("response error:" + response.getMessage());
}

返回示例

{
    "code": 0,
    "data": [
        {
            "count": 12,
            "dates": [
                "2024-12-24",
                "2024-12-31",
                "2025-01-08",
                "2025-01-15",
                "2025-01-22",
                "2025-02-19",
                "2025-03-18",
                "2025-04-16",
                "2025-05-21",
                "2025-06-18",
                "2025-07-16",
                "2025-08-20"
            ],
            "optionSymbols": [
                "VIXW",
                "VIXW",
                "VIXW",
                "VIXW",
                "VIX",
                "VIX",
                "VIX",
                "VIX",
                "VIX",
                "VIX",
                "VIX",
                "VIX"
            ],
            "periodTags": [
                "w",
                "q",
                "w",
                "w",
                "m",
                "m",
                "m",
                "m",
                "m",
                "m",
                "m",
                "m"
            ],
            "symbol": "VIX",
            "timestamps": [
                1735016400000,
                1735621200000,
                1736312400000,
                1736917200000,
                1737522000000,
                1739941200000,
                1742270400000,
                1744776000000,
                1747800000000,
                1750219200000,
                1752638400000,
                1755662400000
            ]
        }
    ],
    "message": "success",
    "sign": "jBxaUFSd6e1qIsEeb6l7/Wb8R7kMcNvvglzC6PsJpd7VMP12HKyKMJH8+4g1ePLyT/TzVhyJpCEpXcUAkGrg7hVMMhLoD397vW2Xf0VKedE5mKMy4I+yFK2PneZXr4xKyfCc/+Yb3dc//1gOEEvk9EQHjDzXp6bmy/dFD4020h0=",
    "success": true,
    "timestamp": 1735048291531
}

获取期权链

对应的请求类:OptionChainQueryV3Request

说明

获取期权链。注意:返回的希腊值并非实时数据,而是上一交易日收盘时的最后更新值,盘中可使用期权指标计算

参数

参数类型是否必填描述
symbolstringYes股票代码,symbol和expiry组合上限为:30
expiryStringYes期权过期日,示例:'2022-01-01'
marketstringYesUS/HK港股

筛选参数:

参数类型是否必填描述
implied_volatilitydoubleNo隐含波动率
in_the_moneybooleanNo是否价内
open_interestintNo未平仓量
deltadoubleNodelta
gammadoubleNogamma
thetadoubleNotheta
vegadoubleNovega
rhodoubleNorho

返回 com.tigerbrokers.stock.openapi.client.https.response.option.OptionChainResponsesource

结构如下:

public class OptionChainResponse extends TigerResponse {

  @JSONField(name = "data")
  private List<OptionChainItem> optionChainItems;
}

返回数据可通过OptionChainResponse.getOptionChainItems()方法访问,返回OptionChainItem对象,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionChainItem 属性如下:

名称类型说明
symbolstring标的股票代码
expirylong期权过期日
itemsList<OptionRealTimeQuoteGroup>列表,包含 OptionRealTimeQuoteGroup 对象,保存期权链数据,说明见下文

OptionRealTimeQuoteGroup对象结构:

名称类型说明
putOptionRealTimeQuote看跌期权
callOptionRealTimeQuote看涨期权

OptionRealTimeQuote对象结构:

名称类型说明
identifierstring期权标识,如:AAPL 210115C00095000
strikedouble行权价
rightstring期权方向,PUT/CALL
askPricedouble卖盘价格
askSizeint卖盘数量
bidPricedouble买盘价格
bidSizeint买盘数量
lastTimestamplong最新成交时间,如: 1543343800698
latestPricedouble最新价
multiplierdouble乘数,US 期权默认 100
openInterestint未平仓量
preClosedouble前一交易日的收盘价
volumelong成交量
impliedVoldouble隐含波动率
deltadoubledelta
gammadoublegamma
thetadoubletheta
vegadoublevega
rhodoublerho

具体字段可通过对象的get方法,如getSymbol()进行访问,或通过 json 方法转换为字符串。

示例

OptionChainModel basicModel = new OptionChainModel("AAPL", "2024-07-26",  TimeZoneId.NewYork);
OptionChainFilterModel filterModel = new OptionChainFilterModel()
  .inTheMoney(true)
  .impliedVolatility(0.1537, 0.8282)
  .openInterest(10, 50000)
  .greeks(new OptionChainFilterModel.Greeks()
    .delta(-0.8, 0.6)
    .gamma(0.024, 0.30)
    .vega(0.019, 0.343)
    .theta(-0.1, 0.1)
    .rho(-0.096, 0.101)
);
OptionChainQueryV3Request request = OptionChainQueryV3Request.of(basicModel, filterModel, Market.US);

OptionChainResponse response = client.execute(request);
if (response.isSuccess()) {
  System.out.println(JSONObject.toJSONString(response));
} else {
  System.out.println("response error:" + response.getMessage());
}

返回示例

{
  "code": 0,
  "data": [
    {
      "expiry": 1721966400000,
      "items": [
        {
          "put": {
            "askPrice": 4.65,
            "askSize": 2,
            "bidPrice": 4.5,
            "bidSize": 66,
            "delta": -0.503388,
            "gamma": 0.037062,
            "identifier": "AAPL  240726P00210000",
            "impliedVol": 0.183129,
            "lastTimestamp": 1719345582586,
            "latestPrice": 4.6,
            "multiplier": 100,
            "openInterest": 1858,
            "preClose": 5.26,
            "rho": -0.072819,
            "right": "put",
            "strike": "210.0",
            "theta": -0.060326,
            "vega": 0.24135,
            "volume": 404
          }
        },
        {
          "put": {
            "askPrice": 7.75,
            "askSize": 59,
            "bidPrice": 7.4,
            "bidSize": 260,
            "delta": -0.686314,
            "gamma": 0.03523,
            "identifier": "AAPL  240726P00215000",
            "impliedVol": 0.18012,
            "lastTimestamp": 1719345365800,
            "latestPrice": 7.8,
            "multiplier": 100,
            "openInterest": 1222,
            "preClose": 8.5,
            "rho": -0.084955,
            "right": "put",
            "strike": "215.0",
            "theta": -0.048649,
            "vega": 0.21153,
            "volume": 134
          }
        }
      ],
      "symbol": "AAPL"
    }
  ],
  "message": "success",
  "sign": "dA0ngWPHWC0GOme2h0/FPma5UAcLSKiR5vWw9ldZ1wz8sHiRG7QMroO78JXqK5A+J3m6XWT9esAXagwbs8D6mI/3vhFU5QCJQbDd58lQRJRWeAK/G+7eQOwAQIqvgLttBtMBbRKlHMchhHATgUi9U7v/eu4NG5tDHr04InQy0cc=",
  "success": true,
  "timestamp": 1719407360986
}

获取期权实时行情

对应的请求类:OptionBriefQueryV2Request

说明

获取期权实时行情接口,批量请求单次最多30 条。

参数

参数类型是否必填描述
marketMarketYes市场,支持 US、HK
option_basicList<OptionCommonModel>Yes期权四要素列表,最大 30

OptionCommonModel参数结构如下

参数类型是否必填描述
symbolstringYes股票代码,港股请参考“获取港股期权名称”接口返回的 symbol
rightstringYes看多或看空(CALL/PUT)
expirylongYes到期时间
strikestringYes行权价

返回 com.tigerbrokers.stock.openapi.client.https.request.option.OptionBriefResponsesource

结构如下:

public class OptionBriefResponse extends TigerResponse {

  @JSONField(name = "data")
  private List<OptionBriefItem> optionBriefItems;
}

返回数据可通过TigerResponse.getOptionBriefItems()方法访问,返回OptionBriefItem对象,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionBriefItem 属性如下:

字段类型说明
symbolstring股票代码
strikestring行权价
bidPricedouble买盘价格
bidSizeint买盘数量
askPricedouble卖盘价格
askSizeint卖盘数量
latestPricedouble最新价格
timestamplong最新成交时间
volumeint成交量
highdouble最高价
lowdouble最低价
opendouble开盘价
preClosedouble前一交易日收盘价
openInterestint未平仓量
changedouble涨跌额
multiplierint乘数,us期权默认100
ratesBondsdouble一年期美国国债利率,每天更新一次,如:0.0078 表示实际利率为:0.78%
rightstring方向 (PUT/CALL)
volatilitystring历史波动率
expirylong到期时间(毫秒,当天 0 点)

具体字段可通过对象的get方法,如getSymbol()进行访问, 或通过对象的toString()方法转换为字符串

示例

OptionCommonModel model = new OptionCommonModel();
model.setSymbol("BRK.B");
model.setRight("CALL");
model.setStrike("400.0");
model.setExpiry("2024-06-28", TimeZoneId.NewYork);
List<OptionCommonModel> models = new ArrayList<>();
models.add(model);

OptionBriefQueryV2Request request = new OptionBriefQueryV2Request(models, Market.US);
OptionBriefResponse response = client.execute(request);
if (response. isSuccess()) {
   System.out.println(JSONObject.toJSONString(response));
} else {
   System.out.println("response error:" + response.getMessage());
}

返回示例

{
    "code": 0,
    "data": [
        {
            "askPrice": 10.65,
            "askSize": 29,
            "bidPrice": 7.7,
            "bidSize": 32,
            "change": 0,
            "expiry": 1719547200000,
            "high": 14.1,
            "identifier": "BRKB  240628C00400000",
            "latestPrice": 14.1,
            "low": 14.1,
            "multiplier": 100,
            "open": 14.1,
            "openInterest": 28,
            "preClose": 14.1,
            "ratesBonds": 0.051339,
            "right": "call",
            "strike": "400.0",
            "symbol": "BRK.B",
            "volatility": "0.00%",
            "volume": 0
        }
    ],
    "message": "success",
    "sign": "QIP1Jd9BraCJLMhGxKn3mpefuMA6USHdb9K6iibwBZFBnBNSrsmuMnkpzdA0aF+yj7urKFXm/m2Uwvd8kVJLJVi/ExKlHJV6EojVPw8OaZgEwNh7pe+7/thRBorPRYNZgSA0mBTCi9Ud6aSIhYgeLcTWLMci4++T+D8rWtIApxU=",
    "success": true,
    "timestamp": 1719416337924
}

获取期权深度行情

对应的请求类:OptionDepthQueryRequest

说明

获取期权深度行情数据,支持美国和香港市场期权,批量请求单次最多30条。

参数

参数类型是否必填描述
marketMarketYes市场,US/HK
option_basicList<OptionCommonModel>Yes期权四要素列表,最大 30

OptionCommonModel参数结构如下

参数类型是否必填描述
symbolstringYes股票代码
rightstringYes看多或看空(CALL/PUT)
expirylongYes到期时间(当天 0 点所对应的毫秒值)
strikestringYes行权价

返回 com.tigerbrokers.stock.openapi.client.https.response.option.OptionDepthResponsesource

结构如下:

public class OptionDepthResponse extends TigerResponse {

  @JSONField(name = "data")
  private List<OptionDepthItem> optionDepthItems;
}

返回数据为盘中17个交易所的实时报价。 如果报价为0表示该交易所没有报价

返回数据可通过OptionDepthResponse.getOptionDepthItems()方法访问,返回OptionDepthItem对象列表,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionDepthItem 属性如下:

名称类型说明
symbolstring标的股票代码
expirylong到期时间
strikestringstrike price
rightstringPUT 或 CALL
timestamplong数据时间戳
askList<OptionDepthOrderBook>卖盘挂单数据
bidList<OptionDepthOrderBook>买盘挂单数据

OptionDepthOrderBook对象结构如下:

名称类型说明
pricedouble委托价
codestring期权交易所 Code
timestamplong交易所时间
volumeint委托量

具体字段可通过对象的get方法,如getSymbol()进行访问, 或通过对象的toString()方法转换为字符串

示例

OptionCommonModel model = new OptionCommonModel();
model.setSymbol("AAPL");
model.setRight("PUT");
model.setStrike("210.0");
model.setExpiry("2024-06-28", TimeZoneId.NewYork);

OptionDepthQueryRequest request = OptionDepthQueryRequest.of(model).market(Market.US);
OptionDepthResponse response = client.execute(request);
if (response.isSuccess()) {
  System.out.println(JSONObject.toJSONString(response);
} else {
  System.out.println("response error:" + response.getMessage());
}

返回示例

{
	"code": 0,
	"data": [{
		"ask": [{
			"code": "CBOE",
			"price": 1.19,
			"volume": 10,
			"timestamp": 1718654399000
		},
		{
			"code": "BZX",
			"price": 1.19,
			"volume": 10,
			"timestamp": 1718654399000
		},
		{
			"code": "AMEX",
			"price": 1.19,
			"volume": 2,
			"timestamp": 1718654400000
		},
		{
			"code": "NSDQ",
			"price": 1.19,
			"volume": 2,
			"timestamp": 1718654399000
		},
		{
			"code": "BX",
			"price": 1.19,
			"volume": 2,
			"timestamp": 1718654399000
		},
		{
			"code": "PHLX",
			"price": 1.2,
			"volume": 54,
			"timestamp": 1718654399000
		},
		{
			"code": "BOX",
			"price": 1.2,
			"volume": 31,
			"timestamp": 1718654399000
		},
		{
			"code": "GEM",
			"price": 1.2,
			"volume": 24,
			"timestamp": 1718654399000
		},
		{
			"code": "MCRY",
			"price": 1.2,
			"volume": 24,
			"timestamp": 1718654399000
		},
		{
			"code": "MIAX",
			"price": 1.2,
			"volume": 24,
			"timestamp": 1718654399000
		},
		{
			"code": "EDGX",
			"price": 1.2,
			"volume": 23,
			"timestamp": 1718654399000
		},
		{
			"code": "EMLD",
			"price": 1.2,
			"volume": 18,
			"timestamp": 1718654399000
		},
		{
			"code": "ISE",
			"price": 1.2,
			"volume": 18,
			"timestamp": 1718654399000
		},
		{
			"code": "MPRL",
			"price": 1.2,
			"volume": 8,
			"timestamp": 1718654399000
		},
		{
			"code": "C2",
			"price": 1.2,
			"volume": 6,
			"timestamp": 1718654399000
		},
		{
			"code": "ARCA",
			"price": 1.2,
			"volume": 1,
			"timestamp": 1718654399000
		},
		{
			"code": "MEMX",
			"price": 0.0,
			"volume": 0,
			"timestamp": 1718654402000
		}],
		"bid": [{
			"code": "PHLX",
			"price": 1.12,
			"volume": 48,
			"timestamp": 1718654399000
		},
		{
			"code": "MIAX",
			"price": 1.12,
			"volume": 37,
			"timestamp": 1718654399000
		},
		{
			"code": "BX",
			"price": 1.12,
			"volume": 34,
			"timestamp": 1718654399000
		},
		{
			"code": "BOX",
			"price": 1.12,
			"volume": 32,
			"timestamp": 1718654399000
		},
		{
			"code": "CBOE",
			"price": 1.12,
			"volume": 29,
			"timestamp": 1718654399000
		},
		{
			"code": "MPRL",
			"price": 1.12,
			"volume": 22,
			"timestamp": 1718654399000
		},
		{
			"code": "GEM",
			"price": 1.12,
			"volume": 21,
			"timestamp": 1718654399000
		},
		{
			"code": "EDGX",
			"price": 1.12,
			"volume": 18,
			"timestamp": 1718654399000
		},
		{
			"code": "EMLD",
			"price": 1.12,
			"volume": 16,
			"timestamp": 1718654399000
		},
		{
			"code": "ISE",
			"price": 1.12,
			"volume": 15,
			"timestamp": 1718654399000
		},
		{
			"code": "C2",
			"price": 1.12,
			"volume": 10,
			"timestamp": 1718654399000
		},
		{
			"code": "BZX",
			"price": 1.12,
			"volume": 10,
			"timestamp": 1718654399000
		},
		{
			"code": "MCRY",
			"price": 1.12,
			"volume": 8,
			"timestamp": 1718654399000
		},
		{
			"code": "AMEX",
			"price": 1.12,
			"volume": 4,
			"timestamp": 1718654400000
		},
		{
			"code": "ARCA",
			"price": 1.12,
			"volume": 4,
			"timestamp": 1718654399000
		},
		{
			"code": "NSDQ",
			"price": 1.12,
			"volume": 4,
			"timestamp": 1718654399000
		},
		{
			"code": "MEMX",
			"price": 0.0,
			"volume": 0,
			"timestamp": 1718654402000
		}],
		"expiry": 1719547200000,
		"right": "PUT",
		"strike": "210.0",
		"timestamp": 1718654402000
	}],
	"message": "success",
	"sign": "tlxKbPzgJBN2Q2oUz8GBwpAJ/aUFlNrM3V/uh1fTWd2r3lHfD2TvTul/i6yBtvxR+G7gwfkpE7yoVVo74JacJPOA724zLdSkkHDuC5K2Q9WzIi/C1z0vdRZYtQSPpKsIrDSGc5g9D6m1IYz7HJNSeDa4a5WwyggDetNO86M1PeE=",
	"success": true,
	"timestamp": 1718712279180
}

获取期权逐笔成交

对应的请求类:OptionTradeTickQueryRequest

说明

获取期权逐笔成交数据,只支持美国市场期权,批量请求单次最多30条。

参数

参数类型是否必填描述
symbolstringYes股票代码
rightstringYes看多或看空(call/put)
expirylongYes到期时间(美国 NewYork 时间当天 0 点所对应的毫秒值)
strikestringYes行权价

返回 com.tigerbrokers.stock.openapi.client.https.response.option.OptionTradeTickResponsesource

结构如下:

public class OptionTradeTickResponse extends TigerResponse {

  @JSONField(name = "data")
  private List<OptionTradeTickItem> optionTradeTickItems;
}

开盘前半小时可以取到前一个交易日的全部,开盘后是新一天的数据。

返回数据可通过OptionTradeTickResponse.getOptionTradeTickItems()方法访问,返回OptionTradeTickItem对象列表,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionTradeTickItem 属性如下:

名称类型说明
symbolstring标的股票代码
expirylong到期时间
strikestringstrike price
rightstringPUT 或 CALL
itemsList<TradeTickPoint>TradeTickPoint 对象列表,每个 TradeTickPoint 对象对应单条逐笔成交数据

TradeTickPoint对象结构如下:

名称类型说明
pricedouble成交价格
timelong成交时间
volumelong成交量

具体字段可通过对象的get方法,如getSymbol()进行访问, 或通过对象的toString()方法转换为字符串

示例

List<OptionCommonModel> modelList = new ArrayList<>();
OptionCommonModel model1 = new OptionCommonModel();
model1.setSymbol("AAPL");
model1.setRight("PUT");
model1.setStrike("185.0");
model1.setExpiry("2024-03-08", TimeZoneId.NewYork);
modelList.add(model1);

OptionCommonModel model2 = new OptionCommonModel();
model2.setSymbol("AAPL");
model2.setRight("CALL");
model2.setStrike("185.0");
model2.setExpiry("2024-03-08", TimeZoneId.NewYork);
modelList.add(model2);

OptionTradeTickResponse response = client.execute(OptionTradeTickQueryRequest.of(modelList));

if (response.isSuccess()) {
  System.out.println(JSONObject.toJSONString(response);
} else {
  System.out.println("response error:" + response.getMessage());
}

返回示例

{
	"code": 0,
	"data": [{
		"expiry": 1709874000000,
		"items": [{
			"price": 2.63,
			"time": 1708698601086,
			"volume": 4
		}, {
			"price": 2.62,
			"time": 1708698602594,
			"volume": 6
		}, {
			"price": 2.73,
			"time": 1708698606317,
			"volume": 4
		}, {
			"price": 2.72,
			"time": 1708698607576,
			"volume": 38
		}, {
			"price": 2.72,
			"time": 1708698610488,
			"volume": 7
		}],
		"right": "put",
		"strike": "185.0",
		"symbol": "AAPL"
	}, {
		"expiry": 1709874000000,
		"items": [{
			"price": 2.98,
			"time": 1708698600473,
			"volume": 1
		}, {
			"price": 2.98,
			"time": 1708698601051,
			"volume": 5
		}, {
			"price": 2.98,
			"time": 1708698601051,
			"volume": 23
		}, {
			"price": 2.98,
			"time": 1708698601051,
			"volume": 5
		}, {
			"price": 2.99,
			"time": 1708698601051,
			"volume": 11
		}],
		"right": "call",
		"strike": "185.0",
		"symbol": "AAPL"
	}],
	"message": "success",
	"success": true,
	"timestamp": 1708918385248
}

获取期权K线

对应的请求类:OptionKlineQueryV2Request

说明

获取期权K线,批量请求单次最多30条。

参数

参数类型是否必填描述
marketMarketYes市场,支持 US、HK
option_queryList<OptionKlineModel>Yes期权K线查询条件列表,最大 30

OptionKlineModel参数结构如下

参数类型是否必填描述
symbolstringYes股票代码
rightstringYes看多或看空(CALL/PUT)
expirylongYes到期时间
strikestringYes行权价
begin_timelongYes开始时间
end_timelongYes结束时间
periodstringNoK线类型,取值范围(day:日K,1min:1分钟,5min:5分钟,30min:30分钟,60min:60分钟)
limitintNo分钟线返回最近记录数,默认 300,最大 1200。如果 limit 设置大于 1200,只会返回1200条数据。日K线暂不支持
sort_dirstringNo排序方向,包括:升序,降序,排序方向枚举:排序方向

返回 com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionKlineResponsesource

结构如下:

public class OptionKlineResponse extends TigerResponse {

  @JSONField(name = "data")
  private List<OptionKlineItem> klineItems;
}

返回数据可通过OptionKlineResponse.getKlineItems()方法访问,返回OptionKlineItem对象,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionKlineItem 属性如下:

名称类型说明
symbolstring股票代码
periodstring周期类型
rightstring看多或看空,取值CALL/PUT
strikestring行权价
expirylong到期时间,毫秒
itemsList<OptionKlinePoint>包含OptionKlinePoint的List,OptionKlinePoint为k线数组,包含的具体数据见下文

OptionKlinePoint对象属性如下:

名称类型说明
highdouble最高价
lowdouble最低价
opendouble开盘价
closedouble收盘价
timelongk线时间
volumeint成交量
openInterestint未平仓量(只有日K线有值)

具体字段可通过对象的get方法,如getSymbol()进行访问, 或通过对象的toString()方法转换为字符串

示例

OptionKlineModel model = new OptionKlineModel();
model.setSymbol("AAPL");
model.setRight("CALL");
model.setStrike("170.0");
model.setExpiry("2024-06-28", TimeZoneId.NewYork);
model.setBeginTime("2024-06-26", TimeZoneId.NewYork);
model.setEndTime("2024-06-26 12:59:59", TimeZoneId.NewYork);

model.setPeriod(OptionKType.min1.getValue());
model.setLimit(10);
model.setSortDir(SortDir.SortDir_Descend);
OptionKlineQueryV2Request request = OptionKlineQueryV2Request.of(model).market(Market.US);

OptionKlineResponse response = client.execute(request);
if (response.isSuccess()) {
  System.out.println(JSONObject.toJSONString(response));
} else {
  System.out.println("response error:" + response.getMessage());
}

返回示例

{
    "code": 0,
    "data": [
        {
            "expiry": 1719547200000,
            "items": [
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719419340000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719419280000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719419220000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719419160000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719419100000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719419040000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719418980000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719418920000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719418860000,
                    "volume": 0
                },
                {
                    "close": 43.13,
                    "high": 43.13,
                    "low": 43.13,
                    "open": 43.13,
                    "time": 1719418800000,
                    "volume": 0
                }
            ],
            "period": "1min",
            "right": "CALL",
            "strike": "170.0",
            "symbol": "AAPL"
        }
    ],
    "message": "success",
    "sign": "Hpb51+k2OzC8HmcstBV+bCLTbpflPKpR/AxXwCLd9nhhzuiZquPNGbNOhLYzzihJzRrmfCPWQeXM4ldMGLtbXUluLW79vcKBHdoPghENu+68Zod9dqzsH/InAXt444HOSsRXiubITZ+d9OWil+gvitjn9w7x4kn916KlT6R7hYg=",
    "success": true,
    "timestamp": 1719419362447
}

获取期权分时数据

对应的请求类:OptionTimelineRequest

说明

获取期权的分时数据。

参数

参数类型是否必填描述
optionTimelineModelsList<OptionTimelineModel>Yes期权列表
marketMarketNo市场,默认 HK,仅支持 HK

OptionTimelineModel参数结构如下:

参数类型是否必填描述
symbolstringYes股票代码
rightstringYes看多或看空(CALL/PUT)
expirylongYes到期时间
strikestringYes行权价

返回

字段类型说明
symbolstring股票代码
rightstring看多或看空(CALL/PUT)
expirylong到期时间
strikestring行权价
preClosedouble昨日收盘价
openAndCloseTimeListList<List<Long>> 交易时间段列表
minutesList<OptionTimelinePoint>分时数组,字段参考下面说明

分时数据OptionTimelinePoint结构如下:

字段类型说明
volumelong成交量
avgPricedouble平均成交价格
pricedouble最新价格
timelong当前分时时间

示例

OptionTimelineModel model1 = new OptionTimelineModel();
model1.setSymbol("ALB.HK");
model1.setExpiry(1753878054000L);
model1.setStrike("117.50");
model1.setRight("CALL");

OptionTimelineModel model2 = new OptionTimelineModel();
model2.setSymbol("LNI.HK");
model2.setExpiry(1753878054000L);
model2.setStrike("17.00");
model2.setRight("PUT");

OptionTimelineRequest request = OptionTimelineRequest.of(model1, model2);

OptionTimelineResponse response = client.execute(request);
if (response.isSuccess()) {
    System.out.println(JSONObject.toJSONString(response));
} else {
    System.out.println("response error:" + response.getMessage());
}

返回示例

{
  "code" : 0,
  "message" : "success",
  "timestamp" : 1750822293909,
  "sign" : "rEiaFf1LYv32Kbu8C+AKpJ/Y9pjrux8usbFA3FFJUEP28EXHv+PnKX9RBtVLalkyrULNqDqS29zP9hF1OZAng7U9KWFQ1Gy/FcGdbypXRNeJxPgKefHt/Fe4rLweO/eWKE41ZprPZlUZX0fxfeMwqkwcTMfhpuu+HQ2/ocmMgeg=",
  "timelineItems" : [ {
    "lang" : null,
    "symbol" : "ALB.HK",
    "expiry" : 1753878054000,
    "right" : "CALL",
    "strike" : "117.50",
    "preClose" : 2.72,
    "openAndCloseTimeList" : null,
    "minutes" : [{
      "price" : 3.4,
      "avgPrice" : 3.5235946,
      "time" : 1750822140000,
      "volume" : 29
    }, {
      "price" : 3.4,
      "avgPrice" : 3.5235946,
      "time" : 1750822200000,
      "volume" : 0
    }, {
      "price" : 3.4,
      "avgPrice" : 3.5235946,
      "time" : 1750822260000,
      "volume" : 0
    } ],
    "account" : null
  }, {
    "lang" : null,
    "symbol" : "LNI.HK",
    "expiry" : 1753878054000,
    "right" : "PUT",
    "strike" : "17.00",
    "preClose" : 1.28,
    "openAndCloseTimeList" : null,
    "minutes" : [ {
      "price" : 1.21,
      "avgPrice" : 1.21,
      "time" : 1750822140000,
      "volume" : 0
    }, {
      "price" : 1.21,
      "avgPrice" : 1.21,
      "time" : 1750822200000,
      "volume" : 0
    }, {
      "price" : 1.21,
      "avgPrice" : 1.21,
      "time" : 1750822260000,
      "volume" : 0
    } ],
    "account" : null
  } ],
  "success" : true
}

获取港股期权的代码

对应的请求类:OptionSymbolRequest

说明

获取港股期权的代码, 例如 00700 的代码为 TCH.HK。

参数

参数类型是否必填描述
marketMarketYes市场,只支持 HK
langstringNo语言支持: en_US,zh_CN,zh_TW,默认: en_US

返回 com.tigerbrokers.stock.openapi.client.https.response.option.OptionSymbolResponsesource

结构如下:

public class OptionSymbolResponse extends TigerResponse {

  @JSONField(name = "data")
  private List<OptionSymbolItem> symbolItems;
}

返回香港市场所有期权的symbol代码及底层资产标的集合

返回数据可通过OptionSymbolResponse.getSymbolItems()方法访问,返回OptionSymbolItem对象列表,其中com.tigerbrokers.stock.openapi.client.https.domain.option.item.OptionSymbolItem 属性如下:

名称类型说明
symbolstring期权四要素的 symbol
namestring标的名称
underlyingSymbolstring底层资产标的代码

具体字段可通过对象的get方法,如getSymbol()进行访问, 或通过对象的toString()方法转换为字符串

示例

OptionSymbolRequest request = OptionSymbolRequest.newRequest(Market.HK, Language.en_US);
OptionSymbolResponse response = client.execute(request);
if (response.isSuccess()) {
  System.out.println(JSONObject.toJSONString(response);
} else {
  System.out.println("response error:" + response.getMessage());
}

返回示例

{
  "code": 0,
  "data": [
    {
      "name": "ALC",
      "symbol": "ALC.HK",
      "underlyingSymbol": "02600"
    },
    {
      "name": "CRG",
      "symbol": "CRG.HK",
      "underlyingSymbol": "00390"
    },
    {
      "name": "PAI",
      "symbol": "PAI.HK",
      "underlyingSymbol": "02318"
    },
    {
      "name": "XCC",
      "symbol": "XCC.HK",
      "underlyingSymbol": "00939"
    },
    {
      "name": "XTW",
      "symbol": "XTW.HK",
      "underlyingSymbol": "00788"
    },
    {
      "name": "SHL",
      "symbol": "SHL.HK",
      "underlyingSymbol": "00968"
    },
    {
      "name": "GHL",
      "symbol": "GHL.HK",
      "underlyingSymbol": "00868"
    },
    {
      "name": "HEX",
      "symbol": "HEX.HK",
      "underlyingSymbol": "00388"
    },
    {
      "name": "ACC",
      "symbol": "ACC.HK",
      "underlyingSymbol": "00914"
    },
    {
      "name": "STC",
      "symbol": "STC.HK",
      "underlyingSymbol": "02888"
    },
    {
      "name": "VNK",
      "symbol": "VNK.HK",
      "underlyingSymbol": "02202"
    },
    {
      "name": "CLI",
      "symbol": "CLI.HK",
      "underlyingSymbol": "02628"
    },
    {
      "name": "LNK",
      "symbol": "LNK.HK",
      "underlyingSymbol": "00823"
    },
    {
      "name": "SMC",
      "symbol": "SMC.HK",
      "underlyingSymbol": "00981"
    },
    {
      "name": "BEA",
      "symbol": "BEA.HK",
      "underlyingSymbol": "00023"
    },
    {
      "name": "TRP",
      "symbol": "TRP.HK",
      "underlyingSymbol": "09961"
    },
    {
      "name": "GWM",
      "symbol": "GWM.HK",
      "underlyingSymbol": "02333"
    },
    {
      "name": "NBM",
      "symbol": "NBM.HK",
      "underlyingSymbol": "03323"
    },
    {
      "name": "ANA",
      "symbol": "ANA.HK",
      "underlyingSymbol": "02020"
    },
    {
      "name": "CMB",
      "symbol": "CMB.HK",
      "underlyingSymbol": "03968"
    },
    {
      "name": "HNP",
      "symbol": "HNP.HK",
      "underlyingSymbol": "00902"
    },
    {
      "name": "HEH",
      "symbol": "HEH.HK",
      "underlyingSymbol": "00006"
    },
    {
      "name": "MET",
      "symbol": "MET.HK",
      "underlyingSymbol": "03690"
    },
    {
      "name": "SHZ",
      "symbol": "SHZ.HK",
      "underlyingSymbol": "02313"
    },
    {
      "name": "SNP",
      "symbol": "SNP.HK",
      "underlyingSymbol": "01099"
    },
    {
      "name": "INB",
      "symbol": "INB.HK",
      "underlyingSymbol": "01801"
    },
    {
      "name": "CRL",
      "symbol": "CRL.HK",
      "underlyingSymbol": "01109"
    },
    {
      "name": "ALH",
      "symbol": "ALH.HK",
      "underlyingSymbol": "00241"
    },
    {
      "name": "AAC",
      "symbol": "AAC.HK",
      "underlyingSymbol": "02018"
    },
    {
      "name": "WWC",
      "symbol": "WWC.HK",
      "underlyingSymbol": "00151"
    },
    {
      "name": "CTB",
      "symbol": "CTB.HK",
      "underlyingSymbol": "00998"
    },
    {
      "name": "NWD",
      "symbol": "NWD.HK",
      "underlyingSymbol": "00017"
    },
    {
      "name": "HSB",
      "symbol": "HSB.HK",
      "underlyingSymbol": "00011"
    },
    {
      "name": "LEN",
      "symbol": "LEN.HK",
      "underlyingSymbol": "00992"
    },
    {
      "name": "COS",
      "symbol": "COS.HK",
      "underlyingSymbol": "01919"
    },
    {
      "name": "HDO",
      "symbol": "HDO.HK",
      "underlyingSymbol": "06862"
    },
    {
      "name": "BOC",
      "symbol": "BOC.HK",
      "underlyingSymbol": "02388"
    },
    {
      "name": "CSA",
      "symbol": "CSA.HK",
      "underlyingSymbol": "02822"
    },
    {
      "name": "XAB",
      "symbol": "XAB.HK",
      "underlyingSymbol": "01288"
    },
    {
      "name": "CKH",
      "symbol": "CKH.HK",
      "underlyingSymbol": "00001"
    },
    {
      "name": "MIU",
      "symbol": "MIU.HK",
      "underlyingSymbol": "01810"
    },
    {
      "name": "AIR",
      "symbol": "AIR.HK",
      "underlyingSymbol": "00753"
    },
    {
      "name": "CKP",
      "symbol": "CKP.HK",
      "underlyingSymbol": "01113"
    },
    {
      "name": "CHU",
      "symbol": "CHU.HK",
      "underlyingSymbol": "00762"
    },
    {
      "name": "GLI",
      "symbol": "GLI.HK",
      "underlyingSymbol": "01772"
    },
    {
      "name": "LNI",
      "symbol": "LNI.HK",
      "underlyingSymbol": "02331"
    },
    {
      "name": "LAU",
      "symbol": "LAU.HK",
      "underlyingSymbol": "02015"
    },
    {
      "name": "BYD",
      "symbol": "BYD.HK",
      "underlyingSymbol": "01211"
    },
    {
      "name": "ZSH",
      "symbol": "ZSH.HK",
      "underlyingSymbol": "00881"
    },
    {
      "name": "CGN",
      "symbol": "CGN.HK",
      "underlyingSymbol": "01816"
    },
    {
      "name": "MOL",
      "symbol": "MOL.HK",
      "underlyingSymbol": "03993"
    },
    {
      "name": "CPA",
      "symbol": "CPA.HK",
      "underlyingSymbol": "00293"
    },
    {
      "name": "KLE",
      "symbol": "KLE.HK",
      "underlyingSymbol": "00135"
    },
    {
      "name": "CPI",
      "symbol": "CPI.HK",
      "underlyingSymbol": "02601"
    },
    {
      "name": "CTC",
      "symbol": "CTC.HK",
      "underlyingSymbol": "00728"
    },
    {
      "name": "MTR",
      "symbol": "MTR.HK",
      "underlyingSymbol": "00066"
    },
    {
      "name": "PEC",
      "symbol": "PEC.HK",
      "underlyingSymbol": "00857"
    },
    {
      "name": "PEN",
      "symbol": "PEN.HK",
      "underlyingSymbol": "09868"
    },
    {
      "name": "MEN",
      "symbol": "MEN.HK",
      "underlyingSymbol": "02319"
    },
    {
      "name": "TCH",
      "symbol": "TCH.HK",
      "underlyingSymbol": "00700"
    },
    {
      "name": "SUN",
      "symbol": "SUN.HK",
      "underlyingSymbol": "01918"
    },
    {
      "name": "PHT",
      "symbol": "PHT.HK",
      "underlyingSymbol": "01833"
    },
    {
      "name": "CTS",
      "symbol": "CTS.HK",
      "underlyingSymbol": "06030"
    },
    {
      "name": "BCM",
      "symbol": "BCM.HK",
      "underlyingSymbol": "03328"
    },
    {
      "name": "A50",
      "symbol": "A50.HK",
      "underlyingSymbol": "02823"
    },
    {
      "name": "RFP",
      "symbol": "RFP.HK",
      "underlyingSymbol": "02777"
    },
    {
      "name": "COL",
      "symbol": "COL.HK",
      "underlyingSymbol": "00688"
    },
    {
      "name": "CDA",
      "symbol": "CDA.HK",
      "underlyingSymbol": "01359"
    },
    {
      "name": "BYE",
      "symbol": "BYE.HK",
      "underlyingSymbol": "00285"
    },
    {
      "name": "JDH",
      "symbol": "JDH.HK",
      "underlyingSymbol": "06618"
    },
    {
      "name": "CCE",
      "symbol": "CCE.HK",
      "underlyingSymbol": "01898"
    },
    {
      "name": "CRC",
      "symbol": "CRC.HK",
      "underlyingSymbol": "01186"
    },
    {
      "name": "HCF",
      "symbol": "HCF.HK",
      "underlyingSymbol": "02828"
    },
    {
      "name": "HKG",
      "symbol": "HKG.HK",
      "underlyingSymbol": "00003"
    },
    {
      "name": "XBC",
      "symbol": "XBC.HK",
      "underlyingSymbol": "03988"
    },
    {
      "name": "XPB",
      "symbol": "XPB.HK",
      "underlyingSymbol": "01658"
    },
    {
      "name": "WEB",
      "symbol": "WEB.HK",
      "underlyingSymbol": "09898"
    },
    {
      "name": "GAH",
      "symbol": "GAH.HK",
      "underlyingSymbol": "00175"
    },
    {
      "name": "CPC",
      "symbol": "CPC.HK",
      "underlyingSymbol": "00386"
    },
    {
      "name": "EVG",
      "symbol": "EVG.HK",
      "underlyingSymbol": "03333"
    },
    {
      "name": "PIC",
      "symbol": "PIC.HK",
      "underlyingSymbol": "02328"
    },
    {
      "name": "SAN",
      "symbol": "SAN.HK",
      "underlyingSymbol": "01928"
    },
    {
      "name": "BUD",
      "symbol": "BUD.HK",
      "underlyingSymbol": "01876"
    },
    {
      "name": "HKB",
      "symbol": "HKB.HK",
      "underlyingSymbol": "00005"
    },
    {
      "name": "MGM",
      "symbol": "MGM.HK",
      "underlyingSymbol": "02282"
    },
    {
      "name": "CHT",
      "symbol": "CHT.HK",
      "underlyingSymbol": "00941"
    },
    {
      "name": "PIN",
      "symbol": "PIN.HK",
      "underlyingSymbol": "01339"
    },
    {
      "name": "XIC",
      "symbol": "XIC.HK",
      "underlyingSymbol": "01398"
    },
    {
      "name": "GAC",
      "symbol": "GAC.HK",
      "underlyingSymbol": "02238"
    },
    {
      "name": "KDS",
      "symbol": "KDS.HK",
      "underlyingSymbol": "00268"
    },
    {
      "name": "COG",
      "symbol": "COG.HK",
      "underlyingSymbol": "02007"
    },
    {
      "name": "SBO",
      "symbol": "SBO.HK",
      "underlyingSymbol": "01177"
    },
    {
      "name": "WHL",
      "symbol": "WHL.HK",
      "underlyingSymbol": "00004"
    },
    {
      "name": "CSE",
      "symbol": "CSE.HK",
      "underlyingSymbol": "01088"
    },
    {
      "name": "SET",
      "symbol": "SET.HK",
      "underlyingSymbol": "00020"
    },
    {
      "name": "SWA",
      "symbol": "SWA.HK",
      "underlyingSymbol": "00019"
    },
    {
      "name": "ZJM",
      "symbol": "ZJM.HK",
      "underlyingSymbol": "02899"
    },
    {
      "name": "MSB",
      "symbol": "MSB.HK",
      "underlyingSymbol": "01988"
    },
    {
      "name": "GLX",
      "symbol": "GLX.HK",
      "underlyingSymbol": "00027"
    },
    {
      "name": "DFM",
      "symbol": "DFM.HK",
      "underlyingSymbol": "00489"
    },
    {
      "name": "CIT",
      "symbol": "CIT.HK",
      "underlyingSymbol": "00267"
    },
    {
      "name": "CNC",
      "symbol": "CNC.HK",
      "underlyingSymbol": "00883"
    },
    {
      "name": "BIU",
      "symbol": "BIU.HK",
      "underlyingSymbol": "09888"
    },
    {
      "name": "CCC",
      "symbol": "CCC.HK",
      "underlyingSymbol": "01800"
    },
    {
      "name": "HGN",
      "symbol": "HGN.HK",
      "underlyingSymbol": "01044"
    },
    {
      "name": "NTE",
      "symbol": "NTE.HK",
      "underlyingSymbol": "09999"
    },
    {
      "name": "SNO",
      "symbol": "SNO.HK",
      "underlyingSymbol": "02382"
    },
    {
      "name": "TRF",
      "symbol": "TRF.HK",
      "underlyingSymbol": "02800"
    },
    {
      "name": "HAI",
      "symbol": "HAI.HK",
      "underlyingSymbol": "06837"
    },
    {
      "name": "WHG",
      "symbol": "WHG.HK",
      "underlyingSymbol": "00288"
    },
    {
      "name": "HLD",
      "symbol": "HLD.HK",
      "underlyingSymbol": "00012"
    },
    {
      "name": "CSP",
      "symbol": "CSP.HK",
      "underlyingSymbol": "01093"
    },
    {
      "name": "KSO",
      "symbol": "KSO.HK",
      "underlyingSymbol": "03888"
    },
    {
      "name": "YZC",
      "symbol": "YZC.HK",
      "underlyingSymbol": "01171"
    },
    {
      "name": "SHK",
      "symbol": "SHK.HK",
      "underlyingSymbol": "00016"
    },
    {
      "name": "JXC",
      "symbol": "JXC.HK",
      "underlyingSymbol": "00358"
    },
    {
      "name": "ALB",
      "symbol": "ALB.HK",
      "underlyingSymbol": "09988"
    },
    {
      "name": "BLI",
      "symbol": "BLI.HK",
      "underlyingSymbol": "09626"
    },
    {
      "name": "CLP",
      "symbol": "CLP.HK",
      "underlyingSymbol": "00002"
    },
    {
      "name": "ZAO",
      "symbol": "ZAO.HK",
      "underlyingSymbol": "06060"
    },
    {
      "name": "JDC",
      "symbol": "JDC.HK",
      "underlyingSymbol": "09618"
    },
    {
      "name": "NFU",
      "symbol": "NFU.HK",
      "underlyingSymbol": "09633"
    },
    {
      "name": "AIA",
      "symbol": "AIA.HK",
      "underlyingSymbol": "01299"
    },
    {
      "name": "KST",
      "symbol": "KST.HK",
      "underlyingSymbol": "01024"
    },
    {
      "name": "NCL",
      "symbol": "NCL.HK",
      "underlyingSymbol": "01336"
    },
    {
      "name": "TIC",
      "symbol": "TIC.HK",
      "underlyingSymbol": "00669"
    },
    {
      "name": "WXB",
      "symbol": "WXB.HK",
      "underlyingSymbol": "02269"
    },
    {
      "name": "AMC",
      "symbol": "AMC.HK",
      "underlyingSymbol": "03188"
    }
  ],
  "message": "success",
  "sign": "NRvOxhF7cpEM9PS+Hofd6/BduEddep0sUlnYq9o9fPUwcZmAj3spI/D2wXu8L/eZSxvWhSfjnB3BL8y7mrpvqY3m9BGeZhf24ZoA0lbY8YXyQ5JjXa0VHWieUmCItoR9E195Nsr2sWCoawJhz7+yaMFioWEe8VThtGrYMiTYnUE=",
  "success": true,
  "timestamp": 1719401951582
}

期权指标计算

说明

计算所选期权的各类指标。

参数

参数类型是否必填描述
clientobjectYesSDK Htttp client
symbolstringYes股票代码
rightstringYes看多或看空(CALL/PUT)
strikestringYes行权价
expirylongYes到期时间(美国 NewYork 时间当天 0 点所对应的毫秒值)
underlyingSymbolstringNo底层资产标的,默认为symbol的值

返回

名称类型说明
deltadouble希腊字母 delta
gammadouble希腊字母 gamma
thetadouble希腊字母 theta
vegadouble希腊字母 vega
insideValuedouble内在价值
timeValuedouble时间价值
leveragedouble杠杆率
openInterestint未平仓量
historyVolatilitydouble历史波动率,百分比数值
premiumRatedouble溢价率,百分比数值
profitRatedouble买入盈利率,百分比数值
volatilitydouble隐含波动率,百分比数值

示例

OptionFundamentals optionFundamentals = OptionCalcUtils.getOptionFundamentals(client,"BABA", "CALL", "205.0", "2019-11-01");
System.out.println(JSONObject.toJSONString(optionFundamentals));

返回示例

{
	"delta": 0.8573062699731591,
	"gamma": 0.05151538284065261,
	"historyVolatility": 24.38,  //百分比形式,表示为 24.38%
	"insideValue": 4.550000000000011,
	"leverage": 30.695960907449216,
	"openInterest": 35417.0,
	"premiumRate": 0.18619306788885054, //百分比形式,表示为 0.186%
	"profitRate": 47.138051059662665, //百分比形式,表示为 47.138%
	"rho": 1.1107261502375654,
	"theta": -0.17927469728943862,
	"timeValue": 0.32499999999998863,
	"vega": 0.034473845504081974,
	"volatility": 28.62548828125  //百分比形式,表示为 28.62%
}