Skip to main content

nautilus_betfair/
lib.rs

1// -------------------------------------------------------------------------------------------------
2//  Copyright (C) 2015-2026 Nautech Systems Pty Ltd. All rights reserved.
3//  https://nautechsystems.io
4//
5//  Licensed under the GNU Lesser General Public License Version 3.0 (the "License");
6//  You may not use this file except in compliance with the License.
7//  You may obtain a copy of the License at https://www.gnu.org/licenses/lgpl-3.0.en.html
8//
9//  Unless required by applicable law or agreed to in writing, software
10//  distributed under the License is distributed on an "AS IS" BASIS,
11//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12//  See the License for the specific language governing permissions and
13//  limitations under the License.
14// -------------------------------------------------------------------------------------------------
15
16//! [NautilusTrader](https://nautilustrader.io) adapter for the [Betfair](https://www.betfair.com/) betting exchange.
17//!
18//! The `nautilus-betfair` crate provides data and execution clients, streaming
19//! and REST API models, and full NautilusTrader integration for the Betfair
20//! betting exchange.
21//!
22//! The official API reference can be found at <https://docs.developer.betfair.com/>.
23//!
24//! # NautilusTrader
25//!
26//! [NautilusTrader](https://nautilustrader.io) is an open-source, production-grade, Rust-native
27//! engine for multi-asset, multi-venue trading systems.
28//!
29//! The system spans research, deterministic simulation, and live execution within a single
30//! event-driven architecture, providing research-to-live semantic parity.
31//!
32//! # Naming conventions
33//!
34//! Betfair's API uses British English spelling. This crate preserves those
35//! spellings in type names, method strings, and fixture files, e.g.
36//! `MarketCatalogue` / `listMarketCatalogue`, not "catalog".
37//!
38//! # Feature flags
39//!
40//! - `high-precision`: Enables 128-bit value types from `nautilus-model`.
41
42#![warn(rustc::all)]
43#![deny(unsafe_code)]
44#![deny(nonstandard_style)]
45#![deny(missing_debug_implementations)]
46#![deny(clippy::missing_errors_doc)]
47#![deny(clippy::missing_panics_doc)]
48#![deny(rustdoc::broken_intra_doc_links)]
49
50pub mod common;
51pub mod config;
52pub mod data;
53pub mod data_types;
54pub mod execution;
55pub mod factories;
56pub mod http;
57pub mod loader;
58pub mod provider;
59pub mod stream;
60
61#[cfg(feature = "python")]
62pub mod python;