Expand description
§OxiDiviner
A comprehensive Rust library for time series analysis and forecasting.
§Overview
OxiDiviner is a comprehensive library for time series analysis and forecasting, designed to provide efficient, accurate, and easy-to-use statistical models for Rust. This library includes all functionality in a single crate for ease of use.
§Enhanced API Modules
OxiDiviner provides several enhanced API modules for different use cases:
financial- Specialized functionality for financial time series analysisapi- High-level unified interface for all forecasting modelsquick- One-line utility functions for rapid prototypingbatch- Batch processing for multiple time series simultaneously
§Quick Start
ⓘ
use oxidiviner::prelude::*;
use oxidiviner::quick;
use chrono::{Duration, Utc};
// Generate sample data
let start = Utc::now();
let timestamps: Vec<_> = (0..30).map(|i| start + Duration::days(i)).collect();
let values: Vec<f64> = (0..30).map(|i| 100.0 + i as f64 + (i as f64 * 0.1).sin() * 5.0).collect();
// Quick forecasting
let (forecast, model_used) = quick::auto_forecast(timestamps, values, 5)?;
println!("Used {} model, forecast: {:?}", model_used, forecast);Re-exports§
pub use api::ForecastBuilder;pub use api::ForecastConfig;pub use api::ForecastOutput;pub use api::Forecaster;pub use api::ModelParameters;pub use api::ModelType;pub use batch::BatchConfig;pub use batch::BatchForecastResult;pub use batch::BatchModelType;pub use batch::BatchTimeSeries;pub use financial::FinancialTimeSeries;pub use financial::ModelComparison;pub use financial::ModelResult;pub use adaptive::AdaptiveBuilder;pub use adaptive::AdaptiveConfig;pub use adaptive::MarketRegime;pub use adaptive::RealTimeQualitySystem;pub use adaptive::RegimeDetector;pub use models::autoregressive::ARIMAModel;pub use models::autoregressive::ARMAModel;pub use models::autoregressive::ARModel;pub use models::autoregressive::SARIMAModel;pub use models::autoregressive::VARModel;pub use models::exponential_smoothing::DailyETSModel;pub use models::exponential_smoothing::DampedTrendModel;pub use models::exponential_smoothing::ETSComponent;pub use models::exponential_smoothing::ETSModel;pub use models::exponential_smoothing::HoltLinearModel;pub use models::exponential_smoothing::HoltWintersModel;pub use models::exponential_smoothing::MinuteETSModel;pub use models::exponential_smoothing::SimpleESModel;pub use models::garch::EGARCHModel;pub use models::garch::GARCHMModel;pub use models::garch::GARCHModel;pub use models::garch::GJRGARCHModel;pub use models::garch::RiskPremiumType;pub use models::moving_average::MAModel;pub use models::cointegration::VECMModel;pub use models::decomposition::STLModel;pub use models::nonlinear::TARModel;pub use models::regime_switching::MarkovSwitchingModel;pub use models::state_space::KalmanFilter;pub use crate::core::*;
Modules§
- adaptive
- Adaptive Forecasting System
- advanced
- Advanced API for specialized use cases
- api
- High-level API module
- batch
- Batch processing module
- builder
- Builder API namespace for fluent model construction
- convenience
- Convenience functions for quick forecasting
- core
- OxiDiviner Core
- ensemble
- Ensemble Forecasting Methods
- financial
- Financial time series analysis module
- math
- models
- OxiDiviner Models
- optimization
- Parameter Optimization Engine
- prelude
- Prelude module for convenient imports
- quick
- Quick utilities module