pub struct LiveNodeBuilder { /* private fields */ }Expand description
Builder for constructing a LiveNode with a fluent API.
Provides configuration options specific to live nodes, including client factory registration and timeout settings.
Implementations§
Source§impl LiveNodeBuilder
impl LiveNodeBuilder
Sourcepub fn new(trader_id: TraderId, environment: Environment) -> Result<Self>
pub fn new(trader_id: TraderId, environment: Environment) -> Result<Self>
Creates a new LiveNodeBuilder with required parameters.
§Errors
Returns an error if environment is invalid (BACKTEST).
Sourcepub fn from_config(config: LiveNodeConfig) -> Result<Self>
pub fn from_config(config: LiveNodeConfig) -> Result<Self>
Creates a new LiveNodeBuilder from an existing LiveNodeConfig.
§Errors
Returns an error if the config’s environment is invalid (BACKTEST).
Sourcepub const fn with_instance_id(self, instance_id: UUID4) -> Self
pub const fn with_instance_id(self, instance_id: UUID4) -> Self
Set the instance ID for the node.
Sourcepub const fn with_load_state(self, load_state: bool) -> Self
pub const fn with_load_state(self, load_state: bool) -> Self
Configure whether to load state on startup.
Sourcepub const fn with_save_state(self, save_state: bool) -> Self
pub const fn with_save_state(self, save_state: bool) -> Self
Configure whether to save state on shutdown.
Sourcepub const fn with_timeout_connection(self, timeout_secs: u64) -> Self
pub const fn with_timeout_connection(self, timeout_secs: u64) -> Self
Set the connection timeout in seconds.
Sourcepub const fn with_timeout_reconciliation(self, timeout_secs: u64) -> Self
pub const fn with_timeout_reconciliation(self, timeout_secs: u64) -> Self
Set the reconciliation timeout in seconds.
Sourcepub fn with_reconciliation(self, reconciliation: bool) -> Self
pub fn with_reconciliation(self, reconciliation: bool) -> Self
Configure whether to run startup reconciliation.
Sourcepub fn with_reconciliation_lookback_mins(self, mins: u32) -> Self
pub fn with_reconciliation_lookback_mins(self, mins: u32) -> Self
Set the reconciliation lookback in minutes.
Sourcepub const fn with_timeout_portfolio(self, timeout_secs: u64) -> Self
pub const fn with_timeout_portfolio(self, timeout_secs: u64) -> Self
Set the portfolio initialization timeout in seconds.
Sourcepub const fn with_timeout_disconnection_secs(self, timeout_secs: u64) -> Self
pub const fn with_timeout_disconnection_secs(self, timeout_secs: u64) -> Self
Set the disconnection timeout in seconds.
Sourcepub const fn with_delay_post_stop_secs(self, delay_secs: u64) -> Self
pub const fn with_delay_post_stop_secs(self, delay_secs: u64) -> Self
Set the post-stop delay in seconds.
Sourcepub const fn with_delay_shutdown_secs(self, delay_secs: u64) -> Self
pub const fn with_delay_shutdown_secs(self, delay_secs: u64) -> Self
Set the shutdown timeout in seconds.
Sourcepub fn with_cache_config(self, config: CacheConfig) -> Self
pub fn with_cache_config(self, config: CacheConfig) -> Self
Set the cache configuration.
Sourcepub fn with_msgbus_config(self, config: MessageBusConfig) -> Self
pub fn with_msgbus_config(self, config: MessageBusConfig) -> Self
Set the message bus configuration.
The Rust live runtime does not support this setting yet.
build() returns an error when it is set.
Sourcepub fn with_portfolio_config(self, config: PortfolioConfig) -> Self
pub fn with_portfolio_config(self, config: PortfolioConfig) -> Self
Set the portfolio configuration.
Sourcepub fn with_streaming_config(self, config: StreamingConfig) -> Self
pub fn with_streaming_config(self, config: StreamingConfig) -> Self
Set the streaming configuration.
The Rust live runtime does not support this setting yet.
build() returns an error when it is set.
Sourcepub fn with_data_engine_config(self, config: LiveDataEngineConfig) -> Self
pub fn with_data_engine_config(self, config: LiveDataEngineConfig) -> Self
Set the data engine configuration.
The Rust live runtime currently supports only the default qsize.
build() returns an error for other values.
Sourcepub fn with_risk_engine_config(self, config: LiveRiskEngineConfig) -> Self
pub fn with_risk_engine_config(self, config: LiveRiskEngineConfig) -> Self
Set the risk engine configuration.
The Rust live runtime currently supports only the default qsize.
build() returns an error for other values.
Sourcepub fn with_exec_engine_config(self, config: LiveExecEngineConfig) -> Self
pub fn with_exec_engine_config(self, config: LiveExecEngineConfig) -> Self
Set the execution engine configuration.
The Rust live runtime currently supports only the default qsize.
build() returns an error for other values.
Sourcepub fn with_logging(self, logging: LoggerConfig) -> Self
pub fn with_logging(self, logging: LoggerConfig) -> Self
Set the logging configuration.
Sourcepub fn add_data_client(
self,
name: Option<String>,
factory: Box<dyn DataClientFactory>,
config: Box<dyn ClientConfig>,
) -> Result<Self>
pub fn add_data_client( self, name: Option<String>, factory: Box<dyn DataClientFactory>, config: Box<dyn ClientConfig>, ) -> Result<Self>
Adds a data client factory with configuration.
§Errors
Returns an error if a client with the same name is already registered.
Trait Implementations§
Source§impl Debug for LiveNodeBuilder
impl Debug for LiveNodeBuilder
Source§impl<'py> IntoPyObject<'py> for LiveNodeBuilder
impl<'py> IntoPyObject<'py> for LiveNodeBuilder
Source§type Target = LiveNodeBuilder
type Target = LiveNodeBuilder
Source§type Output = Bound<'py, <LiveNodeBuilder as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <LiveNodeBuilder as IntoPyObject<'py>>::Target>
Source§fn into_pyobject(
self,
py: Python<'py>,
) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
fn into_pyobject( self, py: Python<'py>, ) -> Result<<Self as IntoPyObject<'_>>::Output, <Self as IntoPyObject<'_>>::Error>
Source§impl PyClass for LiveNodeBuilder
impl PyClass for LiveNodeBuilder
Source§impl PyClassImpl for LiveNodeBuilder
impl PyClassImpl for LiveNodeBuilder
Source§const IS_BASETYPE: bool = false
const IS_BASETYPE: bool = false
Source§const IS_SUBCLASS: bool = false
const IS_SUBCLASS: bool = false
Source§const IS_MAPPING: bool = false
const IS_MAPPING: bool = false
Source§const IS_SEQUENCE: bool = false
const IS_SEQUENCE: bool = false
Source§const IS_IMMUTABLE_TYPE: bool = false
const IS_IMMUTABLE_TYPE: bool = false
Source§const RAW_DOC: &'static CStr = /// Builder for constructing a [`LiveNode`] with a fluent API.
///
/// Provides configuration options specific to live nodes,
/// including client factory registration and timeout settings.
const RAW_DOC: &'static CStr = /// Builder for constructing a [`LiveNode`] with a fluent API. /// /// Provides configuration options specific to live nodes, /// including client factory registration and timeout settings.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type Layout = <<LiveNodeBuilder as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<LiveNodeBuilder>
type Layout = <<LiveNodeBuilder as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<LiveNodeBuilder>
Source§type ThreadChecker = ThreadCheckerImpl
type ThreadChecker = ThreadCheckerImpl
type Inventory = Pyo3MethodsInventoryForLiveNodeBuilder
Source§type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
type PyClassMutability = <<PyAny as PyClassBaseType>::PyClassMutability as PyClassMutability>::MutableChild
Source§type BaseNativeType = PyAny
type BaseNativeType = PyAny
PyAny by default, and when you declare
#[pyclass(extends=PyDict)], it’s PyDict.fn items_iter() -> PyClassItemsIter
fn lazy_type_object() -> &'static LazyTypeObject<Self>
§fn dict_offset() -> Option<PyObjectOffset>
fn dict_offset() -> Option<PyObjectOffset>
§fn weaklist_offset() -> Option<PyObjectOffset>
fn weaklist_offset() -> Option<PyObjectOffset>
Source§impl PyTypeInfo for LiveNodeBuilder
impl PyTypeInfo for LiveNodeBuilder
Source§const NAME: &str = <Self as ::pyo3::PyClass>::NAME
const NAME: &str = <Self as ::pyo3::PyClass>::NAME
prefer using ::type_object(py).name() to get the correct runtime value
Source§const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
const MODULE: Option<&str> = <Self as ::pyo3::impl_::pyclass::PyClassImpl>::MODULE
prefer using ::type_object(py).module() to get the correct runtime value
Source§fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
fn type_object_raw(py: Python<'_>) -> *mut PyTypeObject
§fn type_object(py: Python<'_>) -> Bound<'_, PyType>
fn type_object(py: Python<'_>) -> Bound<'_, PyType>
§fn is_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type or a subclass of this type.§fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
fn is_exact_type_of(object: &Bound<'_, PyAny>) -> bool
object is an instance of this type.impl DerefToPyAny for LiveNodeBuilder
impl ExtractPyClassWithClone for LiveNodeBuilder
Auto Trait Implementations§
impl Freeze for LiveNodeBuilder
impl !RefUnwindSafe for LiveNodeBuilder
impl !Send for LiveNodeBuilder
impl !Sync for LiveNodeBuilder
impl Unpin for LiveNodeBuilder
impl UnsafeUnpin for LiveNodeBuilder
impl !UnwindSafe for LiveNodeBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
impl<'py, T> IntoPyObjectExt<'py> for Twhere
T: IntoPyObject<'py>,
§fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
fn into_bound_py_any(self, py: Python<'py>) -> Result<Bound<'py, PyAny>, PyErr>
self into an owned Python object, dropping type information.§fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
fn into_py_any(self, py: Python<'py>) -> Result<Py<PyAny>, PyErr>
self into an owned Python object, dropping type information and unbinding it
from the 'py lifetime.§fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
fn into_pyobject_or_pyerr(self, py: Python<'py>) -> Result<Self::Output, PyErr>
self into a Python object. Read more§impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
impl<'py, T> IntoPyObjectNautilusExt<'py> for Twhere
T: IntoPyObjectExt<'py>,
§fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>
fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
§const NAME: &'static str = T::NAME
const NAME: &'static str = T::NAME
Use ::classinfo_object() instead and format the type name at runtime. Note that using built-in cast features is often better than manual PyTypeCheck usage.
§fn type_check(object: &Bound<'_, PyAny>) -> bool
fn type_check(object: &Bound<'_, PyAny>) -> bool
§fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
fn classinfo_object(py: Python<'_>) -> Bound<'_, PyAny>
isinstance and issubclass function. Read more