nautilus_model/orders/mod.rs
1// -------------------------------------------------------------------------------------------------
2// Copyright (C) 2015-2025 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//! Order types for the trading domain model.
17
18#![allow(dead_code)]
19
20pub mod any;
21pub mod base;
22pub mod builder;
23pub mod default;
24pub mod limit;
25pub mod limit_if_touched;
26pub mod list;
27pub mod market;
28pub mod market_if_touched;
29pub mod market_to_limit;
30pub mod stop_limit;
31pub mod stop_market;
32pub mod trailing_stop_limit;
33pub mod trailing_stop_market;
34
35#[cfg(feature = "stubs")]
36pub mod stubs;
37
38// Re-exports
39pub use crate::orders::{
40 any::{LimitOrderAny, OrderAny, PassiveOrderAny, StopOrderAny},
41 base::{Order, OrderError},
42 builder::OrderTestBuilder,
43 limit::LimitOrder,
44 limit_if_touched::LimitIfTouchedOrder,
45 list::OrderList,
46 market::MarketOrder,
47 market_if_touched::MarketIfTouchedOrder,
48 market_to_limit::MarketToLimitOrder,
49 stop_limit::StopLimitOrder,
50 stop_market::StopMarketOrder,
51 trailing_stop_limit::TrailingStopLimitOrder,
52 trailing_stop_market::TrailingStopMarketOrder,
53};