OctoBot-Trading 2.3.33__cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl → 2.3.35__cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

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 (62) hide show
  1. {OctoBot_Trading-2.3.33.dist-info → OctoBot_Trading-2.3.35.dist-info}/METADATA +2 -2
  2. {OctoBot_Trading-2.3.33.dist-info → OctoBot_Trading-2.3.35.dist-info}/RECORD +62 -62
  3. octobot_trading/__init__.py +1 -1
  4. octobot_trading/constants.py +2 -1
  5. octobot_trading/enums.py +12 -0
  6. octobot_trading/exchanges/abstract_exchange.cpython-38-aarch64-linux-gnu.so +0 -0
  7. octobot_trading/exchanges/abstract_exchange.pxd +3 -3
  8. octobot_trading/exchanges/abstract_exchange.py +12 -46
  9. octobot_trading/exchanges/abstract_websocket_exchange.cpython-38-aarch64-linux-gnu.so +0 -0
  10. octobot_trading/exchanges/connectors/ccxt/ccxt_connector.cpython-38-aarch64-linux-gnu.so +0 -0
  11. octobot_trading/exchanges/connectors/ccxt/ccxt_connector.pxd +6 -3
  12. octobot_trading/exchanges/connectors/ccxt/ccxt_connector.py +25 -3
  13. octobot_trading/exchanges/connectors/ccxt/ccxt_websocket_connector.cpython-38-aarch64-linux-gnu.so +0 -0
  14. octobot_trading/exchanges/connectors/ccxt/constants.py +1 -0
  15. octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.cpython-38-aarch64-linux-gnu.so +0 -0
  16. octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.py +1 -1
  17. octobot_trading/exchanges/exchange_builder.cpython-38-aarch64-linux-gnu.so +0 -0
  18. octobot_trading/exchanges/exchange_factory.cpython-38-aarch64-linux-gnu.so +0 -0
  19. octobot_trading/exchanges/exchange_manager.cpython-38-aarch64-linux-gnu.so +0 -0
  20. octobot_trading/exchanges/exchange_websocket_factory.cpython-38-aarch64-linux-gnu.so +0 -0
  21. octobot_trading/exchanges/exchanges.cpython-38-aarch64-linux-gnu.so +0 -0
  22. octobot_trading/exchanges/implementations/default_rest_exchange.cpython-38-aarch64-linux-gnu.so +0 -0
  23. octobot_trading/exchanges/implementations/default_rest_exchange.py +1 -1
  24. octobot_trading/exchanges/implementations/default_websocket_exchange.cpython-38-aarch64-linux-gnu.so +0 -0
  25. octobot_trading/exchanges/implementations/exchange_simulator.cpython-38-aarch64-linux-gnu.so +0 -0
  26. octobot_trading/exchanges/traders/trader.cpython-38-aarch64-linux-gnu.so +0 -0
  27. octobot_trading/exchanges/traders/trader.py +4 -0
  28. octobot_trading/exchanges/traders/trader_simulator.cpython-38-aarch64-linux-gnu.so +0 -0
  29. octobot_trading/exchanges/types/rest_exchange.cpython-38-aarch64-linux-gnu.so +0 -0
  30. octobot_trading/exchanges/types/rest_exchange.py +3 -3
  31. octobot_trading/exchanges/types/websocket_exchange.cpython-38-aarch64-linux-gnu.so +0 -0
  32. octobot_trading/modes/abstract_trading_mode.py +1 -0
  33. octobot_trading/modes/channel/abstract_mode_consumer.cpython-38-aarch64-linux-gnu.so +0 -0
  34. octobot_trading/modes/channel/abstract_mode_producer.cpython-38-aarch64-linux-gnu.so +0 -0
  35. octobot_trading/modes/modes_util.cpython-38-aarch64-linux-gnu.so +0 -0
  36. octobot_trading/modes/modes_util.py +0 -1
  37. octobot_trading/personal_data/exchange_personal_data.cpython-38-aarch64-linux-gnu.so +0 -0
  38. octobot_trading/personal_data/exchange_personal_data.py +8 -7
  39. octobot_trading/personal_data/orders/channel/orders.cpython-38-aarch64-linux-gnu.so +0 -0
  40. octobot_trading/personal_data/orders/channel/orders.py +21 -15
  41. octobot_trading/personal_data/orders/orders_manager.cpython-38-aarch64-linux-gnu.so +0 -0
  42. octobot_trading/personal_data/orders/states/cancel_order_state.cpython-38-aarch64-linux-gnu.so +0 -0
  43. octobot_trading/personal_data/orders/states/cancel_order_state.py +3 -2
  44. octobot_trading/personal_data/orders/states/fill_order_state.cpython-38-aarch64-linux-gnu.so +0 -0
  45. octobot_trading/personal_data/orders/states/fill_order_state.py +2 -1
  46. octobot_trading/personal_data/portfolios/history/historical_portfolio_value_manager.cpython-38-aarch64-linux-gnu.so +0 -0
  47. octobot_trading/personal_data/portfolios/portfolio_factory.cpython-38-aarch64-linux-gnu.so +0 -0
  48. octobot_trading/personal_data/portfolios/portfolio_manager.cpython-38-aarch64-linux-gnu.so +0 -0
  49. octobot_trading/personal_data/portfolios/portfolio_profitability.cpython-38-aarch64-linux-gnu.so +0 -0
  50. octobot_trading/personal_data/portfolios/portfolio_value_holder.cpython-38-aarch64-linux-gnu.so +0 -0
  51. octobot_trading/personal_data/portfolios/value_converter.cpython-38-aarch64-linux-gnu.so +0 -0
  52. octobot_trading/personal_data/trades/trade_pnl.py +6 -2
  53. octobot_trading/storage/orders_storage.py +54 -1
  54. octobot_trading/util/test_tools/spot_rest_exchange_test_tools.py +1 -1
  55. tests/api/test_channels.py +1 -1
  56. tests/personal_data/trades/test_trade_pnl.py +23 -0
  57. tests_additional/real_exchanges/__init__.py +38 -1
  58. tests_additional/real_exchanges/real_exchange_tester.py +23 -14
  59. tests_additional/real_exchanges/{test_coinbasepro.py → test_coinbase.py} +35 -20
  60. {OctoBot_Trading-2.3.33.dist-info → OctoBot_Trading-2.3.35.dist-info}/LICENSE +0 -0
  61. {OctoBot_Trading-2.3.33.dist-info → OctoBot_Trading-2.3.35.dist-info}/WHEEL +0 -0
  62. {OctoBot_Trading-2.3.33.dist-info → OctoBot_Trading-2.3.35.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: OctoBot-Trading
3
- Version: 2.3.33
3
+ Version: 2.3.35
4
4
  Summary: OctoBot project trading package
5
5
  Home-page: https://github.com/Drakkar-Software/OctoBot-Trading
6
6
  Author: Drakkar-Software
@@ -28,7 +28,7 @@ Requires-Dist: cryptography
28
28
  Requires-Dist: sortedcontainers (==2.4.0)
29
29
  Requires-Dist: tinydb (==4.5.2)
30
30
 
31
- # OctoBot-Trading [2.3.33](https://github.com/Drakkar-Software/OctoBot-Trading/blob/master/CHANGELOG.md)
31
+ # OctoBot-Trading [2.3.35](https://github.com/Drakkar-Software/OctoBot-Trading/blob/master/CHANGELOG.md)
32
32
  [![Codacy Badge](https://api.codacy.com/project/badge/Grade/903b6b22bceb4661b608a86fea655f69)](https://app.codacy.com/gh/Drakkar-Software/OctoBot-Trading?utm_source=github.com&utm_medium=referral&utm_content=Drakkar-Software/OctoBot-Trading&utm_campaign=Badge_Grade_Dashboard)
33
33
  [![PyPI](https://img.shields.io/pypi/v/OctoBot-Trading.svg)](https://pypi.python.org/pypi/OctoBot-Trading/)
34
34
  [![Coverage Status](https://coveralls.io/repos/github/Drakkar-Software/OctoBot-Trading/badge.svg?branch=master)](https://coveralls.io/github/Drakkar-Software/OctoBot-Trading?branch=master)
@@ -1,34 +1,39 @@
1
+ OctoBot_Trading-2.3.35.dist-info/LICENSE,sha256=46mU2C5kSwOnkqkw9XQAJlhBL2JAf1_uCD8lVcXyMRg,7652
2
+ OctoBot_Trading-2.3.35.dist-info/WHEEL,sha256=oCBNUxcpJIObB7qxTwklMZvZV19pJGv6x0IkRXaUM7w,150
3
+ OctoBot_Trading-2.3.35.dist-info/top_level.txt,sha256=EWslZXCzarlfXX-Z5_2qiJ28t-1TykzGYqpXESZP0H0,39
4
+ OctoBot_Trading-2.3.35.dist-info/RECORD,,
5
+ OctoBot_Trading-2.3.35.dist-info/METADATA,sha256=H2zckNpzB0u9MO8T4HeLgTI4XT81diFNFjhTrNDMPZY,2285
1
6
  octobot_trading/errors.py,sha256=nDpLJ5OSKyVehbCaevg9M6pL6Xztz2UC-IVmOm7DyPY,5292
2
- octobot_trading/constants.py,sha256=laEESFzj7mf7TSrUH2_5Kxp5d8R86MnoNlAan3rJi2o,7698
7
+ octobot_trading/constants.py,sha256=SwCh4qT9RLeZQOrvZPiAzPWYSH_LcSgElX6Hm9DjzeQ,7779
3
8
  octobot_trading/octobot_channel_consumer.cpython-38-aarch64-linux-gnu.so,sha256=w2xjVoqdlbOHE8KeBJYk5VrodHKi4YroJTBEz_La0PM,959032
4
- octobot_trading/enums.py,sha256=UYW_TabwOgMPHq4rP8AIBQFNvlMlZ8--Zw8iw5agn7M,14581
5
- octobot_trading/__init__.py,sha256=arVSWK5PnEWuDHfpPn4OuS7md4FXi_sS9aAb-AaRV30,793
9
+ octobot_trading/enums.py,sha256=Hx2icRPKw-mOKzsZokfY19-318udJNCA8Fe3IWCh5Jo,14826
10
+ octobot_trading/__init__.py,sha256=GD-ex0qJwY5UGj5-IPgPYITwdmCioNdHV_cDHkFTDsY,793
6
11
  octobot_trading/octobot_channel_consumer.py,sha256=XE7nay4TqK1YQ24ly_nK3gcgKEK-Btr_Al34oGIOr90,5364
7
12
  octobot_trading/octobot_channel_consumer.pxd,sha256=fTc7VH30Hrfftfov27PDO3gnGDaT_XgpYfXkhI3b3zM,834
8
13
  octobot_trading/exchange_channel.cpython-38-aarch64-linux-gnu.so,sha256=N0a19jKTUX8O80yylTh8ZCCblbFwp9IpG3EK1wbMQ5g,2138736
9
14
  octobot_trading/exchange_channel.pxd,sha256=BxJREJ_k58V2Pa90e2JchYFlJWDOhQiAhqyYuX350Y8,1904
10
15
  octobot_trading/__init__.pxd,sha256=YsUz9-zgsheTifsGc7O1Xt2PSwcnc6Od0IBU7_LAu3o,716
11
16
  octobot_trading/exchange_channel.py,sha256=-Qr44mWJsZj5ePydKt2p9sABCM72BQBvG9qdj15Cg_w,9192
12
- octobot_trading/modes/abstract_trading_mode.py,sha256=UBec8z1Qj6AzOqqjlZEDS7XDD7I5gVdNewUUXhu5cpQ,16532
17
+ octobot_trading/modes/abstract_trading_mode.py,sha256=W9zVpAGG_lpEFBd1UBjLPHqWkIMo-uRn-W0-R5V2LSQ,16571
13
18
  octobot_trading/modes/modes_util.pxd,sha256=1M4e0cvLP5wJdFiEqSw5IPOjybRn6RN4cOwJDI2D9TE,832
14
19
  octobot_trading/modes/modes_factory.cpython-38-aarch64-linux-gnu.so,sha256=qmotXyacjXPJSJdL6x6dD2k4O2rK4CYdaYNgHaBSr1A,835152
15
20
  octobot_trading/modes/__init__.py,sha256=mejkWygcmBLXAV8Yk37NmBp6y8Z-Sis2wPVOXZ-FesI,2665
16
- octobot_trading/modes/modes_util.cpython-38-aarch64-linux-gnu.so,sha256=0Bt739VXzHjhiSo3gpEj8tjdTCnvYZQPu41TwUj-vAQ,670536
17
- octobot_trading/modes/modes_util.py,sha256=k5jyzzvY2YPr07-NBZLe1M_qkslFUCtZlncrw-c9vyo,2083
21
+ octobot_trading/modes/modes_util.cpython-38-aarch64-linux-gnu.so,sha256=VFLLCo1GCmcstYLwtiYAnpGZ7hfZ2aJGOP0mNh1xpfc,654192
22
+ octobot_trading/modes/modes_util.py,sha256=dZeKK55QX3eM_WFJEA_3TG9pWTCy9DxHh4fylHtHrFU,1985
18
23
  octobot_trading/modes/modes_factory.py,sha256=zjw-DAQUl8f6zBAwIS7cz-I58kkTWbiLHPyv8Ey6sOw,5509
19
24
  octobot_trading/modes/__init__.pxd,sha256=LxVfcxZnug-LP13yjEvUgHar6PPncOCVX6uNtv1y5S8,1472
20
25
  octobot_trading/modes/mode_config.py,sha256=3E-fLK5NYqGa3naRrbOVUpIg53fcYg3mUhun2PbOcbE,5235
21
26
  octobot_trading/modes/modes_factory.pxd,sha256=1MTpnlTncPZx3WmCLE7LblSefxye50oLytptXQ17SnI,1249
22
27
  octobot_trading/modes/channel/mode.pxd,sha256=Bd08rJ-nuOUDOZHUk_fzkyMsoIspcx-zrMLiXUdfz0w,1222
23
28
  octobot_trading/modes/channel/abstract_mode_producer.py,sha256=iqUo8FCDsHwktdx1F9SJQdk2w2IzN2HzS3BnvQ8H3PQ,21943
24
- octobot_trading/modes/channel/abstract_mode_producer.cpython-38-aarch64-linux-gnu.so,sha256=u2ax2Bfy-TBjIBXVhU9ITMUQkYaxT_FyXW-Ct52QJGY,3101456
29
+ octobot_trading/modes/channel/abstract_mode_producer.cpython-38-aarch64-linux-gnu.so,sha256=5JLS7MDApAIGun_r0ujdHS9K3QZulplO1Lxe92TnSaQ,3105368
25
30
  octobot_trading/modes/channel/mode.py,sha256=4ez1hqq2xXiXiO_viVtX0xAzjZE6T0mlfWZ3_ogONtY,5567
26
31
  octobot_trading/modes/channel/__init__.py,sha256=E6fT8Pvg_VcZlVjnsSL07pMzrHkFhkmWYJLXypgSCk4,1414
27
32
  octobot_trading/modes/channel/abstract_mode_consumer.pxd,sha256=kG2s4zwm5LaIBvjf0R_FGKoRYz0B_psDXYx9wqnZ620,1105
28
33
  octobot_trading/modes/channel/abstract_mode_consumer.py,sha256=TGl3yz-ScFwl2ag3V1U9MupR7Gu-8G0OVtzwhgxQZjI,10133
29
34
  octobot_trading/modes/channel/abstract_mode_producer.pxd,sha256=PQb1MH3Biif6pBAPE5O1onuGzBxZAnjCnIqvHcqaI6M,1494
30
35
  octobot_trading/modes/channel/__init__.pxd,sha256=m4kKmGWJugvlOPEBIqTf8tLr_ThT8VoA77syujxgFs8,1380
31
- octobot_trading/modes/channel/abstract_mode_consumer.cpython-38-aarch64-linux-gnu.so,sha256=Byr22H-sdbUT4Ui2AfIEKNdBImvdu21hoEs9Waz6lUA,1817320
36
+ octobot_trading/modes/channel/abstract_mode_consumer.cpython-38-aarch64-linux-gnu.so,sha256=ibeNledE6z_ktZsOsLdOBgZYBdkoXc_J0N22AQxomDU,1821328
32
37
  octobot_trading/modes/channel/mode.cpython-38-aarch64-linux-gnu.so,sha256=g0uICalNdfLhH1YBG1S9bsAE0RdUzkCvBW9AqMDhQAc,1149208
33
38
  octobot_trading/modes/script_keywords/__init__.py,sha256=E_KgXz1HK7f56TK9mCIzVJdxHHa_R7zmYFelocNwgx4,2395
34
39
  octobot_trading/modes/script_keywords/context_management.py,sha256=xVovC6waycw72SeuBD4y5erLWsZg_RgkArc1LE5rgx8,25906
@@ -58,34 +63,34 @@ octobot_trading/util/__init__.py,sha256=evLMJmcecR8p5fhKMbJda_kmkyogcQa0mb44Json
58
63
  octobot_trading/util/simulator_updater_utils.py,sha256=O_cealYwFROh6uDVi1DKx35OLykAwKNp0bdtfbeiYIw,1983
59
64
  octobot_trading/util/config_util.cpython-38-aarch64-linux-gnu.so,sha256=6_u-MptgEqamE5HIrs2AiYq8HUPGONypex6AI5qJYZc,847400
60
65
  octobot_trading/util/__init__.pxd,sha256=amvu39DTFlQ-Xv5lCKgDq4tsvzP_ui5TOTm5ehgpDek,1561
61
- octobot_trading/util/test_tools/spot_rest_exchange_test_tools.py,sha256=bPQql0qcPABuCogTGtRI8N8vqmmj1xI7IZVTF8J_E34,6668
66
+ octobot_trading/util/test_tools/spot_rest_exchange_test_tools.py,sha256=qJ5b4cy9GKf6eJ1OMbteS1rEta_2qDPci32n4lXJopI,6672
62
67
  octobot_trading/util/test_tools/__init__.py,sha256=SZ1jl_Iee73IYok4awKPJ5YOA5LXBWRfvov17hmqqF8,715
63
68
  octobot_trading/util/test_tools/exchanges_test_tools.py,sha256=tOztZrOk6OkWiyJR6dzuFpyAhZ5-iWCrZbqws3W4dzk,2421
64
69
  octobot_trading/util/test_tools/websocket_test_tools.py,sha256=aaOz4dRm6CrWl7h6UOF4HlLmwJA5h03wPoWJugS9HFw,3809
65
- octobot_trading/exchanges/exchange_builder.cpython-38-aarch64-linux-gnu.so,sha256=uaDO_ea8A3oNiFZjSEjZwkrrbj4an9p63u3AtJ7kSrQ,1561120
66
- octobot_trading/exchanges/abstract_exchange.py,sha256=RPqdLoca071z6f0vja3Fk07htl6b88HMV-XGnLj9Ze0,26428
67
- octobot_trading/exchanges/exchange_websocket_factory.cpython-38-aarch64-linux-gnu.so,sha256=LfSvxl1hDurrQixHSQIC-4JEsMIeSJFIYFCXk46iG-s,823520
70
+ octobot_trading/exchanges/exchange_builder.cpython-38-aarch64-linux-gnu.so,sha256=iS0bcSclWeghh9cJK6hH04uw6akAB-SjwukxLMj8wLI,1564800
71
+ octobot_trading/exchanges/abstract_exchange.py,sha256=jxbx1rfeWYVC5N_yhxZsVDeRg7NYnqIHRuLs6X9Bm4w,25123
72
+ octobot_trading/exchanges/exchange_websocket_factory.cpython-38-aarch64-linux-gnu.so,sha256=fAPwvYDmKv3edtYex2XZsUp42Ov7e0Q45L5BNB4eIGQ,827360
68
73
  octobot_trading/exchanges/exchange_factory.py,sha256=dLZtl2Bg6t8p8StGusX-Eq6iTYWmLJNV0srTd3ErCS4,8701
69
- octobot_trading/exchanges/abstract_exchange.pxd,sha256=Yveq_LNv9fhe-iRTkKjWcTshfUf1PvZF62Nn0z6xiL8,3695
70
- octobot_trading/exchanges/abstract_websocket_exchange.cpython-38-aarch64-linux-gnu.so,sha256=z9KhWxmt1uobhaVmTWanw2f93A1jY9rQautSENEcwdY,1564728
74
+ octobot_trading/exchanges/abstract_exchange.pxd,sha256=OVMqU5KsZnyBu-KVIMFAXpikxNfZzl3CeKE5Lt5W1XQ,3752
75
+ octobot_trading/exchanges/abstract_websocket_exchange.cpython-38-aarch64-linux-gnu.so,sha256=6tppKXMRJjBahvO-MlsLdTSWr-Gp1AUyv_7PugfaMWU,1568296
71
76
  octobot_trading/exchanges/exchange_websocket_factory.py,sha256=6aYz6IGKv7hYg90B97uYlGLrEVcsbT-MiUn-Z-S3sv0,3153
72
- octobot_trading/exchanges/abstract_exchange.cpython-38-aarch64-linux-gnu.so,sha256=gElDnhRqPMz6gEI5u3Tzo9NyqyPOj5FOZAuaSyKP3gA,3002784
77
+ octobot_trading/exchanges/abstract_exchange.cpython-38-aarch64-linux-gnu.so,sha256=uJqWf0Via6BncSTBo7WqtvKiUx0re1ss3nM3jJHiw1s,2706048
73
78
  octobot_trading/exchanges/exchange_factory.pxd,sha256=kDK1MBe9fOhw1J7t78ohip031BFL_XWjc1lXeGMsh7I,1033
74
79
  octobot_trading/exchanges/exchange_manager.pxd,sha256=fn87FZl-5fI8s8yJzeFnqV8IDXE3_jDnxy-FRhsMYkY,3787
75
80
  octobot_trading/exchanges/__init__.py,sha256=EI_WKWsI4wETuTTdy6yQmEkYb57Ps4smhEIQv8EEprE,5619
76
81
  octobot_trading/exchanges/exchanges.py,sha256=W8u9a9M0mHZgyY2J8PfcVqjh7HTf4YKt1CIM3JpwmKU,3442
77
- octobot_trading/exchanges/exchange_manager.cpython-38-aarch64-linux-gnu.so,sha256=wWVG_ovtHDZDxBUrCkpdzYkK-2vFKsZMmj7f7FbcSkw,2161608
82
+ octobot_trading/exchanges/exchange_manager.cpython-38-aarch64-linux-gnu.so,sha256=rFlbi3825cNOXj3R1ZG_zHiZL8OtcoCkeUHGPk9n36g,2165472
78
83
  octobot_trading/exchanges/exchange_websocket_factory.pxd,sha256=3cSFz-ADOoWNafRU2SKXn1SEUsFtWjxBjJTdr4laGPc,986
79
84
  octobot_trading/exchanges/basic_exchange_wrapper.py,sha256=8D9E9-b0pRWaMEx-m-qC8-_kdB8BZWG5qzyJJXlG98E,2839
80
85
  octobot_trading/exchanges/exchange_channels.cpython-38-aarch64-linux-gnu.so,sha256=CySfGAIdkP5ev7toyd9UMpWjouY71oF_WtuiaI3xmXY,892760
81
86
  octobot_trading/exchanges/abstract_websocket_exchange.pxd,sha256=Q5s8s5u3UvV_D9OxEMLMk1BVmxpOODkT3Z9bfXqEpgE,1831
82
- octobot_trading/exchanges/exchanges.cpython-38-aarch64-linux-gnu.so,sha256=lzlW2BCW_rxHlKCaXj-JTL-vRv2voFgntZuFxv8DjwE,987816
87
+ octobot_trading/exchanges/exchanges.cpython-38-aarch64-linux-gnu.so,sha256=lliw3DMUu0QKGnNZnHZ7JKj0qU8a3GhgBQM5Hv0Wc38,991632
83
88
  octobot_trading/exchanges/abstract_websocket_exchange.py,sha256=8-63GB5pDYPtikqkBdzF3dMm4lMYuHb1kvivi6TU-_g,7447
84
89
  octobot_trading/exchanges/exchanges.pxd,sha256=FseAaQPfA3OntMfRq_Tw4OcRldh43JrvERsPnsqqM8s,1751
85
90
  octobot_trading/exchanges/exchange_channels.py,sha256=7EamxILSyq18zeo3-ZnYXKudWEKXqQ4VwZ9V01T2tsY,7805
86
91
  octobot_trading/exchanges/exchange_builder.pxd,sha256=_qCYBUNK8QFjiVwOhrbYOlyQcFPbTo48v24VLHh0s7U,2399
87
92
  octobot_trading/exchanges/exchange_channels.pxd,sha256=WyjKsHpjEejNNs5fjsKfyD7rN5p9SqvJeLO72YcxMvo,1114
88
- octobot_trading/exchanges/exchange_factory.cpython-38-aarch64-linux-gnu.so,sha256=6aJCTlTUPtGq66Wt2-ApyHoiONKmXJFSqKvMG0AbvQo,1061544
93
+ octobot_trading/exchanges/exchange_factory.cpython-38-aarch64-linux-gnu.so,sha256=V-zlZ0HKVadTIDMNBaiPROI0ZNRc9BZIFKUvYLHwuuY,1065472
89
94
  octobot_trading/exchanges/__init__.pxd,sha256=5C0_Tx8TX5qS--c8YrAmtoreKf3DmqBs18hVlFmXHsk,3877
90
95
  octobot_trading/exchanges/basic_exchange_wrapper.pxd,sha256=BCROGJhradjlEddupiO8lOOUC1bht5Fmq86jtAwbEic,981
91
96
  octobot_trading/exchanges/basic_exchange_wrapper.cpython-38-aarch64-linux-gnu.so,sha256=spwXdKTQW8_-kYwP3FZA1zRoHc_Wwq3L4864PdLGMys,878360
@@ -94,11 +99,11 @@ octobot_trading/exchanges/exchange_manager.py,sha256=CQXANkTqcUlGPyVW3HQOjg8J6Oh
94
99
  octobot_trading/exchanges/connectors/__init__.py,sha256=bEM3pYx1JZT3e3C_zy5E8cWWKsmfBr6YSFRw6TOPTb8,1229
95
100
  octobot_trading/exchanges/connectors/__init__.pxd,sha256=S-BuBm1bmQVA87yiXCd89Vt_REf-LxVwTmKpupsVZ7s,1134
96
101
  octobot_trading/exchanges/connectors/ccxt/ccxt_client_util.py,sha256=ADbegEFdLlE6IZTQhgHjboulZgM_VbL-rxeIVJB8tOo,7153
97
- octobot_trading/exchanges/connectors/ccxt/ccxt_connector.cpython-38-aarch64-linux-gnu.so,sha256=IBHCsUfKx-xSSXgwIt-SXCQF6riCJq7Dxk0xUoUPqa8,6188776
98
- octobot_trading/exchanges/connectors/ccxt/ccxt_websocket_connector.cpython-38-aarch64-linux-gnu.so,sha256=8eBrTv2cUA15iQnatJgKIb3fW3Z9a_5mGEMbAmfX-rc,4032336
102
+ octobot_trading/exchanges/connectors/ccxt/ccxt_connector.cpython-38-aarch64-linux-gnu.so,sha256=LDkqxSZ5hwJrROViup7XXft34ipgfEnmJTeTnk81LwQ,6358152
103
+ octobot_trading/exchanges/connectors/ccxt/ccxt_websocket_connector.cpython-38-aarch64-linux-gnu.so,sha256=ssgE7sWcVjRQWVvdV1TORgCepO-Afz43_psge8-ik4o,4036368
99
104
  octobot_trading/exchanges/connectors/ccxt/ccxt_adapter.py,sha256=fsYNatyEC1-HwvBgJcQ2rWmsDVdMFRCPDcjqSot6Bjs,17945
100
- octobot_trading/exchanges/connectors/ccxt/constants.py,sha256=zCZXavHaNTJSl0cdJIspWJA3rsEMxB2fNbHZNvJuHhY,736
101
- octobot_trading/exchanges/connectors/ccxt/ccxt_connector.pxd,sha256=uhRjcfR54jgxSVV-h-QcuxpgfKQbry7SAiX3yg-pgrU,1790
105
+ octobot_trading/exchanges/connectors/ccxt/constants.py,sha256=kvd4I9JgzjxFfdInGxSHmeMKYv1x8ReDmQyNuytHrX0,761
106
+ octobot_trading/exchanges/connectors/ccxt/ccxt_connector.pxd,sha256=4daa-KsNpKYzOtjUCrZsi7ISOyHcx8uDArRD6LVk1S4,1980
102
107
  octobot_trading/exchanges/connectors/ccxt/ccxt_websocket_connector.py,sha256=fRPalldg1DNDguUJFdL1NqmfMc172b1u2nwj7GcVadw,43051
103
108
  octobot_trading/exchanges/connectors/ccxt/enums.py,sha256=fOpmMmvfxHDlqA-wqBQE3M6ujbB4kDlXDr5-TrYMh_0,3390
104
109
  octobot_trading/exchanges/connectors/ccxt/__init__.py,sha256=vBelwZG9S0b-wCX-5IBg_N1DN5T7Znfjslqi-Tf6IrY,1309
@@ -106,10 +111,10 @@ octobot_trading/exchanges/connectors/ccxt/ccxt_websocket_connector.pxd,sha256=h7
106
111
  octobot_trading/exchanges/connectors/ccxt/ccxt_client_util.cpython-38-aarch64-linux-gnu.so,sha256=QvHzIY5sv45jbyTpV5Daw8A5Fc8MVi7ZCaaV1y_4SCY,1015624
107
112
  octobot_trading/exchanges/connectors/ccxt/__init__.pxd,sha256=h-_KWW0mhJikmMRy-t3GezWM8X4LJK6vH_jjlSLf-_0,1138
108
113
  octobot_trading/exchanges/connectors/ccxt/ccxt_client_util.pxd,sha256=-J-ujT_N1vV4ujKWNJn8ObqZps7jtZN0HZyY8eLOzWw,1912
109
- octobot_trading/exchanges/connectors/ccxt/ccxt_connector.py,sha256=TpjMKi4bb3LEB9-V6pajxoc0ZDYwqpCrrSTb7IJkWOc,35184
110
- octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.cpython-38-aarch64-linux-gnu.so,sha256=LOdac_rA_1LGF1YZ0V7zGtkg1uLt2-2sFCyUCYgp4r0,1980968
114
+ octobot_trading/exchanges/connectors/ccxt/ccxt_connector.py,sha256=PWsOQPKCkWPSR3UY0X21BFFu5GKdWUoRhqMEKL_4TmM,36174
115
+ octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.cpython-38-aarch64-linux-gnu.so,sha256=r-KO3X4kcUSS14b-SM5Jm2VN9ZgHjOh13IjXiyBPk9c,1987768
111
116
  octobot_trading/exchanges/connectors/simulator/__init__.py,sha256=-86JVBUObRQ4CbelhQKGS7mi39I1pPATNfHDInv8RaE,1216
112
- octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.py,sha256=FvR_6s-OUbiTRvt06WXP1470nligONr2wInaUw7YRdo,11803
117
+ octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.py,sha256=vNCBh6OyaNMQFpE9RcbE8Uji9ZwtQS9uCLMMJc8V7jY,11814
113
118
  octobot_trading/exchanges/connectors/simulator/exchange_simulator_adapter.py,sha256=dsqNneuJkYHcSrHH5aOxyLo7FdCieicYHU5IzKu-N7A,840
114
119
  octobot_trading/exchanges/connectors/simulator/__init__.pxd,sha256=uRorTxZYfR2X9zUWzmHMvOsGzv2EC3ACnOQiVuKGWW0,980
115
120
  octobot_trading/exchanges/connectors/simulator/exchange_simulator_connector.pxd,sha256=zM8EfBiXKiFC-_5_uMb6n2UQ48gzqyhkfyXuIpwkEFA,1730
@@ -126,13 +131,13 @@ octobot_trading/exchanges/util/__init__.pxd,sha256=SFeU05RNcTRfkd14qYTzGA5xorUfn
126
131
  octobot_trading/exchanges/util/exchange_util.cpython-38-aarch64-linux-gnu.so,sha256=XUNiDm6flOhjvvsDSj5D78blA3V2UJCq8gOtubZ18TY,1750128
127
132
  octobot_trading/exchanges/implementations/default_rest_exchange.pxd,sha256=x0M9LzZADKLchGjkVxy1dxPYMHw0-YAtReBSY2DdPBc,878
128
133
  octobot_trading/exchanges/implementations/exchange_simulator.pxd,sha256=d7x0bJ-rpiTKTiol9Q0VDZ-HHnM4vOXcQkC-DD6vqG8,1063
129
- octobot_trading/exchanges/implementations/exchange_simulator.cpython-38-aarch64-linux-gnu.so,sha256=J74TMymujmSepohHpJGhZzgUvUwkTmLwy7DJ26N_2Tk,1165920
134
+ octobot_trading/exchanges/implementations/exchange_simulator.cpython-38-aarch64-linux-gnu.so,sha256=ANYBrMOQEXFQal76kpCE2UjsIK6jUom8q8Evn1COpI8,1168808
130
135
  octobot_trading/exchanges/implementations/__init__.py,sha256=Tah6Uq9k-4UHg_EsJEeYA2k8XWEDGvQ5EuS7oCycsWg,1366
131
- octobot_trading/exchanges/implementations/default_rest_exchange.cpython-38-aarch64-linux-gnu.so,sha256=-13W6wX3hmBdSwad5rsXQneEpgJPPeXdyJY3BYF2vxI,649056
132
- octobot_trading/exchanges/implementations/default_rest_exchange.py,sha256=IJyV9PbMNW56H3WD389AKZx4dZhEvi5HMWcLXzPy1b0,1472
136
+ octobot_trading/exchanges/implementations/default_rest_exchange.cpython-38-aarch64-linux-gnu.so,sha256=CgWvto0DXogFw7xxEvpC9cB9LRoit9z4p6WniM565TI,651208
137
+ octobot_trading/exchanges/implementations/default_rest_exchange.py,sha256=qG2i-UNvARlc_y-SilmEsB8xz_i5ABZyrnqqChwnLHY,1483
133
138
  octobot_trading/exchanges/implementations/__init__.pxd,sha256=2EZlUCV_nPOEro-KFLLJzBUb-hwmoYu-xQT1cr5Z9NM,1372
134
139
  octobot_trading/exchanges/implementations/exchange_simulator.py,sha256=b-CDtPxDVHElpiiHzMt0CAv4rg6uijLVcVJtNbtLKyA,4548
135
- octobot_trading/exchanges/implementations/default_websocket_exchange.cpython-38-aarch64-linux-gnu.so,sha256=YJKSpN7f045XFXHfUkn0o7uK8nqwYWyqHIJlunp0yUY,645432
140
+ octobot_trading/exchanges/implementations/default_websocket_exchange.cpython-38-aarch64-linux-gnu.so,sha256=H3mJcPDb0xqQSG3nsAnWbJuYjLwl5o_Bd8NnmhgHFqw,649280
136
141
  octobot_trading/exchanges/implementations/default_websocket_exchange.pxd,sha256=JVXwE8GGflMZiAA0Tdwar70DUsOgivu46TXEmVZMFOg,878
137
142
  octobot_trading/exchanges/implementations/default_websocket_exchange.py,sha256=3PGZmOsEgkBmIQkLIFVRbMqNzBwibcRmeosKhVIHPv0,1928
138
143
  octobot_trading/exchanges/config/backtesting_exchange_config.pxd,sha256=vDzNY_VwNC_PKMvhtS6tJw6Qu2jlyLYIDCwP-sT3BYY,855
@@ -147,16 +152,16 @@ octobot_trading/exchanges/adapters/abstract_adapter.py,sha256=_AtpVz6lg2_moS9D1m
147
152
  octobot_trading/exchanges/adapters/__init__.py,sha256=aeqBi9gM8THRt7m2gbFqBSwfz6_bQUSLzKkl_bgzVMU,909
148
153
  octobot_trading/exchanges/traders/trader_simulator.pxd,sha256=ZEbvN8_XZl8S6NbraEZG5PByOaNISgpt3vVpiVsVBnE,849
149
154
  octobot_trading/exchanges/traders/trader_simulator.py,sha256=7tt7GX_RH-Ebr9CXamChbo47xWgegndFc9zi-5CgC0M,1684
150
- octobot_trading/exchanges/traders/trader.py,sha256=I--Q0BAe5vS1Enm5iUNez88pk6XDHo3Wsmh0Ij0giUo,42297
151
- octobot_trading/exchanges/traders/trader_simulator.cpython-38-aarch64-linux-gnu.so,sha256=-Bk3E74yqU9bXKsC6sHRZ8ed2Nt_sM19ZY1zB29cEfk,490376
152
- octobot_trading/exchanges/traders/trader.cpython-38-aarch64-linux-gnu.so,sha256=F-nE_W4R24IWI_esmDQuxbF3wFrO76TRPCOXQdcimPk,4034768
155
+ octobot_trading/exchanges/traders/trader.py,sha256=jMi8SSYyzUZmkTHLaqPr9hjcVcTkaRTv6EowDMFlIiY,42539
156
+ octobot_trading/exchanges/traders/trader_simulator.cpython-38-aarch64-linux-gnu.so,sha256=U7bYo6-VeRdGIXgtPbu9lZwW44pl9ou4OZvQLcJSL5c,494296
157
+ octobot_trading/exchanges/traders/trader.cpython-38-aarch64-linux-gnu.so,sha256=DM0GtHbefkOb3Z8mzOEaimHQrDANGMZ7zkCcEIMtSbM,4050544
153
158
  octobot_trading/exchanges/traders/__init__.py,sha256=oQg6oA6Q0fyQeiJBwHCUuwPZsipSaOfSJpKRROVV_0I,1042
154
159
  octobot_trading/exchanges/traders/__init__.pxd,sha256=tGxOQj8t3SysC98JkTUns3p6igAjPzWFvfnY-F2WrtA,1047
155
160
  octobot_trading/exchanges/traders/trader.pxd,sha256=tZslPCFE1ATwClephjBtHHDshgR0eUJteS0pnK_9OZM,1427
156
161
  octobot_trading/exchanges/types/__init__.py,sha256=hVrfdyqyzCqBeKwTe5uOiRxRcdUt89C1E1PDhyk5iLA,1068
157
- octobot_trading/exchanges/types/websocket_exchange.cpython-38-aarch64-linux-gnu.so,sha256=8MwL2r41Sletx-zvJGxkUdCh6U-dsuYtRKrRuF0FCc0,1862976
158
- octobot_trading/exchanges/types/rest_exchange.cpython-38-aarch64-linux-gnu.so,sha256=qP_50c55V92fMmZkSlsqOqUCMCwOj_wyxFwyAhxUztg,5680352
159
- octobot_trading/exchanges/types/rest_exchange.py,sha256=Dlh91yz1HLAa1uFggzuBnCcTqRaIcQWpBbyYRdZpeYQ,43629
162
+ octobot_trading/exchanges/types/websocket_exchange.cpython-38-aarch64-linux-gnu.so,sha256=1n17_PBZNggYLBbFT9OzF8SWfBN-rbLPn300x2OM9R4,1866928
163
+ octobot_trading/exchanges/types/rest_exchange.cpython-38-aarch64-linux-gnu.so,sha256=IXTK7mJ-itVHHjm9lCQOjI3bee5aoCh02ZYkroN33WI,5675784
164
+ octobot_trading/exchanges/types/rest_exchange.py,sha256=qOnam2VWPx8bOisqfpfQhxh02UL87vDztUZpHKjzH2w,43739
160
165
  octobot_trading/exchanges/types/rest_exchange.pxd,sha256=I7V6zY9kD1Cb2nyfnBqNl3tyO8_SLzctpngH4oAzqDc,1955
161
166
  octobot_trading/exchanges/types/websocket_exchange.pxd,sha256=j6Xv5cediiMJM2Vyb4LxInWKyz_dxulLipJ4N-P50kI,1481
162
167
  octobot_trading/exchanges/types/__init__.pxd,sha256=gsU9AYl9xsBQO-Qf9K0Z-zfGZnRyOiy2iPy9o2F6UMk,949
@@ -313,7 +318,7 @@ octobot_trading/exchange_data/recent_trades/channel/recent_trade.cpython-38-aarc
313
318
  octobot_trading/exchange_data/recent_trades/channel/__init__.pxd,sha256=wKRQOFs-m32kAjFs22w5sgUd6joaQzAfRp_VPNSrAOU,1599
314
319
  octobot_trading/exchange_data/recent_trades/channel/recent_trade_updater.pxd,sha256=CcJedsfvuhJxJ4LdYAEoMsbniX56OEphre03op-BRmU,941
315
320
  octobot_trading/storage/candles_storage.py,sha256=lz01ISSrwa3sAnTSXArjuDZRkf8AHMl0gqUW0hTVG2o,4385
316
- octobot_trading/storage/orders_storage.py,sha256=-sNQMBXocSQpKuvXfGp_SuN9enz018VOu0PG1tONHnk,7291
321
+ octobot_trading/storage/orders_storage.py,sha256=TVpLDCQ0e0O4MQXGGZ69wZkTcqSrQYVHgdOvcxHwZg0,9604
317
322
  octobot_trading/storage/portfolio_storage.py,sha256=S9HkeKGZDhW8GlPqEyc603pImlGkefCCZWlXX6fonW8,5071
318
323
  octobot_trading/storage/trades_storage.py,sha256=ux7DrNr1jz_WRNy2O7ybzv_2Jlo3QVLrkD5qADqzIdw,8274
319
324
  octobot_trading/storage/__init__.py,sha256=Ukdo2_VX9FpVm2Zs23vB6pXhbJ2uONAOcr9eAzfs6Ss,2159
@@ -325,8 +330,8 @@ octobot_trading/personal_data/state.py,sha256=kUPh60h_rD0XlZaRRgEbPGMVIqAmDGfKAk
325
330
  octobot_trading/personal_data/exchange_personal_data.pxd,sha256=GNO8Yb4tBMh_SAEjDNZ2PcKs3L6MdNOII4lBq3N7Jqw,1904
326
331
  octobot_trading/personal_data/__init__.py,sha256=OA4Bree2GYL5z4O5p9CVjKNWu2H0483m2t2OZQBe0bo,11980
327
332
  octobot_trading/personal_data/state.pxd,sha256=UhylOYwxnbgWz98a3JBbod0kpXvidXhRKc5vrdP38lU,1548
328
- octobot_trading/personal_data/exchange_personal_data.cpython-38-aarch64-linux-gnu.so,sha256=XE0iiMNfEpOrzLRu-SA68HAktuaiwME55kSw_xKMiIY,2972176
329
- octobot_trading/personal_data/exchange_personal_data.py,sha256=tnPLTTqAtVZFcCGa_VItAuzODyLonh6dbDWCzbgDx7I,18899
333
+ octobot_trading/personal_data/exchange_personal_data.cpython-38-aarch64-linux-gnu.so,sha256=hWT5CPai56bOyQvmzUSAEPgTbS7wQ-Z-zaundnW-9Ps,2981312
334
+ octobot_trading/personal_data/exchange_personal_data.py,sha256=rLAlditGZbqGptz3-z83nXv9LM2IC_DtscG-EaBO6UA,19003
330
335
  octobot_trading/personal_data/__init__.pxd,sha256=pWCQsf28NYvdu1un3-Pr1yPZ-INMWXPy7jm-NVNGbD0,5451
331
336
  octobot_trading/personal_data/state.cpython-38-aarch64-linux-gnu.so,sha256=caJD3qT4E8McJu-RgVGJNDiwtcyzE34X6EhWEUJYxj0,1686416
332
337
  octobot_trading/personal_data/trades/trades_manager.cpython-38-aarch64-linux-gnu.so,sha256=igfxqeDibzmKvc1dF38_QZznmsC8Vseu_B3JBem1LZQ,1353104
@@ -337,7 +342,7 @@ octobot_trading/personal_data/trades/__init__.py,sha256=tl1lY3fH99pJJUqi49a_ibz3
337
342
  octobot_trading/personal_data/trades/trade.pxd,sha256=mEhyhODAgCcgnVADAeclRqnUrfPM9rpRSLhltuqk-2c,2263
338
343
  octobot_trading/personal_data/trades/trade.py,sha256=t0bcybXAP30hR2jusPhS6TA-Gs02zySoJbQY15FQzbs,8496
339
344
  octobot_trading/personal_data/trades/trades_manager.pxd,sha256=yvqIJVlnH7F04LeWT3MzBMGcijyZ2prtFOWwJxgRb-8,1444
340
- octobot_trading/personal_data/trades/trade_pnl.py,sha256=5jsNMjQbd6N4q9pJeoaPQ1IkII838_tAqUEPbriMiQA,6622
345
+ octobot_trading/personal_data/trades/trade_pnl.py,sha256=LuIOwHFMflJuoJC-Xqbi6SN_dbTJQGupu1JjJuOixJQ,6788
341
346
  octobot_trading/personal_data/trades/trades_util.py,sha256=QeSjbYm3P17766eRURHFPHDnNQWK_B7a4bpUjHWQ1q8,3232
342
347
  octobot_trading/personal_data/trades/trade_factory.pxd,sha256=uyncr-_ALgUbMqAsAMxy3PJh6d9T4VRd7IznPb-iihU,1788
343
348
  octobot_trading/personal_data/trades/__init__.pxd,sha256=d6u8agXLh2TauUdZlFADRNC9Ff-eitxyT8fSrdZ95s4,1668
@@ -356,7 +361,7 @@ octobot_trading/personal_data/orders/order_util.py,sha256=LLa5dIYeVaqKHMFi2sF_UA
356
361
  octobot_trading/personal_data/orders/order_adapter.py,sha256=kjmcmQnkI0I5SDou1pNX73hWkBEVKgW0v4yGjSdJShk,10764
357
362
  octobot_trading/personal_data/orders/order_adapter.pxd,sha256=b-JMLMZ9COO0dWa_tG1IGGYQM2wGXiXNx5vUUlffNmY,1559
358
363
  octobot_trading/personal_data/orders/order_factory.pxd,sha256=UNIi-CsVIwshXWn9kr84JEoL1CRKe6GE90zPsbr4GKA,2569
359
- octobot_trading/personal_data/orders/orders_manager.cpython-38-aarch64-linux-gnu.so,sha256=rK_cMbnFwe3BUT6cGSKTOmD0EW1XhSSFdbb_QSu7w6o,1971488
364
+ octobot_trading/personal_data/orders/orders_manager.cpython-38-aarch64-linux-gnu.so,sha256=ab2CDfalVbeJyuMiTLDXc793GSz8mIp5U8XP_afmK8k,1975352
360
365
  octobot_trading/personal_data/orders/order_group.cpython-38-aarch64-linux-gnu.so,sha256=CuZ742lcMaz0WpuprH_x82jOFK4WW3-LYGO3kB8uR9Q,739544
361
366
  octobot_trading/personal_data/orders/__init__.py,sha256=L0b39bLFcrUs_yDuLGgH6M7pMRC70p5aWcT0irmOh_g,7174
362
367
  octobot_trading/personal_data/orders/orders_manager.py,sha256=t9SgN-vSog0UlXxIfHYAflqAGecOPNr-_FCK8GvRif0,10764
@@ -386,14 +391,14 @@ octobot_trading/personal_data/orders/states/open_order_state.cpython-38-aarch64-
386
391
  octobot_trading/personal_data/orders/states/pending_creation_chained_order_state.pxd,sha256=BHdS0fpBXZ9jomt5TYXQ74tm3UZsAc3_fqSmP5t0xtQ,967
387
392
  octobot_trading/personal_data/orders/states/order_state_factory.cpython-38-aarch64-linux-gnu.so,sha256=qNE9edErvHWXYKRW9PWnKC5eNCwlTpco9sHmbWkuT_o,456256
388
393
  octobot_trading/personal_data/orders/states/__init__.py,sha256=rGjbh1aqxa1L3GJmg6xvtI2O-wxaQ04g3-tDFzefxJ8,2133
389
- octobot_trading/personal_data/orders/states/cancel_order_state.py,sha256=Jh0Z9w_thqqvSQAJ4HUmgg6Tq7Tthks5mwxYtCzpA2Y,5414
394
+ octobot_trading/personal_data/orders/states/cancel_order_state.py,sha256=H65gbux2Q26e2r75lIgEVbpnM_9WdOPCzoee-_6InGY,5371
390
395
  octobot_trading/personal_data/orders/states/close_order_state.py,sha256=lav5WjmUv0b8cHVvzyOZYUp5ZkXIuLbvHTYgf3ESw8w,2600
391
- octobot_trading/personal_data/orders/states/fill_order_state.cpython-38-aarch64-linux-gnu.so,sha256=q_nFxhttk_QnK4axuxom6P-fJEA3ygAf_TsoWOdSJnQ,1098280
392
- octobot_trading/personal_data/orders/states/cancel_order_state.cpython-38-aarch64-linux-gnu.so,sha256=7DZ4BgeSi9_b79InNNL7RHYL35_VBB0eVBHn4m7gbeU,1069104
396
+ octobot_trading/personal_data/orders/states/fill_order_state.cpython-38-aarch64-linux-gnu.so,sha256=4LjRUViI58B1rEjmfrqjA4sY7KDrBboaDX68vXIMdgs,1102384
397
+ octobot_trading/personal_data/orders/states/cancel_order_state.cpython-38-aarch64-linux-gnu.so,sha256=Yo4gLe5mSFt0A-LGUa57Eqo6KVZpxdFJl_o4uILDOU8,1069952
393
398
  octobot_trading/personal_data/orders/states/pending_creation_chained_order_state.py,sha256=xXVK6LQ0__QV56d5_1KEvBZ70YgVJR330XzT00xr5-A,1166
394
399
  octobot_trading/personal_data/orders/states/pending_creation_order_state.cpython-38-aarch64-linux-gnu.so,sha256=7GegmBZgT03fpN-NA08ZNjsxeHD_3-VnpUaqMy0oKAE,695056
395
400
  octobot_trading/personal_data/orders/states/open_order_state.py,sha256=lZJuo_TpUgeVmnMOtrT9-B-xbCGBWL4kA30QywhSsx4,4835
396
- octobot_trading/personal_data/orders/states/fill_order_state.py,sha256=630wjflwtu6CQEY8QY0Uj015yjv3YYEQnYT8bMN7o7Y,5373
401
+ octobot_trading/personal_data/orders/states/fill_order_state.py,sha256=JTTQ1uxoH18sQQQKtV6FIN4_ecOdt_w_zC0VEnksDKA,5419
397
402
  octobot_trading/personal_data/orders/states/pending_creation_order_state.py,sha256=9JFMK-zA6txpqOw5TakcOOOzQGgvNDb5pldd3aGaX9w,1674
398
403
  octobot_trading/personal_data/orders/states/__init__.pxd,sha256=cPRfXU_i9gX7_k5hX0baBDM_HzfluRrJXLU55zpr98o,2030
399
404
  octobot_trading/personal_data/orders/states/pending_creation_order_state.pxd,sha256=jCug7dbE3wTItfbQ3gu5Hjnfv80z7MgoeFhElEBiuQA,887
@@ -401,9 +406,9 @@ octobot_trading/personal_data/orders/states/open_order_state.pxd,sha256=JKPBEm1i
401
406
  octobot_trading/personal_data/orders/states/cancel_order_state.pxd,sha256=Ay5fr1gzQyrkPELSP0kkctHbp9jYJHyqFDSCh4wDGa0,947
402
407
  octobot_trading/personal_data/orders/states/order_state_factory.py,sha256=U3eYUJ9AJRg2JspI5XXipY2k3-zcXSl4qkB2pFSeCTI,1775
403
408
  octobot_trading/personal_data/orders/channel/orders_updater.cpython-38-aarch64-linux-gnu.so,sha256=lQvalGyPcUKR6JIfTmoTkg7MYyZOWQZ_WSLZJyntz0Y,1393272
404
- octobot_trading/personal_data/orders/channel/orders.py,sha256=uUbBLLGullBsicIaXbpa99RpOOYBiJuATJU4aGlAV9k,13717
409
+ octobot_trading/personal_data/orders/channel/orders.py,sha256=7IYspXpv1_veixV2VdBzm5xZ9mp2XThKXL3gpPqtGu4,13853
405
410
  octobot_trading/personal_data/orders/channel/orders_updater.pxd,sha256=AW8WD6VtCekuYblfWt-oEmUeF_VR6PNsRDemxYqgMqM,1103
406
- octobot_trading/personal_data/orders/channel/orders.cpython-38-aarch64-linux-gnu.so,sha256=mlwxsw3TkRH4s-C-wwkpGJuu8ZMrsbja9H096-6mfZ8,1796624
411
+ octobot_trading/personal_data/orders/channel/orders.cpython-38-aarch64-linux-gnu.so,sha256=KY2Rw9QtiIX9vjtLycrFydRF_NCnSO6rjg13e0f8x74,1813136
407
412
  octobot_trading/personal_data/orders/channel/orders.pxd,sha256=QApCnVm5X8MfUzSwNV2d6WMuuOtUFTY3QYV9dGrru9Q,956
408
413
  octobot_trading/personal_data/orders/channel/__init__.py,sha256=BGcr4UWfJYVZQEqjjpvi92OSC4o-qJzRf42ayUJKIBY,1361
409
414
  octobot_trading/personal_data/orders/channel/orders_updater_simulator.pxd,sha256=nxTYeFPIvhkkOBeLRFa1rHrqM9ASW8BQC3VcQWshkug,904
@@ -547,15 +552,15 @@ octobot_trading/personal_data/positions/types/linear_position.cpython-38-aarch64
547
552
  octobot_trading/personal_data/positions/types/inverse_position.pxd,sha256=agBGmN7p5-g6I47XGCboLxTB7C5iCo5id8OvjMcu9aE,881
548
553
  octobot_trading/personal_data/portfolios/portfolio_profitability.pxd,sha256=d9NZ6ac_s0syRvx_rvOo5yziG-D_xytpCdn32zU38qA,1970
549
554
  octobot_trading/personal_data/portfolios/portfolio_value_holder.py,sha256=f8hAwyvt7ira3rEgTNIZ77_fFzts2wPj84_MWrabU7w,16679
550
- octobot_trading/personal_data/portfolios/portfolio_manager.cpython-38-aarch64-linux-gnu.so,sha256=cawSLzdRdQ4D0FVwO1KoiYpRMagD9ivtEPAphu5AdyA,2111752
555
+ octobot_trading/personal_data/portfolios/portfolio_manager.cpython-38-aarch64-linux-gnu.so,sha256=siWmpPnW3JSyuGRYadEufgYsf2wr36HFN8lVvtJ5n28,2116888
551
556
  octobot_trading/personal_data/portfolios/sub_portfolio.py,sha256=YNdK8DccBPXaoaxMjSTwbU32_tdie-vExnSSbyfy-OU,3270
552
557
  octobot_trading/personal_data/portfolios/portfolio_util.py,sha256=cEphcqwuRz5-eBQl-0K1H46tP_61EfdwBoBA3RFP1OY,9056
553
558
  octobot_trading/personal_data/portfolios/sub_portfolio.pxd,sha256=suCzqU4K3j2wrf_1RLLLLIPiBwZiXp4_eRgen56fpj0,1339
554
559
  octobot_trading/personal_data/portfolios/__init__.py,sha256=Vu33e0iUSahxYyUh3ggOtPymE3i-GX7jqOR5Tl0P404,4168
555
560
  octobot_trading/personal_data/portfolios/portfolio.py,sha256=XS_I7hLN9BgCpzz8EgHJZy7q9vbQCYzCb8ipOQL_S_I,14495
556
561
  octobot_trading/personal_data/portfolios/portfolio_value_holder.pxd,sha256=vFnh13oLE2nJpq2c47PjGXkEfHjIC_5JULpwoOQ7Xqs,3572
557
- octobot_trading/personal_data/portfolios/portfolio_factory.cpython-38-aarch64-linux-gnu.so,sha256=Va2hZZG0txiv0NPMzUFcNLCN-vfuyFWwWjPSzrkRWV0,318912
558
- octobot_trading/personal_data/portfolios/portfolio_value_holder.cpython-38-aarch64-linux-gnu.so,sha256=eJ3qOTzSpmo0TXGyJH-vFfKr4ED9KwVNjQ9ud_jlVmk,1289968
562
+ octobot_trading/personal_data/portfolios/portfolio_factory.cpython-38-aarch64-linux-gnu.so,sha256=uTSA_E3LATeCxuYtdVIaiZcZ7C2vDdGFwH1MgZ_yXOM,322792
563
+ octobot_trading/personal_data/portfolios/portfolio_value_holder.cpython-38-aarch64-linux-gnu.so,sha256=smG3VufsGXu_q1Rvt-qkCv55Om3TCTbfKipf-q-pKHg,1293864
559
564
  octobot_trading/personal_data/portfolios/value_converter.pxd,sha256=3lAiOSbz1NEFsLYXHRbVNM6r3sQHSTlugdHEX0_nyzg,2817
560
565
  octobot_trading/personal_data/portfolios/portfolio_manager.py,sha256=zo0Z_27_U-9XRGJzukxL0rZIu1dZzsBEe6StyHSh_-8,14643
561
566
  octobot_trading/personal_data/portfolios/asset.cpython-38-aarch64-linux-gnu.so,sha256=KZKTAuYlbW3nUen_tsBhwvRQ8qn9SGSyWAMZYu_J1Y4,904048
@@ -563,12 +568,12 @@ octobot_trading/personal_data/portfolios/portfolio_util.cpython-38-aarch64-linux
563
568
  octobot_trading/personal_data/portfolios/portfolio_util.pxd,sha256=_D86zqSs3xoIrgeOsBEAlUJij75gdLeR-oZpa41_5fI,940
564
569
  octobot_trading/personal_data/portfolios/asset.pxd,sha256=6zwtz13xrTvz9TW4NKnLlHWvFR2jzV6o-T9zC6-ZF0A,1305
565
570
  octobot_trading/personal_data/portfolios/portfolio_manager.pxd,sha256=fgPAVuaR87vDa01zk1GdJrO6f58SVs47jKH3zJIybZA,2606
566
- octobot_trading/personal_data/portfolios/portfolio_profitability.cpython-38-aarch64-linux-gnu.so,sha256=_AD_-KSDOTZdat1LSAkThkLl7euzWqzTShMGedZqh7g,1048784
571
+ octobot_trading/personal_data/portfolios/portfolio_profitability.cpython-38-aarch64-linux-gnu.so,sha256=uDJAfX79oS2XzKecSEcfkD3h3P1COXLipQ6xyWPuG28,1051632
567
572
  octobot_trading/personal_data/portfolios/value_converter.py,sha256=mrmno_voKBluIpqOVucAgSbbXM9QVeOkKXMQsgSDWEY,17489
568
573
  octobot_trading/personal_data/portfolios/portfolio.pxd,sha256=ScWgO1SeIsQo2ILr33LfTIJOfta31aNpdBVehZjRhLw,3174
569
574
  octobot_trading/personal_data/portfolios/portfolio_factory.py,sha256=H2kSV_LjQFYevF0-biSg-W7YJ5yDmIdy3LkKQQPt1-c,1368
570
575
  octobot_trading/personal_data/portfolios/__init__.pxd,sha256=hw3qH1yZRT0TqzNr-dB8A6KB5LlaEkCAZMBz3XAcAyc,3758
571
- octobot_trading/personal_data/portfolios/value_converter.cpython-38-aarch64-linux-gnu.so,sha256=PAZvdz8Fuctb-W5tRp6GXTANjjFaw9oZanvVcTE9TpU,1904160
576
+ octobot_trading/personal_data/portfolios/value_converter.cpython-38-aarch64-linux-gnu.so,sha256=hEuYlZpSxJK_jPT15juXNnNx-0tTZSnSC0T8rTotgrs,1908112
572
577
  octobot_trading/personal_data/portfolios/portfolio.cpython-38-aarch64-linux-gnu.so,sha256=AavSKYUCQAtGh4XtaiDwufyLlrMg1_hWkDDM9wJrZGg,1465768
573
578
  octobot_trading/personal_data/portfolios/asset.py,sha256=v8mj4OShmjcsBSkoNUTLWiZZVrFLP0BHCgDw_MEgmCE,4783
574
579
  octobot_trading/personal_data/portfolios/sub_portfolio.cpython-38-aarch64-linux-gnu.so,sha256=TVLuOwC6Iu3GhyzO9bvpfqeyjhHloz6mq2JISxpuHUk,696456
@@ -584,7 +589,7 @@ octobot_trading/personal_data/portfolios/history/historical_asset_value.py,sha25
584
589
  octobot_trading/personal_data/portfolios/history/__init__.pxd,sha256=B-nwpWvSdL2L8fwTpsZsTY6j-iPPoIR2I_cHsAuG5VE,1541
585
590
  octobot_trading/personal_data/portfolios/history/historical_asset_value_factory.pxd,sha256=rbKXL5FsqCP24t83Pj3pguwoqGBqkTuupkr1bqYqJJo,855
586
591
  octobot_trading/personal_data/portfolios/history/historical_portfolio_value_manager.py,sha256=6JnBXTeJisnlC04w97jscYnGLH_OwtymFAS9HcbjESc,17719
587
- octobot_trading/personal_data/portfolios/history/historical_portfolio_value_manager.cpython-38-aarch64-linux-gnu.so,sha256=Z1FpnIysqvOC-JEEofy1ckQN4AbpjgDnYKdL4bOxOKQ,2175120
592
+ octobot_trading/personal_data/portfolios/history/historical_portfolio_value_manager.cpython-38-aarch64-linux-gnu.so,sha256=fA-pTUT1bF1up1jZ5VcFFyVKBbbzvtkuL7_etfKQrYE,2179104
588
593
  octobot_trading/personal_data/portfolios/channel/balance_updater_simulator.cpython-38-aarch64-linux-gnu.so,sha256=uf3J5PB24AKKcYTUc-AleNMrQW5gOkxS-Jj7GjGhKn0,509032
589
594
  octobot_trading/personal_data/portfolios/channel/balance_updater.cpython-38-aarch64-linux-gnu.so,sha256=8pa73wXLJuJHs09A1CScNAZEg7pF7_LhXer6vWBZARA,1360736
590
595
  octobot_trading/personal_data/portfolios/channel/balance.cpython-38-aarch64-linux-gnu.so,sha256=zy8mZ_mbOc5nV44cMht7l4BZnK9Tq2SoSZbnZpJ9u6E,1515568
@@ -662,7 +667,7 @@ tests/exchanges/traders/test_trader.py,sha256=srrcQQv1uQOzH3Ctifys4H_AtgTRDsYrNe
662
667
  tests/exchanges/types/__init__.py,sha256=YsUz9-zgsheTifsGc7O1Xt2PSwcnc6Od0IBU7_LAu3o,716
663
668
  tests/exchanges/types/test_websocket_exchange.py,sha256=rcl9dNBLcv4hHsAm9X_b1etkTKOqyetIPqeCMXOP9Qo,1496
664
669
  tests/api/test_exchange.py,sha256=omqI04fWyDP4M7ZjflA7zqLYXEb6lLA685TuYNTO_4w,2148
665
- tests/api/test_channels.py,sha256=F_1m5n1zLjaZnuy90VVbJCIx2JRvBxrkUYapBksraw8,1849
670
+ tests/api/test_channels.py,sha256=uSphqXYYx_gckOeWmN-LhHy1uvJOCsYxzv8txWN7RkM,1854
666
671
  tests/api/__init__.py,sha256=YsUz9-zgsheTifsGc7O1Xt2PSwcnc6Od0IBU7_LAu3o,716
667
672
  tests/api/test_symbol_data.py,sha256=X9ZrbkFYPKMggoZE70x5-N-O262UZJzpiryj8EUygWo,814
668
673
  tests/api/test_modes.py,sha256=X9ZrbkFYPKMggoZE70x5-N-O262UZJzpiryj8EUygWo,814
@@ -693,7 +698,7 @@ tests/exchange_data/order_book/test_order_book_manager.py,sha256=cWlzSI0RJoIbIiF
693
698
  tests/exchange_data/recent_trades/__init__.py,sha256=YsUz9-zgsheTifsGc7O1Xt2PSwcnc6Od0IBU7_LAu3o,716
694
699
  tests/exchange_data/recent_trades/test_recent_trades_manager.py,sha256=PIpedfoEJ5iFgFpiYKzkZAsjo5GHGK4bxFhc21yvxgI,5439
695
700
  tests/personal_data/__init__.py,sha256=FI2Q4jMA22qULeiiCqX7pnUfxIGj-0KZQuAi6jk6ulM,1311
696
- tests/personal_data/trades/test_trade_pnl.py,sha256=W7hUlmF95vNSkBqtX6t3TRKvk93bB-pYjJdryVH4Vp8,13177
701
+ tests/personal_data/trades/test_trade_pnl.py,sha256=a0bnxaprs_Jq0Sc7X_FtRW_9775MrIS1YUBxzr0k6Uk,14243
697
702
  tests/personal_data/trades/test_trade_factory.py,sha256=4OlS5SMPFfMqIKkCvi60onH9WdqwzsW4DlYo6EqtDMM,10436
698
703
  tests/personal_data/trades/__init__.py,sha256=9AO12m3EbmjSVIF8zFfpTZhOElS1KYN_N8sEbeD4cdc,1381
699
704
  tests/personal_data/trades/test_trade_manager.py,sha256=-oDORjEs5z7E_bn7EbFuuPqe7PXvFcRe_W9XdY0QkcI,3506
@@ -771,7 +776,6 @@ tests/signals/test_trading_signal_bundle_builder.py,sha256=nJF5h6F8qOOIHtkT8LMDZ
771
776
  tests/signals/__init__.py,sha256=YsUz9-zgsheTifsGc7O1Xt2PSwcnc6Od0IBU7_LAu3o,716
772
777
  tests/signals/test_util.py,sha256=CsLzfEQYENIek9lH5oMoWKA18nAiQw2cX2eQqO6Q89A,10112
773
778
  tests_additional/__init__.py,sha256=YsUz9-zgsheTifsGc7O1Xt2PSwcnc6Od0IBU7_LAu3o,716
774
- tests_additional/real_exchanges/test_coinbasepro.py,sha256=Blnv0KjAOVgPvFeGHto4XGX9B1qCAZHq8mH1A9I6tZ8,6446
775
779
  tests_additional/real_exchanges/test_ascendex.py,sha256=sIC0e8tozZpMOqw0kY0_GrmzO6SMGO0sTIyqqKTU1pc,6835
776
780
  tests_additional/real_exchanges/test_upbit.py,sha256=CmSGn7Rvc-Ts7KMZxhFxZRTBFYwFjDu_K_M2jaA-Tog,6595
777
781
  tests_additional/real_exchanges/test_okx_futures.py,sha256=XdEL1QmpeBOB3iLGYEuc7hztLUTFI_YlURA_tWFhZl0,7806
@@ -782,16 +786,17 @@ tests_additional/real_exchanges/test_hollaex.py,sha256=LDXy2dNAnl4YObPX7Xdeew0xA
782
786
  tests_additional/real_exchanges/test_kraken.py,sha256=8Lzu4OMKVkTz9Ef-QV-AvvTig1ZJWyL96fLAeO5NzDw,7903
783
787
  tests_additional/real_exchanges/test_bitso.py,sha256=9xsCCEwk43SA5SVkxkUUl7OZEFTXqL9dM-i9xYxKvA4,6530
784
788
  tests_additional/real_exchanges/test_gateio.py,sha256=rxXZT3m0G8mls9i486tG1ydlY1Exyd5yqSxQWl0puGA,6701
789
+ tests_additional/real_exchanges/test_coinbase.py,sha256=fkCZLcsT83pnya38egZI_F7L5SuF5KDmv9oOiEdkYX4,7038
785
790
  tests_additional/real_exchanges/test_bitfinex.py,sha256=TlvEQy1GNnRBythLzcBxmgLUGFRmsGEOEUXWYR9S5Do,8680
786
791
  tests_additional/real_exchanges/test_huobipro.py,sha256=WXsrRzyx4uKm_LeYmevqAq9YnpFDOZRKccGa9ev3iuw,1076
787
792
  tests_additional/real_exchanges/test_bittrex.py,sha256=ZQmbVm_OTesvYr3ci6N35Ju3Sb1-DatcapwV3hZwmyU,6982
788
793
  tests_additional/real_exchanges/test_okx.py,sha256=JxaaqkuyUDYFyhjDC_JifKUAJGKK3yi6wRbNHi_i84M,7353
789
- tests_additional/real_exchanges/__init__.py,sha256=ZGfceMGy8-g_UhYmPpRZzxsiorrbY_JE8m6kCQktNyk,2323
794
+ tests_additional/real_exchanges/__init__.py,sha256=qHkUQSENa_MErprUxny-YuXC6YVQNLkBPSFasN7ePzA,3953
790
795
  tests_additional/real_exchanges/test_bybit_futures.py,sha256=avD8XToGkzn0k0RNnmj3hac72ryYBfVfAX8VN-p8YFc,8652
791
796
  tests_additional/real_exchanges/test_bitstamp.py,sha256=pamUbZYNfXKa1ZU_8V3Uh5r92z96G9xUaUmyCS1TNxk,7187
792
797
  tests_additional/real_exchanges/test_binance.py,sha256=YbjujDBPh2uSdnjUCzR2OpsDMNwcKYMROkFTNg4wRt4,7149
793
798
  tests_additional/real_exchanges/test_wavesexchange.py,sha256=KPqYNsc4ReSgs1VQRWV11HnZpH9vevsNscNaGLMAMi0,7923
794
- tests_additional/real_exchanges/real_exchange_tester.py,sha256=QswbCSUTz88XlfJ66ktg7qt1KjyfRIvvypupFpVmyMs,9970
799
+ tests_additional/real_exchanges/real_exchange_tester.py,sha256=r0tRlvOEXg4rVcFVUuO_8pGsfiUclTlAuGK3QdZhaC0,10636
795
800
  tests_additional/real_exchanges/test_ndax.py,sha256=WM4Ifcn1SNdTnIHDFfPfxfKjhdsfB_5f4kwyha_igJY,6784
796
801
  tests_additional/real_exchanges/real_futures_exchange_tester.py,sha256=n_kUvddN3M1jpD55J5-YH6lVlF5YHkNujKW282-LumU,2984
797
802
  tests_additional/real_exchanges/test_poloniex.py,sha256=AXujWRDXEe2eJM9yksliGDRHU1GsEaVdrN6IVDuHWRY,6809
@@ -803,8 +808,3 @@ tests_additional/real_exchanges/test_phemex.py,sha256=RfweUAjb9xTWlKQ88xiw8VN9vM
803
808
  tests_additional/real_exchanges/test_bitget.py,sha256=S4oS8tzbEv3zLwzuuLFyUhMS95RNcbJzRabY_a3D3tM,7938
804
809
  tests_additional/real_exchanges/test_coinex.py,sha256=-aHIh-kYfuacBwopN06RSXQ5ZHCzW7QuJRewpV4tA2I,7180
805
810
  tests_additional/real_exchanges/test_kucoin.py,sha256=8iedpNDq7WdMaSlD0VYown6WyLb8ouP1GkJGKNlfoB0,7593
806
- OctoBot_Trading-2.3.33.dist-info/LICENSE,sha256=46mU2C5kSwOnkqkw9XQAJlhBL2JAf1_uCD8lVcXyMRg,7652
807
- OctoBot_Trading-2.3.33.dist-info/WHEEL,sha256=oCBNUxcpJIObB7qxTwklMZvZV19pJGv6x0IkRXaUM7w,150
808
- OctoBot_Trading-2.3.33.dist-info/top_level.txt,sha256=EWslZXCzarlfXX-Z5_2qiJ28t-1TykzGYqpXESZP0H0,39
809
- OctoBot_Trading-2.3.33.dist-info/RECORD,,
810
- OctoBot_Trading-2.3.33.dist-info/METADATA,sha256=-fW35-vyoiDg88szHhAaGSyjHXznCQwm0opsQHgsdFs,2285
@@ -15,4 +15,4 @@
15
15
  # License along with this library.
16
16
 
17
17
  PROJECT_NAME = "OctoBot-Trading"
18
- VERSION = "2.3.33" # major.minor.revision
18
+ VERSION = "2.3.35" # major.minor.revision
@@ -60,6 +60,7 @@ ENABLE_CCXT_VERBOSE = os_util.parse_boolean_environment_var("ENABLE_CCXT_VERBOSE
60
60
  ENABLE_CCXT_RATE_LIMIT = os_util.parse_boolean_environment_var("ENABLE_CCXT_RATE_LIMIT", "True")
61
61
  THROTTLED_WS_UPDATES = float(os.getenv("THROTTLED_WS_UPDATES", "0.1")) # avoid spamming CPU
62
62
  ENABLE_LIVE_CANDLES_STORAGE = os_util.parse_boolean_environment_var("ENABLE_LIVE_CANDLES_STORAGE", "False")
63
+ ENABLE_HISTORICAL_ORDERS_UPDATES_STORAGE = os_util.parse_boolean_environment_var("ENABLE_HISTORICAL_ORDERS_UPDATES_STORAGE", "False")
63
64
 
64
65
  # Decimal default values (decimals are immutable, can be stored as constant)
65
66
  ZERO = decimal.Decimal(0)
@@ -79,7 +80,7 @@ TESTED_EXCHANGES = [
79
80
  "bitget",
80
81
  "ascendex",
81
82
  "kucoin",
82
- # "coinbasepro", # waiting for ccxt update on coinbase advanced
83
+ "coinbase",
83
84
  "bybit",
84
85
  "cryptocom",
85
86
  "phemex",
octobot_trading/enums.py CHANGED
@@ -545,3 +545,15 @@ class StoredOrdersAttr(enum.Enum):
545
545
  SHARED_SIGNAL_ORDER_ID = "ssoi"
546
546
  HAS_BEEN_BUNDLED = "hbb"
547
547
  ENTRIES = "en"
548
+ UPDATE_TIME = "ut"
549
+ UPDATE_TYPE = "uty"
550
+ ORDER_ID = "oid"
551
+ ORDER_STATUS = "s"
552
+ ORDER_DETAILS = "d"
553
+
554
+
555
+ class OrderUpdateType(enum.Enum):
556
+ NEW = "new"
557
+ CLOSED = "closed"
558
+ EDIT = "edit"
559
+ STATE_CHANGE = "state_transition"
@@ -14,17 +14,17 @@
14
14
  #
15
15
  # You should have received a copy of the GNU Lesser General Public
16
16
  # License along with this library.
17
- cimport octobot_trading.util as util
17
+ cimport octobot_commons.tentacles_management as tentacles_management
18
18
 
19
19
 
20
- cdef class AbstractExchange(util.Initializable):
20
+ cdef class AbstractExchange(tentacles_management.AbstractTentacle):
21
21
  cdef public dict config
22
22
 
23
- cdef public object logger
24
23
  cdef public object current_account
25
24
  cdef public object trader
26
25
  cdef public object exchange_manager
27
26
  cdef public object connector
27
+ cdef public bint is_initialized
28
28
  cdef public dict tentacle_config
29
29
 
30
30
  cdef public set symbols
@@ -21,20 +21,15 @@ import octobot_commons.constants
21
21
  import octobot_commons.enums as common_enums
22
22
  import octobot_commons.logging as logging
23
23
  import octobot_commons.timestamp_util as timestamp_util
24
- import octobot_commons.configuration as configuration
25
-
26
- import octobot_tentacles_manager.api as octobot_tentacles_manager_api
24
+ import octobot_commons.tentacles_management as tentacles_management
27
25
 
28
26
  import octobot_trading.constants
29
27
  import octobot_trading.enums as enums
30
- import octobot_trading.util as util
31
28
  import octobot_trading.errors as errors
32
29
 
33
30
 
34
- class AbstractExchange(util.Initializable):
35
- UI: configuration.UserInputFactory = configuration.UserInputFactory(
36
- common_enums.UserInputTentacleTypes.EXCHANGE
37
- )
31
+ class AbstractExchange(tentacles_management.AbstractTentacle):
32
+ USER_INPUT_TENTACLE_TYPE = common_enums.UserInputTentacleTypes.EXCHANGE
38
33
  BUY_STR = enums.TradeOrderSide.BUY.value
39
34
  SELL_STR = enums.TradeOrderSide.SELL.value
40
35
 
@@ -62,6 +57,7 @@ class AbstractExchange(util.Initializable):
62
57
  self.config = config
63
58
  self.exchange_manager = exchange_manager
64
59
  self.connector = None
60
+ self.is_initialized = False
65
61
 
66
62
  self.tentacle_config = {}
67
63
 
@@ -80,7 +76,14 @@ class AbstractExchange(util.Initializable):
80
76
  self.is_unreachable = False
81
77
 
82
78
  if self.exchange_manager.tentacles_setup_config is not None:
83
- self.load_user_inputs(self.exchange_manager.tentacles_setup_config, self.tentacle_config)
79
+ self.load_user_inputs_from_class(self.exchange_manager.tentacles_setup_config, self.tentacle_config)
80
+
81
+ async def initialize(self, force=False, **kwargs):
82
+ if not self.is_initialized or force:
83
+ await self.initialize_impl(**kwargs)
84
+ self.is_initialized = True
85
+ return True
86
+ return False
84
87
 
85
88
  async def initialize_impl(self):
86
89
  """
@@ -640,40 +643,3 @@ class AbstractExchange(util.Initializable):
640
643
  def handle_token_error(self, error):
641
644
  self.logger.error(f"Exchange configuration is invalid : please check your configuration ! "
642
645
  f"({error.__class__.__name__}: {error})")
643
-
644
- @classmethod
645
- def load_user_inputs(cls, tentacles_setup_config, tentacle_config):
646
- logger = logging.get_logger(cls.get_name())
647
- inputs = {}
648
- try:
649
- tentacle_config.update(
650
- octobot_tentacles_manager_api.get_tentacle_config(
651
- tentacles_setup_config, cls
652
- )
653
- )
654
- except NotImplementedError:
655
- # get_name not implemented, no tentacle config
656
- return inputs
657
- try:
658
- with cls.UI.local_factory(cls, lambda: tentacle_config):
659
- cls.init_user_inputs(inputs)
660
- except Exception as e:
661
- logger.exception(e, True, f"Error when initializing user inputs: {e}")
662
- if tentacle_config:
663
- logger.debug(f"Using config: {tentacle_config}")
664
- return inputs
665
-
666
- @classmethod
667
- async def get_raw_config_and_user_inputs(
668
- cls, _, tentacles_setup_config, __
669
- ):
670
- # use user inputs from init_user_inputs
671
- tentacle_config = octobot_tentacles_manager_api.get_tentacle_config(tentacles_setup_config, cls)
672
- user_inputs = cls.load_user_inputs(tentacles_setup_config, tentacle_config)
673
- return tentacle_config, list(user_input.to_dict() for user_input in user_inputs.values())
674
-
675
- @classmethod
676
- def init_user_inputs(cls, inputs: dict) -> None:
677
- """
678
- Called at constructor, should define all the exchange's user inputs.
679
- """
@@ -25,17 +25,17 @@ cdef class CCXTConnector(abstract_exchange.AbstractExchange):
25
25
  cdef public bint is_authenticated
26
26
  cdef public str rest_name
27
27
 
28
+ cdef public dict saved_data
29
+
28
30
  cdef object additional_config
29
31
  cdef dict options
30
32
  cdef dict headers
31
33
 
32
34
 
33
- # private
34
- cdef object _create_client(self)
35
-
36
35
  # @staticmethod waiting for a future version of cython
37
36
  # cdef bint _ensure_order_details_completeness(object order, list order_required_fields=*)
38
37
 
38
+ cpdef object _create_client(self) # public to call and override in non cython subclasses
39
39
  cpdef object get_adapter_class(self, object adapter_class)
40
40
  cpdef void add_headers(self, dict headers_dict)
41
41
  cpdef void add_options(self, dict options_dict)
@@ -45,3 +45,6 @@ cdef class CCXTConnector(abstract_exchange.AbstractExchange):
45
45
  cpdef object unauthenticated_exchange_fallback(self, object err)
46
46
 
47
47
  cdef bint _should_authenticate(self)
48
+
49
+ cpdef object get_saved_data(self, object key)
50
+ cpdef object set_saved_data(self, object key, object value)