|
# coding: utf-8
|
|
|
|
"""
|
|
Gate API v4
|
|
|
|
Welcome to Gate.io API APIv4 provides spot, margin and futures trading operations. There are public APIs to retrieve the real-time market statistics, and private APIs which needs authentication to trade on user's behalf. # noqa: E501
|
|
|
|
Contact: support@mail.gate.io
|
|
Generated by: https://openapi-generator.tech
|
|
"""
|
|
|
|
|
|
from __future__ import absolute_import
|
|
|
|
import re # noqa: F401
|
|
|
|
# python 2 and python 3 compatibility library
|
|
import six
|
|
|
|
from gate_api.api_client import ApiClient
|
|
from gate_api.exceptions import ApiTypeError, ApiValueError # noqa: F401
|
|
|
|
|
|
class OptionsApi(object):
|
|
"""NOTE: This class is auto generated by OpenAPI Generator
|
|
Ref: https://openapi-generator.tech
|
|
|
|
Do not edit the class manually.
|
|
"""
|
|
|
|
def __init__(self, api_client=None):
|
|
if api_client is None:
|
|
api_client = ApiClient()
|
|
self.api_client = api_client
|
|
|
|
def list_options_underlyings(self, **kwargs): # noqa: E501
|
|
"""List all underlyings # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_underlyings(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsUnderlying]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_underlyings_with_http_info(**kwargs) # noqa: E501
|
|
|
|
def list_options_underlyings_with_http_info(self, **kwargs): # noqa: E501
|
|
"""List all underlyings # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_underlyings_with_http_info(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsUnderlying], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = []
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_underlyings" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/underlyings',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsUnderlying]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_expirations(self, underlying, **kwargs): # noqa: E501
|
|
"""List all expiration times # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_expirations(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[int]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_expirations_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_expirations_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List all expiration times # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_expirations_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[int], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_expirations" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_expirations`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/expirations',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[int]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_contracts(self, underlying, **kwargs): # noqa: E501
|
|
"""List all the contracts with specified underlying and expiration time # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_contracts(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int expiration: Unix timestamp of the expiration time
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsContract]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_contracts_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_contracts_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List all the contracts with specified underlying and expiration time # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_contracts_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int expiration: Unix timestamp of the expiration time
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsContract], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying', 'expiration']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_contracts" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_contracts`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'expiration' in local_var_params and local_var_params['expiration'] is not None: # noqa: E501
|
|
query_params.append(('expiration', local_var_params['expiration'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/contracts',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsContract]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def get_options_contract(self, contract, **kwargs): # noqa: E501
|
|
"""Query specified contract detail # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_contract(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsContract
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.get_options_contract_with_http_info(contract, **kwargs) # noqa: E501
|
|
|
|
def get_options_contract_with_http_info(self, contract, **kwargs): # noqa: E501
|
|
"""Query specified contract detail # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_contract_with_http_info(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsContract, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_options_contract" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'contract' is set
|
|
if self.api_client.client_side_validation and (
|
|
'contract' not in local_var_params or local_var_params['contract'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `contract` when calling `get_options_contract`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
if 'contract' in local_var_params:
|
|
path_params['contract'] = local_var_params['contract'] # noqa: E501
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/contracts/{contract}',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsContract', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_settlements(self, underlying, **kwargs): # noqa: E501
|
|
"""List settlement history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_settlements(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsSettlement]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_settlements_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_settlements_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List settlement history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_settlements_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsSettlement], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying', 'limit', 'offset', '_from', 'to']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_settlements" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_settlements`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_settlements`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_settlements`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `offset` when calling `list_options_settlements`, must be a value greater than or equal to `0`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
|
|
query_params.append(('offset', local_var_params['offset'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/settlements',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsSettlement]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def get_options_settlement(self, contract, underlying, at, **kwargs): # noqa: E501
|
|
"""Get specified contract's settlement # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_settlement(contract, underlying, at, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: (required)
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int at: (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsSettlement
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.get_options_settlement_with_http_info(contract, underlying, at, **kwargs) # noqa: E501
|
|
|
|
def get_options_settlement_with_http_info(self, contract, underlying, at, **kwargs): # noqa: E501
|
|
"""Get specified contract's settlement # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_settlement_with_http_info(contract, underlying, at, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: (required)
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int at: (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsSettlement, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract', 'underlying', 'at']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_options_settlement" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'contract' is set
|
|
if self.api_client.client_side_validation and (
|
|
'contract' not in local_var_params or local_var_params['contract'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `contract` when calling `get_options_settlement`"
|
|
) # noqa: E501
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `get_options_settlement`"
|
|
) # noqa: E501
|
|
# verify the required parameter 'at' is set
|
|
if self.api_client.client_side_validation and (
|
|
'at' not in local_var_params or local_var_params['at'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `at` when calling `get_options_settlement`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
if 'contract' in local_var_params:
|
|
path_params['contract'] = local_var_params['contract'] # noqa: E501
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'at' in local_var_params and local_var_params['at'] is not None: # noqa: E501
|
|
query_params.append(('at', local_var_params['at'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/settlements/{contract}',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsSettlement', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_my_options_settlements(self, underlying, **kwargs): # noqa: E501
|
|
"""List my options settlements # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_my_options_settlements(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param str contract: Options contract name
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsMySettlements]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_my_options_settlements_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_my_options_settlements_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List my options settlements # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_my_options_settlements_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param str contract: Options contract name
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsMySettlements], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying', 'contract', 'limit', 'offset', '_from', 'to']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError(
|
|
"Got an unexpected keyword argument '%s'" " to method list_my_options_settlements" % k
|
|
)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_my_options_settlements`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_my_options_settlements`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_my_options_settlements`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `offset` when calling `list_my_options_settlements`, must be a value greater than or equal to `0`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
|
|
query_params.append(('offset', local_var_params['offset'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/my_settlements',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsMySettlements]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_order_book(self, contract, **kwargs): # noqa: E501
|
|
"""Options order book # noqa: E501
|
|
|
|
Bids will be sorted by price from high to low, while asks sorted reversely # noqa: E501
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_order_book(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name (required)
|
|
:param str interval: Order depth. 0 means no aggregation is applied. default to 0
|
|
:param int limit: Maximum number of order depth data in asks or bids
|
|
:param bool with_id: Whether the order book update ID will be returned. This ID increases by 1 on every order book update
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.FuturesOrderBook
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_order_book_with_http_info(contract, **kwargs) # noqa: E501
|
|
|
|
def list_options_order_book_with_http_info(self, contract, **kwargs): # noqa: E501
|
|
"""Options order book # noqa: E501
|
|
|
|
Bids will be sorted by price from high to low, while asks sorted reversely # noqa: E501
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_order_book_with_http_info(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name (required)
|
|
:param str interval: Order depth. 0 means no aggregation is applied. default to 0
|
|
:param int limit: Maximum number of order depth data in asks or bids
|
|
:param bool with_id: Whether the order book update ID will be returned. This ID increases by 1 on every order book update
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.FuturesOrderBook, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract', 'interval', 'limit', 'with_id']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_order_book" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'contract' is set
|
|
if self.api_client.client_side_validation and (
|
|
'contract' not in local_var_params or local_var_params['contract'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `contract` when calling `list_options_order_book`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 50
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_order_book`, must be a value less than or equal to `50`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_order_book`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'interval' in local_var_params and local_var_params['interval'] is not None: # noqa: E501
|
|
query_params.append(('interval', local_var_params['interval'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'with_id' in local_var_params and local_var_params['with_id'] is not None: # noqa: E501
|
|
query_params.append(('with_id', local_var_params['with_id'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/order_book',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='FuturesOrderBook', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_tickers(self, underlying, **kwargs): # noqa: E501
|
|
"""List tickers of options contracts # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_tickers(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsTicker]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_tickers_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_tickers_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List tickers of options contracts # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_tickers_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsTicker], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_tickers" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_tickers`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/tickers',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsTicker]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_underlying_tickers(self, underlying, **kwargs): # noqa: E501
|
|
"""Get underlying ticker # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_underlying_tickers(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsUnderlyingTicker
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_underlying_tickers_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_underlying_tickers_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""Get underlying ticker # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_underlying_tickers_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsUnderlyingTicker, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError(
|
|
"Got an unexpected keyword argument '%s'" " to method list_options_underlying_tickers" % k
|
|
)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_underlying_tickers`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
if 'underlying' in local_var_params:
|
|
path_params['underlying'] = local_var_params['underlying'] # noqa: E501
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/underlying/tickers/{underlying}',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsUnderlyingTicker', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_candlesticks(self, contract, **kwargs): # noqa: E501
|
|
"""Get options candlesticks # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_candlesticks(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name (required)
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param str interval: Interval time between data points
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsCandlestick]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_candlesticks_with_http_info(contract, **kwargs) # noqa: E501
|
|
|
|
def list_options_candlesticks_with_http_info(self, contract, **kwargs): # noqa: E501
|
|
"""Get options candlesticks # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_candlesticks_with_http_info(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name (required)
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param str interval: Interval time between data points
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsCandlestick], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract', 'limit', '_from', 'to', 'interval']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_candlesticks" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'contract' is set
|
|
if self.api_client.client_side_validation and (
|
|
'contract' not in local_var_params or local_var_params['contract'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `contract` when calling `list_options_candlesticks`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_candlesticks`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_candlesticks`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
if 'interval' in local_var_params and local_var_params['interval'] is not None: # noqa: E501
|
|
query_params.append(('interval', local_var_params['interval'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/candlesticks',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsCandlestick]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_underlying_candlesticks(self, underlying, **kwargs): # noqa: E501
|
|
"""Mark price candlesticks of an underlying # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_underlying_candlesticks(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param str interval: Interval time between data points
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.FuturesCandlestick]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_underlying_candlesticks_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_underlying_candlesticks_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""Mark price candlesticks of an underlying # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_underlying_candlesticks_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param str interval: Interval time between data points
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.FuturesCandlestick], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying', 'limit', '_from', 'to', 'interval']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError(
|
|
"Got an unexpected keyword argument '%s'" " to method list_options_underlying_candlesticks" % k
|
|
)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_underlying_candlesticks`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_underlying_candlesticks`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_underlying_candlesticks`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
if 'interval' in local_var_params and local_var_params['interval'] is not None: # noqa: E501
|
|
query_params.append(('interval', local_var_params['interval'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/underlying/candlesticks',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[FuturesCandlestick]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_trades(self, **kwargs): # noqa: E501
|
|
"""Options trade history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_trades(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name
|
|
:param str type: `C` is call, while `P` is put
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.FuturesTrade]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_trades_with_http_info(**kwargs) # noqa: E501
|
|
|
|
def list_options_trades_with_http_info(self, **kwargs): # noqa: E501
|
|
"""Options trade history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_trades_with_http_info(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name
|
|
:param str type: `C` is call, while `P` is put
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.FuturesTrade], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract', 'type', 'limit', 'offset', '_from', 'to']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_trades" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_trades`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_trades`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `offset` when calling `list_options_trades`, must be a value greater than or equal to `0`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'type' in local_var_params and local_var_params['type'] is not None: # noqa: E501
|
|
query_params.append(('type', local_var_params['type'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
|
|
query_params.append(('offset', local_var_params['offset'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = [] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/trades',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[FuturesTrade]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_account(self, **kwargs): # noqa: E501
|
|
"""List options account # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_account(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsAccount
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_account_with_http_info(**kwargs) # noqa: E501
|
|
|
|
def list_options_account_with_http_info(self, **kwargs): # noqa: E501
|
|
"""List options account # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_account_with_http_info(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsAccount, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = []
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_account" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/accounts',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsAccount', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_account_book(self, **kwargs): # noqa: E501
|
|
"""List account changing history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_account_book(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param str type: Changing Type: - dnw: Deposit & Withdraw - prem: Trading premium - fee: Trading fee - refr: Referrer rebate - set: settlement PNL
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsAccountBook]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_account_book_with_http_info(**kwargs) # noqa: E501
|
|
|
|
def list_options_account_book_with_http_info(self, **kwargs): # noqa: E501
|
|
"""List account changing history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_account_book_with_http_info(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param str type: Changing Type: - dnw: Deposit & Withdraw - prem: Trading premium - fee: Trading fee - refr: Referrer rebate - set: settlement PNL
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsAccountBook], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['limit', 'offset', '_from', 'to', 'type']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_account_book" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_account_book`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_account_book`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `offset` when calling `list_options_account_book`, must be a value greater than or equal to `0`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
|
|
query_params.append(('offset', local_var_params['offset'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
if 'type' in local_var_params and local_var_params['type'] is not None: # noqa: E501
|
|
query_params.append(('type', local_var_params['type'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/account_book',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsAccountBook]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_positions(self, **kwargs): # noqa: E501
|
|
"""List user's positions of specified underlying # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_positions(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsPosition]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_positions_with_http_info(**kwargs) # noqa: E501
|
|
|
|
def list_options_positions_with_http_info(self, **kwargs): # noqa: E501
|
|
"""List user's positions of specified underlying # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_positions_with_http_info(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsPosition], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_positions" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/positions',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsPosition]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def get_options_position(self, contract, **kwargs): # noqa: E501
|
|
"""Get specified contract position # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_position(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsPosition
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.get_options_position_with_http_info(contract, **kwargs) # noqa: E501
|
|
|
|
def get_options_position_with_http_info(self, contract, **kwargs): # noqa: E501
|
|
"""Get specified contract position # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_position_with_http_info(contract, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsPosition, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_options_position" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'contract' is set
|
|
if self.api_client.client_side_validation and (
|
|
'contract' not in local_var_params or local_var_params['contract'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `contract` when calling `get_options_position`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
if 'contract' in local_var_params:
|
|
path_params['contract'] = local_var_params['contract'] # noqa: E501
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/positions/{contract}',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsPosition', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_position_close(self, underlying, **kwargs): # noqa: E501
|
|
"""List user's liquidation history of specified underlying # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_position_close(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param str contract: Options contract name
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsPositionClose]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_position_close_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_options_position_close_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List user's liquidation history of specified underlying # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_position_close_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param str contract: Options contract name
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsPositionClose], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying', 'contract']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError(
|
|
"Got an unexpected keyword argument '%s'" " to method list_options_position_close" % k
|
|
)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_options_position_close`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/position_close',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsPositionClose]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_options_orders(self, status, **kwargs): # noqa: E501
|
|
"""List options orders # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_orders(status, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str status: Only list the orders with this status (required)
|
|
:param str contract: Options contract name
|
|
:param str underlying: Underlying
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsOrder]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_options_orders_with_http_info(status, **kwargs) # noqa: E501
|
|
|
|
def list_options_orders_with_http_info(self, status, **kwargs): # noqa: E501
|
|
"""List options orders # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_options_orders_with_http_info(status, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str status: Only list the orders with this status (required)
|
|
:param str contract: Options contract name
|
|
:param str underlying: Underlying
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsOrder], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['status', 'contract', 'underlying', 'limit', 'offset', '_from', 'to']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_options_orders" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'status' is set
|
|
if self.api_client.client_side_validation and (
|
|
'status' not in local_var_params or local_var_params['status'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `status` when calling `list_options_orders`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_orders`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_options_orders`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `offset` when calling `list_options_orders`, must be a value greater than or equal to `0`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'status' in local_var_params and local_var_params['status'] is not None: # noqa: E501
|
|
query_params.append(('status', local_var_params['status'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
|
|
query_params.append(('offset', local_var_params['offset'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/orders',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsOrder]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def create_options_order(self, options_order, **kwargs): # noqa: E501
|
|
"""Create an options order # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.create_options_order(options_order, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param OptionsOrder options_order: (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsOrder
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.create_options_order_with_http_info(options_order, **kwargs) # noqa: E501
|
|
|
|
def create_options_order_with_http_info(self, options_order, **kwargs): # noqa: E501
|
|
"""Create an options order # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.create_options_order_with_http_info(options_order, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param OptionsOrder options_order: (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsOrder, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['options_order']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method create_options_order" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'options_order' is set
|
|
if self.api_client.client_side_validation and (
|
|
'options_order' not in local_var_params or local_var_params['options_order'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `options_order` when calling `create_options_order`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
if 'options_order' in local_var_params:
|
|
body_params = local_var_params['options_order']
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# HTTP header `Content-Type`
|
|
header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
|
|
['application/json']
|
|
) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/orders',
|
|
'POST',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsOrder', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def cancel_options_orders(self, **kwargs): # noqa: E501
|
|
"""Cancel all `open` orders matched # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.cancel_options_orders(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name
|
|
:param str underlying: Underlying
|
|
:param str side: All bids or asks. Both included if not specified
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsOrder]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.cancel_options_orders_with_http_info(**kwargs) # noqa: E501
|
|
|
|
def cancel_options_orders_with_http_info(self, **kwargs): # noqa: E501
|
|
"""Cancel all `open` orders matched # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.cancel_options_orders_with_http_info(async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str contract: Options contract name
|
|
:param str underlying: Underlying
|
|
:param str side: All bids or asks. Both included if not specified
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsOrder], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['contract', 'underlying', 'side']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method cancel_options_orders" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'side' in local_var_params and local_var_params['side'] is not None: # noqa: E501
|
|
query_params.append(('side', local_var_params['side'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/orders',
|
|
'DELETE',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsOrder]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def get_options_order(self, order_id, **kwargs): # noqa: E501
|
|
"""Get a single order # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_order(order_id, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param int order_id: Order ID returned on successful order creation (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsOrder
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.get_options_order_with_http_info(order_id, **kwargs) # noqa: E501
|
|
|
|
def get_options_order_with_http_info(self, order_id, **kwargs): # noqa: E501
|
|
"""Get a single order # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.get_options_order_with_http_info(order_id, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param int order_id: Order ID returned on successful order creation (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsOrder, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['order_id']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method get_options_order" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'order_id' is set
|
|
if self.api_client.client_side_validation and (
|
|
'order_id' not in local_var_params or local_var_params['order_id'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `order_id` when calling `get_options_order`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
if 'order_id' in local_var_params:
|
|
path_params['order_id'] = local_var_params['order_id'] # noqa: E501
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/orders/{order_id}',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsOrder', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def cancel_options_order(self, order_id, **kwargs): # noqa: E501
|
|
"""Cancel a single order # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.cancel_options_order(order_id, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param int order_id: Order ID returned on successful order creation (required)
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: gate_api.OptionsOrder
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.cancel_options_order_with_http_info(order_id, **kwargs) # noqa: E501
|
|
|
|
def cancel_options_order_with_http_info(self, order_id, **kwargs): # noqa: E501
|
|
"""Cancel a single order # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.cancel_options_order_with_http_info(order_id, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param int order_id: Order ID returned on successful order creation (required)
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(gate_api.OptionsOrder, status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['order_id']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method cancel_options_order" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'order_id' is set
|
|
if self.api_client.client_side_validation and (
|
|
'order_id' not in local_var_params or local_var_params['order_id'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `order_id` when calling `cancel_options_order`"
|
|
) # noqa: E501
|
|
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
if 'order_id' in local_var_params:
|
|
path_params['order_id'] = local_var_params['order_id'] # noqa: E501
|
|
|
|
query_params = []
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/orders/{order_id}',
|
|
'DELETE',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='OptionsOrder', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|
|
|
|
def list_my_options_trades(self, underlying, **kwargs): # noqa: E501
|
|
"""List personal trading history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_my_options_trades(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param str contract: Options contract name
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: list[gate_api.OptionsMyTrade]
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
kwargs['_return_http_data_only'] = True
|
|
return self.list_my_options_trades_with_http_info(underlying, **kwargs) # noqa: E501
|
|
|
|
def list_my_options_trades_with_http_info(self, underlying, **kwargs): # noqa: E501
|
|
"""List personal trading history # noqa: E501
|
|
|
|
This method makes a synchronous HTTP request by default. To make an
|
|
asynchronous HTTP request, please pass async_req=True
|
|
>>> thread = api.list_my_options_trades_with_http_info(underlying, async_req=True)
|
|
>>> result = thread.get()
|
|
|
|
:param bool async_req: execute request asynchronously
|
|
:param str underlying: Underlying (Obtained by listing underlying endpoint) (required)
|
|
:param str contract: Options contract name
|
|
:param int limit: Maximum number of records to be returned in a single list
|
|
:param int offset: List offset, starting from 0
|
|
:param int _from: Start timestamp
|
|
:param int to: End timestamp
|
|
:param _return_http_data_only: response data without head status code
|
|
and headers
|
|
:param _preload_content: if False, the urllib3.HTTPResponse object will
|
|
be returned without reading/decoding response
|
|
data. Default is True.
|
|
:param _request_timeout: timeout setting for this request. If one
|
|
number provided, it will be total request
|
|
timeout. It can also be a pair (tuple) of
|
|
(connection, read) timeouts.
|
|
:rtype: tuple(list[gate_api.OptionsMyTrade], status_code(int), headers(HTTPHeaderDict))
|
|
:return: If the method is called asynchronously,
|
|
returns the request thread.
|
|
"""
|
|
|
|
local_var_params = locals()
|
|
|
|
all_params = ['underlying', 'contract', 'limit', 'offset', '_from', 'to']
|
|
all_params.extend(['async_req', '_return_http_data_only', '_preload_content', '_request_timeout'])
|
|
|
|
for k, v in six.iteritems(local_var_params['kwargs']):
|
|
if k not in all_params:
|
|
raise ApiTypeError("Got an unexpected keyword argument '%s'" " to method list_my_options_trades" % k)
|
|
local_var_params[k] = v
|
|
del local_var_params['kwargs']
|
|
# verify the required parameter 'underlying' is set
|
|
if self.api_client.client_side_validation and (
|
|
'underlying' not in local_var_params or local_var_params['underlying'] is None # noqa: E501
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Missing the required parameter `underlying` when calling `list_my_options_trades`"
|
|
) # noqa: E501
|
|
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] > 1000
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_my_options_trades`, must be a value less than or equal to `1000`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'limit' in local_var_params and local_var_params['limit'] < 1
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `limit` when calling `list_my_options_trades`, must be a value greater than or equal to `1`"
|
|
) # noqa: E501
|
|
if (
|
|
self.api_client.client_side_validation and 'offset' in local_var_params and local_var_params['offset'] < 0
|
|
): # noqa: E501
|
|
raise ApiValueError(
|
|
"Invalid value for parameter `offset` when calling `list_my_options_trades`, must be a value greater than or equal to `0`"
|
|
) # noqa: E501
|
|
collection_formats = {}
|
|
|
|
path_params = {}
|
|
|
|
query_params = []
|
|
if 'underlying' in local_var_params and local_var_params['underlying'] is not None: # noqa: E501
|
|
query_params.append(('underlying', local_var_params['underlying'])) # noqa: E501
|
|
if 'contract' in local_var_params and local_var_params['contract'] is not None: # noqa: E501
|
|
query_params.append(('contract', local_var_params['contract'])) # noqa: E501
|
|
if 'limit' in local_var_params and local_var_params['limit'] is not None: # noqa: E501
|
|
query_params.append(('limit', local_var_params['limit'])) # noqa: E501
|
|
if 'offset' in local_var_params and local_var_params['offset'] is not None: # noqa: E501
|
|
query_params.append(('offset', local_var_params['offset'])) # noqa: E501
|
|
if '_from' in local_var_params and local_var_params['_from'] is not None: # noqa: E501
|
|
query_params.append(('from', local_var_params['_from'])) # noqa: E501
|
|
if 'to' in local_var_params and local_var_params['to'] is not None: # noqa: E501
|
|
query_params.append(('to', local_var_params['to'])) # noqa: E501
|
|
|
|
header_params = {}
|
|
|
|
form_params = []
|
|
local_var_files = {}
|
|
|
|
body_params = None
|
|
# HTTP header `Accept`
|
|
header_params['Accept'] = self.api_client.select_header_accept(['application/json']) # noqa: E501
|
|
|
|
# Authentication setting
|
|
auth_settings = ['apiv4'] # noqa: E501
|
|
|
|
return self.api_client.call_api(
|
|
'/options/my_trades',
|
|
'GET',
|
|
path_params,
|
|
query_params,
|
|
header_params,
|
|
body=body_params,
|
|
post_params=form_params,
|
|
files=local_var_files,
|
|
response_type='list[OptionsMyTrade]', # noqa: E501
|
|
auth_settings=auth_settings,
|
|
async_req=local_var_params.get('async_req'),
|
|
_return_http_data_only=local_var_params.get('_return_http_data_only'), # noqa: E501
|
|
_preload_content=local_var_params.get('_preload_content', True),
|
|
_request_timeout=local_var_params.get('_request_timeout'),
|
|
collection_formats=collection_formats,
|
|
)
|