apple_quant_algorithmic/volume/
side.rs1use super::DirectionalIntent;
2
3#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
4pub enum AggressorSide {
5 Ask,
6 Bid,
7}
8
9impl AggressorSide {
10 pub fn flip(
11 self,
12 ) -> Self {
13 match self {
14 Self::Ask => Self::Bid,
15 Self::Bid => Self::Ask,
16 }
17 }
18
19 pub fn as_directional_intent(
20 &self,
21 ) -> DirectionalIntent {
22 (*self).into()
23 }
24}
25
26#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
27pub enum RestingSide {
28 Ask,
29 Bid,
30}
31
32impl RestingSide {
33 pub fn flip(
34 self,
35 ) -> Self {
36 match self {
37 Self::Ask => Self::Bid,
38 Self::Bid => Self::Ask,
39 }
40 }
41
42 pub fn as_directional_intent(
43 &self,
44 ) -> DirectionalIntent {
45 (*self).into()
46 }
47}