import _abc
import abc
import proalgotrader_core.brokers.base_broker
from proalgotrader_core.algo_session import AlgoSession as AlgoSession
from proalgotrader_core.api import Api as Api
from proalgotrader_core.broker_symbol import BrokerSymbol as BrokerSymbol
from proalgotrader_core.brokers.base_broker import BaseBroker as BaseBroker
from proalgotrader_core.order import Order as Order
from proalgotrader_core.protocols.enums.order_type import OrderType as OrderType
from proalgotrader_core.protocols.enums.position_type import PositionType as PositionType
from proalgotrader_core.protocols.enums.product_type import ProductType as ProductType
from proalgotrader_core.trade import Trade as Trade
from typing import ClassVar

__test__: dict

class PaperBroker(proalgotrader_core.brokers.base_broker.BaseBroker, abc.ABC):
    _abc_impl: ClassVar[_abc._abc_data] = ...
    __abstractmethods__: ClassVar[frozenset] = ...
    def __init__(self, *args, **kwargs) -> None: ...
    def get_current_capital(self, *args, **kwargs): ...
    def get_enter_position_info(self, *args, **kwargs): ...
    def get_exit_position_info(self, *args, **kwargs): ...
    def get_order_types(self, *args, **kwargs): ...
    def get_position_types(self, *args, **kwargs): ...
    def get_product_types(self, *args, **kwargs): ...
    def place_order(self, *args, **kwargs): ...
    def set_capital(self, *args, **kwargs): ...
