PyAlgoEngine 0.5.3__tar.gz → 0.5.4.post4__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 (45) hide show
  1. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/PKG-INFO +27 -20
  2. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/PyAlgoEngine.egg-info/PKG-INFO +27 -20
  3. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/__init__.py +41 -41
  4. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/__init__.py +17 -17
  5. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/backtest/__init__.py +20 -20
  6. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/backtest/doc_server.py +327 -327
  7. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/backtest/tester.py +254 -254
  8. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/backtest/web_app.py +127 -127
  9. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/bokeh_server.py +162 -162
  10. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/demo/test.py +39 -39
  11. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/backtest/__init__.py +19 -19
  12. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/backtest/metrics.py +179 -179
  13. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/backtest/replay.py +258 -258
  14. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/backtest/sim_match.py +295 -295
  15. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/__init__.py +28 -28
  16. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/telemetrics.py +78 -78
  17. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/engine/trade_engine.py +11 -2
  18. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/monitor/__init__.py +15 -15
  19. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/monitor/advanced_data_interface.py +239 -239
  20. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/profile/__init__.py +118 -118
  21. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/profile/cn.py +175 -175
  22. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/strategy/strategy_engine.py +8 -2
  23. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/utils/__init__.py +3 -3
  24. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/utils/commit_regularizer.py +49 -49
  25. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/utils/data_utils.py +250 -250
  26. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/setup.cfg +4 -4
  27. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/LICENSE +0 -0
  28. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/PyAlgoEngine.egg-info/SOURCES.txt +0 -0
  29. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/PyAlgoEngine.egg-info/dependency_links.txt +0 -0
  30. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/PyAlgoEngine.egg-info/requires.txt +0 -0
  31. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/PyAlgoEngine.egg-info/top_level.txt +0 -0
  32. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/README.md +0 -0
  33. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/apps/demo/__init__.py +0 -0
  34. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/backtest/__main__.py +0 -0
  35. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/console_utils.py +0 -0
  36. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/finance_decimal.py +0 -0
  37. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/market_utils.py +0 -0
  38. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/technical_analysis.py +0 -0
  39. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/base/trade_utils.py +0 -0
  40. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/engine/__init__.py +0 -0
  41. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/engine/algo_engine.py +0 -0
  42. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/engine/event_engine.py +0 -0
  43. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/engine/market_engine.py +0 -0
  44. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/algo_engine/strategy/__init__.py +0 -0
  45. {PyAlgoEngine-0.5.3 → pyalgoengine-0.5.4.post4}/setup.py +0 -0
