roboquant 2.3.2__tar.gz → 2.3.3__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.
- {roboquant-2.3.2 → roboquant-2.3.3}/PKG-INFO +2 -2
- {roboquant-2.3.2 → roboquant-2.3.3}/README.md +1 -1
- {roboquant-2.3.2 → roboquant-2.3.3}/pyproject.toml +1 -1
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ai/features.py +3 -3
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/signal.py +1 -2
- {roboquant-2.3.2 → roboquant-2.3.3}/LICENSE +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/account.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ai/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ai/rl.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ai/strategies.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/alpaca/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/alpaca/broker.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/alpaca/feed.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/asset.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/brokers/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/brokers/broker.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/brokers/simbroker.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/crypto/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/crypto/cryptobroker.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/crypto/cryptofeed.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/event.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/csvfeed.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/feed.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/historic.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/live.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/parquet.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/randomwalk.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/resources/us10.parquet +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/sql.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/util.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/feeds/yahoo.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ibkr/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ibkr/broker.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ibkr/types.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/alphabeta.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/basicjournal.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/feedmetric.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/journal.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/marketmetric.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/metric.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/metricsjournal.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/pnlmetric.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/pricemetric.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/runmetric.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/scorecard.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/journals/tensorboard.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/monetary.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/order.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/run.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/buffer.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/cachedstrategy.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/emacrossover.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/ibsstrategy.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/multistrategy.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/strategy.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/strategies/tastrategy.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/ta/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/timeframe.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/traders/__init__.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/traders/flextrader.py +0 -0
- {roboquant-2.3.2 → roboquant-2.3.3}/roboquant/traders/trader.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: roboquant
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.3
|
|
4
4
|
Summary: A fast algorithmic trading platform with support for AI based strategies
|
|
5
5
|
Keywords: algorithmic,trading,machine learning,AI,investment,finance,crypto,stocks,exchange,forex
|
|
6
6
|
Author: roboquant team
|
|
@@ -77,7 +77,7 @@ python3 -m pip install --upgrade roboquant
|
|
|
77
77
|
The core of roboquant limits the number of dependencies. But you can install roboquant including one or more of the optional dependencies if you require certain additional functionality:
|
|
78
78
|
|
|
79
79
|
```shell
|
|
80
|
-
# AI based strategies using
|
|
80
|
+
# AI based strategies using PyTorch and SB3
|
|
81
81
|
python3 -m pip install --upgrade "roboquant[ai]"
|
|
82
82
|
|
|
83
83
|
# Integration with Interactive Brokers
|
|
@@ -35,7 +35,7 @@ python3 -m pip install --upgrade roboquant
|
|
|
35
35
|
The core of roboquant limits the number of dependencies. But you can install roboquant including one or more of the optional dependencies if you require certain additional functionality:
|
|
36
36
|
|
|
37
37
|
```shell
|
|
38
|
-
# AI based strategies using
|
|
38
|
+
# AI based strategies using PyTorch and SB3
|
|
39
39
|
python3 -m pip install --upgrade "roboquant[ai]"
|
|
40
40
|
|
|
41
41
|
# Integration with Interactive Brokers
|
|
@@ -19,7 +19,7 @@ module-name = "roboquant"
|
|
|
19
19
|
|
|
20
20
|
[project]
|
|
21
21
|
name = "roboquant"
|
|
22
|
-
version = "2.3.
|
|
22
|
+
version = "2.3.3"
|
|
23
23
|
authors = [{ name = "roboquant team", email = "info@roboquant.org" }]
|
|
24
24
|
description = "A fast algorithmic trading platform with support for AI based strategies"
|
|
25
25
|
readme = "README.md"
|
|
@@ -244,7 +244,7 @@ class ReturnFeature(Feature[T]):
|
|
|
244
244
|
class LongReturnsFeature(Feature[T]):
|
|
245
245
|
def __init__(self, feature: Feature[T], period: int) -> None:
|
|
246
246
|
super().__init__()
|
|
247
|
-
self.history = deque(maxlen=period)
|
|
247
|
+
self.history: deque[FloatArray] = deque(maxlen=period)
|
|
248
248
|
self.feature: Feature = feature
|
|
249
249
|
|
|
250
250
|
def calc(self, value: T) -> FloatArray:
|
|
@@ -275,7 +275,7 @@ class MaxReturnFeature(Feature[T]):
|
|
|
275
275
|
def __init__(self, feature: Feature[T], period: int) -> None:
|
|
276
276
|
super().__init__()
|
|
277
277
|
assert feature.size() == 1
|
|
278
|
-
self.history = deque(maxlen=period)
|
|
278
|
+
self.history: deque[FloatArray] = deque(maxlen=period)
|
|
279
279
|
self.feature: Feature = feature
|
|
280
280
|
|
|
281
281
|
def calc(self, value: T) -> FloatArray:
|
|
@@ -304,7 +304,7 @@ class MinReturnFeature(Feature[T]):
|
|
|
304
304
|
|
|
305
305
|
def __init__(self, feature: Feature[T], period: int) -> None:
|
|
306
306
|
super().__init__()
|
|
307
|
-
self.history = deque(maxlen=period)
|
|
307
|
+
self.history: deque[FloatArray] = deque(maxlen=period)
|
|
308
308
|
self.feature: Feature = feature
|
|
309
309
|
|
|
310
310
|
def calc(self, value: T) -> FloatArray:
|
|
@@ -22,8 +22,7 @@ class SignalType(Flag):
|
|
|
22
22
|
"""Indicates that this signal can be used for both entering and exiting a position size"""
|
|
23
23
|
|
|
24
24
|
def __repr__(self):
|
|
25
|
-
return self.name.split(".")[-1]
|
|
26
|
-
|
|
25
|
+
return self.name.split(".")[-1] if self.name else super().__repr__()
|
|
27
26
|
|
|
28
27
|
@dataclass(slots=True, frozen=True)
|
|
29
28
|
class Signal:
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|