pub struct BybitExecutionClientConfig {Show 22 fields
pub api_key: Option<String>,
pub api_secret: Option<String>,
pub product_types: Vec<BybitProductType>,
pub environment: BybitEnvironment,
pub base_url_http: Option<String>,
pub base_url_ws_private: Option<String>,
pub base_url_ws_trade: Option<String>,
pub proxy_url: Option<String>,
pub http_timeout_secs: u64,
pub max_retries: u32,
pub retry_delay_initial_ms: u64,
pub retry_delay_max_ms: u64,
pub heartbeat_interval_secs: u64,
pub auth_timeout_secs: Option<u64>,
pub recv_window_ms: u64,
pub account_id: Option<AccountId>,
pub use_spot_position_reports: bool,
pub auto_repay_spot_borrows: bool,
pub futures_leverages: Option<HashMap<String, u32>>,
pub position_mode: Option<HashMap<String, BybitPositionMode>>,
pub margin_mode: Option<BybitMarginMode>,
pub transport_backend: TransportBackend,
}Expand description
Configuration for the Bybit live execution client.
Fields§
§api_key: Option<String>API key for authenticated requests.
api_secret: Option<String>API secret for authenticated requests.
product_types: Vec<BybitProductType>Product types to support (e.g., Linear, Spot, Inverse, Option).
environment: BybitEnvironmentEnvironment selection (Mainnet, Testnet, Demo).
base_url_http: Option<String>Optional override for the REST base URL.
base_url_ws_private: Option<String>Optional override for the private WebSocket URL.
base_url_ws_trade: Option<String>Optional override for the trade WebSocket URL.
proxy_url: Option<String>Optional proxy URL for HTTP and WebSocket transports.
http_timeout_secs: u64REST timeout in seconds.
max_retries: u32Maximum retry attempts for REST requests.
retry_delay_initial_ms: u64Initial retry backoff in milliseconds.
retry_delay_max_ms: u64Maximum retry backoff in milliseconds.
heartbeat_interval_secs: u64Heartbeat interval in seconds for WebSocket clients.
auth_timeout_secs: Option<u64>Optional WebSocket authentication wait timeout (seconds), defaulting to the client default when unset.
recv_window_ms: u64Receive window in milliseconds for signed requests.
account_id: Option<AccountId>Optional account identifier to associate with the execution client.
use_spot_position_reports: boolWhether scoped execution-client SPOT position requests derive positions from wallet balances. The HTTP client rejects enabled unscoped SPOT requests because balances cannot be attributed to pairs. The execution client omits SPOT from bulk requests and reports its bulk coverage as unavailable.
auto_repay_spot_borrows: boolWhether to automatically repay SPOT margin borrows after BUY orders tracked by
this client and reported on the standard execution channel (not execution.fast)
fully fill.
futures_leverages: Option<HashMap<String, u32>>Leverage configuration for futures (symbol -> leverage).
position_mode: Option<HashMap<String, BybitPositionMode>>Position mode configuration for symbols (symbol -> mode).
margin_mode: Option<BybitMarginMode>Unified margin mode setting.
transport_backend: TransportBackendWebSocket transport backend (defaults to Tungstenite).
Implementations§
Source§impl BybitExecutionClientConfig
impl BybitExecutionClientConfig
Sourcepub fn builder() -> BybitExecutionClientConfigBuilder
pub fn builder() -> BybitExecutionClientConfigBuilder
Create an instance of BybitExecutionClientConfig using the builder syntax
Source§impl BybitExecutionClientConfig
impl BybitExecutionClientConfig
Sourcepub fn has_api_credentials(&self) -> bool
pub fn has_api_credentials(&self) -> bool
Returns true if both API key and secret are available.
Sourcepub fn http_base_url(&self) -> String
pub fn http_base_url(&self) -> String
Returns the REST base URL, considering overrides and environment.
Sourcepub fn ws_private_url(&self) -> String
pub fn ws_private_url(&self) -> String
Returns the private WebSocket URL, considering overrides and environment.
Sourcepub fn ws_trade_url(&self) -> String
pub fn ws_trade_url(&self) -> String
Returns the trade WebSocket URL, considering overrides and environment.
Trait Implementations§
Source§impl ClientConfig for BybitExecutionClientConfig
impl ClientConfig for BybitExecutionClientConfig
Source§impl Clone for BybitExecutionClientConfig
impl Clone for BybitExecutionClientConfig
Source§fn clone(&self) -> BybitExecutionClientConfig
fn clone(&self) -> BybitExecutionClientConfig
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 BybitExecutionClientConfig
impl Debug for BybitExecutionClientConfig
Source§impl Default for BybitExecutionClientConfig
impl Default for BybitExecutionClientConfig
impl DerefToPyAny for BybitExecutionClientConfig
Source§impl<'de> Deserialize<'de> for BybitExecutionClientConfigwhere
BybitExecutionClientConfig: Default,
impl<'de> Deserialize<'de> for BybitExecutionClientConfigwhere
BybitExecutionClientConfig: 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 BybitExecutionClientConfigwhere
Self: Clone,
impl<'a, 'py> FromPyObject<'a, 'py> for BybitExecutionClientConfigwhere
Self: Clone,
Source§impl<'py> IntoPyObject<'py> for BybitExecutionClientConfig
impl<'py> IntoPyObject<'py> for BybitExecutionClientConfig
Source§type Target = BybitExecutionClientConfig
type Target = BybitExecutionClientConfig
Source§type Output = Bound<'py, <BybitExecutionClientConfig as IntoPyObject<'py>>::Target>
type Output = Bound<'py, <BybitExecutionClientConfig 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 BybitExecutionClientConfig
impl PyClass for BybitExecutionClientConfig
Source§impl PyClassImpl for BybitExecutionClientConfig
impl PyClassImpl for BybitExecutionClientConfig
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 Bybit live execution client.
const RAW_DOC: &'static CStr = /// Configuration for the Bybit live execution client.
Source§const DOC: &'static CStr
const DOC: &'static CStr
text_signature if a constructor is defined. Read moreSource§type Layout = <<BybitExecutionClientConfig as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BybitExecutionClientConfig>
type Layout = <<BybitExecutionClientConfig as PyClassImpl>::BaseNativeType as PyClassBaseType>::Layout<BybitExecutionClientConfig>
Source§type ThreadChecker = NoopThreadChecker
type ThreadChecker = NoopThreadChecker
type Inventory = Pyo3MethodsInventoryForBybitExecutionClientConfig
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 BybitExecutionClientConfig
impl PyClassNewTextSignature for BybitExecutionClientConfig
const TEXT_SIGNATURE: &'static str = "(product_types=None, environment=None, api_key=None, api_secret=None, base_url_http=None, base_url_ws_private=None, base_url_ws_trade=None, proxy_url=None, http_timeout_secs=None, max_retries=None, retry_delay_initial_ms=None, retry_delay_max_ms=None, heartbeat_interval_secs=None, auth_timeout_secs=None, recv_window_ms=None, account_id=None, use_spot_position_reports=None, auto_repay_spot_borrows=None, margin_mode=None, transport_backend=None)"
Source§impl PyStubType for BybitExecutionClientConfig
impl PyStubType for BybitExecutionClientConfig
Source§fn type_output() -> TypeInfo
fn type_output() -> TypeInfo
§fn type_input() -> TypeInfo
fn type_input() -> TypeInfo
Source§impl PyTypeInfo for BybitExecutionClientConfig
impl PyTypeInfo for BybitExecutionClientConfig
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 BybitExecutionClientConfig
impl RefUnwindSafe for BybitExecutionClientConfig
impl Send for BybitExecutionClientConfig
impl Sync for BybitExecutionClientConfig
impl Unpin for BybitExecutionClientConfig
impl UnsafeUnpin for BybitExecutionClientConfig
impl UnwindSafe for BybitExecutionClientConfig
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