bbstrader 0.3.3__tar.gz → 0.3.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of bbstrader might be problematic. Click here for more details.

Files changed (59) hide show
  1. {bbstrader-0.3.3/bbstrader.egg-info → bbstrader-0.3.5}/PKG-INFO +25 -28
  2. {bbstrader-0.3.3 → bbstrader-0.3.5}/README.md +2 -2
  3. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/__init__.py +1 -1
  4. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/__main__.py +10 -2
  5. bbstrader-0.3.5/bbstrader/apps/_copier.py +664 -0
  6. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/strategy.py +163 -90
  7. bbstrader-0.3.5/bbstrader/compat.py +27 -0
  8. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/config.py +0 -16
  9. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/core/scripts.py +4 -3
  10. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/core/utils.py +5 -3
  11. bbstrader-0.3.5/bbstrader/ibkr/utils.py +0 -0
  12. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/account.py +169 -29
  13. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/analysis.py +7 -5
  14. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/copier.py +61 -14
  15. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/scripts.py +15 -2
  16. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/trade.py +28 -24
  17. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/utils.py +64 -0
  18. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/factors.py +17 -13
  19. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/ml.py +104 -54
  20. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/trading/execution.py +9 -8
  21. {bbstrader-0.3.3 → bbstrader-0.3.5/bbstrader.egg-info}/PKG-INFO +25 -28
  22. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader.egg-info/SOURCES.txt +2 -0
  23. bbstrader-0.3.5/bbstrader.egg-info/requires.txt +38 -0
  24. bbstrader-0.3.5/requirements.txt +35 -0
  25. {bbstrader-0.3.3 → bbstrader-0.3.5}/setup.py +7 -7
  26. bbstrader-0.3.3/bbstrader/compat.py +0 -19
  27. bbstrader-0.3.3/bbstrader.egg-info/requires.txt +0 -38
  28. bbstrader-0.3.3/requirements.txt +0 -35
  29. {bbstrader-0.3.3 → bbstrader-0.3.5}/LICENSE +0 -0
  30. {bbstrader-0.3.3 → bbstrader-0.3.5}/MANIFEST.in +0 -0
  31. {bbstrader-0.3.3/bbstrader/ibkr → bbstrader-0.3.5/bbstrader/apps}/__init__.py +0 -0
  32. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/__init__.py +0 -0
  33. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/backtest.py +0 -0
  34. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/data.py +0 -0
  35. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/event.py +0 -0
  36. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/execution.py +0 -0
  37. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/performance.py +0 -0
  38. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/portfolio.py +0 -0
  39. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/btengine/scripts.py +0 -0
  40. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/core/__init__.py +0 -0
  41. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/core/data.py +0 -0
  42. /bbstrader-0.3.3/bbstrader/ibkr/utils.py → /bbstrader-0.3.5/bbstrader/ibkr/__init__.py +0 -0
  43. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/__init__.py +0 -0
  44. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/rates.py +0 -0
  45. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/metatrader/risk.py +0 -0
  46. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/__init__.py +0 -0
  47. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/nlp.py +0 -0
  48. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/optimization.py +0 -0
  49. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/portfolio.py +0 -0
  50. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/models/risk.py +0 -0
  51. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/trading/__init__.py +0 -0
  52. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/trading/scripts.py +0 -0
  53. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/trading/strategies.py +0 -0
  54. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/trading/utils.py +0 -0
  55. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader/tseries.py +0 -0
  56. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader.egg-info/dependency_links.txt +0 -0
  57. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader.egg-info/entry_points.txt +0 -0
  58. {bbstrader-0.3.3 → bbstrader-0.3.5}/bbstrader.egg-info/top_level.txt +0 -0
  59. {bbstrader-0.3.3 → bbstrader-0.3.5}/setup.cfg +0 -0
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bbstrader
3
- Version: 0.3.3
3
+ Version: 0.3.5
4
4
  Summary: Simplified Investment & Trading Toolkit
5
5
  Home-page: https://github.com/bbalouki/bbstrader
6
6
  Download-URL: https://pypi.org/project/bbstrader/
7
7
  Author: Bertin Balouki SIMYELI
8
8
  Author-email: <bertin@bbstrader.com>
9
9
  Maintainer: Bertin Balouki SIMYELI
10
- License: The MIT License (MIT)
10
+ License: MIT
11
11
  Project-URL: Documentation, https://bbstrader.readthedocs.io/en/latest/
12
12
  Project-URL: Source Code, https://github.com/bbalouki/bbstrader
13
13
  Keywords: Finance,Toolkit,Financial,Analysis,Fundamental,Quantitative,Database,Equities,Currencies,Economics,ETFs,Funds,Indices,Moneymarkets,Commodities,Futures,CFDs,Derivatives,Trading,Investing,Portfolio,Optimization,Performance
@@ -15,50 +15,47 @@ Classifier: Development Status :: 5 - Production/Stable
15
15
  Classifier: Intended Audience :: Developers
16
16
  Classifier: Intended Audience :: Financial and Insurance Industry
17
17
  Classifier: Topic :: Office/Business :: Financial :: Investment
