mm-toolbox


Namemm-toolbox JSON
Version 0.2.1 PyPI version JSON
download
home_pagehttps://github.com/beatzxbt/mm-toolbox
Summary"high-performance python tools for market making strategies."
upload_time2024-09-14 10:17:00
maintainerNone
docs_urlNone
authorbeatzxbt
requires_python<3.13,>=3.10.0
licenseMIT
keywords market making high performance python orderbook
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # MM Toolbox
**MM Toolbox** is a Python library designed to provide high-performance tools for market making strategies.

## Contents
```plaintext
mm-toolbox/
├── src/
│   ├── mm_toolbox/
│   │   ├── candles/            # Tools for handling and aggregating candlestick data
│   │   ├── logging/            # Lightweight logger + Discord/Telegram support
│   │   ├── moving_average/     # Various moving averages (EMA/HMA/WMA etc)
│   │   ├── numba/              # Numba-optimized functions
│   │   ├── orderbook/          # Multiple orderbook implementations & tools
│   │   ├── ringbuffer/         # Efficient fixed-size circular buffers
│   │   ├── rounding/           # Fast price/size rounding utilities
│   │   ├── time/               # Time utilities
│   │   ├── websocket/          # WebSocket clients + payload verification
│   │   ├── weights/            # Weight generators 
│   ├── __init__.py             # Package initialization
├── tests/                      # Unit tests for all the modules
├── .gitignore                  # Git ignore file
├── LICENSE                     # License information
├── README.md                   # Main documentation file
├── requirements.txt            # Python dependencies
└── setup.py                    # Setup script for pip installation
```

## Installation

MM Toolbox is available on PyPI and can be installed using pip:

```bash
pip install mm_toolbox
```

To install directly from the source, clone the repository and install the dependencies:
```bash
git clone https://github.com/beatzxbt/mm-toolbox.git
cd mm-toolbox
pip install poetry
poetry install
```

## Usage

After installation, you can start using MM Toolbox by importing the necessary modules:
```python
from mm_toolbox import Orderbook
from mm_toolbox import ExponentialMovingAverage
from mm_toolbox import time_iso8601

# Example usage:
orderbook = Orderbook(size=100)
```

## Planned additions/upgrades

