Qubx 0.6.18__cp312-cp312-manylinux_2_39_x86_64.whl → 0.6.19__cp312-cp312-manylinux_2_39_x86_64.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.

Potentially problematic release.


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

qubx/backtester/broker.py CHANGED
@@ -81,6 +81,9 @@ class SimulatedBroker(IBroker):
81
81
 
82
82
  # - cancel order in OME and remove from the map to free memory
83
83
  order_update = ome.cancel_order(order_id)
84
+ if order_update is None:
85
+ return None
86
+
84
87
  self._send_exec_report(instrument, order_update)
85
88
 
86
89
  return order_update.order
qubx/backtester/ome.py CHANGED
@@ -322,7 +322,7 @@ class OrdersManagementEngine:
322
322
  f"Stop price would trigger immediately: STOP_MARKET {order_side} {amount} of {self.instrument.symbol} at {price} | market: {c_ask} / {c_bid}"
323
323
  )
324
324
 
325
- def cancel_order(self, order_id: str) -> OmeReport:
325
+ def cancel_order(self, order_id: str) -> OmeReport | None:
326
326
  # - check limit orders
327
327
  if order_id in self.active_orders:
328
328
  order = self.active_orders.pop(order_id)
@@ -341,7 +341,8 @@ class OrdersManagementEngine:
341
341
  order = self.stop_orders.pop(order_id)
342
342
  # - wrong order_id
343
343
  else:
344
- raise InvalidOrder(f"Order {order_id} not found for {self.instrument.symbol}")
344
+ logger.error(f"Can't cancel order {order_id} for {self.instrument.symbol} because it's not found in OME !")
345
+ return None
345
346
 
346
347
  order.status = "CANCELED"
347
348
  self._dbg(f"{order.id} {order.type} {order.side} {order.quantity} canceled")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: Qubx
3
- Version: 0.6.18
3
+ Version: 0.6.19
4
4
  Summary: Qubx - Quantitative Trading Framework
5
5
  Author: Dmitry Marienko
6
6
  Author-email: dmitry.marienko@xlydian.com
@@ -2,10 +2,10 @@ qubx/__init__.py,sha256=GBvbyDpm2yCMJVmGW66Jo0giLOUsKKldDGcVA_r9Ohc,8294
2
2
  qubx/_nb_magic.py,sha256=kcYn8qNb8O223ZRPpq30_n5e__lD5GSVcd0U_jhfnbM,3019
3
3
  qubx/backtester/__init__.py,sha256=OhXhLmj2x6sp6k16wm5IPATvv-E2qRZVIcvttxqPgcg,176
4
4
  qubx/backtester/account.py,sha256=BFbQYpdeQ81yMw2ghLr2TqWke6NWn1e_FFjHAGtiYkw,6672
5
- qubx/backtester/broker.py,sha256=843C1tDCMGABmwnlnEbyN0Ut5-SG5mrZbNCDlDgbd-4,3163
5
+ qubx/backtester/broker.py,sha256=yyS12b7e-7Vs_czRLXu_-pl7P47vN6tfEs6r3W0cba4,3221
6
6
  qubx/backtester/data.py,sha256=DEEtVlpiLNcvIDOMZcgmIkwvb-GSD2YP2qgxWxUyFxg,11966
7
7
  qubx/backtester/management.py,sha256=HuyzFsBPgR7j-ei78Ngcx34CeSn65c9atmaii1aTsYg,14900
8
- qubx/backtester/ome.py,sha256=wFTQBZsb-EPeyXUAm_YzsN9hmRsdQC-A3yAdDve8xP8,14685
8
+ qubx/backtester/ome.py,sha256=8AwOKxpL_sM2Tk9EUbfmrE5z9Lg-YnHSCtLxeSoCaFE,14745
9
9
  qubx/backtester/optimization.py,sha256=HHUIYA6Y66rcOXoePWFOuOVX9iaHGKV0bGt_4d5e6FM,7619
10
10
  qubx/backtester/runner.py,sha256=WlGUP-b8RxYzBKgNJQIi0dQ379hV0lVp4rOZ60lKIDg,11092
11
11
  qubx/backtester/simulated_data.py,sha256=niujaMRj__jf4IyzCZrSBR5ZoH1VUbvsZHSewHftdmI,17240
@@ -45,11 +45,11 @@ qubx/core/mixins/processing.py,sha256=RgOkYg-ytr8SfVeyMEeMYhj3NScUxS8OxJ0dxBFBT1
45
45
  qubx/core/mixins/subscription.py,sha256=J_SX0CNw2bPy4bhxe0vswvDXY4LCkwXSaj_1PepKRLY,8540
46
46
  qubx/core/mixins/trading.py,sha256=mkaQngatw4Tdw6CJGdVopWzCsJqX3W6JChj22UaKfSg,5367
47
47
  qubx/core/mixins/universe.py,sha256=1oqOadbVB9nlvQQp2jDRhUvsSQkyxdoNgswxnxHTcs4,10653
48
- qubx/core/series.cpython-312-x86_64-linux-gnu.so,sha256=9pwNpQB51M4lOuJNXnSY3mh7dQ5OPgqRfm8Ub552WMc,978280
48
+ qubx/core/series.cpython-312-x86_64-linux-gnu.so,sha256=qcxaOeO4uYA2jZN0cQYv9QGVd8A59A2VOqANS-9WmPM,978280
49
49
  qubx/core/series.pxd,sha256=jBdMwgO8J4Zrue0e_xQ5RlqTXqihpzQNu6V3ckZvvpY,3978
