mbn


Namembn JSON
Version 1.0.16 PyPI version JSON
download
home_pageNone
SummaryA binary encoding library designed for efficient data storage and transportation in trading platforms.
upload_time2025-02-04 01:09:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseApache-2.0
keywords midas binary-encoding protocol-buffers
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Midas Binary Encoding (MBN)

[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)

## Disclaimer

The Midas Binary Encoding (MBN) library is heavily inspired by and directly influenced by the [Databento DBN](https://github.com/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`:

```toml
[dependencies]
mbn = { git = "https://github.com/midassystems/mbn.git", branch = "main" }
```

### Python Installation

For Python, MBN must be installed from source:

1. Clone the repository:

   ```bash
   git clone https://github.com/midassystems/mbn.git
   cd mbn/mbn_python
   ```

2. Install dependencies:

   ```bash
   pip install -r requirements.txt
   ```

3. Build the package:

   ```bash
   ./test.sh
   ```

   \*\*Select build when prompted

4. Navigate to the desired installation location and install the built package:
   ```bash
   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](LICENSE) file for details.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mbn",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "midas, binary-encoding, protocol-buffers",
    "author": null,
    "author_email": "Anthony Baxter <anthonybaxter819@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/d8/be/45d1ffb2d2522ed1572ee98d1c452fc72b3f8dcce28978ce20782ceeb7a0/mbn-1.0.16.tar.gz",
    "platform": null,
    "description": "# Midas Binary Encoding (MBN)\n\n[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)\n\n## Disclaimer\n\nThe Midas Binary Encoding (MBN) library is heavily inspired by and directly influenced by the [Databento DBN](https://github.com/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.\n\n## Overview\n\nThe 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:\n\n- **Midas Server**: Data storage and API backend.\n- **MidasTrader**: Core backtesting and live trading engine.\n- **Midas Shell**: Command-line and REPL interface.\n- **Midas GUI**: Frontend visualization and analysis.\n\nMBN functions similarly to protocol buffers, providing a structured and efficient binary format for data serialization and deserialization.\n\n## Installation\n\n### Rust Installation\n\nAdd MBN to your Rust project's `Cargo.toml`:\n\n```toml\n[dependencies]\nmbn = { git = \"https://github.com/midassystems/mbn.git\", branch = \"main\" }\n```\n\n### Python Installation\n\nFor Python, MBN must be installed from source:\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/midassystems/mbn.git\n   cd mbn/mbn_python\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   pip install -r requirements.txt\n   ```\n\n3. Build the package:\n\n   ```bash\n   ./test.sh\n   ```\n\n   \\*\\*Select build when prompted\n\n4. Navigate to the desired installation location and install the built package:\n   ```bash\n   cd mbn/mbn_python\n   pip install dist/*.whl\n   ```\n\n## Future Plans\n\n- Extend schema support for additional data types.\n- Optimize encoding and decoding for larger datasets.\n\n## Contributing\n\nContributions are welcome! Feel free to open an issue or submit a pull request with suggestions or improvements.\n\n## License\n\nThis project is licensed under the Apache 2.0 License. See the [LICENSE](LICENSE) file for details.\n\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "A binary encoding library designed for efficient data storage and transportation in trading platforms.",
    "version": "1.0.16",
    "project_urls": null,
    "split_keywords": [
        "midas",
        " binary-encoding",
        " protocol-buffers"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "54528d47217976f3f5e0774e7d9acf849aae4bc55711f56f275f2f64f98c579c",
                "md5": "2977d71ef90900fadaaea1e13cb93e8b",
                "sha256": "1b59b5b5b5e17321a0c31ca937714fc0719ede6bb613a8775a142e8937ad8a61"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "2977d71ef90900fadaaea1e13cb93e8b",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.8",
            "size": 437021,
            "upload_time": "2025-02-04T01:09:34",
            "upload_time_iso_8601": "2025-02-04T01:09:34.868751Z",
            "url": "https://files.pythonhosted.org/packages/54/52/8d47217976f3f5e0774e7d9acf849aae4bc55711f56f275f2f64f98c579c/mbn-1.0.16-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dc92d2a280f347603d10b7c6e4dc2fa4b0a0c48767bc925881bd933c949c8a1c",
                "md5": "e7f7215230e22430beef1c530111fe11",
                "sha256": "0eaa8112ce1b97bd26bb1341e8176638b43793c05cb03edada70e9f97ef587e6"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp311-cp311-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "e7f7215230e22430beef1c530111fe11",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 598199,
            "upload_time": "2025-02-04T01:09:18",
            "upload_time_iso_8601": "2025-02-04T01:09:18.371908Z",
            "url": "https://files.pythonhosted.org/packages/dc/92/d2a280f347603d10b7c6e4dc2fa4b0a0c48767bc925881bd933c949c8a1c/mbn-1.0.16-cp311-cp311-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "80f9e7657d138c1ca5273c2fb638211c90145057ede431f6e06cf8c628fed3bf",
                "md5": "3e1e49a77bcef713391e4944f61ca6f3",
                "sha256": "c7160c74c96b17e37039fdc161326c9b763fc3efe1569d9de5dc394df9f13e44"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "3e1e49a77bcef713391e4944f61ca6f3",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 592015,
            "upload_time": "2025-02-04T01:09:12",
            "upload_time_iso_8601": "2025-02-04T01:09:12.940299Z",
            "url": "https://files.pythonhosted.org/packages/80/f9/e7657d138c1ca5273c2fb638211c90145057ede431f6e06cf8c628fed3bf/mbn-1.0.16-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9927b3122e018d43482f388beebf4352ff1df60ca3cb78637328c579d30f9511",
                "md5": "3d8c43a3c9666fe80db59d6e0420e30e",
                "sha256": "ba9b746dcf98d4fd1a505b38731f88599f40ae56b690af48060c0554e5be71a9"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "3d8c43a3c9666fe80db59d6e0420e30e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.8",
            "size": 437290,
            "upload_time": "2025-02-04T01:09:36",
            "upload_time_iso_8601": "2025-02-04T01:09:36.152873Z",
            "url": "https://files.pythonhosted.org/packages/99/27/b3122e018d43482f388beebf4352ff1df60ca3cb78637328c579d30f9511/mbn-1.0.16-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "70c33d5dac3d8b022609a7e764e53b680951ac68b417cb91372e765c7ee904e1",
                "md5": "5706849f53c5e47588ff22dfa2cd6885",
                "sha256": "c8787cd3c783339ca56c84c9bf43808c25c2fe48f82e0f69b5eb391bcb5c665d"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp312-cp312-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "5706849f53c5e47588ff22dfa2cd6885",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 588387,
            "upload_time": "2025-02-04T01:09:21",
            "upload_time_iso_8601": "2025-02-04T01:09:21.002874Z",
            "url": "https://files.pythonhosted.org/packages/70/c3/3d5dac3d8b022609a7e764e53b680951ac68b417cb91372e765c7ee904e1/mbn-1.0.16-cp312-cp312-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "13e523c1ebfe98d384665de649c3b8107dfc1ead8a0a6195a52da79dc6bcf39e",
                "md5": "7916ee1c60507df5730612ee327cc400",
                "sha256": "77f4a187235a003dfa6547bf6abb0dce9df7124f1a051a8ec2916e9394b64400"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7916ee1c60507df5730612ee327cc400",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 586191,
            "upload_time": "2025-02-04T01:09:14",
            "upload_time_iso_8601": "2025-02-04T01:09:14.979960Z",
            "url": "https://files.pythonhosted.org/packages/13/e5/23c1ebfe98d384665de649c3b8107dfc1ead8a0a6195a52da79dc6bcf39e/mbn-1.0.16-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6f61c1d463e17784896cf85d730002812c5ea91daf433d57fa74f81b194bacbf",
                "md5": "7fda7e59e2133dcb10b67c6bd045c677",
                "sha256": "e0bbea0da9971939eecfe81b74c5a832bd32c0d76d098d894f69ec5c3110c425"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp312-cp312-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "7fda7e59e2133dcb10b67c6bd045c677",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 637776,
            "upload_time": "2025-02-04T01:08:58",
            "upload_time_iso_8601": "2025-02-04T01:08:58.353448Z",
            "url": "https://files.pythonhosted.org/packages/6f/61/c1d463e17784896cf85d730002812c5ea91daf433d57fa74f81b194bacbf/mbn-1.0.16-cp312-cp312-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d5313e0f71ef614cb3ae75e7c42cc7a2762c6576d8dd7e088e6271f583a45409",
                "md5": "58c82fa088d980746399e8920a5e824a",
                "sha256": "6c6a4384adc2f5f80374c2a528cb5f3cf9d4b4e2c6dd2104005935e927bc3e3c"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "58c82fa088d980746399e8920a5e824a",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.8",
            "size": 439972,
            "upload_time": "2025-02-04T01:09:37",
            "upload_time_iso_8601": "2025-02-04T01:09:37.389131Z",
            "url": "https://files.pythonhosted.org/packages/d5/31/3e0f71ef614cb3ae75e7c42cc7a2762c6576d8dd7e088e6271f583a45409/mbn-1.0.16-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4d187b58efec4a41dcf9e75579cb3eb816e936d2339d0c2886360040c2c9a08e",
                "md5": "ddaf32e73a89f0a1930878d4249ee921",
                "sha256": "484a3d0d0d2cb77a77f796929eb31c08734c5d2b3906da2d36edfd1f3b9e1f95"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp313-cp313-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ddaf32e73a89f0a1930878d4249ee921",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 587464,
            "upload_time": "2025-02-04T01:09:23",
            "upload_time_iso_8601": "2025-02-04T01:09:23.630332Z",
            "url": "https://files.pythonhosted.org/packages/4d/18/7b58efec4a41dcf9e75579cb3eb816e936d2339d0c2886360040c2c9a08e/mbn-1.0.16-cp313-cp313-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6e50dda20604f89daa704cd32cd6c2aa1f61f07e4a00c2ccc166981b72cd33e7",
                "md5": "21c5f2465708c2883106e45e196a1b3a",
                "sha256": "c9950e6b301a1f56c460142bda2a35dded3df39565ba762a60b712e92c8d7b45"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "21c5f2465708c2883106e45e196a1b3a",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 585512,
            "upload_time": "2025-02-04T01:09:17",
            "upload_time_iso_8601": "2025-02-04T01:09:17.064263Z",
            "url": "https://files.pythonhosted.org/packages/6e/50/dda20604f89daa704cd32cd6c2aa1f61f07e4a00c2ccc166981b72cd33e7/mbn-1.0.16-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2d28a2a11161d001bec0af2934b7b433906beee8c031605b74315bbf6561af0e",
                "md5": "a0fda98ed46da79e897e72feda292fff",
                "sha256": "25cc0dc4622062b9dca5f4786067d956ad20861175c3cfffaf589536cba9c25c"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp313-cp313-manylinux_2_34_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a0fda98ed46da79e897e72feda292fff",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 637284,
            "upload_time": "2025-02-04T01:09:00",
            "upload_time_iso_8601": "2025-02-04T01:09:00.573398Z",
            "url": "https://files.pythonhosted.org/packages/2d/28/a2a11161d001bec0af2934b7b433906beee8c031605b74315bbf6561af0e/mbn-1.0.16-cp313-cp313-manylinux_2_34_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "13b0338df690237fdbe1f0e538406f2a083080c8209420e05ec1f860d764ef7b",
                "md5": "8f32039e03a4921ed919c07a64518a93",
                "sha256": "84affc9c38bb99249e1ef5d8d9588bee3c8e5d2b9b21d1d76495b2f3dd534e69"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "8f32039e03a4921ed919c07a64518a93",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.8",
            "size": 439939,
            "upload_time": "2025-02-04T01:09:38",
            "upload_time_iso_8601": "2025-02-04T01:09:38.548533Z",
            "url": "https://files.pythonhosted.org/packages/13/b0/338df690237fdbe1f0e538406f2a083080c8209420e05ec1f860d764ef7b/mbn-1.0.16-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9c01b5329a77dee7285497b332615eea22a838adb7ede0a3c90aa9e877b47187",
                "md5": "d9e9d75414f2763a288e106b0964081b",
                "sha256": "f0af6f64e38f3d0ae9940c3d84b36a0f3d0bf68e0674c2131d4149567b2af459"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "d9e9d75414f2763a288e106b0964081b",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.8",
            "size": 438219,
            "upload_time": "2025-02-04T01:09:40",
            "upload_time_iso_8601": "2025-02-04T01:09:40.000814Z",
            "url": "https://files.pythonhosted.org/packages/9c/01/b5329a77dee7285497b332615eea22a838adb7ede0a3c90aa9e877b47187/mbn-1.0.16-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "36a6f14c56261feec95f3fba442f4e6a6b553ca9bc3307b53ea098e0d5adaf0d",
                "md5": "086e24025dc2c2ed41ca3e1f48adc619",
                "sha256": "fb09820540e7a836eac2e8c55ce5b788c8f03dfe6bc080c1b054d381f0aa71d8"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "086e24025dc2c2ed41ca3e1f48adc619",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.8",
            "size": 438312,
            "upload_time": "2025-02-04T01:09:41",
            "upload_time_iso_8601": "2025-02-04T01:09:41.952524Z",
            "url": "https://files.pythonhosted.org/packages/36/a6/f14c56261feec95f3fba442f4e6a6b553ca9bc3307b53ea098e0d5adaf0d/mbn-1.0.16-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d8be45d1ffb2d2522ed1572ee98d1c452fc72b3f8dcce28978ce20782ceeb7a0",
                "md5": "f02c1e98059d3aa0b26be2c5ddd1b996",
                "sha256": "59ff2679171406a2722e45176b706f76c571c7259b780af89d615f16ef3d78be"
            },
            "downloads": -1,
            "filename": "mbn-1.0.16.tar.gz",
            "has_sig": false,
            "md5_digest": "f02c1e98059d3aa0b26be2c5ddd1b996",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 62787,
            "upload_time": "2025-02-04T01:09:28",
            "upload_time_iso_8601": "2025-02-04T01:09:28.154875Z",
            "url": "https://files.pythonhosted.org/packages/d8/be/45d1ffb2d2522ed1572ee98d1c452fc72b3f8dcce28978ce20782ceeb7a0/mbn-1.0.16.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-04 01:09:28",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "mbn"
}
        
Elapsed time: 1.56098s