bbstrader


Namebbstrader JSON
Version 0.1.93 PyPI version JSON
download
home_pagehttps://github.com/bbalouki/bbstrader
SummarySimplified Investment & Trading Toolkit
upload_time2024-11-18 09:24:10
maintainerBertin Balouki SIMYELI
docs_urlNone
authorBertin Balouki SIMYELI
requires_pythonNone
licenseThe MIT License (MIT)
keywords finance toolkit financial analysis fundamental quantitative database equities currencies economics etfs funds indices moneymarkets commodities futures cfds derivatives trading investing portfolio optimization performance
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Simplified Investment & Trading Toolkit
![bbstrader](https://github.com/bbalouki/bbstrader/blob/main/assets/bbstrader_logo.png?raw=true)

[![Documentation Status](https://readthedocs.org/projects/bbstrader/badge/?version=latest)](https://bbstrader.readthedocs.io/en/latest/?badge=latest)

[Dcoumentation](https://bbstrader.readthedocs.io/en/latest/index.html)

## Overview

BBSTrader is a trading system suite developed for MetaTrader 5 (MT5) and IBKR platforms (comming soon), designed to offer a comprehensive set of tools for developping, backtesting, executing, and managing a wide array of trading strategies. With an emphasis on algorithmic and quantitative trading to provide traders with a robust platform for exploring and deploying sophisticated trading strategies.

`bbstrader` is comprised of several key modules, each focus on specific aspects of trading strategy development and execution:

- **Backtesting Module (btengine)** : Enables traders to rigorously test their trading strategies using historical data to evaluate performance before live deployment.
- **Trading Strategies Module**: A collection of predefined trading strategies, including ARIMA+GARCH models, Kalman Filters, and Simple Moving Averages, equipped with risk management through Hidden Markov Models.
- **MetaTrader5 Module (metatrader)**: Facilitates the direct execution of trading strategies on the MetaTrader 5 platform, supporting real-time trading across multiple financial instruments.
- **Modles Module**: Serves as a framework for implementing various types of financial models (risk managment models, Machine learing models etc).
- **Time serie Module (tseries)** designed for conducting advanced time series analysis in financial markets. 
It leverages statistical models and algorithms to perform tasks such as cointegration testing, volatility modeling, and filter-based estimation to assist in trading strategy development, market analysis, and financial data exploration.

## Features

- **Comprehensive Backtesting**: Assess the performance of trading strategies with historical market data to optimize parameters and strategies for live trading environments.
- **Integrated Risk Management**: Leverage advanced risk management techniques to adapt to changing market conditions and maintain control over risk exposure.
- **Automated Trading**: Execute trades automatically on the MT5 platform, with support for managing orders, positions, and risk in real-time.
- **Flexible Framework**: Customize existing strategies or develop new ones with the flexible, modular architecture designed to accommodate traders' evolving needs.
- **Advanced Time Series Analysis**: Conduct in-depth analysis of financial time series data to identify patterns, trends, and relationships that can inform trading strategies.
You can read the full documentation [here](https://bbstrader.readthedocs.io/en/latest/index.html)

## Getting Started

Before you can use the bbstrader and the metratrader, you need to have MetaTrader 5 (MT5) installed on your computer and an active MT5 trading account. 
This Module currenlty support three brokers, [Admirals Group AS](https://cabinet.a-partnership.com/visit/?bta=35537&brand=admiralmarkets), [Just Global Markets Ltd.](https://one.justmarkets.link/a/tufvj0xugm/registration/trader), and [FTMO](https://trader.ftmo.com/?affiliates=JGmeuQqepAZLMcdOEQRp), so you need to create a demo or live account with one of them.
* If you want to trade `Stocks`, `ETFs`, `Indices`, `Commodities`, `Futures`, and `Forex`, [click here](https://cabinet.a-partnership.com/visit/?bta=35537&brand=admiralmarkets)
* If you want to trade `Stocks`, `Crypto`, `indices`, `Commodities`, and `Forex`, [click here](https://one.justmarkets.link/a/tufvj0xugm/registration/trader)
* If you are looking for a prop firm, [click here](https://trader.ftmo.com/?affiliates=JGmeuQqepAZLMcdOEQRp)

Then, you can install `bbstrader` using pip:
```bash
pip install bbstrader
```

## Examples
### Backtesting Module
```python
from bbstrader.trading.strategies import test_strategy

if __name__ == '__main__':
    # Run backtesting for Stock Index Short Term Buy Only Strategy
    test_strategy(strategy='sistbo')
    
```
### Backtesting Results
![Backtesting Results 1](https://github.com/bbalouki/bbstrader/blob/main/assets/bbs_.png?raw=true)
![Backtesting Results 2](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_metrics_1.png?raw=true)
![Backtesting Results 3](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_metrics_2.png?raw=true)
![Backtesting Results 4](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_plots_1_.png?raw=true)
![Backtesting Results 5](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_plots_2_.png?raw=true)

## Customization and Contribution

`bbstrader`'s modular design allows for easy customization and extension. Traders and developers are encouraged to modify existing strategies, add new ones, or enhance the system's capabilities. Contributions to the `bbstrader` project are welcome.

## Contributing to BBSTrader

We warmly welcome contributions from the trading and development community! Whether you're interested in fixing bugs, adding new features, or improving documentation, your help is invaluable to making `bbstrader` more robust and versatile. Here's how you can contribute:

### Ways to Contribute

- **Develop New Strategies**: Implement and share your unique trading strategies or models.
- **Enhance Existing Modules**: Optimize the performance, extend the functionality, or improve the usability of existing modules.
- **Report Bugs**: Identify and report bugs to help us improve the system's stability and performance.
- **Improve Documentation**: Contribute to the project's documentation for clearer guidance and better usability.
- **Share Insights and Best Practices**: Provide examples, tutorials, or best practices on utilizing `bbstrader` effectively.

### How to Get Started

1. **Fork the Repository**: Start by forking the `bbstrader` repository to your GitHub account.
2. **Clone Your Fork**: Clone your forked repository to your local machine to start making changes.
3. **Set Up Your Development Environment**: Ensure you have the necessary development environment set up, including Python, MetaTrader 5, and any dependencies.
4. **Create a New Branch**: Make your changes in a new git branch, branching off from the main branch.
5. **Implement Your Changes**: Work on bug fixes, features, or documentation improvements.
6. **Test Your Changes**: Ensure your changes do not introduce new issues and that they work as intended.
7. **Submit a Pull Request**: Once you're ready, submit a pull request (PR) against the main `bbstrader` repository. Include a clear description of the changes and any other relevant information.

### Contribution Guidelines

Please adhere to the following guidelines to ensure a smooth contribution process:

- **Follow the Coding Standards**: Write clean, readable code and follow the coding conventions used throughout the project.
- **Document Your Changes**: Add comments and update the README.md files as necessary to explain your changes or additions.
- **Respect the License**: All contributions are subject to the MIT License under which `bbstrader` is distributed.

We're excited to see your contributions and to welcome you to the `bbstrader` community. Together, we can build a powerful tool that serves the needs of traders around the world.


## Disclaimer

Trading financial instruments involves a high level of risk and may not be suitable for all investors. The developers of `bbstrader` are not responsible for any financial losses incurred from the use of this software. Trade responsibly and at your own risk.

## License
`bbstrader` is open source and available under the MIT License.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/bbalouki/bbstrader",
    "name": "bbstrader",
    "maintainer": "Bertin Balouki SIMYELI",
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "Finance, Toolkit, Financial, Analysis, Fundamental, Quantitative, Database, Equities, Currencies, Economics, ETFs, Funds, Indices, Moneymarkets, Commodities, Futures, CFDs, Derivatives, Trading, Investing, Portfolio, Optimization, Performance",
    "author": "Bertin Balouki SIMYELI",
    "author_email": "<bertin@bbstrader.com>",
    "download_url": "https://files.pythonhosted.org/packages/49/a0/6300471fea6700b92666de1ea7fdf1f80ebfacb40c931f2a001e2e97edae/bbstrader-0.1.93.tar.gz",
    "platform": null,
    "description": "# Simplified Investment & Trading Toolkit\r\n![bbstrader](https://github.com/bbalouki/bbstrader/blob/main/assets/bbstrader_logo.png?raw=true)\r\n\r\n[![Documentation Status](https://readthedocs.org/projects/bbstrader/badge/?version=latest)](https://bbstrader.readthedocs.io/en/latest/?badge=latest)\r\n\r\n[Dcoumentation](https://bbstrader.readthedocs.io/en/latest/index.html)\r\n\r\n## Overview\r\n\r\nBBSTrader is a trading system suite developed for MetaTrader 5 (MT5) and IBKR platforms (comming soon), designed to offer a comprehensive set of tools for developping, backtesting, executing, and managing a wide array of trading strategies. With an emphasis on algorithmic and quantitative trading to provide traders with a robust platform for exploring and deploying sophisticated trading strategies.\r\n\r\n`bbstrader` is comprised of several key modules, each focus on specific aspects of trading strategy development and execution:\r\n\r\n- **Backtesting Module (btengine)** : Enables traders to rigorously test their trading strategies using historical data to evaluate performance before live deployment.\r\n- **Trading Strategies Module**: A collection of predefined trading strategies, including ARIMA+GARCH models, Kalman Filters, and Simple Moving Averages, equipped with risk management through Hidden Markov Models.\r\n- **MetaTrader5 Module (metatrader)**: Facilitates the direct execution of trading strategies on the MetaTrader 5 platform, supporting real-time trading across multiple financial instruments.\r\n- **Modles Module**: Serves as a framework for implementing various types of financial models (risk managment models, Machine learing models etc).\r\n- **Time serie Module (tseries)** designed for conducting advanced time series analysis in financial markets. \r\nIt leverages statistical models and algorithms to perform tasks such as cointegration testing, volatility modeling, and filter-based estimation to assist in trading strategy development, market analysis, and financial data exploration.\r\n\r\n## Features\r\n\r\n- **Comprehensive Backtesting**: Assess the performance of trading strategies with historical market data to optimize parameters and strategies for live trading environments.\r\n- **Integrated Risk Management**: Leverage advanced risk management techniques to adapt to changing market conditions and maintain control over risk exposure.\r\n- **Automated Trading**: Execute trades automatically on the MT5 platform, with support for managing orders, positions, and risk in real-time.\r\n- **Flexible Framework**: Customize existing strategies or develop new ones with the flexible, modular architecture designed to accommodate traders' evolving needs.\r\n- **Advanced Time Series Analysis**: Conduct in-depth analysis of financial time series data to identify patterns, trends, and relationships that can inform trading strategies.\r\nYou can read the full documentation [here](https://bbstrader.readthedocs.io/en/latest/index.html)\r\n\r\n## Getting Started\r\n\r\nBefore you can use the bbstrader and the metratrader, you need to have MetaTrader 5 (MT5) installed on your computer and an active MT5 trading account. \r\nThis Module currenlty support three brokers, [Admirals Group AS](https://cabinet.a-partnership.com/visit/?bta=35537&brand=admiralmarkets), [Just Global Markets Ltd.](https://one.justmarkets.link/a/tufvj0xugm/registration/trader), and [FTMO](https://trader.ftmo.com/?affiliates=JGmeuQqepAZLMcdOEQRp), so you need to create a demo or live account with one of them.\r\n* If you want to trade `Stocks`, `ETFs`, `Indices`, `Commodities`, `Futures`, and `Forex`, [click here](https://cabinet.a-partnership.com/visit/?bta=35537&brand=admiralmarkets)\r\n* If you want to trade `Stocks`, `Crypto`, `indices`, `Commodities`, and `Forex`, [click here](https://one.justmarkets.link/a/tufvj0xugm/registration/trader)\r\n* If you are looking for a prop firm, [click here](https://trader.ftmo.com/?affiliates=JGmeuQqepAZLMcdOEQRp)\r\n\r\nThen, you can install `bbstrader` using pip:\r\n```bash\r\npip install bbstrader\r\n```\r\n\r\n## Examples\r\n### Backtesting Module\r\n```python\r\nfrom bbstrader.trading.strategies import test_strategy\r\n\r\nif __name__ == '__main__':\r\n    # Run backtesting for Stock Index Short Term Buy Only Strategy\r\n    test_strategy(strategy='sistbo')\r\n    \r\n```\r\n### Backtesting Results\r\n![Backtesting Results 1](https://github.com/bbalouki/bbstrader/blob/main/assets/bbs_.png?raw=true)\r\n![Backtesting Results 2](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_metrics_1.png?raw=true)\r\n![Backtesting Results 3](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_metrics_2.png?raw=true)\r\n![Backtesting Results 4](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_plots_1_.png?raw=true)\r\n![Backtesting Results 5](https://github.com/bbalouki/bbstrader/blob/main/assets/qs_plots_2_.png?raw=true)\r\n\r\n## Customization and Contribution\r\n\r\n`bbstrader`'s modular design allows for easy customization and extension. Traders and developers are encouraged to modify existing strategies, add new ones, or enhance the system's capabilities. Contributions to the `bbstrader` project are welcome.\r\n\r\n## Contributing to BBSTrader\r\n\r\nWe warmly welcome contributions from the trading and development community! Whether you're interested in fixing bugs, adding new features, or improving documentation, your help is invaluable to making `bbstrader` more robust and versatile. Here's how you can contribute:\r\n\r\n### Ways to Contribute\r\n\r\n- **Develop New Strategies**: Implement and share your unique trading strategies or models.\r\n- **Enhance Existing Modules**: Optimize the performance, extend the functionality, or improve the usability of existing modules.\r\n- **Report Bugs**: Identify and report bugs to help us improve the system's stability and performance.\r\n- **Improve Documentation**: Contribute to the project's documentation for clearer guidance and better usability.\r\n- **Share Insights and Best Practices**: Provide examples, tutorials, or best practices on utilizing `bbstrader` effectively.\r\n\r\n### How to Get Started\r\n\r\n1. **Fork the Repository**: Start by forking the `bbstrader` repository to your GitHub account.\r\n2. **Clone Your Fork**: Clone your forked repository to your local machine to start making changes.\r\n3. **Set Up Your Development Environment**: Ensure you have the necessary development environment set up, including Python, MetaTrader 5, and any dependencies.\r\n4. **Create a New Branch**: Make your changes in a new git branch, branching off from the main branch.\r\n5. **Implement Your Changes**: Work on bug fixes, features, or documentation improvements.\r\n6. **Test Your Changes**: Ensure your changes do not introduce new issues and that they work as intended.\r\n7. **Submit a Pull Request**: Once you're ready, submit a pull request (PR) against the main `bbstrader` repository. Include a clear description of the changes and any other relevant information.\r\n\r\n### Contribution Guidelines\r\n\r\nPlease adhere to the following guidelines to ensure a smooth contribution process:\r\n\r\n- **Follow the Coding Standards**: Write clean, readable code and follow the coding conventions used throughout the project.\r\n- **Document Your Changes**: Add comments and update the README.md files as necessary to explain your changes or additions.\r\n- **Respect the License**: All contributions are subject to the MIT License under which `bbstrader` is distributed.\r\n\r\nWe're excited to see your contributions and to welcome you to the `bbstrader` community. Together, we can build a powerful tool that serves the needs of traders around the world.\r\n\r\n\r\n## Disclaimer\r\n\r\nTrading financial instruments involves a high level of risk and may not be suitable for all investors. The developers of `bbstrader` are not responsible for any financial losses incurred from the use of this software. Trade responsibly and at your own risk.\r\n\r\n## License\r\n`bbstrader` is open source and available under the MIT License.\r\n",
    "bugtrack_url": null,
    "license": "The MIT License (MIT)",
    "summary": "Simplified Investment & Trading Toolkit",
    "version": "0.1.93",
    "project_urls": {
        "Documentation": "https://bbstrader.readthedocs.io/en/latest/",
        "Download": "https://pypi.org/project/bbstrader/",
        "Homepage": "https://github.com/bbalouki/bbstrader",
        "Source Code": "https://github.com/bbalouki/bbstrader"
    },
    "split_keywords": [
        "finance",
        " toolkit",
        " financial",
        " analysis",
        " fundamental",
        " quantitative",
        " database",
        " equities",
        " currencies",
        " economics",
        " etfs",
        " funds",
        " indices",
        " moneymarkets",
        " commodities",
        " futures",
        " cfds",
        " derivatives",
        " trading",
        " investing",
        " portfolio",
        " optimization",
        " performance"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1709ea2bdb03ded416c3f4f73620555314353d225826b9a619be44f624a7e2ba",
                "md5": "6e55173eafbc05b9aaf88eda16e03e77",
                "sha256": "c613c3a87f3019d3ccf421a9151456c1c5f05a9be1807bd0116f08312d743970"
            },
            "downloads": -1,
            "filename": "bbstrader-0.1.93-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6e55173eafbc05b9aaf88eda16e03e77",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 118906,
            "upload_time": "2024-11-18T09:24:08",
            "upload_time_iso_8601": "2024-11-18T09:24:08.661558Z",
            "url": "https://files.pythonhosted.org/packages/17/09/ea2bdb03ded416c3f4f73620555314353d225826b9a619be44f624a7e2ba/bbstrader-0.1.93-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "49a06300471fea6700b92666de1ea7fdf1f80ebfacb40c931f2a001e2e97edae",
                "md5": "c82dda73bc6126ec2f2d43f09f7e8bf3",
                "sha256": "6433cae2e54aee540ae39917a13196ce2ade43655c5c9c98b06e1c5642238f19"
            },
            "downloads": -1,
            "filename": "bbstrader-0.1.93.tar.gz",
            "has_sig": false,
            "md5_digest": "c82dda73bc6126ec2f2d43f09f7e8bf3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 112453,
            "upload_time": "2024-11-18T09:24:10",
            "upload_time_iso_8601": "2024-11-18T09:24:10.661022Z",
            "url": "https://files.pythonhosted.org/packages/49/a0/6300471fea6700b92666de1ea7fdf1f80ebfacb40c931f2a001e2e97edae/bbstrader-0.1.93.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-18 09:24:10",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "bbalouki",
    "github_project": "bbstrader",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "bbstrader"
}
        
Elapsed time: 0.36294s