trade_aggregation/candle_components/
mod.rs1mod average_price;
5mod candle_component_trait;
6mod close;
7mod close_timestamp;
8mod directional_trade_ratio;
9mod directional_volume_ratio;
10mod entropy;
11mod high;
12mod low;
13mod median_price;
14mod num_trades;
15mod open;
16#[cfg(feature = "chrono")]
17mod open_datetime;
18mod open_timestamp;
19mod std_dev_prices;
20mod std_dev_sizes;
21mod time_velocity;
22mod trades;
23mod volume;
24mod volume_buys;
25mod volume_sells;
26mod vpin;
27mod weighted_price;
28
29pub use average_price::AveragePrice;
30pub use candle_component_trait::{CandleComponent, CandleComponentUpdate};
31pub use close::Close;
32pub use close_timestamp::CloseTimeStamp;
33pub use directional_trade_ratio::DirectionalTradeRatio;
34pub use directional_volume_ratio::DirectionalVolumeRatio;
35pub use entropy::Entropy;
36pub use high::High;
37pub use low::Low;
38pub use median_price::MedianPrice;
39pub use num_trades::NumTrades;
40pub use open::Open;
41#[cfg(feature = "chrono")]
42pub use open_datetime::OpenDateTime;
43pub use open_timestamp::OpenTimeStamp;
44pub use std_dev_prices::StdDevPrices;
45pub use std_dev_sizes::StdDevSizes;
46pub use time_velocity::TimeVelocity;
47pub use trades::Trades;
48pub use volume::Volume;
49pub use volume_buys::VolumeBuys;
50pub use volume_sells::VolumeSells;
51pub use vpin::Vpin;
52pub use weighted_price::WeightedPrice;
53
54#[cfg(test)]
55mod tests {
56 use crate::Trade;
57
58 pub const TRADES: [Trade; 10] = [
59 Trade {
60 timestamp: 1684677200_000,
61 price: 100.0,
62 size: 10.0,
63 },
64 Trade {
65 timestamp: 1684677210_000,
66 price: 101.0,
67 size: -10.0,
68 },
69 Trade {
70 timestamp: 1684677220_000,
71 price: 100.0,
72 size: 20.0,
73 },
74 Trade {
75 timestamp: 1684677230_000,
76 price: 102.0,
77 size: 10.0,
78 },
79 Trade {
80 timestamp: 1684677240_000,
81 price: 103.0,
82 size: 10.0,
83 },
84 Trade {
85 timestamp: 1684677250_000,
86 price: 104.0,
87 size: -20.0,
88 },
89 Trade {
90 timestamp: 1684677260_000,
91 price: 102.0,
92 size: -10.0,
93 },
94 Trade {
95 timestamp: 1684677270_000,
96 price: 101.0,
97 size: 10.0,
98 },
99 Trade {
100 timestamp: 1684677280_000,
101 price: 102.0,
102 size: 30.0,
103 },
104 Trade {
105 timestamp: 1684677290_000,
106 price: 105.0,
107 size: 10.0,
108 },
109 ];
110}