siglab-py 0.5.52__tar.gz → 0.5.55__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.
- {siglab_py-0.5.52 → siglab_py-0.5.55}/PKG-INFO +1 -1
- {siglab_py-0.5.52 → siglab_py-0.5.55}/pyproject.toml +1 -1
- {siglab_py-0.5.52 → siglab_py-0.5.55}/setup.cfg +1 -1
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/unit/analytic_util_tests.py +1 -1
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/analytic_util.py +2 -1
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py.egg-info/PKG-INFO +1 -1
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/constants.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/exchanges/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/exchanges/any_exchange.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/exchanges/futubull.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/aggregated_orderbook_provider.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/candles_provider.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/candles_ta_provider.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/ccxt_candles_ta_to_csv.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/deribit_options_expiry_provider.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/futu_candles_ta_to_csv.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/orderbooks_provider.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/test_provider.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/tg_monitor.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/ordergateway/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/ordergateway/client.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/ordergateway/encrypt_keys_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/ordergateway/gateway.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/ordergateway/test_ordergateway.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/integration/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/integration/market_data_util_tests.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/unit/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/unit/market_data_util_tests.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/unit/simple_math_tests.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/tests/unit/trading_util_tests.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/__init__.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/aws_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/market_data_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/notification_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/retry_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/simple_math.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/slack_notification_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/util/trading_util.py +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py.egg-info/SOURCES.txt +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py.egg-info/dependency_links.txt +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py.egg-info/requires.txt +0 -0
- {siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py.egg-info/top_level.txt +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "siglab_py"
|
|
7
|
-
version = "0.5.
|
|
7
|
+
version = "0.5.55"
|
|
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"}
|
|
@@ -72,7 +72,7 @@ class AnalyticUtilTests(unittest.TestCase):
|
|
|
72
72
|
'money_flow', 'money_flow_positive', 'money_flow_negative', 'positive_flow_sum', 'negative_flow_sum', 'money_flow_ratio', 'mfi', 'mfi_bucket',
|
|
73
73
|
'macd', 'signal', 'macd_minus_signal',
|
|
74
74
|
'fib_0.618_short_periods', 'fib_0.618_long_periods',
|
|
75
|
-
'gap_close_vs_ema',
|
|
75
|
+
'gap_close_vs_ema', 'gap_close_vs_ema_percent',
|
|
76
76
|
'close_above_or_below_ema',
|
|
77
77
|
'close_vs_ema_inflection'
|
|
78
78
|
]
|
|
@@ -185,7 +185,6 @@ def compute_candles_stats(
|
|
|
185
185
|
annualization_factor = np.sqrt(candles_per_year)
|
|
186
186
|
pd_candles['annualized_hist_vol'] = pd_candles['interval_hist_vol'] * annualization_factor
|
|
187
187
|
|
|
188
|
-
|
|
189
188
|
pd_candles['chop_against_ema'] = (
|
|
190
189
|
(~pd_candles['is_green'] & (pd_candles['close'] > pd_candles['ema_close'])) | # Case 1: Green candle and close > EMA
|
|
191
190
|
(pd_candles['is_green'] & (pd_candles['close'] < pd_candles['ema_close'])) # Case 2: Red candle and close < EMA
|
|
@@ -626,6 +625,8 @@ def compute_candles_stats(
|
|
|
626
625
|
|
|
627
626
|
# Inflection points
|
|
628
627
|
pd_candles['gap_close_vs_ema'] = pd_candles['close'] - pd_candles['ema_long_periods']
|
|
628
|
+
pd_candles['gap_close_vs_ema_percent'] = pd_candles['gap_close_vs_ema']/pd_candles['close'] *100
|
|
629
|
+
|
|
629
630
|
pd_candles['close_above_or_below_ema'] = None
|
|
630
631
|
pd_candles.loc[pd_candles['gap_close_vs_ema'] > 0, 'close_above_or_below_ema'] = 'above'
|
|
631
632
|
pd_candles.loc[pd_candles['gap_close_vs_ema'] < 0, 'close_above_or_below_ema'] = 'below'
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/candles_ta_provider.py
RENAMED
|
File without changes
|
{siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/ccxt_candles_ta_to_csv.py
RENAMED
|
File without changes
|
|
File without changes
|
{siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/futu_candles_ta_to_csv.py
RENAMED
|
File without changes
|
{siglab_py-0.5.52 → siglab_py-0.5.55}/siglab_py/market_data_providers/orderbooks_provider.py
RENAMED
|
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
|