pub struct BetfairDataClientConfig {Show 26 fields
pub account_currency: String,
pub username: Option<String>,
pub password: Option<String>,
pub app_key: Option<String>,
pub proxy_url: Option<String>,
pub request_rate_per_second: u32,
pub default_min_notional: Option<Decimal>,
pub event_type_ids: Option<Vec<String>>,
pub event_type_names: Option<Vec<String>>,
pub event_ids: Option<Vec<String>>,
pub country_codes: Option<Vec<String>>,
pub market_types: Option<Vec<String>>,
pub market_ids: Option<Vec<String>>,
pub min_market_start_time: Option<String>,
pub max_market_start_time: Option<String>,
pub stream_host: Option<String>,
pub stream_port: Option<u16>,
pub stream_heartbeat_secs: Option<u64>,
pub stream_heartbeat_timeout_secs: Option<u64>,
pub stream_reconnect_delay_initial_ms: u64,
pub stream_reconnect_delay_max_ms: u64,
pub stream_use_tls: bool,
pub stream_conflate_ms: Option<u64>,
pub subscription_delay_secs: u64,
pub subscribe_race_data: bool,
pub subscribe_cricket_data: bool,
}Expand description
Configuration for the Betfair live data client.
Fields§
§account_currency: StringAccount currency code.
username: Option<String>Optional Betfair username.
password: Option<String>Optional Betfair password.
app_key: Option<String>Optional Betfair application key.
proxy_url: Option<String>Optional proxy URL for HTTP requests.
request_rate_per_second: u32General HTTP request rate limit per second.
default_min_notional: Option<Decimal>Optional default minimum notional in account_currency.
event_type_ids: Option<Vec<String>>Optional event type ID filter.
event_type_names: Option<Vec<String>>Optional event type name filter.
event_ids: Option<Vec<String>>Optional event ID filter.
country_codes: Option<Vec<String>>Optional country code filter.
market_types: Option<Vec<String>>Optional market type filter.
market_ids: Option<Vec<String>>Optional market ID filter.
min_market_start_time: Option<String>Optional lower bound for market start time.
max_market_start_time: Option<String>Optional upper bound for market start time.
stream_host: Option<String>Optional override for stream host.
stream_port: Option<u16>Optional override for stream port.
stream_heartbeat_secs: Option<u64>Optional interval between outbound stream heartbeat messages in seconds.
stream_heartbeat_timeout_secs: Option<u64>Optional dead-peer timeout override in seconds.
stream_reconnect_delay_initial_ms: u64Initial reconnection backoff in milliseconds.
stream_reconnect_delay_max_ms: u64Maximum reconnection backoff in milliseconds.
stream_use_tls: boolWhether to use TLS for the stream connection.
stream_conflate_ms: Option<u64>Stream conflation setting in milliseconds. When set, Betfair batches
stream updates for this interval. None uses Betfair defaults.
subscription_delay_secs: u64Delay in seconds before sending the initial subscription message after connecting.
subscribe_race_data: boolSubscribe to the race stream for Total Performance Data (TPD).
subscribe_cricket_data: boolSubscribe to the sports data stream for cricket match updates.
Implementations§
Source§impl BetfairDataClientConfig
impl BetfairDataClientConfig
Sourcepub fn builder() -> BetfairDataClientConfigBuilder
pub fn builder() -> BetfairDataClientConfigBuilder
Create an instance of BetfairDataClientConfig using the builder syntax
Source§impl BetfairDataClientConfig
impl BetfairDataClientConfig
Sourcepub fn credential(&self) -> Result<BetfairCredential>
pub fn credential(&self) -> Result<BetfairCredential>
Returns the configured credentials or resolves them from the environment.
§Errors
Returns an error if credentials are incomplete or unavailable.
Sourcepub fn min_notional(&self) -> Result<Option<Money>>
pub fn min_notional(&self) -> Result<Option<Money>>
Returns the default instrument minimum notional.
§Errors
Returns an error if the account currency code is invalid.
Returns the navigation filter for instrument loading.
Sourcepub fn stream_config(&self) -> BetfairStreamConfig
pub fn stream_config(&self) -> BetfairStreamConfig
Returns the stream configuration.
Trait Implementations§
Source§impl ClientConfig for BetfairDataClientConfig
impl ClientConfig for BetfairDataClientConfig
Source§impl Clone for BetfairDataClientConfig
impl Clone for BetfairDataClientConfig
Source§fn clone(&self) -> BetfairDataClientConfig
fn clone(&self) -> BetfairDataClientConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BetfairDataClientConfig
impl Debug for BetfairDataClientConfig
Source§impl Default for BetfairDataClientConfig
impl Default for BetfairDataClientConfig
impl DerefToPyAny for BetfairDataClientConfig
Source§impl<'de> Deserialize<'de> for BetfairDataClientConfigwhere
BetfairDataClientConfig: Default,
impl<'de> Deserialize<'de> for BetfairDataClientConfigwhere
BetfairDataClientConfig: Default,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl<'a, 'py> FromPyObject<'a, 'py> for BetfairDataClientConfigwhere
Self: Clone,
impl<'a, 'py> FromPyObject<'a, 'py> for BetfairDataClientConfigwhere
Self: Clone,
Source§impl<'py> IntoPyObject<'py> for BetfairDataClientConfig
impl<'py> IntoPyObject<'py> for BetfairDataClientConfig
Source§type Target = BetfairDataClientConfig
type Target = BetfairDataClientConfig
Source§type Output = Bound<'py, <BetfairDataClientConfig as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <BetfairDataClientConfig 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 BetfairDataClientConfig
impl PyClass for BetfairDataClientConfig
Source§impl PyClassImpl for BetfairDataClientConfig
impl PyClassImpl for BetfairDataClientConfig
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 = /// Configuration for the Betfair live data client.
const RAW_DOC: &'static CStr = /// Configuration for the Betfair live data client.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type Layout = <<BetfairDataClientConfig as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BetfairDataClientConfig>
type Layout = <<BetfairDataClientConfig as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BetfairDataClientConfig>
Source§type ThreadChecker = NoopThreadChecker
type ThreadChecker = NoopThreadChecker
type Inventory = Pyo3MethodsInventoryForBetfairDataClientConfig
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 PyClassNewTextSignature for BetfairDataClientConfig
impl PyClassNewTextSignature for BetfairDataClientConfig
const TEXT_SIGNATURE: &'static str = "(account_currency=None, username=None, password=None, app_key=None, proxy_url=None, request_rate_per_second=5, default_min_notional=None, event_type_ids=None, event_type_names=None, event_ids=None, country_codes=None, market_types=None, market_ids=None, min_market_start_time=None, max_market_start_time=None, stream_host=None, stream_port=None, stream_heartbeat_secs=None, stream_heartbeat_timeout_secs=None, stream_reconnect_delay_initial_ms=2000, stream_reconnect_delay_max_ms=30000, stream_use_tls=True, stream_conflate_ms=None, subscription_delay_secs=None, subscribe_race_data=False, subscribe_cricket_data=False)"
Source§impl PyStubType for BetfairDataClientConfig
impl PyStubType for BetfairDataClientConfig
Source§fn type_output() -> TypeInfo
fn type_output() -> TypeInfo
§fn type_input() -> TypeInfo
fn type_input() -> TypeInfo
Source§impl PyTypeInfo for BetfairDataClientConfig
impl PyTypeInfo for BetfairDataClientConfig
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.Auto Trait Implementations§
impl Freeze for BetfairDataClientConfig
impl RefUnwindSafe for BetfairDataClientConfig
impl Send for BetfairDataClientConfig
impl Sync for BetfairDataClientConfig
impl Unpin for BetfairDataClientConfig
impl UnsafeUnpin for BetfairDataClientConfig
impl UnwindSafe for BetfairDataClientConfig
Blanket Implementations§
impl<T> Allocation for T
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<'py, T> FromPyObjectOwned<'py> for Twhere
T: for<'a> FromPyObject<'a, 'py>,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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>where
Self: IntoPyObject<'py, Error = !>,
fn into_py_any_unwrap(self, py: Python<'py>) -> Py<PyAny>where
Self: IntoPyObject<'py, Error = !>,
self into a [Py<PyAny>] when the underlying conversion is infallible.§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§impl<T> PyErrArguments for T
impl<T> PyErrArguments for T
§impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
impl<T> PyTypeCheck for Twhere
T: PyTypeInfo,
§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