voly 0.0.252__py3-none-any.whl → 0.0.254__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/client.py CHANGED
@@ -235,7 +235,7 @@ class VolyClient:
235
235
  # Generate IV surface and domain
236
236
  iv_surface, x_surface = get_iv_surface(fit_results, domain_params, return_domain)
237
237
 
238
- if option_chain:
238
+ if not option_chain.emtpy():
239
239
  # Create missing domains
240
240
  option_chain['log_moneyness'] = np.log(option_chain['strikes'] / option_chain['spot_price'].iloc[0])
241
241
  option_chain['moneyness'] = np.exp(option_chain['log_moneyness'])
voly/core/fit.py CHANGED
@@ -68,6 +68,7 @@ class SVICalibrator:
68
68
  """Filter and prepare market data"""
69
69
  # Filter for call options only
70
70
  group = group[group['flag'] == 'C']
71
+ group['log_moneyness'] = np.log(group['strikes'] / group['spot_price'].iloc[0])
71
72
 
72
73
  # Handle duplicated IVs by keeping the row closest to log_moneyness=0
73
74
  duplicated_iv = group[group.duplicated('mark_iv', keep=False)]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: voly
3
- Version: 0.0.252
3
+ Version: 0.0.254
4
4
  Summary: Options & volatility research package
5
5
  Author-email: Manu de Cara <manu.de.cara@gmail.com>
6
6
  License: MIT
@@ -1,20 +1,20 @@
1
1
  voly/__init__.py,sha256=8xyDk7rFCn_MOD5hxuv5cxxKZvBVRiSIM7TgaMPpwpw,211
2
- voly/client.py,sha256=H4BY5n1isHOqMYX-Koe8-WKBKE6zxbdDYopDF58BPBI,14533
2
+ voly/client.py,sha256=J8M1cC6HB14Z9Zkh0ojltSd_VHGyiaMOB8PI0y5bLtE,14545
3
3
  voly/exceptions.py,sha256=PBsbn1vNMvKcCJwwJ4lBO6glD85jo1h2qiEmD7ArAjs,92
4
4
  voly/formulas.py,sha256=5DupVzJuPtnkfbhIq05ciNXb6S6o4Cd33wqG-ahf4bc,10015
5
5
  voly/models.py,sha256=CGJQr13Uie7iwtx2hjViN9lMXeRN_uOqzp4u8NPaTlA,9282
6
6
  voly/core/__init__.py,sha256=bu6fS2I1Pj9fPPnl-zY3L7NqrZSY5Zy6NY2uMUvdhKs,183
7
7
  voly/core/charts.py,sha256=6MSU0z01fPOVSssodxdnFqchzDfupSmXq_e71WwDmVQ,12635
8
8
  voly/core/data.py,sha256=A0zrIjg-pf3mG28UR313Bc57h74G5smWCVBB7vysM_4,13527
9
- voly/core/fit.py,sha256=V8nqerD6yYZdlYhCb77BRuQkfRNirWnBTlwQbis3-1Q,13922
9
+ voly/core/fit.py,sha256=G5ooc47QxAcoVWunU8990TLH3gOigkDA5vSRtPG-mXA,14010
10
10
  voly/core/hd.py,sha256=dSv197RmSWFWbRRdoBzMrD_poT7ZiJ8hdD_wKE-Li_M,13559
11
11
  voly/core/interpolate.py,sha256=GAkrqaar7A0D6UMipXQUp4vSHRfb44TmCG5Xiv9elXg,5176
12
12
  voly/core/rnd.py,sha256=wiZ5OIjPDf1Th5_sQ9CZG5JgAo3EL8f63T_Rj1_VP-0,13214
13
13
  voly/utils/__init__.py,sha256=E05mWatyC-PDOsCxQV1p5Xi1IgpOomxrNURyCx_gB-w,200
14
14
  voly/utils/density.py,sha256=ONpRli-IaJDgOZ2sb27HHFc9_tkkGSATKl94JODd86A,5879
15
15
  voly/utils/logger.py,sha256=4-_2bVJmq17Q0d7Rd2mPg1AeR8gxv6EPvcmBDMFWcSM,1744
16
- voly-0.0.252.dist-info/licenses/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
17
- voly-0.0.252.dist-info/METADATA,sha256=49pnbevUpWbZMX6IIOsbQPxLByQAgpGWkqyM34axvB8,4115
18
- voly-0.0.252.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
19
- voly-0.0.252.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
20
- voly-0.0.252.dist-info/RECORD,,
16
+ voly-0.0.254.dist-info/licenses/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
17
+ voly-0.0.254.dist-info/METADATA,sha256=h0wNHKBuhqIGEO7QLDghOY-Y7XczcYj9b_Yx2lT1XNM,4115
18
+ voly-0.0.254.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
19
+ voly-0.0.254.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
20
+ voly-0.0.254.dist-info/RECORD,,
File without changes