Skip to content

Commit 6928b6f

Browse files
ADD: New publisher values for ICE EU/Endex
1 parent 623f557 commit 6928b6f

File tree

3 files changed

+64
-0
lines changed

3 files changed

+64
-0
lines changed

CHANGELOG.md

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

3+
## 0.13.2 - TBD
4+
### Enhancements
5+
- Added new publisher values in preparation for IFEU.IMPACT and NDEX.IMPACT datasets
6+
37
## 0.13.1 - 2023-10-23
48
### Enhancements
59
- Added new publisher values in preparation for DBEQ.PLUS

include/databento/publishers.hpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,10 @@ enum class Venue : std::uint16_t {
8181
Bato = 36,
8282
// MEMX LLC Options
8383
Mxop = 37,
84+
// ICE Futures Europe (Commodities)
85+
Ifeu = 38,
86+
// ICE Endex
87+
Ndex = 39,
8488
};
8589

8690
// A source of data.
@@ -139,6 +143,10 @@ enum class Dataset : std::uint16_t {
139143
XnasQbbo = 26,
140144
// Nasdaq NLS
141145
XnasNls = 27,
146+
// ICE Futures Europe (Commodities) iMpact
147+
IfeuImpact = 28,
148+
// ICE Endex iMpact
149+
NdexImpact = 29,
142150
};
143151

144152
// A specific Venue from a specific data source.
@@ -255,6 +263,10 @@ enum class Publisher : std::uint16_t {
255263
DbeqPlusFiny = 55,
256264
// DBEQ Plus - FINRA/Nasdaq TRF Chicago
257265
DbeqPlusFinc = 56,
266+
// ICE Futures Europe (Commodities)
267+
IfeuImpactIfeu = 57,
268+
// ICE Endex
269+
NdexImpactNdex = 58,
258270
};
259271

260272
// Get a Publisher's Venue.

src/publishers.cpp

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,12 @@ const char* ToString(Venue venue) {
122122
case Venue::Mxop: {
123123
return "MXOP";
124124
}
125+
case Venue::Ifeu: {
126+
return "IFEU";
127+
}
128+
case Venue::Ndex: {
129+
return "NDEX";
130+
}
125131
default: {
126132
return "Unknown";
127133
}
@@ -246,6 +252,12 @@ Venue FromString(const std::string& str) {
246252
if (str == "MXOP") {
247253
return Venue::Mxop;
248254
}
255+
if (str == "IFEU") {
256+
return Venue::Ifeu;
257+
}
258+
if (str == "NDEX") {
259+
return Venue::Ndex;
260+
}
249261
throw InvalidArgumentError{"FromString<Venue>", "str",
250262
"unknown value '" + str + '\''};
251263
}
@@ -333,6 +345,12 @@ const char* ToString(Dataset dataset) {
333345
case Dataset::XnasNls: {
334346
return "XNAS.NLS";
335347
}
348+
case Dataset::IfeuImpact: {
349+
return "IFEU.IMPACT";
350+
}
351+
case Dataset::NdexImpact: {
352+
return "NDEX.IMPACT";
353+
}
336354
default: {
337355
return "Unknown";
338356
}
@@ -427,6 +445,12 @@ Dataset FromString(const std::string& str) {
427445
if (str == "XNAS.NLS") {
428446
return Dataset::XnasNls;
429447
}
448+
if (str == "IFEU.IMPACT") {
449+
return Dataset::IfeuImpact;
450+
}
451+
if (str == "NDEX.IMPACT") {
452+
return Dataset::NdexImpact;
453+
}
430454
throw InvalidArgumentError{"FromString<Dataset>", "str",
431455
"unknown value '" + str + '\''};
432456
}
@@ -601,6 +625,12 @@ Venue PublisherVenue(Publisher publisher) {
601625
case Publisher::DbeqPlusFinc: {
602626
return Venue::Finc;
603627
}
628+
case Publisher::IfeuImpactIfeu: {
629+
return Venue::Ifeu;
630+
}
631+
case Publisher::NdexImpactNdex: {
632+
return Venue::Ndex;
633+
}
604634
default: {
605635
throw InvalidArgumentError{
606636
"PublisherVenue", "publisher",
@@ -779,6 +809,12 @@ Dataset PublisherDataset(Publisher publisher) {
779809
case Publisher::DbeqPlusFinc: {
780810
return Dataset::DbeqPlus;
781811
}
812+
case Publisher::IfeuImpactIfeu: {
813+
return Dataset::IfeuImpact;
814+
}
815+
case Publisher::NdexImpactNdex: {
816+
return Dataset::NdexImpact;
817+
}
782818
default: {
783819
throw InvalidArgumentError{
784820
"PublisherDataset", "publisher",
@@ -958,6 +994,12 @@ const char* ToString(Publisher publisher) {
958994
case Publisher::DbeqPlusFinc: {
959995
return "DBEQ.PLUS.FINC";
960996
}
997+
case Publisher::IfeuImpactIfeu: {
998+
return "IFEU.IMPACT.IFEU";
999+
}
1000+
case Publisher::NdexImpactNdex: {
1001+
return "NDEX.IMPACT.NDEX";
1002+
}
9611003
default: {
9621004
return "Unknown";
9631005
}
@@ -1139,6 +1181,12 @@ Publisher FromString(const std::string& str) {
11391181
if (str == "DBEQ.PLUS.FINC") {
11401182
return Publisher::DbeqPlusFinc;
11411183
}
1184+
if (str == "IFEU.IMPACT.IFEU") {
1185+
return Publisher::IfeuImpactIfeu;
1186+
}
1187+
if (str == "NDEX.IMPACT.NDEX") {
1188+
return Publisher::NdexImpactNdex;
1189+
}
11421190
throw InvalidArgumentError{"FromString<Publisher>", "str",
11431191
"unknown value '" + str + '\''};
11441192
}

0 commit comments

Comments
 (0)