nautilus_okx/python/
mod.rs1pub mod enums;
19pub mod http;
20pub mod models;
21pub mod urls;
22pub mod websocket;
23
24use pyo3::prelude::*;
25
26#[pymodule]
32pub fn okx(_: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
33 m.add_class::<super::websocket::OKXWebSocketClient>()?;
34 m.add_class::<super::websocket::messages::OKXWebSocketError>()?;
35 m.add_class::<super::http::OKXHttpClient>()?;
36 m.add_class::<crate::http::models::OKXBalanceDetail>()?;
37 m.add_class::<crate::common::enums::OKXInstrumentType>()?;
38 m.add_class::<crate::common::enums::OKXContractType>()?;
39 m.add_class::<crate::common::enums::OKXMarginMode>()?;
40 m.add_class::<crate::common::enums::OKXTradeMode>()?;
41 m.add_class::<crate::common::enums::OKXOrderStatus>()?;
42 m.add_class::<crate::common::enums::OKXPositionMode>()?;
43 m.add_class::<crate::common::enums::OKXVipLevel>()?;
44 m.add_class::<crate::common::urls::OKXEndpointType>()?;
45 m.add_function(wrap_pyfunction!(urls::get_okx_http_base_url, m)?)?;
46 m.add_function(wrap_pyfunction!(urls::get_okx_ws_url_public, m)?)?;
47 m.add_function(wrap_pyfunction!(urls::get_okx_ws_url_private, m)?)?;
48 m.add_function(wrap_pyfunction!(urls::get_okx_ws_url_business, m)?)?;
49 m.add_function(wrap_pyfunction!(urls::okx_requires_authentication, m)?)?;
50 Ok(())
51}