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  
@tb_interface(_CommissionSimulator)
class CommissionSimulator(tbapi.api.bases.script.Script):
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.

CommissionSimulator(*args, **kwargs)
199        def __init__(self, *args, **kwargs):
200            pass
@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:
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