WarrantCbbc
About 4 min
get_warrant_filter
warrant filter
value get_warrant_filter(const utility::string_t symbol, int page_size = 100, int page = 0,
utility::string_t sort_field_name = U(""), utility::string_t sort_dir = U("SortDir_Ascend"));
Description
Get the list of nested CBBC ticker data, support sorting and filtering the rounds by different fields.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| symbol | string_t | Yes | Positive Stock Code |
| page_size | int | No | number of items per page default: 100 |
| page | int | No | starting page default: 0 |
| sort_field_name | string_t | No | default: U("") |
| sort_dir | string_t | No | sort order, enum ASC/DESC default: U("SortDir_Ascend") |
WarrantFilterParams | No | filter_params | The fields of filter_params are as follows.
| Parameters | Type | Required or not | Description |
|---|---|---|---|
| issuer_name | str | No | issuer (refer to the issuerName field of the returned FilterBounds instance), default all |
| expire_ym | str | No | expiration date in yyyy-MM format |
| state | int | No | state, 0 all, 1 normal, 2 terminated transaction, 3 waiting for listing, default 0 |
| warrant_type | set[int] | No | type WarrantType (1: Call, 2: Put, 3: Bull, 4: Bear, 0: All), default All |
| in_out_price | set[int] | No | 1: in_price (contains flat values), -1: out-of-price |
| lot_size | set[int] | No | shares per lot |
| entitlement_ratio | set[float] | No | Conversion ratio |
| strike | tuple[float, float] | No | strike price range |
| effective_leverage | tuple[float, float] | No | Effective leverage range |
| effective_leverage | tuple[float, float] | No | leverage_ratio range |
| call_price | tuple[float, float] | No | Recovery Price Range |
| volume | tuple[int, int] | No | Volume Range |
| premium | tuple[float, float] | No | Premium range |
| outstanding_ratio | tuple[float, float] | No | Street Ratio Range |
| implied_volatility | tuple[float, float] | No | Implied Volatility Range |
| Returns |
| name | type | description |
|---|---|---|
| page | int | page number |
| totalPage | int | totalPage |
| totalCount | int | Total data |
| bounds | tigeropen.quote.domain.filter.WarrantFilterBounds | Requests for settable filters, see below for description |
| items | pandas.DataFrame | fields see description below |
| Name | Type | Description |
|---|---|---|
| issuer_name | list[str] | issuer_name |
| expire_date | list[str] | expiration date |
| lot_size | list[int] | shares per lot |
| entitlement_ratio | list<double> | exchange_ratio |
| leverage_ratio | dict | |
| strike | dict | Strike price range |
| strike | dict | strike price range |
| outstanding_ratio | dict | street_ratio_range |
| implied_volatility | dict | implied_volatility_range |
| effective_leverage | dict | effective_leverage_range |
| effective_leverage | dict | effective_leverage range |
| name | type | description |
|---|---|---|
| symbol | str | Subject stock code |
| name | str | Subject name |
| type | warrant_type | type, 1: call, 2: put, 3: bull, 4: bear |
| sec_type | str | Contract type, Warrant: WAR / CBBC: IOPT |
| market | str | Market, hk |
| entitlement_ratio | float | Conversion Ratio |
| entitlement_price | float | Conversion Price |
| premium | float | premium |
| float | break-even_point | float |
| call_price | float | call price (CBBCs only) |
Example
#include "tigerapi/quote_client.h"
#include "tigerapi/trade_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 result = quote_client->get_warrant_filter(U("00700"));
ucout << U("result: ") << result << endl;
return 0;
}
Response Example
WarrantFilterItem({
'items':
symbol name type sec_type market entitlement_ratio entitlement_price premium breakeven_point expire_date last_trading_date state change_rate change latest_price volume amount outstanding_ratio lot_size strike in_out_price delta leverage_ratio effective_leverage implied_volatility
0 27062 A.P Put WAR HK 47.483 1.377007 0.605231 148.669993 2023-10-20 2023-10-16 Normal 0.035714 0.001 0.029 0 0.0 0.002 5000 150.047 1.50988 -0.030389 273.491711 -8.311172 69.847,
'page': 0, 'total_page': 1, 'total_count': 1,
'bounds': FilterBounds({
'expire_date': ['2026-01', '2025-12', '2025-09', '2025-08', '2024-12', '2024-07', '2024-06', '2024-04', '2024-03', '2024-02', '2024-01', '2023-12', '2023-11', '2023-10', '2023-09', '2023-08', '2023-07', '2023-06', '2023-05', '2023-04'],
'lot_size': [1000, 5000, 10000, 50000],
'entitlement_ratio': [1.053, 47.483, 50.0, 92.166, 94.967, 100.0, 460.829, 474.834, 485.437, 500.0],
'leverage_ratio': {'min': 1.391437, 'max': 3056.79342},
'strike': {'min': 111.301, 'max': 717.11},
'premium': {'min': -0.314923, 'max': 0.908085},
'outstanding_ratio': {'min': 0.0, 'max': 1.0},
'implied_volatility': {'min': 0.0, 'max': 131.085},
'effective_leverage': {'min': -46.321801, 'max': 20.189945},
'call_price': {'min': 113.96, 'max': 520.0}})})
get_warrant_real_time_quote
value get_warrant_real_time_quote(const utility::string_t symbol);value get_warrant_real_time_quote(const value &symbols);
Description
Get the time quote of a Warrant Bull/Bear Confirmation
**Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| symbols | value | Yes | Rotating symbols code, limit to 50 |
**Returns
The structure is as follows:
| fields | type | description |
|---|---|---|
| amount | float | Transaction Amount / Turnover |
| breakevenPoint | float | break-even point at expiry |
| currency | string | Currency |
| delta | float | Hedge Value (Only supported for Warrants) |
| entitlementPrice | float | Stock swap price |
| entitlementRatio | float | Stock swap ratio |
| exchange | string | Exchange |
| expiry | string | Expiration Date (yyyy_mm_dd) |
| halted | string | Suspension status |
| high | float | Highest price |
| impliedVolatility | float | Implied votlatility (Warrants only) |
| inOutPrice | float | In the money/Out the money |
| lastTradingDate | int | Last trading day timestamp |
| latestPrice | float | Latest price |
| leverageRatio | float | leverage ratio |
| listingDate | int | Listing date timestamp |
| low | float | Lowest price |
| market | string | Market |
| multiplier | float | Contract size |
| name | string | Underlying asset name |
| open | float | Opening price |
| outstandingRatio | float | Street Goods Ratio |
| preClose | float | Previous Trading Day Closing Price |
| premium | float | Premium |
| right | string | Direction (put/call) |
| strike | float | strike price |
| symbol | string | Symbol |
| timestamp | int | timestamp |
| underlyingSymbol | string | Underlying Asset Code |
| volume | int | Volume |
Example
#include "tigerapi/quote_client.h"
#include "tigerapi/trade_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 result = quote_client->get_warrant_real_time_quote(U("15792"));
ucout << U("result: ") << result << endl;
return 0;
}
Response example
{
"amount":0,
"breakevenPoint":17.32,
"currency":"HKD",
"delta":0.31859999999999999,
"entitlementPrice":0.44,
"entitlementRatio":5,
"exchange":"SEHK",
"expiry":"2024-05-03",
"halted":"Suspension",
"high":0.087999999999999995,
"impliedVolatility":22.035,
"inOutPrice":2.178318,
"lastTradingDate":1714060800000,
"latestPrice":0.087999999999999995,
"leverageRatio":121.93181800000001,
"listingDate":1680710400000,
"low":0.087999999999999995,
"market":"HK","minTick":0.001,
"multiplier":1000,
"name":"MBXIAMI@EC2405A.C",
"open":0.087999999999999995,
"outstandingRatio":0.12529999999999999,
"preClose":0.087999999999999995,
"premium":-0.67716699999999996,
"right":"CALL","secType":"WAR",
"strike":"16.88",
"symbol":"15792",
"timestamp":1714723200018,
"underlyingSymbol":"01810",
"volume":0
}
