nautilus_execution/python/
mod.rs1#![allow(
19 clippy::missing_errors_doc,
20 reason = "errors documented on underlying Rust methods"
21)]
22
23pub mod fee;
24pub mod fill;
25pub mod latency;
26pub mod reconciliation;
27
28use pyo3::prelude::*;
29
30#[pymodule]
36pub fn execution(_: Python<'_>, m: &Bound<'_, PyModule>) -> PyResult<()> {
37 m.add_function(wrap_pyfunction!(
38 reconciliation::py_adjust_fills_for_partial_window,
39 m
40 )?)?;
41 m.add_function(wrap_pyfunction!(
42 reconciliation::py_calculate_reconciliation_price,
43 m
44 )?)?;
45 m.add_class::<crate::models::fee::FixedFeeModel>()?;
46 m.add_class::<crate::models::fee::MakerTakerFeeModel>()?;
47 m.add_class::<crate::models::fee::PerContractFeeModel>()?;
48 m.add_class::<crate::models::fill::DefaultFillModel>()?;
49 m.add_class::<crate::models::fill::BestPriceFillModel>()?;
50 m.add_class::<crate::models::fill::OneTickSlippageFillModel>()?;
51 m.add_class::<crate::models::fill::ProbabilisticFillModel>()?;
52 m.add_class::<crate::models::fill::TwoTierFillModel>()?;
53 m.add_class::<crate::models::fill::ThreeTierFillModel>()?;
54 m.add_class::<crate::models::fill::LimitOrderPartialFillModel>()?;
55 m.add_class::<crate::models::fill::SizeAwareFillModel>()?;
56 m.add_class::<crate::models::fill::CompetitionAwareFillModel>()?;
57 m.add_class::<crate::models::fill::VolumeSensitiveFillModel>()?;
58 m.add_class::<crate::models::fill::MarketHoursFillModel>()?;
59 m.add_class::<crate::models::latency::StaticLatencyModel>()?;
60 Ok(())
61}