bybit_rust_api/rest/enums/
interval.rs

1use std::fmt::{Display, Formatter, Result};
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Serialize, Deserialize, PartialEq)]
6pub enum Interval {
7    #[serde(rename = "1")]
8    OneMinute, // 1 minute
9    #[serde(rename = "3")]
10    ThreeMinute, // 3 minutes
11    #[serde(rename = "5")]
12    FiveMinute, // 5 minutes
13    #[serde(rename = "15")]
14    FifteenMinute, // 15 minutes
15    #[serde(rename = "30")]
16    ThirtyMinute, // 30 minutes
17    #[serde(rename = "60")]
18    OneHour, // 1 hour
19    #[serde(rename = "120")]
20    TwoHour, // 2 hours
21    #[serde(rename = "240")]
22    FourHour, // 4 hours
23    #[serde(rename = "360")]
24    SixHour, // 6 hours
25    #[serde(rename = "720")]
26    TwelveHour, // 12 hours
27    #[serde(rename = "D")]
28    OneDay, // 1 day
29    #[serde(rename = "W")]
30    OneWeek, // 1 week
31    #[serde(rename = "M")]
32    OneMonth, // 1 month
33}
34
35impl Display for Interval {
36    fn fmt(&self, f: &mut Formatter) -> Result {
37        match self {
38            Interval::OneMinute => write!(f, "1"),
39            Interval::ThreeMinute => write!(f, "3"),
40            Interval::FiveMinute => write!(f, "5"),
41            Interval::FifteenMinute => write!(f, "15"),
42            Interval::ThirtyMinute => write!(f, "30"),
43            Interval::OneHour => write!(f, "60"),
44            Interval::TwoHour => write!(f, "120"),
45            Interval::FourHour => write!(f, "240"),
46            Interval::SixHour => write!(f, "360"),
47            Interval::TwelveHour => write!(f, "720"),
48            Interval::OneDay => write!(f, "D"),
49            Interval::OneWeek => write!(f, "W"),
50            Interval::OneMonth => write!(f, "M"),
51        }
52    }
53}