Midas Binary Encoding (MBN)
Disclaimer
The Midas Binary Encoding (MBN) library is heavily inspired by and directly influenced by the Databento DBN library. When starting this project, I was new to Rust and binary encoding, and much of the initial development was based on learning from and building upon Databento's DBN implementation. While MBN will continue to evolve into its own implementation, it is important to acknowledge the foundational inspiration provided by Databento's work.
Overview
The Midas Binary Encoding (MBN) library is a foundational component of the Midas ecosystem. It serves as the shared protocol for encoding and decoding data across all Midas system components. Although users typically do not interact with MBN directly, it plays a crucial role in ensuring seamless data exchange between:
- Midas Server: Data storage and API backend.
- MidasTrader: Core backtesting and live trading engine.
- Midas Shell: Command-line and REPL interface.
- Midas GUI: Frontend visualization and analysis.
MBN functions similarly to protocol buffers, providing a structured and efficient binary format for data serialization and deserialization.
Installation
Rust Installation
Add MBN to your Rust project's Cargo.toml:
[dependencies]
mbn = { git = "https://github.com/midassystems/mbn.git", branch = "main" }
Python Installation
For Python, MBN must be installed from source:
-
Clone the repository:
git clone https://github.com/midassystems/mbn.git cd mbn/mbn_python
-
Install dependencies:
pip install -r requirements.txt
-
Build the package:
./test.sh
**Select build when prompted
-
Navigate to the desired installation location and install the built package:
cd mbn/mbn_python pip install dist/*.whl
Future Plans
- Extend schema support for additional data types.
- Optimize encoding and decoding for larger datasets.
Contributing
Contributions are welcome! Feel free to open an issue or submit a pull request with suggestions or improvements.
License
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
Metadata
Release files for mbn 1.0.16
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mbn-1.0.16.tar.gz | 62.8 kB | Without provenance | Details for mbn-1.0.16.tar.gz |
Built distributions (wheels)
Total release size: 7.5 MB
Release files / mbn-1.0.16.tar.gz
| Download URL | mbn-1.0.16.tar.gz |
|---|---|
| Size | 62.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
59ff2679171406a2722e45176b706f76c571c7259b780af89d615f16ef3d78be
|
|
BLAKE2b-256 checksum How to use checksums |
d8be45d1ffb2d2522ed1572ee98d1c452fc72b3f8dcce28978ce20782ceeb7a0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp313-cp313-win_amd64.whl
| Download URL | mbn-1.0.16-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 439.9 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
84affc9c38bb99249e1ef5d8d9588bee3c8e5d2b9b21d1d76495b2f3dd534e69
|
|
BLAKE2b-256 checksum How to use checksums |
13b0338df690237fdbe1f0e538406f2a083080c8209420e05ec1f860d764ef7b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp313-cp313-manylinux_2_34_x86_64.whl
| Download URL | mbn-1.0.16-cp313-cp313-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 637.3 kB |
| Tags | CPython 3.13 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
25cc0dc4622062b9dca5f4786067d956ad20861175c3cfffaf589536cba9c25c
|
|
BLAKE2b-256 checksum How to use checksums |
2d28a2a11161d001bec0af2934b7b433906beee8c031605b74315bbf6561af0e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | mbn-1.0.16-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 585.5 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c9950e6b301a1f56c460142bda2a35dded3df39565ba762a60b712e92c8d7b45
|
|
BLAKE2b-256 checksum How to use checksums |
6e50dda20604f89daa704cd32cd6c2aa1f61f07e4a00c2ccc166981b72cd33e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp313-cp313-macosx_10_12_x86_64.whl
| Download URL | mbn-1.0.16-cp313-cp313-macosx_10_12_x86_64.whl |
|---|---|
| Size | 587.5 kB |
| Tags | CPython 3.13 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
484a3d0d0d2cb77a77f796929eb31c08734c5d2b3906da2d36edfd1f3b9e1f95
|
|
BLAKE2b-256 checksum How to use checksums |
4d187b58efec4a41dcf9e75579cb3eb816e936d2339d0c2886360040c2c9a08e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp312-cp312-win_amd64.whl
| Download URL | mbn-1.0.16-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 440.0 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
6c6a4384adc2f5f80374c2a528cb5f3cf9d4b4e2c6dd2104005935e927bc3e3c
|
|
BLAKE2b-256 checksum How to use checksums |
d5313e0f71ef614cb3ae75e7c42cc7a2762c6576d8dd7e088e6271f583a45409
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp312-cp312-manylinux_2_34_x86_64.whl
| Download URL | mbn-1.0.16-cp312-cp312-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 637.8 kB |
| Tags | CPython 3.12 Linux glibc 2.34+ x86-64 |
|
SHA-256 checksum How to use checksums |
e0bbea0da9971939eecfe81b74c5a832bd32c0d76d098d894f69ec5c3110c425
|
|
BLAKE2b-256 checksum How to use checksums |
6f61c1d463e17784896cf85d730002812c5ea91daf433d57fa74f81b194bacbf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | mbn-1.0.16-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 586.2 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
77f4a187235a003dfa6547bf6abb0dce9df7124f1a051a8ec2916e9394b64400
|
|
BLAKE2b-256 checksum How to use checksums |
13e523c1ebfe98d384665de649c3b8107dfc1ead8a0a6195a52da79dc6bcf39e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp312-cp312-macosx_10_12_x86_64.whl
| Download URL | mbn-1.0.16-cp312-cp312-macosx_10_12_x86_64.whl |
|---|---|
| Size | 588.4 kB |
| Tags | CPython 3.12 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
c8787cd3c783339ca56c84c9bf43808c25c2fe48f82e0f69b5eb391bcb5c665d
|
|
BLAKE2b-256 checksum How to use checksums |
70c33d5dac3d8b022609a7e764e53b680951ac68b417cb91372e765c7ee904e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp311-cp311-win_amd64.whl
| Download URL | mbn-1.0.16-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 437.3 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ba9b746dcf98d4fd1a505b38731f88599f40ae56b690af48060c0554e5be71a9
|
|
BLAKE2b-256 checksum How to use checksums |
9927b3122e018d43482f388beebf4352ff1df60ca3cb78637328c579d30f9511
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | mbn-1.0.16-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 592.0 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c7160c74c96b17e37039fdc161326c9b763fc3efe1569d9de5dc394df9f13e44
|
|
BLAKE2b-256 checksum How to use checksums |
80f9e7657d138c1ca5273c2fb638211c90145057ede431f6e06cf8c628fed3bf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp311-cp311-macosx_10_12_x86_64.whl
| Download URL | mbn-1.0.16-cp311-cp311-macosx_10_12_x86_64.whl |
|---|---|
| Size | 598.2 kB |
| Tags | CPython 3.11 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
0eaa8112ce1b97bd26bb1341e8176638b43793c05cb03edada70e9f97ef587e6
|
|
BLAKE2b-256 checksum How to use checksums |
dc92d2a280f347603d10b7c6e4dc2fa4b0a0c48767bc925881bd933c949c8a1c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp310-cp310-win_amd64.whl
| Download URL | mbn-1.0.16-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 437.0 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1b59b5b5b5e17321a0c31ca937714fc0719ede6bb613a8775a142e8937ad8a61
|
|
BLAKE2b-256 checksum How to use checksums |
54528d47217976f3f5e0774e7d9acf849aae4bc55711f56f275f2f64f98c579c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp39-cp39-win_amd64.whl
| Download URL | mbn-1.0.16-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 438.3 kB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
fb09820540e7a836eac2e8c55ce5b788c8f03dfe6bc080c1b054d381f0aa71d8
|
|
BLAKE2b-256 checksum How to use checksums |
36a6f14c56261feec95f3fba442f4e6a6b553ca9bc3307b53ea098e0d5adaf0d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Release files / mbn-1.0.16-cp38-cp38-win_amd64.whl
| Download URL | mbn-1.0.16-cp38-cp38-win_amd64.whl |
|---|---|
| Size | 438.2 kB |
| Tags | CPython 3.8 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
f0af6f64e38f3d0ae9940c3d84b36a0f3d0bf68e0674c2131d4149567b2af459
|
|
BLAKE2b-256 checksum How to use checksums |
9c01b5329a77dee7285497b332615eea22a838adb7ede0a3c90aa9e877b47187
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
maturin/1.8.1
|
Security for mbn 1.0.16
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.