voly 0.0.247__py3-none-any.whl → 0.0.249__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/data.py CHANGED
@@ -324,7 +324,7 @@ def process_option_chain(df: pd.DataFrame, currency: str) -> pd.DataFrame:
324
324
  df['volume'] = df['volume'] * s
325
325
 
326
326
  df = df[['currency', 'spot_price',
327
- 'timestamp', 'instrument', 'maturity', 'strikes', 'flag', 'expiry',
327
+ 'timestamp', 'instrument', 'maturity', 'strikes', 'flag', 'expiry', 't',
328
328
  'mark_iv', 'bid_iv', 'ask_iv', 'mark_price', 'bid_price', 'ask_price', 'bid_amount', 'ask_amount', 'bid_depth', 'ask_depth',
329
329
  'bs', 'delta', 'gamma', 'vega', 'theta', 'rho',
330
330
  'interest_rate', 'open_interest', 'volume']]
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.247
3
+ Version: 0.0.249
4
4
  Summary: Options & volatility research package
5
5
  Author-email: Manu de Cara <manu.de.cara@gmail.com>
6
6
  License: MIT
@@ -5,16 +5,16 @@ 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
- voly/core/data.py,sha256=9yf4yfZ_JIE0Mx08j3HdEyXHihhud_gs9YIFiRaaWXA,13522
9
- voly/core/fit.py,sha256=R3aDgCjvZ30PujoE9pgnGQXPQOTTMbk7_-RQ0ZMx5ig,13918
8
+ voly/core/data.py,sha256=A0zrIjg-pf3mG28UR313Bc57h74G5smWCVBB7vysM_4,13527
9
+ voly/core/fit.py,sha256=vO2wDFEk37ap8a_K0qYmk60WiUne-5AKdqHR7l0DmRc,14006
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.247.dist-info/licenses/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
17
- voly-0.0.247.dist-info/METADATA,sha256=Ixpj8jlzE9vorXaR2mIaP4yWhiVvhDbd8xs13vV5PNs,4115
18
- voly-0.0.247.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
19
- voly-0.0.247.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
20
- voly-0.0.247.dist-info/RECORD,,
16
+ voly-0.0.249.dist-info/licenses/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
17
+ voly-0.0.249.dist-info/METADATA,sha256=esMpD7hJhhOij31lp-x1K78oZ0QEenrEXYx0tDirTok,4115
18
+ voly-0.0.249.dist-info/WHEEL,sha256=ck4Vq1_RXyvS4Jt6SI0Vz6fyVs4GWg7AINwpsaGEgPE,91
19
+ voly-0.0.249.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
20
+ voly-0.0.249.dist-info/RECORD,,
File without changes