API Reference — Operators

financepype.operators.operator

OperatorConfiguration

class OperatorConfiguration(BaseModel)
Field Type Description
platform Platform The platform to connect to

Operator

class Operator

Base class for all exchange/blockchain connectors.

Constructor

Operator(configuration: OperatorConfiguration)

Creates a NonceCreator (microseconds) and a MultiPublisher internally.

Properties

Property Type Description
configuration OperatorConfiguration
platform Platform Delegated from configuration
name str str(platform)
display_name str Same as name by default
current_timestamp float Abstract — current exchange time
publishing MultiPublisher Event publisher

OperatorProcessor

class OperatorProcessor(NetworkProcessor)

Polling loop base class for REST-based connectors.

Constructor

OperatorProcessor(operator: Operator)

Methods

Method Signature Description
update_loop async (interval_seconds: float) -> None Poll loop; calls _update_loop_fetch_updates
_update_loop_fetch_updates async () -> None [abstract] Subclass implements actual fetch
_sleep async (seconds: float) -> None asyncio.sleep

The loop waits on _poll_notifier (an asyncio.Event) before each poll, then clears it. On errors it sleeps 0.5 s and retries.


financepype.operators.nonce_creator

NonceCreator

class NonceCreator

Generates monotonically increasing unique integers for client operation IDs.

Class Methods

  • for_microseconds() -> NonceCreator — uses microsecond timestamps

Methods

  • get_tracking_nonce() -> int — returns the next unique integer

financepype.operators.exchanges.exchange

ExchangeOperator

class ExchangeOperator(Operator) [abstract]

Base for centralized exchange connectors. Adds order management, balance fetching, and rules tracking.

Subclasses implement exchange-specific REST and WebSocket logic.


financepype.operators.exchanges.orderbook_exchange

OrderbookExchange

class OrderbookExchange(ExchangeOperator) [abstract]

Extends ExchangeOperator with order book management. Adds methods to subscribe to and apply live order book updates.


financepype.operators.blockchains.blockchain

BlockchainOperator

class BlockchainOperator(Operator) [abstract]

Base for blockchain network connectors. Handles transaction building, signing, broadcasting, and receipt tracking.


financepype.operators.blockchains.identifier

BlockchainIdentifier

Used as the typed identifier for blockchain transactions and assets. Represents values such as transaction hashes or contract addresses.


financepype.operators.blockchains.models

Blockchain-specific data models used by BlockchainOperator subclasses (e.g., network configuration, gas settings).


financepype.operators.dapps.dapp

DAppOperator

class DAppOperator(BlockchainOperator) [abstract]

Extends BlockchainOperator for decentralized application interactions. Adds smart contract interaction methods.


financepype.operators.factory

OperatorFactory

class OperatorFactory

Registry for creating and retrieving operator instances.

Class Methods

Method Signature Description
register (identifier: str, factory: Callable) -> None Register a factory function
get (identifier: str) -> Operator Retrieve or create an operator

financepype.operators.nonce_creator

NonceCreator

Generates unique, monotonically increasing integer nonces for use as client operation identifiers.

from financepype.operators.nonce_creator import NonceCreator

creator = NonceCreator.for_microseconds()
nonce = creator.get_tracking_nonce()  # e.g., 1700000000123456

Each call returns a value strictly greater than the previous call (within the same process).