|
|
- # 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
- """
-
-
- import pprint
- import re # noqa: F401
-
- import six
-
- from gate_api.configuration import Configuration
-
-
- class FuturesPriceTrigger(object):
- """NOTE: This class is auto generated by OpenAPI Generator.
- Ref: https://openapi-generator.tech
-
- Do not edit the class manually.
- """
-
- """
- Attributes:
- openapi_types (dict): The key is attribute name
- and the value is attribute type.
- attribute_map (dict): The key is attribute name
- and the value is json key in definition.
- """
- openapi_types = {'strategy_type': 'int', 'price_type': 'int', 'price': 'str', 'rule': 'int', 'expiration': 'int'}
-
- attribute_map = {
- 'strategy_type': 'strategy_type',
- 'price_type': 'price_type',
- 'price': 'price',
- 'rule': 'rule',
- 'expiration': 'expiration',
- }
-
- def __init__(
- self, strategy_type=None, price_type=None, price=None, rule=None, expiration=None, local_vars_configuration=None
- ): # noqa: E501
- # type: (int, int, str, int, int, Configuration) -> None
- """FuturesPriceTrigger - a model defined in OpenAPI""" # noqa: E501
- if local_vars_configuration is None:
- local_vars_configuration = Configuration()
- self.local_vars_configuration = local_vars_configuration
-
- self._strategy_type = None
- self._price_type = None
- self._price = None
- self._rule = None
- self._expiration = None
- self.discriminator = None
-
- if strategy_type is not None:
- self.strategy_type = strategy_type
- if price_type is not None:
- self.price_type = price_type
- if price is not None:
- self.price = price
- if rule is not None:
- self.rule = rule
- if expiration is not None:
- self.expiration = expiration
-
- @property
- def strategy_type(self):
- """Gets the strategy_type of this FuturesPriceTrigger. # noqa: E501
-
- How the order will be triggered - `0`: by price, which means the order will be triggered if price condition is satisfied - `1`: by price gap, which means the order will be triggered if gap of recent two prices of specified `price_type` are satisfied. Only `0` is supported currently # noqa: E501
-
- :return: The strategy_type of this FuturesPriceTrigger. # noqa: E501
- :rtype: int
- """
- return self._strategy_type
-
- @strategy_type.setter
- def strategy_type(self, strategy_type):
- """Sets the strategy_type of this FuturesPriceTrigger.
-
- How the order will be triggered - `0`: by price, which means the order will be triggered if price condition is satisfied - `1`: by price gap, which means the order will be triggered if gap of recent two prices of specified `price_type` are satisfied. Only `0` is supported currently # noqa: E501
-
- :param strategy_type: The strategy_type of this FuturesPriceTrigger. # noqa: E501
- :type: int
- """
- allowed_values = [0, 1] # noqa: E501
- if self.local_vars_configuration.client_side_validation and strategy_type not in allowed_values: # noqa: E501
- raise ValueError(
- "Invalid value for `strategy_type` ({0}), must be one of {1}".format( # noqa: E501
- strategy_type, allowed_values
- )
- )
-
- self._strategy_type = strategy_type
-
- @property
- def price_type(self):
- """Gets the price_type of this FuturesPriceTrigger. # noqa: E501
-
- Price type. 0 - latest deal price, 1 - mark price, 2 - index price # noqa: E501
-
- :return: The price_type of this FuturesPriceTrigger. # noqa: E501
- :rtype: int
- """
- return self._price_type
-
- @price_type.setter
- def price_type(self, price_type):
- """Sets the price_type of this FuturesPriceTrigger.
-
- Price type. 0 - latest deal price, 1 - mark price, 2 - index price # noqa: E501
-
- :param price_type: The price_type of this FuturesPriceTrigger. # noqa: E501
- :type: int
- """
- allowed_values = [0, 1, 2] # noqa: E501
- if self.local_vars_configuration.client_side_validation and price_type not in allowed_values: # noqa: E501
- raise ValueError(
- "Invalid value for `price_type` ({0}), must be one of {1}".format( # noqa: E501
- price_type, allowed_values
- )
- )
-
- self._price_type = price_type
-
- @property
- def price(self):
- """Gets the price of this FuturesPriceTrigger. # noqa: E501
-
- Value of price on price triggered, or price gap on price gap triggered # noqa: E501
-
- :return: The price of this FuturesPriceTrigger. # noqa: E501
- :rtype: str
- """
- return self._price
-
- @price.setter
- def price(self, price):
- """Sets the price of this FuturesPriceTrigger.
-
- Value of price on price triggered, or price gap on price gap triggered # noqa: E501
-
- :param price: The price of this FuturesPriceTrigger. # noqa: E501
- :type: str
- """
-
- self._price = price
-
- @property
- def rule(self):
- """Gets the rule of this FuturesPriceTrigger. # noqa: E501
-
- Trigger condition type - `1`: calculated price based on `strategy_type` and `price_type` >= `price` - `2`: calculated price based on `strategy_type` and `price_type` <= `price` # noqa: E501
-
- :return: The rule of this FuturesPriceTrigger. # noqa: E501
- :rtype: int
- """
- return self._rule
-
- @rule.setter
- def rule(self, rule):
- """Sets the rule of this FuturesPriceTrigger.
-
- Trigger condition type - `1`: calculated price based on `strategy_type` and `price_type` >= `price` - `2`: calculated price based on `strategy_type` and `price_type` <= `price` # noqa: E501
-
- :param rule: The rule of this FuturesPriceTrigger. # noqa: E501
- :type: int
- """
- allowed_values = [1, 2] # noqa: E501
- if self.local_vars_configuration.client_side_validation and rule not in allowed_values: # noqa: E501
- raise ValueError(
- "Invalid value for `rule` ({0}), must be one of {1}".format(rule, allowed_values) # noqa: E501
- )
-
- self._rule = rule
-
- @property
- def expiration(self):
- """Gets the expiration of this FuturesPriceTrigger. # noqa: E501
-
- How long (in seconds) to wait for the condition to be triggered before cancelling the order. # noqa: E501
-
- :return: The expiration of this FuturesPriceTrigger. # noqa: E501
- :rtype: int
- """
- return self._expiration
-
- @expiration.setter
- def expiration(self, expiration):
- """Sets the expiration of this FuturesPriceTrigger.
-
- How long (in seconds) to wait for the condition to be triggered before cancelling the order. # noqa: E501
-
- :param expiration: The expiration of this FuturesPriceTrigger. # noqa: E501
- :type: int
- """
-
- self._expiration = expiration
-
- def to_dict(self):
- """Returns the model properties as a dict"""
- result = {}
-
- for attr, _ in six.iteritems(self.openapi_types):
- value = getattr(self, attr)
- if isinstance(value, list):
- result[attr] = list(map(lambda x: x.to_dict() if hasattr(x, "to_dict") else x, value))
- elif hasattr(value, "to_dict"):
- result[attr] = value.to_dict()
- elif isinstance(value, dict):
- result[attr] = dict(
- map(
- lambda item: (item[0], item[1].to_dict()) if hasattr(item[1], "to_dict") else item,
- value.items(),
- )
- )
- else:
- result[attr] = value
-
- return result
-
- def to_str(self):
- """Returns the string representation of the model"""
- return pprint.pformat(self.to_dict())
-
- def __repr__(self):
- """For `print` and `pprint`"""
- return self.to_str()
-
- def __eq__(self, other):
- """Returns true if both objects are equal"""
- if not isinstance(other, FuturesPriceTrigger):
- return False
-
- return self.to_dict() == other.to_dict()
-
- def __ne__(self, other):
- """Returns true if both objects are not equal"""
- if not isinstance(other, FuturesPriceTrigger):
- return True
-
- return self.to_dict() != other.to_dict()
|