18
- Classifier: Programming Language :: Python :: 3.10
19
- Classifier: Programming Language :: Python :: 3.11
20
18
  Classifier: Programming Language :: Python :: 3.12
21
19
  Classifier: Operating System :: Microsoft :: Windows
22
20
  Classifier: Operating System :: POSIX :: Linux
23
21
  Classifier: Operating System :: MacOS
24
- Classifier: License :: OSI Approved :: MIT License
25
22
  Description-Content-Type: text/markdown
26
23
  License-File: LICENSE
27
- Requires-Dist: alphalens-reloaded>=0.4.5
28
- Requires-Dist: beautifulsoup4>=4.13.1
24
+ Requires-Dist: alphalens-reloaded>=0.4.6
25
+ Requires-Dist: beautifulsoup4>=4.13.5
29
26
  Requires-Dist: colorama>=0.4.6
30
- Requires-Dist: CurrencyConverter>=0.18.2
31
- Requires-Dist: dash>=2.18.2
27
+ Requires-Dist: CurrencyConverter>=0.18.9
28
+ Requires-Dist: dash>=3.2.0
32
29
  Requires-Dist: eodhd>=1.0.32
33
- Requires-Dist: exchange-calendars>=4.9
30
+ Requires-Dist: exchange_calendars>=4.11.1
34
31
  Requires-Dist: filterpy>=1.4.5
35
- Requires-Dist: financetoolkit>=1.9.9
36
- Requires-Dist: ipython>=8.32.0
37
- Requires-Dist: lightgbm>=4.5.0
32
+ Requires-Dist: financetoolkit>=2.0.4
33
+ Requires-Dist: ipython>=9.5.0
34
+ Requires-Dist: lightgbm>=4.6.0
38
35
  Requires-Dist: nltk>=3.9.1
39
- Requires-Dist: notify-py>=0.3.43
40
- Requires-Dist: numpy<2.0.0,>=1.26.0
41
- Requires-Dist: pandas_ta>=0.3.14b0
36
+ Requires-Dist: notify_py>=0.3.43
37
+ Requires-Dist: numpy>=2.2.6
38
+ Requires-Dist: pandas-ta>=0.4.67b0
42
39
  Requires-Dist: praw>=7.8.1
43
- Requires-Dist: pyfiglet>=1.0.2
44
- Requires-Dist: pykalman>=0.10.1
40
+ Requires-Dist: pyfiglet>=1.0.4
41
+ Requires-Dist: pykalman>=0.10.2
45
42
  Requires-Dist: pyportfolioopt>=1.5.6
46
- Requires-Dist: python-dotenv>=1.0.1
47
- Requires-Dist: python-telegram-bot>=21.10
43
+ Requires-Dist: python-dotenv>=1.1.1
44
+ Requires-Dist: python-telegram-bot>=22.3
48
45
  Requires-Dist: PyYAML>=6.0.2
49
- Requires-Dist: QuantStats>=0.0.64
50
- Requires-Dist: scikit-learn>=1.6.1
46
+ Requires-Dist: QuantStats>=0.0.77
47
+ Requires-Dist: scikit-learn>=1.7.2
51
48
  Requires-Dist: seaborn>=0.13.2
52
- Requires-Dist: spacy>=3.8.4
53
- Requires-Dist: statsmodels>=0.14.4
49
+ Requires-Dist: spacy>=3.8.7
50
+ Requires-Dist: statsmodels>=0.14.5
54
51
  Requires-Dist: sumy>=0.11.0
55
52
  Requires-Dist: tables>=3.10.2
56
53
  Requires-Dist: tabulate>=0.9.0
57
54
  Requires-Dist: textblob>=0.19.0
58
55
  Requires-Dist: tqdm>=4.67.1
59
- Requires-Dist: tweepy>=4.15.0
56
+ Requires-Dist: tweepy>=4.16.0
60
57
  Requires-Dist: vaderSentiment>=3.3.2
61
- Requires-Dist: yfinance>=0.2.55
58
+ Requires-Dist: yfinance>=0.2.65
62
59
  Provides-Extra: mt5
63
60
  Requires-Dist: MetaTrader5; extra == "mt5"
64
61
  Dynamic: author
