quantflow 0.4.1__tar.gz → 0.4.3__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.
Files changed (55) hide show
  1. {quantflow-0.4.1 → quantflow-0.4.3}/PKG-INFO +5 -4
  2. {quantflow-0.4.1 → quantflow-0.4.3}/pyproject.toml +3 -2
  3. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/__init__.py +1 -1
  4. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/fiscal_data.py +1 -1
  5. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/options/calibration.py +1 -1
  6. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/options/surface.py +3 -2
  7. {quantflow-0.4.1 → quantflow-0.4.3}/LICENSE +0 -0
  8. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/__init__.py +0 -0
  9. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/app.py +0 -0
  10. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/commands/__init__.py +0 -0
  11. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/commands/base.py +0 -0
  12. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/commands/crypto.py +0 -0
  13. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/commands/fred.py +0 -0
  14. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/commands/stocks.py +0 -0
  15. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/commands/vault.py +0 -0
  16. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/script.py +0 -0
  17. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/cli/settings.py +0 -0
  18. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/__init__.py +0 -0
  19. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/deribit.py +0 -0
  20. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/fed.py +0 -0
  21. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/fmp.py +0 -0
  22. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/fred.py +0 -0
  23. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/data/vault.py +0 -0
  24. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/options/__init__.py +0 -0
  25. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/options/bs.py +0 -0
  26. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/options/inputs.py +0 -0
  27. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/options/pricer.py +0 -0
  28. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/py.typed +0 -0
  29. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/__init__.py +0 -0
  30. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/base.py +0 -0
  31. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/bns.py +0 -0
  32. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/cir.py +0 -0
  33. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/copula.py +0 -0
  34. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/dsp.py +0 -0
  35. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/heston.py +0 -0
  36. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/jump_diffusion.py +0 -0
  37. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/ou.py +0 -0
  38. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/poisson.py +0 -0
  39. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/sp/weiner.py +0 -0
  40. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/ta/__init__.py +0 -0
  41. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/ta/base.py +0 -0
  42. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/ta/ohlc.py +0 -0
  43. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/ta/paths.py +0 -0
  44. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/__init__.py +0 -0
  45. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/bins.py +0 -0
  46. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/dates.py +0 -0
  47. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/distributions.py +0 -0
  48. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/functions.py +0 -0
  49. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/interest_rates.py +0 -0
  50. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/marginal.py +0 -0
  51. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/numbers.py +0 -0
  52. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/plot.py +0 -0
  53. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/transforms.py +0 -0
  54. {quantflow-0.4.1 → quantflow-0.4.3}/quantflow/utils/types.py +0 -0
  55. {quantflow-0.4.1 → quantflow-0.4.3}/readme.md +0 -0
@@ -1,16 +1,17 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: quantflow
3
- Version: 0.4.1
3
+ Version: 0.4.3
4
4
  Summary: quantitative analysis
5
- License: BSD-3-Clause
5
+ License-Expression: BSD-3-Clause
6
+ License-File: LICENSE
6
7
  Author: Luca Sbardella
7
8
  Author-email: luca@quantmind.com
8
9
  Requires-Python: >=3.11,<4.0
9
- Classifier: License :: OSI Approved :: BSD License
10
10
  Classifier: Programming Language :: Python :: 3
11
11
  Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Programming Language :: Python :: 3.12
13
13
  Classifier: Programming Language :: Python :: 3.13
14
+ Classifier: Programming Language :: Python :: 3.14
14
15
  Provides-Extra: cli
15
16
  Provides-Extra: data
16
17
  Requires-Dist: aio-fluid[http] (>=1.2.1) ; extra == "data"
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "quantflow"
3
- version = "0.4.1"
3
+ version = "0.4.3"
4
4
  description = "quantitative analysis"
5
5
  authors = [{ name = "Luca Sbardella", email = "luca@quantmind.com" }]
6
6
  license = "BSD-3-Clause"
@@ -42,6 +42,7 @@ ghp-import = "^2.0.2"
42
42
  ruff = "^0.12.2"
43
43
  pytest-asyncio = "^1.0.0"
44
44
  isort = "^6.0.1"
45
+ types-python-dateutil = "^2.9.0.20251115"
45
46
 
46
47
  [tool.poetry.group.book]
47
48
  optional = true
@@ -49,7 +50,7 @@ optional = true
49
50
  [tool.poetry.group.book.dependencies]
50
51
  jupyter-book = "^1.0.0"
51
52
  jupytext = "^1.13.8"
52
- plotly = "^5.20.0"
53
+ plotly = "^6.2.0"
53
54
  jupyterlab = "^4.0.2"
54
55
  sympy = "^1.12"
55
56
  ipywidgets = "^8.0.7"
@@ -1,3 +1,3 @@
1
1
  """Quantitative analysis and pricing"""
2
2
 
3
- __version__ = "0.4.1"
3
+ __version__ = "0.4.3"
@@ -11,7 +11,7 @@ from quantflow.utils.dates import as_date
11
11
  class FiscalData(AioHttpClient):
12
12
  """Fiscal Data API client.
13
13
 
14
- THis class is used to fetch data from the
14
+ This class is used to fetch data from the
15
15
  [fiscal data api](https://fiscaldata.treasury.gov/api-documentation/)
16
16
  """
17
17
 
@@ -196,7 +196,7 @@ class VolModelCalibration(BaseModel, ABC, Generic[M], arbitrary_types_allowed=Tr
196
196
  max_moneyness_ttm=max_moneyness_ttm, support=support
197
197
  )
198
198
  return plot.plot_vol_surface(
199
- pd.DataFrame([d._asdict() for d in options]),
199
+ pd.DataFrame([d.info_dict() for d in options]),
200
200
  model=model.df,
201
201
  **kwargs,
202
202
  )
@@ -260,10 +260,11 @@ class OptionPrice(BaseModel):
260
260
  )
261
261
  return self
262
262
 
263
- def _asdict(self) -> dict[str, Any]:
263
+ def info_dict(self) -> dict[str, Any]:
264
264
  return dict(
265
265
  strike=float(self.strike),
266
266
  forward=float(self.forward),
267
+ maturity=self.maturity,
267
268
  moneyness=self.moneyness,
268
269
  moneyness_ttm=self.moneyness / np.sqrt(self.ttm),
269
270
  ttm=self.ttm,
@@ -595,7 +596,7 @@ class VolSurface(Generic[S]):
595
596
  initial_vol=initial_vol,
596
597
  converged=converged,
597
598
  )
598
- return pd.DataFrame([d._asdict() for d in data])
599
+ return pd.DataFrame([d.info_dict() for d in data])
599
600
 
600
601
  def as_array(
601
602
  self,
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes