Skip to content

Commit a1be222

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

File tree

3 files changed

+35
-0
lines changed

3 files changed

+35
-0
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

include/databento/publishers.hpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,8 @@ enum class Venue : std::uint16_t {
109109
Xeur = 50,
110110
// European Energy Exchange
111111
Xeee = 51,
112+
// Cboe Futures Exchange
113+
Xcbf = 52,
112114
};
113115

114116
// A source of data.
@@ -191,6 +193,8 @@ enum class Dataset : std::uint16_t {
191193
XeurEobi = 38,
192194
// European Energy Exchange EOBI
193195
XeeeEobi = 39,
196+
// Cboe Futures Exchange PITCH
197+
XcbfPitch = 40,
194198
};
195199

196200
// A specific Venue from a specific data source.
@@ -403,6 +407,8 @@ enum class Publisher : std::uint16_t {
403407
XeurEobiXoff = 103,
404408
// European Energy Exchange EOBI - Off-Market Trades
405409
XeeeEobiXoff = 104,
410+
// Cboe Futures Exchange
411+
XcbfPitchXcbf = 105,
406412
};
407413

408414
// Get a Publisher's Venue.

src/publishers.cpp

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,9 @@ const char* ToString(Venue venue) {
164164
case Venue::Xeee: {
165165
return "XEEE";
166166
}
167+
case Venue::Xcbf: {
168+
return "XCBF";
169+
}
167170
default: {
168171
return "Unknown";
169172
}
@@ -330,6 +333,9 @@ Venue FromString(const std::string& str) {
330333
if (str == "XEEE") {
331334
return Venue::Xeee;
332335
}
336+
if (str == "XCBF") {
337+
return Venue::Xcbf;
338+
}
333339
throw InvalidArgumentError{"FromString<Venue>", "str",
334340
"unknown value '" + str + '\''};
335341
}
@@ -453,6 +459,9 @@ const char* ToString(Dataset dataset) {
453459
case Dataset::XeeeEobi: {
454460
return "XEEE.EOBI";
455461
}
462+
case Dataset::XcbfPitch: {
463+
return "XCBF.PITCH";
464+
}
456465
default: {
457466
return "Unknown";
458467
}
@@ -583,6 +592,9 @@ Dataset FromString(const std::string& str) {
583592
if (str == "XEEE.EOBI") {
584593
return Dataset::XeeeEobi;
585594
}
595+
if (str == "XCBF.PITCH") {
596+
return Dataset::XcbfPitch;
597+
}
586598
throw InvalidArgumentError{"FromString<Dataset>", "str",
587599
"unknown value '" + str + '\''};
588600
}
@@ -901,6 +913,9 @@ Venue PublisherVenue(Publisher publisher) {
901913
case Publisher::XeeeEobiXoff: {
902914
return Venue::Xoff;
903915
}
916+
case Publisher::XcbfPitchXcbf: {
917+
return Venue::Xcbf;
918+
}
904919
default: {
905920
throw InvalidArgumentError{
906921
"PublisherVenue", "publisher",
@@ -1223,6 +1238,9 @@ Dataset PublisherDataset(Publisher publisher) {
12231238
case Publisher::XeeeEobiXoff: {
12241239
return Dataset::XeeeEobi;
12251240
}
1241+
case Publisher::XcbfPitchXcbf: {
1242+
return Dataset::XcbfPitch;
1243+
}
12261244
default: {
12271245
throw InvalidArgumentError{
12281246
"PublisherDataset", "publisher",
@@ -1546,6 +1564,9 @@ const char* ToString(Publisher publisher) {
15461564
case Publisher::XeeeEobiXoff: {
15471565
return "XEEE.EOBI.XOFF";
15481566
}
1567+
case Publisher::XcbfPitchXcbf: {
1568+
return "XCBF.PITCH.XCBF";
1569+
}
15491570
default: {
15501571
return "Unknown";
15511572
}
@@ -1871,6 +1892,9 @@ Publisher FromString(const std::string& str) {
18711892
if (str == "XEEE.EOBI.XOFF") {
18721893
return Publisher::XeeeEobiXoff;
18731894
}
1895+
if (str == "XCBF.PITCH.XCBF") {
1896+
return Publisher::XcbfPitchXcbf;
1897+
}
18741898
throw InvalidArgumentError{"FromString<Publisher>", "str",
18751899
"unknown value '" + str + '\''};
18761900
}

0 commit comments

Comments
 (0)