50
50
  qubx/core/series.pyi,sha256=RaHm_oHHiWiNUMJqVfx5FXAXniGLsHxUFOUpacn7GC0,4604
51
51
  qubx/core/series.pyx,sha256=7DTYRj5D6O_O5MoDBj_FBjQh2zdxofi3912AnlZ7BiY,46477
52
- qubx/core/utils.cpython-312-x86_64-linux-gnu.so,sha256=xVH7ykCZZMpC4fApKfKelTHHtFfH-Ng39WdFiCL77Ig,86568
52
+ qubx/core/utils.cpython-312-x86_64-linux-gnu.so,sha256=Ig_BYZcHnenXqGcMM2-Oeu2_o9gAF89raTCk6tUukXU,86568
53
53
  qubx/core/utils.pyi,sha256=a-wS13V2p_dM1CnGq40JVulmiAhixTwVwt0ah5By0Hc,348
54
54
  qubx/core/utils.pyx,sha256=k5QHfEFvqhqWfCob89ANiJDKNG8gGbOh-O4CVoneZ8M,1696
55
55
  qubx/data/__init__.py,sha256=ELZykvpPGWc5rX7QoNyNQwMLgdKMG8MACOByA4pM5hA,549
@@ -108,7 +108,7 @@ qubx/restorers/signal.py,sha256=DBLqA7vDhoMTAzUC4N9UerrO0GbjeHdTeMoCz7U7iI8,6621
108
108
  qubx/restorers/state.py,sha256=ePmh604fp2kRYzMNXL-TWvZOxmtTGAaKYfHJcnKResY,4042
109
109
  qubx/restorers/utils.py,sha256=We2gfqwQKWziUYhuUnjb-xo-5tSlbuHWpPQn0CEMTn0,1155
110
110
  qubx/ta/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
- qubx/ta/indicators.cpython-312-x86_64-linux-gnu.so,sha256=sIvtpDs655SxWguGUENcCST7Y1NTstyGkQ7Ut3E7TOg,654440
111
+ qubx/ta/indicators.cpython-312-x86_64-linux-gnu.so,sha256=8OIXmRe8Gglf-1zi00YbnK_ShxpWIaBKB0AqtsKudN0,654440
112
112
  qubx/ta/indicators.pxd,sha256=eCJ9paOxtxbDFx4U5CUhcgB1jjCQAfVqMF2FnbJ03Lo,4222
113
113
  qubx/ta/indicators.pyi,sha256=19W0uERft49In5bf9jkJHkzJYEyE9gzudN7_DJ5Vdv8,1963
114
114
  qubx/ta/indicators.pyx,sha256=FVkv5ld04TpZMT3a_kR1MU3IUuWfijzjJnh_lG78JxM,26029
@@ -143,8 +143,8 @@ qubx/utils/runner/factory.py,sha256=vQ2dBTbrQE9YH__-TvuFzGF-E1li-vt_qQum9GHa11g,
143
143
  qubx/utils/runner/runner.py,sha256=4o6_nYNsFNGHNJNav5SBnlLVG3fRwr5AjlelR561BUo,27346
144
144
  qubx/utils/time.py,sha256=J0ZFGjzFL5T6GA8RPAel8hKG0sg2LZXeQ5YfDCfcMHA,10055
145
145
  qubx/utils/version.py,sha256=e52fIHyxzCiIuH7svCF6pkHuDlqL64rklqz-2XjWons,5309
146
- qubx-0.6.18.dist-info/LICENSE,sha256=qwMHOSJ2TD0nx6VUJvFhu1ynJdBfNozRMt6tnSul-Ts,35140
147
- qubx-0.6.18.dist-info/METADATA,sha256=ri9mh8Hd0axlsSh5J_OzHL8SQeQv02GZ1nM9oeh1O-I,4444
148
- qubx-0.6.18.dist-info/WHEEL,sha256=h1DdjcD2ZFnKGsDLjEycQhNNPJ5l-R8qdFdDSXHrAGY,110
149
- qubx-0.6.18.dist-info/entry_points.txt,sha256=VqilDTe8mVuV9SbR-yVlZJBTjbkHIL2JBgXfQw076HY,47
150
- qubx-0.6.18.dist-info/RECORD,,
146
+ qubx-0.6.19.dist-info/LICENSE,sha256=qwMHOSJ2TD0nx6VUJvFhu1ynJdBfNozRMt6tnSul-Ts,35140
147
+ qubx-0.6.19.dist-info/METADATA,sha256=UcLn9nO4Rpr_WOuLELI8f73_OAFxQb2YGZplAOlL630,4444
148
+ qubx-0.6.19.dist-info/WHEEL,sha256=h1DdjcD2ZFnKGsDLjEycQhNNPJ5l-R8qdFdDSXHrAGY,110
149
+ qubx-0.6.19.dist-info/entry_points.txt,sha256=VqilDTe8mVuV9SbR-yVlZJBTjbkHIL2JBgXfQw076HY,47
150
+ qubx-0.6.19.dist-info/RECORD,,
File without changes
File without changes