### v0.2.0
**Numba**: Complete coverage of [Numba's top-level functions](https://numba.readthedocs.io/en/stable/reference/numpysupported.html#other-functions) (with custom implementation if faster).

**Moving Average**: Weighted Moving Average (WMA).

**Orderbook**: Directly update BBA, ++Performance.

**Candles**: Multi-trigger candle (time/tick/volume), ++Performance.

**Logger**: High performance logger.

**Websocket**: Standard websocket, Fast websocket pool + auto latency swapping mechanism.

### v0.3.0
**Numba**: Coverage of [Numba's reduction functions.](https://numba.readthedocs.io/en/stable/reference/numpysupported.html#reductions) (with custom implementation if faster).

**Moving Average**: Simple Moving Average (SMA).

**Orderbook**: [HFT Orderbook](/mm_toolbox/src/orderbook/hft.py), aiming to be fastest Python orderbook on GitHub.

### v0.4.0
**Weights**: Logarithmic.

**Orderbook**: HFTOrderbook ++Performance.

**Websocket**: FastWsPool ++Stability ++Performance, VerifyWsPayload ++Performance.

### v0.5.0
**Orderbook**: L3 Orderbook.

## License
MM Toolbox is licensed under the MIT License. See the [LICENSE](/LICENSE) file for more information.

## Contributing
Contributions are welcome! Please read the [CONTRIBUTING.md](/CONTRIBUTING.md) for guidelines on how to contribute to this project.

## Contact
For questions or support, please open an [issue](https://github.com/beatzxbt/mm-toolbox/issues). 
I can also be reached on [Twitter](https://twitter.com/BeatzXBT) and [Discord](@gamingbeatz) :D


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/beatzxbt/mm-toolbox",
    "name": "mm-toolbox",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.10.0",
    "maintainer_email": null,
    "keywords": "market making, high performance python, orderbook",
    "author": "beatzxbt",
    "author_email": "121855680+beatzxbt@users.noreply.github.com",
    "download_url": "https://files.pythonhosted.org/packages/55/88/40fd9bdb5e2be488bf570da141d313a915a77a7111403fd6286b5fdbd9d7/mm_toolbox-0.2.1.tar.gz",
    "platform": null,
    "description": "# MM Toolbox\n**MM Toolbox** is a Python library designed to provide high-performance tools for market making strategies.\n\n## Contents\n```plaintext\nmm-toolbox/\n\u251c\u2500\u2500 src/\n\u2502   \u251c\u2500\u2500 mm_toolbox/\n\u2502   \u2502   \u251c\u2500\u2500 candles/            # Tools for handling and aggregating candlestick data\n\u2502   \u2502   \u251c\u2500\u2500 logging/            # Lightweight logger + Discord/Telegram support\n\u2502   \u2502   \u251c\u2500\u2500 moving_average/     # Various moving averages (EMA/HMA/WMA etc)\n\u2502   \u2502   \u251c\u2500\u2500 numba/              # Numba-optimized functions\n\u2502   \u2502   \u251c\u2500\u2500 orderbook/          # Multiple orderbook implementations & tools\n\u2502   \u2502   \u251c\u2500\u2500 ringbuffer/         # Efficient fixed-size circular buffers\n\u2502   \u2502   \u251c\u2500\u2500 rounding/           # Fast price/size rounding utilities\n\u2502   \u2502   \u251c\u2500\u2500 time/               # Time utilities\n\u2502   \u2502   \u251c\u2500\u2500 websocket/          # WebSocket clients + payload verification\n\u2502   \u2502   \u251c\u2500\u2500 weights/            # Weight generators \n\u2502   \u251c\u2500\u2500 __init__.py             # Package initialization\n\u251c\u2500\u2500 tests/                      # Unit tests for all the modules\n\u251c\u2500\u2500 .gitignore                  # Git ignore file\n\u251c\u2500\u2500 LICENSE                     # License information\n\u251c\u2500\u2500 README.md                   # Main documentation file\n\u251c\u2500\u2500 requirements.txt            # Python dependencies\n\u2514\u2500\u2500 setup.py                    # Setup script for pip installation\n```\n\n## Installation\n\nMM Toolbox is available on PyPI and can be installed using pip:\n\n```bash\npip install mm_toolbox\n```\n\nTo install directly from the source, clone the repository and install the dependencies:\n```bash\ngit clone https://github.com/beatzxbt/mm-toolbox.git\ncd mm-toolbox\npip install poetry\npoetry install\n```\n\n## Usage\n\nAfter installation, you can start using MM Toolbox by importing the necessary modules:\n```python\nfrom mm_toolbox import Orderbook\nfrom mm_toolbox import ExponentialMovingAverage\nfrom mm_toolbox import time_iso8601\n\n# Example usage:\norderbook = Orderbook(size=100)\n```\n\n## Planned additions/upgrades\n\n### v0.2.0\n**Numba**: Complete coverage of [Numba's top-level functions](https://numba.readthedocs.io/en/stable/reference/numpysupported.html#other-functions) (with custom implementation if faster).\n\n**Moving Average**: Weighted Moving Average (WMA).\n\n**Orderbook**: Directly update BBA, ++Performance.\n\n**Candles**: Multi-trigger candle (time/tick/volume), ++Performance.\n\n**Logger**: High performance logger.\n\n**Websocket**: Standard websocket, Fast websocket pool + auto latency swapping mechanism.\n\n### v0.3.0\n**Numba**: Coverage of [Numba's reduction functions.](https://numba.readthedocs.io/en/stable/reference/numpysupported.html#reductions) (with custom implementation if faster).\n\n**Moving Average**: Simple Moving Average (SMA).\n\n**Orderbook**: [HFT Orderbook](/mm_toolbox/src/orderbook/hft.py), aiming to be fastest Python orderbook on GitHub.\n\n### v0.4.0\n**Weights**: Logarithmic.\n\n**Orderbook**: HFTOrderbook ++Performance.\n\n**Websocket**: FastWsPool ++Stability ++Performance, VerifyWsPayload ++Performance.\n\n### v0.5.0\n**Orderbook**: L3 Orderbook.\n\n## License\nMM Toolbox is licensed under the MIT License. See the [LICENSE](/LICENSE) file for more information.\n\n## Contributing\nContributions are welcome! Please read the [CONTRIBUTING.md](/CONTRIBUTING.md) for guidelines on how to contribute to this project.\n\n## Contact\nFor questions or support, please open an [issue](https://github.com/beatzxbt/mm-toolbox/issues). \nI can also be reached on [Twitter](https://twitter.com/BeatzXBT) and [Discord](@gamingbeatz) :D\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "\"high-performance python tools for market making strategies.\"",
    "version": "0.2.1",
    "project_urls": {
        "Homepage": "https://github.com/beatzxbt/mm-toolbox",
        "Repository": "https://github.com/beatzxbt/mm-toolbox"
    },
    "split_keywords": [
        "market making",
        " high performance python",
        " orderbook"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e62542a2f6b1427158bd4f17832a3b431f2eb53510912278514d3ddb0cdc4b0f",
                "md5": "aee4920b382ed940e3d2e74b543050ae",
                "sha256": "7428f0da2fae4107295623c9a730b2a5b5412e0fb66e7fe1a7298bdc773a07c7"
            },
            "downloads": -1,
            "filename": "mm_toolbox-0.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "aee4920b382ed940e3d2e74b543050ae",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.10.0",
            "size": 52642,
            "upload_time": "2024-09-14T10:16:58",
            "upload_time_iso_8601": "2024-09-14T10:16:58.280539Z",
            "url": "https://files.pythonhosted.org/packages/e6/25/42a2f6b1427158bd4f17832a3b431f2eb53510912278514d3ddb0cdc4b0f/mm_toolbox-0.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "558840fd9bdb5e2be488bf570da141d313a915a77a7111403fd6286b5fdbd9d7",
                "md5": "640bdfe98662ad011159be3f801a4411",
                "sha256": "803aab31128c4ec3fb0a24e3a699ba80253b75f649ca06431a98662dcbe8180a"
            },
            "downloads": -1,
            "filename": "mm_toolbox-0.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "640bdfe98662ad011159be3f801a4411",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.10.0",
            "size": 36587,
            "upload_time": "2024-09-14T10:17:00",
            "upload_time_iso_8601": "2024-09-14T10:17:00.362278Z",
            "url": "https://files.pythonhosted.org/packages/55/88/40fd9bdb5e2be488bf570da141d313a915a77a7111403fd6286b5fdbd9d7/mm_toolbox-0.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-14 10:17:00",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "beatzxbt",
    "github_project": "mm-toolbox",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "mm-toolbox"
}
        
Elapsed time: 1.45526s