@@ -84,7 +81,7 @@ Dynamic: summary
84
81
  [![Supported Python Versions](https://img.shields.io/pypi/pyversions/bbstrader)](https://pypi.org/project/bbstrader/)
85
82
  [![PyPI Downloads](https://static.pepy.tech/badge/bbstrader)](https://pepy.tech/projects/bbstrader)
86
83
  [![CodeFactor](https://www.codefactor.io/repository/github/bbalouki/bbstrader/badge)](https://www.codefactor.io/repository/github/bbalouki/bbstrader)
87
- [![LinkedIn](https://img.shields.io/badge/LinkedIn-grey?logo=Linkedin&logoColor=white)](https://www.linkedin.com/in/bertin-balouki-simyeli-15b17a1a6/)
84
+ [![LinkedIn](https://img.shields.io/badge/LinkedIn-grey?logo=Linkedin&logoColor=white)](https://www.linkedin.com/in/bertin-balouki-s-15b17a1a6)
88
85
  [![PayPal Me](https://img.shields.io/badge/PayPal%20Me-blue?logo=paypal)](https://paypal.me/bertinbalouki?country.x=SN&locale.x=en_US)
89
86
 
90
87
  [Dcoumentation](https://bbstrader.readthedocs.io/en/latest/index.html)
@@ -164,7 +161,7 @@ To begin using `bbstrader`, please ensure your system meets the following prereq
164
161
  * **MetaTrader 5 (MT5)**:
165
162
  * The MetaTrader 5 platform must be installed on your system (primarily for Windows users needing live trading or direct MT5 interaction).
166
163
  * An active trading account with a MetaTrader 5 broker. `bbstrader` currently supports:
167
- * [Admirals Group AS](https://cabinet.a-partnership.com/visit/?bta=35537&brand=admiralmarkets) (for Stocks, ETFs, Indices, Commodities, Futures, Forex)
164
+ * [Admirals Group AS](https://one.justmarkets.link/a/tufvj0xugm/registration/trader) (for Stocks, ETFs, Indices, Commodities, Futures, Forex)
168
165
  * [Just Global Markets Ltd.](https://one.justmarkets.link/a/tufvj0xugm/registration/trader) (for Stocks, Crypto, Indices, Commodities, Forex)
169
166
  * [FTMO](https://trader.ftmo.com/?affiliates=JGmeuQqepAZLMcdOEQRp) (Proprietary Firm)
170
167
 
@@ -5,7 +5,7 @@
5
5
  [![Supported Python Versions](https://img.shields.io/pypi/pyversions/bbstrader)](https://pypi.org/project/bbstrader/)
6
6
  [![PyPI Downloads](https://static.pepy.tech/badge/bbstrader)](https://pepy.tech/projects/bbstrader)
7
7
  [![CodeFactor](https://www.codefactor.io/repository/github/bbalouki/bbstrader/badge)](https://www.codefactor.io/repository/github/bbalouki/bbstrader)
8
- [![LinkedIn](https://img.shields.io/badge/LinkedIn-grey?logo=Linkedin&logoColor=white)](https://www.linkedin.com/in/bertin-balouki-simyeli-15b17a1a6/)
8
+ [![LinkedIn](https://img.shields.io/badge/LinkedIn-grey?logo=Linkedin&logoColor=white)](https://www.linkedin.com/in/bertin-balouki-s-15b17a1a6)
9
9
  [![PayPal Me](https://img.shields.io/badge/PayPal%20Me-blue?logo=paypal)](https://paypal.me/bertinbalouki?country.x=SN&locale.x=en_US)
10
10
 
11
11
  [Dcoumentation](https://bbstrader.readthedocs.io/en/latest/index.html)
@@ -85,7 +85,7 @@ To begin using `bbstrader`, please ensure your system meets the following prereq
85
85
  * **MetaTrader 5 (MT5)**:
86
86
  * The MetaTrader 5 platform must be installed on your system (primarily for Windows users needing live trading or direct MT5 interaction).
87
87
  * An active trading account with a MetaTrader 5 broker. `bbstrader` currently supports:
88
- * [Admirals Group AS](https://cabinet.a-partnership.com/visit/?bta=35537&brand=admiralmarkets) (for Stocks, ETFs, Indices, Commodities, Futures, Forex)
88
+ * [Admirals Group AS](https://one.justmarkets.link/a/tufvj0xugm/registration/trader) (for Stocks, ETFs, Indices, Commodities, Futures, Forex)
89
89
  * [Just Global Markets Ltd.](https://one.justmarkets.link/a/tufvj0xugm/registration/trader) (for Stocks, Crypto, Indices, Commodities, Forex)
90
90
  * [FTMO](https://trader.ftmo.com/?affiliates=JGmeuQqepAZLMcdOEQRp) (Proprietary Firm)
91
91
 
@@ -7,7 +7,7 @@ __author__ = "Bertin Balouki SIMYELI"
7
7
  __copyright__ = "2023-2025 Bertin Balouki SIMYELI"
8
8
  __email__ = "bertin@bbstrader.com"
9
9
  __license__ = "MIT"
10
- __version__ = "0.3.2"
10
+ __version__ = "0.3.5"
11
11
 
12
12
  from bbstrader import compat # noqa: F401
13
13
  from bbstrader import core # noqa: F401
@@ -65,10 +65,18 @@ def main():
65
65
  sys.exit(1)
66
66
  except KeyboardInterrupt:
67
67
  sys.exit(0)
68
- except Exception:
68
+ except Exception as e:
69
+ print(Fore.RED + f"Error: {e}")
69
70
  sys.exit(1)
70
71
 
71
72
 
72
73
  if __name__ == "__main__":
73
74
  multiprocessing.freeze_support()
74
- main()
75
+ try:
76
+ main()
77
+ except KeyboardInterrupt:
78
+ print(Fore.RED + "\nExecution interrupted by user")
79
+ sys.exit(0)
80
+ except Exception as e:
81
+ print(Fore.RED + f"Error: {e}")
82
+ sys.exit(1)