Skip to content

Releases: databento/databento-cpp

0.22.0

27 Aug 21:45
3820882
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added Intraday variant to DatasetCondition in preparation for intraday data being
    available from the historical API
  • Renamed example directory to examples
  • Renamed test directory to tests
  • Added new publisher values for XCIS.BBOTRADES and XNYS.BBOTRADES

Breaking changes

  • Removed previously deprecated DatasetCondition::Bad variant

0.21.0

30 Jul 20:27
e5be52a
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added new publisher value for DBEQ.SUMMARY

Breaking changes

  • Renamed SType::Nasdaq variant to SType::NasdaqSymbol
  • Renamed SType::Cms variant to SType::CmsSymbol

Bug fixes

  • Added missing ToString and FromString branches for SType::NasdaqSymbol and
    SType::CmsSymbol
  • Removed has_header_v variable template that broke C++11 compatibility

0.20.1

16 Jul 22:20
a5b78fa
Compare
Choose a tag to compare

Release notes

Enhancements

  • Improved installation with CMake: license is now installed, transitive dependencies are configured
    when importing package

0.20.0

09 Jul 22:43
baaa279
Compare
Choose a tag to compare

Release notes

This release adds support for encoding DBN within the C++ client.
It also improves historical symbology support with the new TsSymbolMap class that
handles mapping historical records to a text symbol. To support this class, several types
for date fields were changed from strings or ints to date::year_month_day.

Enhancements

  • Added TsSymbolMap to support historical symbology where mappings change between days
  • Added DbnEncoder class for encoding DBN data
  • Added blocking API similar to LiveBlocking to DbnFileStore with new GetMetadata
    and NextRecord methods
  • Added BboMsg record struct for future bbo-1m and bbo-1s schemas
  • Added PitSymbol map constructor from Metadata and a date::year_month_day
  • Added Metadata::CreateSymbolMap and Metadata::CreateSymbolMapForDate methods for
    creating symbology maps from historical metadata
  • Added blocking API similar to LiveBlocking to DbnFileStore
  • Added SymbologyResolution::CreateSymbolMap method for creating a symbology map from
    a symbology resolution response
  • Added InFileStream and OutFileStream helper classes for reading and writing binary
    output respectively

Breaking changes

  • Added new dependency on Howard Hinnant's date library
  • Added ILogReceiver* parameter to all DbnDecoder constructors and one DbnFileStore constructor
  • Removed type StrMappingInterval. MappingInterval is now also used in SymbologyResolution.
  • Changed Bbo1sMsg and Bbo1mMsg to be aliases for BboMsg
  • Changed type of start_date and end_date in MappingInterval to date::year_month_day
  • Added stype_in and stype_out fields to SymbologyResolution to support creating
    a TsSymbolMap

0.19.1

25 Jun 20:52
edae42e
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added Upgrade() method to Metadata to update the metadata fields according to a
    VersionUpgradePolicy
  • Added new publisher values for XNAS.BASIC and XNAS.NLS

Bug fixes

  • Fixed issue where Metadata wasn't upgraded when passing
    VersionUpgradePolicy::Upgrade

0.19.0

04 Jun 16:49
4b51f62
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added configurable heartbeat_interval parameter for live clients that determines the
    timeout before heartbeat SystemMsg records will be sent. It can be configured via
    the SetHeartbeatInterval method of the LiveBuilder
  • Added SetAddress method to LiveBuilder for configuring a custom gateway address
    without using the constructor directly
  • Added new UncrossingPrice StatType variant
  • Added new publisher values for XNAS.BASIC
  • Added SetDataset(Dataset) overload to LiveBuilder
  • Added new off-market publisher values for IFEU.IMPACT and NDEX.IMPACT

Breaking changes

  • Added heartbeat_interval parameter to the Live constructors
  • Removed start_date and end_date fields from DatasetRange struct
    in favor of start and end
  • Removed live Subscribe method overloads with use_snapshot
    parameter in favor of separate SubscribeWithSnapshot method

Bug fixes

  • Fixed overloading of live Subscribe methods
  • Fixed live subscribing with default-constructed UnixNanos
  • Fixed descriptions for FINN and FINY publishers.

0.18.1

21 May 23:18
6ced9b0
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added live Subscribe function overload with use_snapshot parameter
  • Added GetIf method to Record that allows if chaining for handling multiple
    record types
  • Added record type checking to Record::Get method to catch programming errors
    and prevent reading invalid data

Bug fixes

  • Added missing symbol chunking for live Subscribe overloads with const std::string&
    start parameter

0.18.0

15 May 01:26
ce8eb73
Compare
Choose a tag to compare

Release notes

Breaking changes

  • Changed FlagSet to be more class-like:
    • Added predicate methods and setters for each bit flag
    • Improved string formatting
    • Removed bitwise operators. Bitwise operations can be performed by first casting to a
      std::uint8_t or calling the Raw() method
  • Changed format of display_factor and price_ratio to a fixed-precision decimal for
    InstrumentDefMsg and InstrumentDefMsgV1 to match existing values and DBN crate
  • Changed format of unit_of_measure_qty to a fixed-precision decimal for
    InstrumentDefMsgV1 to match InstrumentDefMsg

0.17.1

08 Apr 14:43
a56e606
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added support for Conan-installed zstd (credit: @Hailios)

Bug fixes

  • Added missing copying of ts_event when upgrading structs from DBNv1 to DBNv2
  • Fixed setting of compiler warnings and warnings that had accumulated

0.17.0

01 Apr 16:36
d6669f6
Compare
Choose a tag to compare

Release notes

Enhancements

  • Added StatusMsg record, and StatusAction, StatusReason, TradingEvent, and
    TriState enums
  • Added CbboMsg record and corresponding ConsolidatedBidAskPair structure
  • Added new enum values for Schema and RType corresponding to new schemas
    cbbo, cbbo-1s, cbbo-1m, tcbbo, bbo-1s, bbo-1m
  • Added Volatility and Delta StatType variants
  • Added Undefined and TimeProRata MatchAlgorithm variants
  • Changed format of unit_of_measure_qty to a fixed-precision decimal
  • Added logic to skip find_package call if nlohmann_json and httplib targets
    already exist (credit: @akovachev)
  • Added specific instructions for installing dependencies on Ubuntu and macOS (credit: @camrongodbout)

Breaking changes

  • Renamed publishers from deprecated datasets to their respective sources (XNAS.NLS
    and XNYS.TRADES respectively)

Deprecations

  • Deprecated dataset values FINN.NLS and FINY.TRADES

Bug fixes

  • Fixed out-of-order initialization in DbnDecoder (credit: @Hailios)
  • Renamed MatchAlgorithm::EurodollarOptions to MatchAlgorithm::EurodollarFutures