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 +1 -1
- voly/core/fit.py +1 -0
- {voly-0.0.252.dist-info → voly-0.0.254.dist-info}/METADATA +1 -1
- {voly-0.0.252.dist-info → voly-0.0.254.dist-info}/RECORD +7 -7
- {voly-0.0.252.dist-info → voly-0.0.254.dist-info}/WHEEL +0 -0
- {voly-0.0.252.dist-info → voly-0.0.254.dist-info}/licenses/LICENSE +0 -0
- {voly-0.0.252.dist-info → voly-0.0.254.dist-info}/top_level.txt +0 -0
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,20 +1,20 @@
|
|
1
1
|
voly/__init__.py,sha256=8xyDk7rFCn_MOD5hxuv5cxxKZvBVRiSIM7TgaMPpwpw,211
|
2
|
-
voly/client.py,sha256=
|
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=
|
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.
|
17
|
-
voly-0.0.
|
18
|
-
voly-0.0.
|
19
|
-
voly-0.0.
|
20
|
-
voly-0.0.
|
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
|
File without changes
|
File without changes
|