voly 0.0.150__py3-none-any.whl → 0.0.151__py3-none-any.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.
voly/core/hd.py CHANGED
@@ -538,7 +538,20 @@ def calculate_basic_density(df_hist: pd.DataFrame,
538
538
 
539
539
  # Better diagnostics for debugging
540
540
  if len(maturity_hist) < 2:
541
- raise VolyError(f"Not enough historical data for maturity (t={t:.4f})")
541
+ n_available = len(df_hist)
542
+ earliest = df_hist.index[0] if n_available > 0 else "N/A"
543
+ latest = df_hist.index[-1] if n_available > 0 else "N/A"
544
+
545
+ logger.warning(f"Insufficient data for t={t:.4f} years ({lookback_days:.2f} days lookback)")
546
+ logger.warning(f"Available data: {n_available} points from {earliest} to {latest}")
547
+ logger.warning(f"Required start date: {start_date}")
548
+
549
+ # Try using all available data as fallback
550
+ if n_available >= 2:
551
+ logger.warning(f"Using all available {n_available} data points as fallback")
552
+ maturity_hist = df_hist.copy()
553
+ else:
554
+ raise VolyError(f"Not enough historical data for maturity (t={t:.4f})")
542
555
 
543
556
  # Calculate scaled returns
544
557
  maturity_hist['log_returns'] = np.log(maturity_hist['close'] / maturity_hist['close'].shift(1)) * np.sqrt(n_periods)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: voly
3
- Version: 0.0.150
3
+ Version: 0.0.151
4
4
  Summary: Options & volatility research package
5
5
  Author-email: Manu de Cara <manu.de.cara@gmail.com>
6
6
  License: MIT
@@ -7,13 +7,13 @@ voly/core/__init__.py,sha256=bu6fS2I1Pj9fPPnl-zY3L7NqrZSY5Zy6NY2uMUvdhKs,183
7
7
  voly/core/charts.py,sha256=E21OZB5lTY4YL2flgaFJ6s5g3_ExtAQT2zryZZxLPyM,12735
8
8
  voly/core/data.py,sha256=pDeuYhP0GX4RbtlqByvsE3rfHcIkix0BU5MLW8sKIeI,8935
9
9
  voly/core/fit.py,sha256=Tb9eeG7e_2dQTcqt6aqEwFrZdy6jR9rSNqe6tzOdVhQ,9245
10
- voly/core/hd.py,sha256=bdpdF2IFV_VOJZmiHVHryI9ncD7ePdpVYDjW8X39SlM,29704
10
+ voly/core/hd.py,sha256=Ioi4iXHjN2ARkFmRMta0ZVWQdPzgRdiW_9se7TcsDPQ,30356
11
11
  voly/core/interpolate.py,sha256=JkK172-FXyhesW3hY4pEeuJWG3Bugq7QZXbeKoRpLuo,5305
12
12
  voly/core/rnd.py,sha256=AvGsITB52-Ti9AOA2lj2N4UAyJUtD-Bs37HRwLbzRsA,16043
13
13
  voly/utils/__init__.py,sha256=E05mWatyC-PDOsCxQV1p5Xi1IgpOomxrNURyCx_gB-w,200
14
14
  voly/utils/logger.py,sha256=4-_2bVJmq17Q0d7Rd2mPg1AeR8gxv6EPvcmBDMFWcSM,1744
15
- voly-0.0.150.dist-info/licenses/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
16
- voly-0.0.150.dist-info/METADATA,sha256=2grjcbsBkPWiLfytEj2i17aOg8wZfnxkPRXUkEXz1cU,4115
17
- voly-0.0.150.dist-info/WHEEL,sha256=DK49LOLCYiurdXXOXwGJm6U4DkHkg4lcxjhqwRa0CP4,91
18
- voly-0.0.150.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
19
- voly-0.0.150.dist-info/RECORD,,
15
+ voly-0.0.151.dist-info/licenses/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
16
+ voly-0.0.151.dist-info/METADATA,sha256=zQVWjt6YiKAPU3I-rZqwPa6_MRAcaqwgH1tBjS0rSh4,4115
17
+ voly-0.0.151.dist-info/WHEEL,sha256=DK49LOLCYiurdXXOXwGJm6U4DkHkg4lcxjhqwRa0CP4,91
18
+ voly-0.0.151.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
19
+ voly-0.0.151.dist-info/RECORD,,
File without changes