Coverage for rivapy / pricing / __init__.py: 62%
24 statements
« prev ^ index » next coverage.py v7.12.0, created at 2025-11-27 14:36 +0000
« prev ^ index » next coverage.py v7.12.0, created at 2025-11-27 14:36 +0000
1# from pyvacon.pricing import *
2# del price
4# __all__ = ['pricer', 'pricing_data', 'pricing_request']
5from rivapy.pricing.bond_pricing import *
6from rivapy import _pyvacon_available
8# if _pyvacon_available:
9# from rivapy.pricing.pricing_data import CDSPricingData
10# from rivapy.pricing.pricing_data import Black76PricingData, ResultType, AmericanPdePricingData
12# from rivapy.tools.factory import _factory
13from rivapy.pricing.factory import _factory
14from rivapy.pricing.deposit_pricing import DepositPricer
15from rivapy.pricing.fra_pricing import ForwardRateAgreementPricer
16from rivapy.pricing.interest_rate_swap_pricing import InterestRateSwapPricer
19if _pyvacon_available:
20 # from pyvacon.finance.pricing import *
21 from pyvacon.finance.pricing import BasePricer
23 def price(pr_data):
24 if hasattr(pr_data, "price"):
25 return pr_data.price()
26 else:
27 return BasePricer.price(pr_data)
29else:
31 def price(pr_data):
32 if hasattr(pr_data, "price"):
33 return pr_data.price()
34 raise Exception("Pricing of " + type(pr_data).__name__ + " not possible without pyvacon.")
37def _add_to_factory(cls):
38 factory_entries = _factory()
39 factory_entries[cls.__name__] = cls
42_add_to_factory(DepositPricer)
43_add_to_factory(ForwardRateAgreementPricer)
44_add_to_factory(InterestRateSwapPricer)
46if __name__ == "__main__":
47 pass