Skip to content

Commit be0c266

Browse files
author
Jack Culhane
committed
ADD: Add publisher enums for Cboe Futures Exchange
1 parent d7fa76e commit be0c266

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
## 0.45.0 - TBD
4+
5+
#### Enhancements
6+
- Added new venue, dataset, and publisher for Cboe Futures Exchange (`XCBF.PITCH`)
7+
38
## 0.44.0 - 2025-11-18
49

510
### Enhancements

rust/dbn/src/publishers.rs

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,10 +115,12 @@ pub enum Venue {
115115
Xeur = 50,
116116
/// European Energy Exchange
117117
Xeee = 51,
118+
/// Cboe Futures Exchange
119+
Xcbf = 52,
118120
}
119121

120122
/// The number of [`Venue`] variants.
121-
pub const VENUE_COUNT: usize = 51;
123+
pub const VENUE_COUNT: usize = 52;
122124

123125
impl Venue {
124126
/// Converts the venue to its `str` representation.
@@ -175,6 +177,7 @@ impl Venue {
175177
Self::Ifll => "IFLL",
176178
Self::Xeur => "XEUR",
177179
Self::Xeee => "XEEE",
180+
Self::Xcbf => "XCBF",
178181
}
179182
}
180183
}
@@ -247,6 +250,7 @@ impl std::str::FromStr for Venue {
247250
"IFLL" => Ok(Self::Ifll),
248251
"XEUR" => Ok(Self::Xeur),
249252
"XEEE" => Ok(Self::Xeee),
253+
"XCBF" => Ok(Self::Xcbf),
250254
_ => Err(Error::conversion::<Self>(s)),
251255
}
252256
}
@@ -339,10 +343,12 @@ pub enum Dataset {
339343
XeurEobi = 38,
340344
/// European Energy Exchange EOBI
341345
XeeeEobi = 39,
346+
/// Cboe Futures Exchange PITCH
347+
XcbfPitch = 40,
342348
}
343349

344350
/// The number of [`Dataset`] variants.
345-
pub const DATASET_COUNT: usize = 39;
351+
pub const DATASET_COUNT: usize = 40;
346352

347353
impl Dataset {
348354
/// Converts the dataset to its `str` representation.
@@ -389,6 +395,7 @@ impl Dataset {
389395
Self::IfllImpact => "IFLL.IMPACT",
390396
Self::XeurEobi => "XEUR.EOBI",
391397
Self::XeeeEobi => "XEEE.EOBI",
398+
Self::XcbfPitch => "XCBF.PITCH",
392399
}
393400
}
394401

@@ -511,6 +518,7 @@ impl Dataset {
511518
Self::IfllImpact => &[Publisher::IfllImpactIfll, Publisher::IfllImpactXoff],
512519
Self::XeurEobi => &[Publisher::XeurEobiXeur, Publisher::XeurEobiXoff],
513520
Self::XeeeEobi => &[Publisher::XeeeEobiXeee, Publisher::XeeeEobiXoff],
521+
Self::XcbfPitch => &[Publisher::XcbfPitchXcbf],
514522
}
515523
}
516524
}
@@ -573,6 +581,7 @@ impl std::str::FromStr for Dataset {
573581
"IFLL.IMPACT" => Ok(Self::IfllImpact),
574582
"XEUR.EOBI" => Ok(Self::XeurEobi),
575583
"XEEE.EOBI" => Ok(Self::XeeeEobi),
584+
"XCBF.PITCH" => Ok(Self::XcbfPitch),
576585
_ => Err(Error::conversion::<Self>(s)),
577586
}
578587
}
@@ -793,10 +802,12 @@ pub enum Publisher {
793802
XeurEobiXoff = 103,
794803
/// European Energy Exchange EOBI - Off-Market Trades
795804
XeeeEobiXoff = 104,
805+
/// Cboe Futures Exchange
806+
XcbfPitchXcbf = 105,
796807
}
797808

798809
/// The number of [`Publisher`] variants.
799-
pub const PUBLISHER_COUNT: usize = 104;
810+
pub const PUBLISHER_COUNT: usize = 105;
800811

801812
impl Publisher {
802813
/// Converts the publisher to its `str` representation.
@@ -906,6 +917,7 @@ impl Publisher {
906917
Self::XeeeEobiXeee => "XEEE.EOBI.XEEE",
907918
Self::XeurEobiXoff => "XEUR.EOBI.XOFF",
908919
Self::XeeeEobiXoff => "XEEE.EOBI.XOFF",
920+
Self::XcbfPitchXcbf => "XCBF.PITCH.XCBF",
909921
}
910922
}
911923

@@ -1016,6 +1028,7 @@ impl Publisher {
10161028
Self::XeeeEobiXeee => Venue::Xeee,
10171029
Self::XeurEobiXoff => Venue::Xoff,
10181030
Self::XeeeEobiXoff => Venue::Xoff,
1031+
Self::XcbfPitchXcbf => Venue::Xcbf,
10191032
}
10201033
}
10211034

@@ -1126,6 +1139,7 @@ impl Publisher {
11261139
Self::XeeeEobiXeee => Dataset::XeeeEobi,
11271140
Self::XeurEobiXoff => Dataset::XeurEobi,
11281141
Self::XeeeEobiXoff => Dataset::XeeeEobi,
1142+
Self::XcbfPitchXcbf => Dataset::XcbfPitch,
11291143
}
11301144
}
11311145

@@ -1239,6 +1253,7 @@ impl Publisher {
12391253
(Dataset::XeeeEobi, Venue::Xeee) => Ok(Self::XeeeEobiXeee),
12401254
(Dataset::XeurEobi, Venue::Xoff) => Ok(Self::XeurEobiXoff),
12411255
(Dataset::XeeeEobi, Venue::Xoff) => Ok(Self::XeeeEobiXoff),
1256+
(Dataset::XcbfPitch, Venue::Xcbf) => Ok(Self::XcbfPitchXcbf),
12421257
_ => Err(Error::conversion::<Self>(format!("({dataset}, {venue})"))),
12431258
}
12441259
}
@@ -1365,6 +1380,7 @@ impl std::str::FromStr for Publisher {
13651380
"XEEE.EOBI.XEEE" => Ok(Self::XeeeEobiXeee),
13661381
"XEUR.EOBI.XOFF" => Ok(Self::XeurEobiXoff),
13671382
"XEEE.EOBI.XOFF" => Ok(Self::XeeeEobiXoff),
1383+
"XCBF.PITCH.XCBF" => Ok(Self::XcbfPitchXcbf),
13681384
_ => Err(Error::conversion::<Self>(s)),
13691385
}
13701386
}

0 commit comments

Comments
 (0)