vectorbt 0.26.1__tar.gz → 0.26.2__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.
Files changed (114) hide show
  1. {vectorbt-0.26.1/vectorbt.egg-info → vectorbt-0.26.2}/PKG-INFO +2 -2
  2. {vectorbt-0.26.1 → vectorbt-0.26.2}/setup.py +1 -1
  3. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/_version.py +1 -1
  4. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/reshape_fns.py +12 -2
  5. {vectorbt-0.26.1 → vectorbt-0.26.2/vectorbt.egg-info}/PKG-INFO +2 -2
  6. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt.egg-info/requires.txt +1 -1
  7. {vectorbt-0.26.1 → vectorbt-0.26.2}/LICENSE.md +0 -0
  8. {vectorbt-0.26.1 → vectorbt-0.26.2}/MANIFEST.in +0 -0
  9. {vectorbt-0.26.1 → vectorbt-0.26.2}/README.md +0 -0
  10. {vectorbt-0.26.1 → vectorbt-0.26.2}/setup.cfg +0 -0
  11. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/__init__.py +0 -0
  12. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_base.py +0 -0
  13. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_data.py +0 -0
  14. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_generic.py +0 -0
  15. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_indicators.py +0 -0
  16. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_labels.py +0 -0
  17. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_portfolio.py +0 -0
  18. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_records.py +0 -0
  19. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_returns.py +0 -0
  20. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_settings.py +0 -0
  21. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_signals.py +0 -0
  22. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/test_utils.py +0 -0
  23. {vectorbt-0.26.1 → vectorbt-0.26.2}/tests/utils.py +0 -0
  24. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/__init__.py +0 -0
  25. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/_settings.py +0 -0
  26. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/_typing.py +0 -0
  27. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/__init__.py +0 -0
  28. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/accessors.py +0 -0
  29. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/array_wrapper.py +0 -0
  30. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/column_grouper.py +0 -0
  31. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/combine_fns.py +0 -0
  32. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/index_fns.py +0 -0
  33. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/base/indexing.py +0 -0
  34. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/data/__init__.py +0 -0
  35. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/data/base.py +0 -0
  36. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/data/custom.py +0 -0
  37. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/data/updater.py +0 -0
  38. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/__init__.py +0 -0
  39. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/accessors.py +0 -0
  40. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/decorators.py +0 -0
  41. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/drawdowns.py +0 -0
  42. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/enums.py +0 -0
  43. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/nb.py +0 -0
  44. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/plots_builder.py +0 -0
  45. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/plotting.py +0 -0
  46. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/ranges.py +0 -0
  47. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/splitters.py +0 -0
  48. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/generic/stats_builder.py +0 -0
  49. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/indicators/__init__.py +0 -0
  50. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/indicators/basic.py +0 -0
  51. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/indicators/configs.py +0 -0
  52. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/indicators/factory.py +0 -0
  53. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/indicators/nb.py +0 -0
  54. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/labels/__init__.py +0 -0
  55. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/labels/enums.py +0 -0
  56. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/labels/generators.py +0 -0
  57. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/labels/nb.py +0 -0
  58. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/messaging/__init__.py +0 -0
  59. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/messaging/telegram.py +0 -0
  60. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/ohlcv_accessors.py +0 -0
  61. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/__init__.py +0 -0
  62. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/base.py +0 -0
  63. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/decorators.py +0 -0
  64. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/enums.py +0 -0
  65. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/logs.py +0 -0
  66. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/nb.py +0 -0
  67. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/orders.py +0 -0
  68. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/portfolio/trades.py +0 -0
  69. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/px_accessors.py +0 -0
  70. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/records/__init__.py +0 -0
  71. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/records/base.py +0 -0
  72. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/records/col_mapper.py +0 -0
  73. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/records/decorators.py +0 -0
  74. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/records/mapped_array.py +0 -0
  75. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/records/nb.py +0 -0
  76. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/returns/__init__.py +0 -0
  77. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/returns/accessors.py +0 -0
  78. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/returns/metrics.py +0 -0
  79. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/returns/nb.py +0 -0
  80. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/returns/qs_adapter.py +0 -0
  81. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/root_accessors.py +0 -0
  82. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/signals/__init__.py +0 -0
  83. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/signals/accessors.py +0 -0
  84. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/signals/enums.py +0 -0
  85. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/signals/factory.py +0 -0
  86. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/signals/generators.py +0 -0
  87. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/signals/nb.py +0 -0
  88. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/templates/dark.json +0 -0
  89. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/templates/light.json +0 -0
  90. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/templates/seaborn.json +0 -0
  91. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/__init__.py +0 -0
  92. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/array_.py +0 -0
  93. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/attr_.py +0 -0
  94. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/checks.py +0 -0
  95. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/colors.py +0 -0
  96. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/config.py +0 -0
  97. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/datetime_.py +0 -0
  98. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/decorators.py +0 -0
  99. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/docs.py +0 -0
  100. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/enum_.py +0 -0
  101. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/figure.py +0 -0
  102. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/image_.py +0 -0
  103. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/mapping.py +0 -0
  104. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/math_.py +0 -0
  105. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/module_.py +0 -0
  106. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/params.py +0 -0
  107. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/random_.py +0 -0
  108. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/requests_.py +0 -0
  109. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/schedule_.py +0 -0
  110. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/tags.py +0 -0
  111. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt/utils/template.py +0 -0
  112. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt.egg-info/SOURCES.txt +0 -0
  113. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt.egg-info/dependency_links.txt +0 -0
  114. {vectorbt-0.26.1 → vectorbt-0.26.2}/vectorbt.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vectorbt
