indexes_rs/v1/
types.rs

1use serde::Serialize;
2
3use super::{
4    bollinger::types::BBResult, ma::main::MovingAverageResults, momentum::types::MomentumResult, roc::types::ROCResult, rsi::types::RSIResult, stochastic::types::StochResult,
5    support_resistance::types::SRResult,
6};
7
8#[derive(Debug, Clone, Serialize, PartialEq)]
9pub enum TradingSignal {
10    Buy,
11    Sell,
12    Hold,
13}
14
15#[derive(Debug, Clone, Serialize, PartialEq)]
16pub enum TrendDirection {
17    Up,
18    Down,
19    Sideways,
20}
21
22pub struct BasicIndexes {
23    pub ma: MovingAverageResults,
24    pub rsi: RSIResult,
25    pub bb: BBResult,
26    pub atr: f64,
27    pub roc: ROCResult,
28    pub momentum: MomentumResult,
29    pub stochastic: StochResult,
30    pub support_resistance: SRResult,
31}