| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
QuantLib.Instrument.Swap
Synopsis
- type Swaption = GenOption CSwaption
- type Swap = GenSwap CSwap
- type VanillaSwap = GenSwap CVanillaSwap
- type AssetSwap = GenSwap CAssetSwap
- type OvernightIndexedSwap = GenSwap COvernightIndexedSwap
- type BMASwap = GenSwap CBMASwap
- asSwap :: GenSwap a -> IO Swap
- impliedVolatility :: Swaption -> Double -> GenYieldTermStructure y -> Double -> Double -> Word -> Double -> Double -> IO Double
- data SwapType
- swap' :: [(Leg, Bool)] -> IO Swap
- swap :: GenLeg a -> GenLeg a -> IO Swap
- bmaSwap :: SwapType -> Double -> Schedule -> Double -> Double -> GenIborIndex a -> DayCounter -> Schedule -> BMAIndex -> DayCounter -> IO BMASwap
- vanillaSwap :: SwapType -> Double -> Schedule -> Double -> DayCounter -> Schedule -> GenIborIndex a -> Double -> DayCounter -> BusinessDayConvention -> IO VanillaSwap
- endDiscounts :: GenSwap a -> Word -> IO Double
- leg :: GenSwap a -> Word -> IO Leg
- legBPS :: GenSwap a -> Word -> IO Double
- legNPV :: GenSwap a -> Word -> IO Double
- maturityDate :: GenSwap a -> IO (Maybe Day)
- npvDateDiscount :: GenSwap a -> IO Double
- startDate :: GenSwap a -> IO (Maybe Day)
- startDiscounts :: GenSwap a -> Word -> IO Double
- bmaLeg :: BMASwap -> IO Leg
- bmaLegBPS :: BMASwap -> IO Double
- bmaLegNPV :: BMASwap -> IO Double
- fairLiborFraction :: BMASwap -> IO Double
- fairLiborSpread :: BMASwap -> IO Double
- liborFraction :: BMASwap -> IO Double
- liborLeg :: BMASwap -> IO Leg
- liborLegBPS :: BMASwap -> IO Double
- liborLegNPV :: BMASwap -> IO Double
- swaption :: VanillaSwap -> Exercise -> SettlementType -> IO Swaption
- assetSwap :: Bool -> Bond -> Double -> GenIborIndex a -> Double -> Schedule -> DayCounter -> Bool -> IO AssetSwap
- bondLeg :: AssetSwap -> IO Leg
- cleanPrice :: AssetSwap -> IO Double
- fairCleanPrice :: AssetSwap -> IO Double
- fairNonParRepayment :: AssetSwap -> IO Double
- nonParRepayment :: AssetSwap -> IO Double
- parSwap :: AssetSwap -> IO Bool
- payBondCoupon :: AssetSwap -> IO Bool
- overnightIndexedSwap :: SwapType -> Double -> Schedule -> Double -> DayCounter -> OvernightIborIndex -> Double -> IO OvernightIndexedSwap
- overnightIndexedSwap' :: SwapType -> [Double] -> Schedule -> Double -> DayCounter -> OvernightIborIndex -> Double -> IO OvernightIndexedSwap
- overnightLeg :: OvernightIndexedSwap -> IO Leg
- overnightLegBPS :: OvernightIndexedSwap -> IO Double
- overnightLegNPV :: OvernightIndexedSwap -> IO Double
- class HasFixedLeg a where
- class HasFloatingLeg a where
- floatingLeg :: a -> IO Leg
- floatingLegBPS :: a -> IO Double
- floatingLegNPV :: a -> IO Double
- class HasSpread a where
- fairSpread :: a -> IO Double
Documentation
type VanillaSwap = GenSwap CVanillaSwap #
type OvernightIndexedSwap = GenSwap COvernightIndexedSwap #
Arguments
| :: Swaption | |
| -> Double | price |
| -> GenYieldTermStructure y | |
| -> Double | guess |
| -> Double | accuracy |
| -> Word | maxEvaluations |
| -> Double | minVol |
| -> Double | maxVol |
| -> IO Double |
implied volatility
Instances
| Enum SwapType # | |
Defined in QuantLib.Instrument.Swap | |
| Show SwapType # | |
| Eq SwapType # | |
swap :: GenLeg a -> GenLeg a -> IO Swap #
The cash flows belonging to the first leg are paid; the ones belonging to the second leg are received.
Arguments
| :: SwapType | |
| -> Double | nominal |
| -> Schedule | liborSchedule |
| -> Double | liborFraction |
| -> Double | liborSpread |
| -> GenIborIndex a | |
| -> DayCounter | liborDayCount |
| -> Schedule | bmaSchedule |
| -> BMAIndex | |
| -> DayCounter | bmaDayCount |
| -> IO BMASwap |
Arguments
| :: SwapType | |
| -> Double | nominal |
| -> Schedule | fixedSchedule |
| -> Double | fixedRate |
| -> DayCounter | fixedDayCount |
| -> Schedule | floatSchedule |
| -> GenIborIndex a | |
| -> Double | spread |
| -> DayCounter | floatingDayCount |
| -> BusinessDayConvention | paymentConvention |
| -> IO VanillaSwap |
endDiscounts :: GenSwap a -> Word -> IO Double #
maturityDate :: GenSwap a -> IO (Maybe Day) #
npvDateDiscount :: GenSwap a -> IO Double #
startDiscounts :: GenSwap a -> Word -> IO Double #
fairLiborFraction :: BMASwap -> IO Double #
fairLiborSpread :: BMASwap -> IO Double #
liborFraction :: BMASwap -> IO Double #
liborLegBPS :: BMASwap -> IO Double #
liborLegNPV :: BMASwap -> IO Double #
swaption :: VanillaSwap -> Exercise -> SettlementType -> IO Swaption #
Arguments
| :: Bool | payBondCoupon |
| -> Bond | |
| -> Double | bondCleanPrice |
| -> GenIborIndex a | |
| -> Double | |
| -> Schedule | floatSchedule |
| -> DayCounter | floatingDayCount |
| -> Bool | parAssetSwap |
| -> IO AssetSwap |
cleanPrice :: AssetSwap -> IO Double #
fairCleanPrice :: AssetSwap -> IO Double #
fairNonParRepayment :: AssetSwap -> IO Double #
nonParRepayment :: AssetSwap -> IO Double #
payBondCoupon :: AssetSwap -> IO Bool #
Arguments
| :: SwapType | |
| -> Double | nominal |
| -> Schedule | |
| -> Double | fixedRate |
| -> DayCounter | fixedDC |
| -> OvernightIborIndex | |
| -> Double | spread |
| -> IO OvernightIndexedSwap |
Arguments
| :: SwapType | |
| -> [Double] | nominals |
| -> Schedule | schedule |
| -> Double | fixedRate |
| -> DayCounter | fixedDC |
| -> OvernightIborIndex | |
| -> Double | spread |
| -> IO OvernightIndexedSwap |
overnightLeg :: OvernightIndexedSwap -> IO Leg #
class HasFixedLeg a where #
Instances
| HasFixedLeg OvernightIndexedSwap # | |
Defined in QuantLib.Instrument.Swap Methods fairRate :: OvernightIndexedSwap -> IO Double # fixedLeg :: OvernightIndexedSwap -> IO Leg # fixedLegBPS :: OvernightIndexedSwap -> IO Double # fixedLegNPV :: OvernightIndexedSwap -> IO Double # | |
| HasFixedLeg VanillaSwap # | |
Defined in QuantLib.Instrument.Swap Methods fairRate :: VanillaSwap -> IO Double # fixedLeg :: VanillaSwap -> IO Leg # fixedLegBPS :: VanillaSwap -> IO Double # fixedLegNPV :: VanillaSwap -> IO Double # | |
class HasFloatingLeg a where #
Methods
floatingLeg :: a -> IO Leg #
floatingLegBPS :: a -> IO Double #
floatingLegNPV :: a -> IO Double #
Instances
| HasFloatingLeg AssetSwap # | |
Defined in QuantLib.Instrument.Swap Methods floatingLeg :: AssetSwap -> IO Leg # floatingLegBPS :: AssetSwap -> IO Double # floatingLegNPV :: AssetSwap -> IO Double # | |
| HasFloatingLeg VanillaSwap # | |
Defined in QuantLib.Instrument.Swap Methods floatingLeg :: VanillaSwap -> IO Leg # floatingLegBPS :: VanillaSwap -> IO Double # floatingLegNPV :: VanillaSwap -> IO Double # | |
Methods
fairSpread :: a -> IO Double #
Instances
| HasSpread AssetSwap # | |
Defined in QuantLib.Instrument.Swap Methods fairSpread :: AssetSwap -> IO Double # | |
| HasSpread CreditDefaultSwap # | |
Defined in QuantLib.Instrument.Swap Methods fairSpread :: CreditDefaultSwap -> IO Double # | |
| HasSpread OvernightIndexedSwap # | |
Defined in QuantLib.Instrument.Swap Methods fairSpread :: OvernightIndexedSwap -> IO Double # | |
| HasSpread VanillaSwap # | |
Defined in QuantLib.Instrument.Swap Methods fairSpread :: VanillaSwap -> IO Double # | |