diff --git a/CHANGELOG.md b/CHANGELOG.md index c895ac7..f7bb2de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # Changelog +## 0.46.0 - 2026-01-20 + +### Enhancements +- Added new off-market publisher for Cboe Futures Exchange (`XCBF_PITCH_XOFF`) +- Added new `StatType` variants to be used by `XCBF.PITCH` dataset: + - `UpperPriceLimit` + - `LowerPriceLimit` + - `BlockVolume` + - `VenueSpecificVolume1` + ## 0.45.0 - 2025-12-10 ### Enhancements diff --git a/CMakeLists.txt b/CMakeLists.txt index 48f7b7d..9fe3f08 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.24..4.0) +cmake_minimum_required(VERSION 3.24..4.2) # # Project details @@ -6,7 +6,7 @@ cmake_minimum_required(VERSION 3.24..4.0) project( databento - VERSION 0.45.0 + VERSION 0.46.0 LANGUAGES CXX DESCRIPTION "Official Databento client library" ) diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 8ddae1d..483134e 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -60,7 +60,7 @@ representative at an online or offline event. Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement at -info@nautechsystems.io. +support@databento.com. All complaints will be reviewed and investigated promptly and fairly. All community leaders are obligated to respect the privacy and security of the diff --git a/README.md b/README.md index e4bd536..d9c8410 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ include(FetchContent) FetchContent_Declare( databento GIT_REPOSITORY https://github.com/databento/databento-cpp - GIT_TAG HEAD + GIT_TAG main ) FetchContent_MakeAvailable(databento) diff --git a/include/databento/enums.hpp b/include/databento/enums.hpp index 7b7bad9..371bc69 100644 --- a/include/databento/enums.hpp +++ b/include/databento/enums.hpp @@ -416,6 +416,20 @@ enum StatType : std::uint16_t { // official opening auction nor the official closing auction. `price` will be set. // `quantity` will be set when provided by the venue. UncrossingPrice = 16, + // The exchange defined upper price limit. `price` will be set with the standard + // precision. + UpperPriceLimit = 17, + // The exchange defined lower price limit. `price` will be set with the standard + // precision. + LowerPriceLimit = 18, + // The number of Block contracts cleared for an instrument on the previous trading + // date. + // `quantity` will be set. `ts_ref` will indicate the trading date of the volume. + BlockVolume = 19, + // A venue specific volume statistic. Refer to the venue documentation for more + // information. + // `quantity` will be set. + VenueSpecificVolume1 = 10001, }; } // namespace stat_type using stat_type::StatType; diff --git a/include/databento/publishers.hpp b/include/databento/publishers.hpp index 3826ffb..016d18a 100644 --- a/include/databento/publishers.hpp +++ b/include/databento/publishers.hpp @@ -409,6 +409,8 @@ enum class Publisher : std::uint16_t { XeeeEobiXoff = 104, // Cboe Futures Exchange XcbfPitchXcbf = 105, + // Cboe Futures Exchange - Off-Market Trades + XcbfPitchXoff = 106, }; // Get a Publisher's Venue. diff --git a/pkg/PKGBUILD b/pkg/PKGBUILD index c4f90c8..d1afa91 100644 --- a/pkg/PKGBUILD +++ b/pkg/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Databento _pkgname=databento-cpp pkgname=databento-cpp-git -pkgver=0.45.0 +pkgver=0.46.0 pkgrel=1 pkgdesc="Official C++ client for Databento" arch=('any') diff --git a/src/enums.cpp b/src/enums.cpp index 97d898a..36623ed 100644 --- a/src/enums.cpp +++ b/src/enums.cpp @@ -520,6 +520,18 @@ const char* ToString(StatType stat_type) { case StatType::UncrossingPrice: { return "UncrossingPrice"; } + case StatType::UpperPriceLimit: { + return "UpperPriceLimit"; + } + case StatType::LowerPriceLimit: { + return "LowerPriceLimit"; + } + case StatType::BlockVolume: { + return "BlockVolume"; + } + case StatType::VenueSpecificVolume1: { + return "VenueSpecificVolume1"; + } default: { return "Unknown"; } diff --git a/src/publishers.cpp b/src/publishers.cpp index 4e21ff1..a432379 100644 --- a/src/publishers.cpp +++ b/src/publishers.cpp @@ -916,6 +916,9 @@ Venue PublisherVenue(Publisher publisher) { case Publisher::XcbfPitchXcbf: { return Venue::Xcbf; } + case Publisher::XcbfPitchXoff: { + return Venue::Xoff; + } default: { throw InvalidArgumentError{ "PublisherVenue", "publisher", @@ -1241,6 +1244,9 @@ Dataset PublisherDataset(Publisher publisher) { case Publisher::XcbfPitchXcbf: { return Dataset::XcbfPitch; } + case Publisher::XcbfPitchXoff: { + return Dataset::XcbfPitch; + } default: { throw InvalidArgumentError{ "PublisherDataset", "publisher", @@ -1567,6 +1573,9 @@ const char* ToString(Publisher publisher) { case Publisher::XcbfPitchXcbf: { return "XCBF.PITCH.XCBF"; } + case Publisher::XcbfPitchXoff: { + return "XCBF.PITCH.XOFF"; + } default: { return "Unknown"; } @@ -1895,6 +1904,9 @@ Publisher FromString(const std::string& str) { if (str == "XCBF.PITCH.XCBF") { return Publisher::XcbfPitchXcbf; } + if (str == "XCBF.PITCH.XOFF") { + return Publisher::XcbfPitchXoff; + } throw InvalidArgumentError{"FromString", "str", "unknown value '" + str + '\''}; }