siglab-py 0.5.35__tar.gz → 0.5.36__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.

Potentially problematic release.


This version of siglab-py might be problematic. Click here for more details.

Files changed (43) hide show
  1. {siglab_py-0.5.35 → siglab_py-0.5.36}/PKG-INFO +1 -1
  2. {siglab_py-0.5.35 → siglab_py-0.5.36}/pyproject.toml +1 -1
  3. {siglab_py-0.5.35 → siglab_py-0.5.36}/setup.cfg +1 -1
  4. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/analytic_util.py +19 -20
  5. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py.egg-info/PKG-INFO +1 -1
  6. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/__init__.py +0 -0
  7. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/constants.py +0 -0
  8. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/exchanges/__init__.py +0 -0
  9. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/exchanges/any_exchange.py +0 -0
  10. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/exchanges/futubull.py +0 -0
  11. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/__init__.py +0 -0
  12. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/aggregated_orderbook_provider.py +0 -0
  13. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/candles_provider.py +0 -0
  14. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/candles_ta_provider.py +0 -0
  15. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/ccxt_candles_ta_to_csv.py +0 -0
  16. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/deribit_options_expiry_provider.py +0 -0
  17. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/futu_candles_ta_to_csv.py +0 -0
  18. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/orderbooks_provider.py +0 -0
  19. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/test_provider.py +0 -0
  20. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/market_data_providers/tg_monitor.py +0 -0
  21. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/ordergateway/__init__.py +0 -0
  22. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/ordergateway/client.py +0 -0
  23. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/ordergateway/encrypt_keys_util.py +0 -0
  24. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/ordergateway/gateway.py +0 -0
  25. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/ordergateway/test_ordergateway.py +0 -0
  26. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/__init__.py +0 -0
  27. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/integration/__init__.py +0 -0
  28. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/integration/market_data_util_tests.py +0 -0
  29. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/unit/__init__.py +0 -0
  30. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/unit/analytic_util_tests.py +0 -0
  31. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/unit/market_data_util_tests.py +0 -0
  32. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/tests/unit/trading_util_tests.py +0 -0
  33. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/__init__.py +0 -0
  34. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/aws_util.py +0 -0
  35. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/market_data_util.py +0 -0
  36. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/notification_util.py +0 -0
  37. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/retry_util.py +0 -0
  38. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/slack_notification_util.py +0 -0
  39. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py/util/trading_util.py +0 -0
  40. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py.egg-info/SOURCES.txt +0 -0
  41. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py.egg-info/dependency_links.txt +0 -0
  42. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py.egg-info/requires.txt +0 -0
  43. {siglab_py-0.5.35 → siglab_py-0.5.36}/siglab_py.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: siglab_py
3
- Version: 0.5.35
3
+ Version: 0.5.36
4
4
  Summary: Market data fetches, TA calculations and generic order gateway.
5
5
  Author: r0bbarh00d
6
6
  Author-email: r0bbarh00d <r0bbarh00d@gmail.com>
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "siglab_py"
7
- version = "0.5.35"
7
+ version = "0.5.36"
8
8
  description = "Market data fetches, TA calculations and generic order gateway."
9
9
  authors = [{name = "r0bbarh00d", email = "r0bbarh00d@gmail.com"}]
10
10
  license = {text = "MIT"}
@@ -1,6 +1,6 @@
1
1
  [metadata]
2
2
  name = siglab_py
3
- version = 0.5.35
3
+ version = 0.5.36
4
4
  description = Market data fetches, TA calculations and generic order gateway.
5
5
  author = r0bbarh00d
6
6
  author_email = r0bbarh00d@gmail.com
@@ -141,7 +141,6 @@ def compute_candles_stats(
141
141
  close_short_periods_ewm = pd_candles['close'].ewm(span=int(sliding_window_how_many_candles/slow_fast_interval_ratio), adjust=False)
142
142
  close_long_periods_ewm = pd_candles['close'].ewm(span=sliding_window_how_many_candles, adjust=False)
143
143
 
144
-
145
144
  pd_candles['pct_change_close'] = pd_candles['close'].pct_change() * 100
146
145
  pd_candles['sma_short_periods'] = close_short_periods_rolling.mean()
147
146
  pd_candles['sma_long_periods'] = close_long_periods_rolling.mean()
@@ -203,25 +202,25 @@ def compute_candles_stats(
203
202
  bearish_indices = pd.Series(pd_candles.index.where(pd_candles['ema_cross'] == -1), index=pd_candles.index).astype('Int64')
204
203
  pd_candles['ema_bullish_cross_last_id'] = bullish_indices.rolling(window=pd_candles.shape[0], min_periods=1).max().astype('Int64')
205
204
  pd_candles['ema_bearish_cross_last_id'] = bearish_indices.rolling(window=pd_candles.shape[0], min_periods=1).max().astype('Int64')
206
- pd_candles['ema_cross_last'] = np.where(
207
- (pd_candles['ema_bullish_cross_last_id'].notna()) & (
208
- pd_candles['ema_bearish_cross_last_id'].isna() |
209
- (pd_candles['ema_bullish_cross_last_id'] > pd_candles['ema_bearish_cross_last_id'])
210
- ),
211
- 'bullish',
212
- np.where(
213
- (pd_candles['ema_bearish_cross_last_id'].notna()) & (
214
- pd_candles['ema_bullish_cross_last_id'].isna() |
215
- (pd_candles['ema_bearish_cross_last_id'] > pd_candles['ema_bullish_cross_last_id'])
216
- ),
217
- 'bearish',
218
- None # type: ignore
219
- )
220
- )
221
- pd_candles['ema_cross_last'] = pd_candles['ema_cross_last'].where(
222
- pd_candles['ema_bullish_cross_last_id'].isna() & pd_candles['ema_bearish_cross_last_id'].isna(),
223
- None
224
- )
205
+ conditions = [
206
+ (pd_candles['ema_bullish_cross_last_id'].notna() &
207
+ pd_candles['ema_bearish_cross_last_id'].notna() &
208
+ (pd_candles['ema_bullish_cross_last_id'] > pd_candles['ema_bearish_cross_last_id'])),
209
+
210
+ (pd_candles['ema_bullish_cross_last_id'].notna() &
211
+ pd_candles['ema_bearish_cross_last_id'].notna() &
212
+ (pd_candles['ema_bearish_cross_last_id'] > pd_candles['ema_bullish_cross_last_id'])),
213
+
214
+ (pd_candles['ema_bullish_cross_last_id'].notna() &
215
+ pd_candles['ema_bearish_cross_last_id'].isna()),
216
+
217
+ (pd_candles['ema_bearish_cross_last_id'].notna() &
218
+ pd_candles['ema_bullish_cross_last_id'].isna())
219
+ ]
220
+ choices = ['bullish', 'bearish', 'bullish', 'bearish']
221
+ pd_candles['ema_cross_last'] = np.select(conditions, choices, default=None) # type: ignore
222
+ pd_candles.loc[bullish_ema_crosses, 'ema_cross'] = 'bullish'
223
+ pd_candles.loc[bearish_ema_crosses, 'ema_cross'] = 'bearish'
225
224
 
226
225
  pd_candles['max_short_periods'] = close_short_periods_rolling.max()
227
226
  pd_candles['max_long_periods'] = close_long_periods_rolling.max()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: siglab_py
3
- Version: 0.5.35
3
+ Version: 0.5.36
4
4
  Summary: Market data fetches, TA calculations and generic order gateway.
5
5
  Author: r0bbarh00d
6
6
  Author-email: r0bbarh00d <r0bbarh00d@gmail.com>