1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//! Bar (OHLCV) Data Module
//!
//! Core data structures for financial bar/candlestick data.
//!
//! # Module Structure
//!
//! - `bar` - Core `Bar` struct representing a single OHLCV data point
//! - `bar_data` - `BarData` container for multiple bars
//! - `patterns` - Candlestick pattern detection
//! - `io` - CSV and JSON I/O operations
//!
//! # Example
//!
//! ```
//! use chrono::Utc;
//! use egui_charts::model::{Bar, BarData};
//! use egui_charts::model::bar::CandlePatterns;
//!
//! // Create a single bar
//! let bar = Bar::new(Utc::now(), 100.0, 105.0, 98.0, 103.0, 1000.0);
//! assert!(bar.is_bullish());
//!
//! // Check patterns
//! if bar.is_hammer() {
//! println!("Hammer pattern detected!");
//! }
//!
//! // Create a collection
//! let mut data = BarData::new();
//! data.push(bar);
//! ```
// Re-export main types
pub use Bar;
pub use ;
pub use CandlePatterns;