3
- Version: 0.26.1
3
+ Version: 0.26.2
4
4
  Summary: Python library for backtesting and analyzing trading strategies at scale
5
5
  Home-page: https://github.com/polakowo/vectorbt
6
6
  Author: Oleg Polakow
@@ -25,7 +25,7 @@ Classifier: Topic :: Scientific/Engineering :: Information Analysis
25
25
  Requires-Python: >=3.6
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE.md
28
- Requires-Dist: numpy>=1.16.5
28
+ Requires-Dist: numpy<2.0.0,>=1.16.5
29
29
  Requires-Dist: pandas
30
30
  Requires-Dist: scipy
31
31
  Requires-Dist: matplotlib
@@ -21,7 +21,7 @@ setup(
21
21
  'vectorbt': ['templates/*.json']
22
22
  },
23
23
  install_requires=[
24
- 'numpy>=1.16.5',
24
+ 'numpy>=1.16.5, <2.0.0',
25
25
  'pandas',
26
26
  'scipy',
27
27
  'matplotlib',
@@ -1,4 +1,4 @@
1
1
  # Copyright (c) 2021 Oleg Polakow. All rights reserved.
2
2
  # This code is licensed under Apache 2.0 with Commons Clause license (see LICENSE.md for details)
3
3
 
4
- __version__ = "0.26.1"
4
+ __version__ = "0.26.2"
@@ -12,7 +12,14 @@ from collections.abc import Sequence
12
12
  import numpy as np
13
13
  import pandas as pd
14
14
  from numba import njit
15
- from numpy.lib.stride_tricks import _broadcast_shape
15
+ try:
16
+ from numpy import broadcast_shapes
17
+
18
+ broadcast_shape = None
19
+ except ImportError:
20
+ from numpy.lib.stride_tricks import _broadcast_shape as broadcast_shape
21
+
22
+ broadcast_shapes = None
16
23
 
17
24
  from vectorbt import _typing as tp
18
25
  from vectorbt.base import index_fns, array_wrapper
@@ -564,7 +571,10 @@ def broadcast(*args: tp.ArrayLike,
564
571
 
565
572
  # Get final shape
566
573
  if to_shape is None:
567
- to_shape = _broadcast_shape(*map(np.asarray, arr_args_2d))
574
+ if broadcast_shapes is not None:
575
+ to_shape = broadcast_shapes(*map(lambda x: np.asarray(x).shape, arr_args_2d))
576
+ else:
577
+ to_shape = broadcast_shape(*map(np.asarray, arr_args_2d))
568
578
 
569
579
  # Perform broadcasting
570
580
  new_args = []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vectorbt
3
- Version: 0.26.1
3
+ Version: 0.26.2
4
4
  Summary: Python library for backtesting and analyzing trading strategies at scale
5
5
  Home-page: https://github.com/polakowo/vectorbt
6
6
  Author: Oleg Polakow
@@ -25,7 +25,7 @@ Classifier: Topic :: Scientific/Engineering :: Information Analysis
25
25
  Requires-Python: >=3.6
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE.md
28
- Requires-Dist: numpy>=1.16.5
28
+ Requires-Dist: numpy<2.0.0,>=1.16.5
29
29
  Requires-Dist: pandas
30
30
  Requires-Dist: scipy
31
31
  Requires-Dist: matplotlib
@@ -1,4 +1,4 @@
1
- numpy>=1.16.5
1
+ numpy<2.0.0,>=1.16.5
2
2
  pandas
3
3
  scipy
4
4
  matplotlib
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes