Skip to content

tbeason/DatabentoAPI.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DatabentoAPI.jl

CI Documentation

Julia client for the Databento market-data APIs:

  • Historical — HTTP API for backfills, metadata, batch jobs, symbology.
  • Live — TCP API for low-latency real-time feeds with reconnect, multi-schema routing, and crash-safe capture to disk.

All binary DBN decoding is delegated to DatabentoBinaryEncoding.jl.

Documentation

Full documentation: https://tbeason.github.io/DatabentoAPI.jl

User guides for authentication, historical data, live streaming, capture to file, format conversion, plus an API reference, performance notes, and troubleshooting guide.

Installation

using Pkg
Pkg.add("DatabentoAPI")

Requires Julia ≥ 1.12.

Quick start

using DatabentoAPI, Dates

# Historical
client = Historical()                       # API key from ~/.databento/config.toml or DATABENTO_API_KEY
store  = get_range(client;
    dataset  = "XNAS.ITCH",
    schema   = Schema.TRADES,
    symbols  = ["AAPL"],
    start_dt = DateTime(2024, 1, 2, 14, 30),
    end_dt   = DateTime(2024, 1, 2, 14, 31),
    stype_in = SType.RAW_SYMBOL)
df = to_dataframe(store)

# Live (do-block guarantees clean close on Ctrl-C)
Live(dataset = "GLBX.MDP3") do live
    connect!(live)
    subscribe!(live; schema = Schema.TRADES, symbols = ["ES.FUT"], stype_in = SType.PARENT)
    start!(live)
    for rec in live
        println(rec)
    end
end

See the Quick Start guide for details.

Status

Current version: 0.2.0. Offline test suite: 1500+ tests, ~30 s. Live-network smoke tests are gated behind DATABENTO_LIVE_TESTS=1. See CHANGELOG.md for the full release history.

License

MIT.

About

Julia client for Databento Historical (HTTP) and Live (TCP) market data APIs

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages