tbapi.api.bases.commission_simulator
1from __future__ import annotations 2from typing import TYPE_CHECKING 3from tbapi.common.decorators import tb_class, tb_interface 4from tbapi.common.converters import to_python_datetime, to_net_datetime 5from datetime import datetime 6from Tickblaze.Scripts.Api.Bases import CommissionSimulator as _CommissionSimulator 7from typing import Any, overload 8from abc import ABC, abstractmethod 9from tbapi.api.bases.script import Script 10if TYPE_CHECKING: 11 from tbapi.api.models.symbol import Symbol 12 13@tb_interface(_CommissionSimulator) 14class CommissionSimulator(Script): 15 16 @staticmethod 17 def new(*args, **kwargs): 18 """Generic factory method for CommissionSimulator. Use overloads for IDE type hints.""" 19 return CommissionSimulator(*args, **kwargs) 20 21 22 @abstractmethod 23 def calculate(self, symbol_info: Symbol, fill_quantity: float, fill_price: float, is_first_fill: bool) -> float: 24 result = self._value.Calculate(symbol_info._value, fill_quantity, fill_price, is_first_fill) 25 return result 26
21@tb_interface(_CommissionSimulator) 22class CommissionSimulator(Script): 23 24 @staticmethod 25 def new(*args, **kwargs): 26 """Generic factory method for CommissionSimulator. Use overloads for IDE type hints.""" 27 return CommissionSimulator(*args, **kwargs) 28 29 30 @abstractmethod 31 def calculate(self, symbol_info: Symbol, fill_quantity: float, fill_price: float, is_first_fill: bool) -> float: 32 result = self._value.Calculate(symbol_info._value, fill_quantity, fill_price, is_first_fill) 33 return result
Defines properties and methods for a script, including initialization and metadata.
@staticmethod
def
new(*args, **kwargs):
24 @staticmethod 25 def new(*args, **kwargs): 26 """Generic factory method for CommissionSimulator. Use overloads for IDE type hints.""" 27 return CommissionSimulator(*args, **kwargs)
Generic factory method for CommissionSimulator. Use overloads for IDE type hints.
@abstractmethod
def
calculate( self, symbol_info: tbapi.api.models.symbol.Symbol, fill_quantity: float, fill_price: float, is_first_fill: bool) -> float: