def test_swaption_build_asset_query_usd(): defautls = _swaption_build_asset_query(CurrencyEnum.USD) assert defautls["asset_parameters_floating_rate_option"] == "USD-LIBOR-BBA" assert defautls["asset_parameters_clearing_house"] == "LCH" assert defautls["asset_parameters_termination_date"] == "5y" assert defautls["asset_parameters_expiration_date"] == "1y" assert defautls["asset_parameters_effective_date"] == "0b" assert defautls["asset_parameters_strike"] == "ATM"
def test_swaption_build_asset_query_custom(): defautls = _swaption_build_asset_query(CurrencyEnum.USD, "LIBOR", "12y", "66y", "12m", "ATM+50", "120y", "ABC") assert defautls["asset_parameters_floating_rate_option"] == "USD-LIBOR-BBA" assert defautls["asset_parameters_floating_rate_designated_maturity"] == "12m" assert defautls["asset_parameters_clearing_house"] == "ABC" assert defautls["asset_parameters_termination_date"] == "120y" assert defautls["asset_parameters_expiration_date"] == "66y" assert defautls["asset_parameters_effective_date"] == "12y" assert defautls["asset_parameters_strike"] == "ATM+50"
def test_swaption_build_asset_query_strike_reference(): defautls = _swaption_build_asset_query(CurrencyEnum.USD, None, None, None, None, "ATM+50") assert defautls["asset_parameters_floating_rate_option"] == "USD-LIBOR-BBA" assert defautls["asset_parameters_clearing_house"] == "LCH" assert defautls["asset_parameters_floating_rate_designated_maturity"] == "3m" assert defautls["asset_parameters_termination_date"] == "5y" assert defautls["asset_parameters_expiration_date"] == "1y" assert defautls["asset_parameters_effective_date"] == "0b" assert defautls["asset_parameters_strike"] == "ATM+50"
def test_swaption_build_asset_query_custom_throws(): with pytest.raises(MqValueError): _swaption_build_asset_query(CurrencyEnum.USD, "NIBOR", "12y", "66y", "12m", "ATM+50", "120y", "ABC")
def test_swaption_build_asset_query_throws_on_invalid_tenor(): with pytest.raises(MqValueError): _swaption_build_asset_query(CurrencyEnum.USD, expiration_tenor="Abc")