1pub mod alert_register;
23pub mod costs;
24pub mod currency;
25pub mod engine;
26pub mod error;
27pub mod execution;
28pub mod position;
29pub mod position_manager;
30pub mod profile;
31pub mod rules;
32pub mod sizing;
33pub mod types;
34pub mod validation;
35
36pub use alert_register::PriceAlertRegister;
37pub use costs::{
38 CommissionModel, CostBasis, CostCharge, CostKind, CostValidationError, InstrumentCosts,
39 SwapAmount, SwapSchedule, rollover_instants,
40};
41pub use currency::{
42 ConversionError, ConversionLeg, ConversionLegAudit, ConversionPriceSide, ConversionQuoteBook,
43 ConversionResult, ConversionRoute, FxPair, FxPairDirection, QuoteValidationError,
44 RunCurrencyPlan, RunCurrencyPlanError, resolve_conversion_route, resolve_fx_pair,
45};
46pub use engine::{FutureApplyError, FutureApplyResult, TradeEngine};
47pub use error::{CoreError, Result};
48pub use execution::{ExecutionError, ExecutionPricer, ExecutionResult};
49pub use position::Position;
50pub use profile::{
51 EntryLevelResolution, EntryResolutionContext, GeneratedTargetResolution, ManagementProfile,
52 PositionRef, PositionResolver, PriceGridSource, ProfileApplicationError,
53 ProfileValidationError, RawSignal, ResolvedEntry, RuleConfigDef, StoplossMode,
54 TargetResolution, TargetResolutionSource, TargetSelection, TargetSource, allocate_target_steps,
55 allocate_target_units, resolve_signal, resolve_unprofiled_entry, validate_profile,
56};
57pub use rules::Rule;
58pub use sizing::{
59 InstrumentSizingError, LotCapStatus, SizingError, SizingPolicy, SizingResult,
60 compute_instrument_native_loss_per_lot, compute_instrument_size,
61 compute_instrument_size_for_spec, compute_instrument_size_for_spec_with_prices, compute_size,
62};
63pub use types::{
64 Action, CloseReason, Effect, EffectiveStop, ExecutionConvention, ExecutionFill, ExecutionModel,
65 Fill, FillModel, FillPurpose, FixedPrice, FutureEffect, FutureFill, GroupId, Lots, OrderType,
66 PositionId, PositionRecord, PositionStatus, PreparedPendingFill, PriceQuote, RuleConfig, Side,
67 Signal, SlippageModel, StopOrigin, TargetSpec, TradeId,
68};
69pub use validation::{
70 RawSignalValidationError, validate_entry_class, validate_raw_signal, validate_raw_signals,
71};