Skip to content

Commit 8213d4e

Browse files
ADD: Add new NLS publishers for XBOS/XPSX
1 parent 2814e04 commit 8213d4e

File tree

2 files changed

+53
-0
lines changed

2 files changed

+53
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
#### Enhancements
66
- Added type alias `TBBOMsg` for `MBP1Msg`
77
- Instances of the `Live` client will now call `Live.stop` when garbage collected
8+
- Added new publisher values for `XNAS.BASIC` and `XNAS.NLS`
89

910
## 0.36.0 - 2024-06-11
1011

databento/common/publishers.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -914,6 +914,14 @@ class Publisher(StringyMixin, str, Enum):
914914
ICE Futures Europe - Off-Market Trades.
915915
NDEX_IMPACT_XOFF
916916
ICE Endex - Off-Market Trades.
917+
XNAS_NLS_XBOS
918+
Nasdaq NLS - Nasdaq BX.
919+
XNAS_NLS_XPSX
920+
Nasdaq NLS - Nasdaq PSX.
921+
XNAS_BASIC_XBOS
922+
Nasdaq Basic - Nasdaq BX.
923+
XNAS_BASIC_XPSX
924+
Nasdaq Basic - Nasdaq PSX.
917925
918926
"""
919927

@@ -1002,6 +1010,10 @@ class Publisher(StringyMixin, str, Enum):
10021010
XNAS_BASIC_FINC = "XNAS.BASIC.FINC"
10031011
IFEU_IMPACT_XOFF = "IFEU.IMPACT.XOFF"
10041012
NDEX_IMPACT_XOFF = "NDEX.IMPACT.XOFF"
1013+
XNAS_NLS_XBOS = "XNAS.NLS.XBOS"
1014+
XNAS_NLS_XPSX = "XNAS.NLS.XPSX"
1015+
XNAS_BASIC_XBOS = "XNAS.BASIC.XBOS"
1016+
XNAS_BASIC_XPSX = "XNAS.BASIC.XPSX"
10051017

10061018
@classmethod
10071019
def from_int(cls, value: int) -> Publisher:
@@ -1178,6 +1190,14 @@ def from_int(cls, value: int) -> Publisher:
11781190
return Publisher.IFEU_IMPACT_XOFF
11791191
if value == 85:
11801192
return Publisher.NDEX_IMPACT_XOFF
1193+
if value == 86:
1194+
return Publisher.XNAS_NLS_XBOS
1195+
if value == 87:
1196+
return Publisher.XNAS_NLS_XPSX
1197+
if value == 88:
1198+
return Publisher.XNAS_BASIC_XBOS
1199+
if value == 89:
1200+
return Publisher.XNAS_BASIC_XPSX
11811201
raise ValueError(f"Integer value {value} does not correspond with any Publisher variant")
11821202

11831203
def to_int(self) -> int:
@@ -1354,6 +1374,14 @@ def to_int(self) -> int:
13541374
return 84
13551375
if self == Publisher.NDEX_IMPACT_XOFF:
13561376
return 85
1377+
if self == Publisher.XNAS_NLS_XBOS:
1378+
return 86
1379+
if self == Publisher.XNAS_NLS_XPSX:
1380+
return 87
1381+
if self == Publisher.XNAS_BASIC_XBOS:
1382+
return 88
1383+
if self == Publisher.XNAS_BASIC_XPSX:
1384+
return 89
13571385
raise ValueError("Invalid Publisher")
13581386

13591387
@property
@@ -1531,6 +1559,14 @@ def venue(self) -> Venue:
15311559
return Venue.XOFF
15321560
if self == Publisher.NDEX_IMPACT_XOFF:
15331561
return Venue.XOFF
1562+
if self == Publisher.XNAS_NLS_XBOS:
1563+
return Venue.XBOS
1564+
if self == Publisher.XNAS_NLS_XPSX:
1565+
return Venue.XPSX
1566+
if self == Publisher.XNAS_BASIC_XBOS:
1567+
return Venue.XBOS
1568+
if self == Publisher.XNAS_BASIC_XPSX:
1569+
return Venue.XPSX
15341570
raise ValueError("Unexpected Publisher value")
15351571

15361572
@property
@@ -1708,6 +1744,14 @@ def dataset(self) -> Dataset:
17081744
return Dataset.IFEU_IMPACT
17091745
if self == Publisher.NDEX_IMPACT_XOFF:
17101746
return Dataset.NDEX_IMPACT
1747+
if self == Publisher.XNAS_NLS_XBOS:
1748+
return Dataset.XNAS_NLS
1749+
if self == Publisher.XNAS_NLS_XPSX:
1750+
return Dataset.XNAS_NLS
1751+
if self == Publisher.XNAS_BASIC_XBOS:
1752+
return Dataset.XNAS_BASIC
1753+
if self == Publisher.XNAS_BASIC_XPSX:
1754+
return Dataset.XNAS_BASIC
17111755
raise ValueError("Unexpected Publisher value")
17121756

17131757
@property
@@ -1885,4 +1929,12 @@ def description(self) -> str:
18851929
return "ICE Futures Europe - Off-Market Trades"
18861930
if self == Publisher.NDEX_IMPACT_XOFF:
18871931
return "ICE Endex - Off-Market Trades"
1932+
if self == Publisher.XNAS_NLS_XBOS:
1933+
return "Nasdaq NLS - Nasdaq BX"
1934+
if self == Publisher.XNAS_NLS_XPSX:
1935+
return "Nasdaq NLS - Nasdaq PSX"
1936+
if self == Publisher.XNAS_BASIC_XBOS:
1937+
return "Nasdaq Basic - Nasdaq BX"
1938+
if self == Publisher.XNAS_BASIC_XPSX:
1939+
return "Nasdaq Basic - Nasdaq PSX"
18881940
raise ValueError("Unexpected Publisher value")

0 commit comments

Comments
 (0)