@@ -1,20 +1,27 @@
1
- Metadata-Version: 2.1
2
- Name: PyAlgoEngine
3
- Version: 0.5.3
4
- Summary: Basic algo engine
5
- Home-page: https://github.com/BolunHan/PyAlgoEngine
6
- Author: Bolun.Han
7
- Author-email: Bolun.Han@outlook.com
8
- Classifier: Programming Language :: Python :: 3.8
9
- Classifier: Programming Language :: Python :: 3.9
10
- Classifier: Programming Language :: Python :: 3.10
11
- Classifier: Programming Language :: Python :: 3.11
12
- Classifier: Programming Language :: Python :: 3.12
13
- Classifier: Operating System :: OS Independent
14
- Requires-Python: >=3.1
15
- Description-Content-Type: text/markdown
16
- Provides-Extra: WebApps
17
- License-File: LICENSE
18
-
19
- # PyAlgoEngine
20
- python algo trading engine
1
+ Metadata-Version: 2.1
2
+ Name: PyAlgoEngine
3
+ Version: 0.5.4.post4
4
+ Summary: Basic algo engine
5
+ Home-page: https://github.com/BolunHan/PyAlgoEngine
6
+ Author: Bolun.Han
7
+ Author-email: Bolun.Han@outlook.com
8
+ Classifier: Programming Language :: Python :: 3.8
9
+ Classifier: Programming Language :: Python :: 3.9
10
+ Classifier: Programming Language :: Python :: 3.10
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Operating System :: OS Independent
14
+ Requires-Python: >=3.1
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE
17
+ Requires-Dist: numpy
18
+ Requires-Dist: pandas
19
+ Requires-Dist: exchange_calendars
20
+ Requires-Dist: PyEventEngine
21
+ Provides-Extra: webapps
22
+ Requires-Dist: flask; extra == "webapps"
23
+ Requires-Dist: waitress; extra == "webapps"
24
+ Requires-Dist: bokeh; extra == "webapps"
25
+
26
+ # PyAlgoEngine
27
+ python algo trading engine
@@ -1,20 +1,27 @@
1
- Metadata-Version: 2.1
2
- Name: PyAlgoEngine
3
- Version: 0.5.3
4
- Summary: Basic algo engine
5
- Home-page: https://github.com/BolunHan/PyAlgoEngine
6
- Author: Bolun.Han
7
- Author-email: Bolun.Han@outlook.com
8
- Classifier: Programming Language :: Python :: 3.8
9
- Classifier: Programming Language :: Python :: 3.9
10
- Classifier: Programming Language :: Python :: 3.10
11
- Classifier: Programming Language :: Python :: 3.11
12
- Classifier: Programming Language :: Python :: 3.12
13
- Classifier: Operating System :: OS Independent
14
- Requires-Python: >=3.1
15
- Description-Content-Type: text/markdown
16
- Provides-Extra: WebApps
17
- License-File: LICENSE
18
-
19
- # PyAlgoEngine
20
- python algo trading engine
1
+ Metadata-Version: 2.1
2
+ Name: PyAlgoEngine
3
+ Version: 0.5.4.post4
4
+ Summary: Basic algo engine
5
+ Home-page: https://github.com/BolunHan/PyAlgoEngine
6
+ Author: Bolun.Han
7
+ Author-email: Bolun.Han@outlook.com
8
+ Classifier: Programming Language :: Python :: 3.8
9
+ Classifier: Programming Language :: Python :: 3.9
10
+ Classifier: Programming Language :: Python :: 3.10
11
+ Classifier: Programming Language :: Python :: 3.11
12
+ Classifier: Programming Language :: Python :: 3.12
13
+ Classifier: Operating System :: OS Independent
14
+ Requires-Python: >=3.1
15
+ Description-Content-Type: text/markdown
16
+ License-File: LICENSE
17
+ Requires-Dist: numpy
18
+ Requires-Dist: pandas
19
+ Requires-Dist: exchange_calendars
20
+ Requires-Dist: PyEventEngine
21
+ Provides-Extra: webapps
22
+ Requires-Dist: flask; extra == "webapps"
23
+ Requires-Dist: waitress; extra == "webapps"
24
+ Requires-Dist: bokeh; extra == "webapps"
25
+
26
+ # PyAlgoEngine
27
+ python algo trading engine
@@ -1,41 +1,41 @@
1
- __version__ = "0.5.3"
2
-
3
- import logging
4
- import os
5
- import traceback
6
-
7
- from . import profile
8
- from .base.telemetrics import LOGGER
9
-
10
- if 'ALGO_DIR' in os.environ:
11
- WORKING_DIRECTORY = os.path.realpath(os.environ['ALGO_DIR'])
12
- else:
13
- WORKING_DIRECTORY = str(os.getcwd())
14
-
15
-
16
- def set_logger(logger: logging.Logger):
17
- base.set_logger(logger=logger)
18
- engine.set_logger(logger=logger.getChild('Engine'))
19
- backtest.set_logger(logger=logger.getChild('BackTest'))
20
- strategy.set_logger(logger=logger.getChild('Strategy'))
21
- apps.set_logger(logger=logger.getChild('Apps'))
22
-
23
-
24
- from . import base
25
- from . import engine
26
- from . import backtest
27
- from . import strategy
28
- from . import apps
29
-
30
- engine.LOGGER.info(f'AlgoEngine version {__version__}')
31
-
32
- # import addon module
33
- try:
34
- from . import algo_addon
35
-
36
- engine.LOGGER.info(f'PyAlgoEngineAddons import successful, version {algo_addon.__version__}')
37
- except ImportError:
38
- algo_addon = None
39
- engine.LOGGER.debug(f'Install PyAlgoEngineAddons to use additional trading algos module\n{traceback.format_exc()}')
40
-
41
- __all__ = ['LOGGER', 'base', 'engine', 'back_test', 'strategy', 'algo_addon']
1
+ __version__ = "0.5.4.post4"
2
+
3
+ import logging
4
+ import os
5
+ import traceback
6
+
7
+ from . import profile
8
+ from .base.telemetrics import LOGGER
9
+
10
+ if 'ALGO_DIR' in os.environ:
11
+ WORKING_DIRECTORY = os.path.realpath(os.environ['ALGO_DIR'])
12
+ else:
13
+ WORKING_DIRECTORY = str(os.getcwd())
14
+
15
+
16
+ def set_logger(logger: logging.Logger):
17
+ from . import base
18
+ from . import engine
19
+ from . import backtest
20
+ from . import strategy
21
+ from . import apps
22
+
23
+ base.set_logger(logger=logger)
24
+ engine.set_logger(logger=logger.getChild('Engine'))
25
+ backtest.set_logger(logger=logger.getChild('BackTest'))
26
+ strategy.set_logger(logger=logger.getChild('Strategy'))
27
+ apps.set_logger(logger=logger.getChild('Apps'))
28
+
29
+
30
+ LOGGER.info(f'AlgoEngine version {__version__}')
31
+
32
+ # import addon module
33
+ try:
34
+ from . import algo_addon
35
+
36
+ LOGGER.info(f'PyAlgoEngineAddons import successful, version {algo_addon.__version__}')
37
+ except ImportError:
38
+ algo_addon = None
39
+ LOGGER.debug(f'Install PyAlgoEngineAddons to use additional trading algos module\n{traceback.format_exc()}')
40
+
41
+ __all__ = ['LOGGER', 'base', 'engine', 'backtest', 'strategy', 'algo_addon']
@@ -1,17 +1,17 @@
1
- import logging
2
-
3
- from .. import LOGGER
4
-
5
- LOGGER = LOGGER.getChild('Apps')
6
-
7
-
8
- def set_logger(logger: logging.Logger):
9
- global LOGGER
10
- LOGGER = logger
11
-
12
- from . import backtest
13
- backtest.set_logger(LOGGER.getChild('Backtester'))
14
-
15
-
16
- from .bokeh_server import DocServer, DocTheme
17
- from .backtest.tester import Tester, StrategyTester
1
+ import logging
2
+
3
+ from .. import LOGGER
4
+
5
+ LOGGER = LOGGER.getChild('Apps')
6
+
7
+
8
+ def set_logger(logger: logging.Logger):
9
+ global LOGGER
10
+ LOGGER = logger
11
+
12
+ from . import backtest
13
+ backtest.set_logger(LOGGER.getChild('Backtester'))
14
+
15
+
16
+ from .bokeh_server import DocServer, DocTheme
17
+ from .backtest.tester import Tester, StrategyTester
@@ -1,20 +1,20 @@
1
- import logging
2
-
3
- from .. import LOGGER
4
-
5
- LOGGER = LOGGER.getChild('Backtester')
6
-
7
- from .doc_server import CandleStick, StickTheme
8
- from .web_app import WebApp, start_app
9
- from .tester import Tester
10
-
11
-
12
- def set_logger(logger: logging.Logger):
13
- global LOGGER
14
- LOGGER = logger
15
-
16
- doc_server.LOGGER = LOGGER
17
- web_app.LOGGER = LOGGER
18
-
19
-
20
- __all__ = ['CandleStick', 'StickTheme', 'WebApp', 'start_app', 'Tester']
1
+ import logging
2
+
3
+ from .. import LOGGER
4
+
5
+ LOGGER = LOGGER.getChild('Backtester')
6
+
7
+ from .doc_server import CandleStick, StickTheme
8
+ from .web_app import WebApp, start_app
9
+ from .tester import Tester
10
+
11
+
12
+ def set_logger(logger: logging.Logger):
13
+ global LOGGER
14
+ LOGGER = logger
15
+
16
+ doc_server.LOGGER = LOGGER
17
+ web_app.LOGGER = LOGGER
18
+
19
+
20
+ __all__ = ['CandleStick', 'StickTheme', 'WebApp', 'start_app', 'Tester']