-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | quantitative finance library
--
-- General purpose quantitative finance library
@package HQu
@version 0.0.0.3
-- | General purpose quantitative finance library
module HQu
someFunc :: IO ()
module Q.Currency
-- | Currency specification
data Currency
Currency :: String -> String -> Integer -> Integer -> Currency
-- | currency name, e.g. "U.S. dollar"
[cName] :: Currency -> String
-- | ISO 4217 three-letter code, e.g. USD
[cCode] :: Currency -> String
-- | ISO 4217 numeric code, e.g. 840
[cIsoCode] :: Currency -> Integer
-- | number of fractionary parts in a unit
[cFracsPerUnit] :: Currency -> Integer
instance GHC.Classes.Eq Q.Currency.Currency
instance GHC.Show.Show Q.Currency.Currency
module Q.Currencies.Europe
-- | Swiss france
chf :: Currency
-- | European Euro
eur :: Currency
-- | British pound sterling
gbp :: Currency
module Q.Currencies.Asia
-- | Syrian Pounds
syp :: Currency
module Q.Currencies.America
-- | Canadian dollar
cad :: Currency
-- | U.S. dollar
usd :: Currency
module Q.Plotting
colorPairs :: [(Text, Text)]
module Q.Stats.TimeSeries
data DataPoint a b
DataPoint :: a -> b -> DataPoint a b
-- | Time
[dpT] :: DataPoint a b -> a
-- | Value
[dpV] :: DataPoint a b -> b
parseDateTime :: String -> Maybe LocalTime
localTimeFormat' :: Format LocalTime
dayFormat' :: Format Day
parseTime :: String -> Maybe LocalTime
parseDay :: String -> Maybe LocalTime
dayToString :: Day -> Text
dateToString :: LocalTime -> String
read :: forall a. FromNamedRecord a => FilePath -> IO [a]
valuesOnly :: [DataPoint a b] -> [b]
toPair :: DataPoint a b -> (a, b)
instance (GHC.Classes.Ord a, GHC.Classes.Ord b) => GHC.Classes.Ord (Q.Stats.TimeSeries.DataPoint a b)
instance (GHC.Classes.Eq a, GHC.Classes.Eq b) => GHC.Classes.Eq (Q.Stats.TimeSeries.DataPoint a b)
instance (GHC.Show.Show a, GHC.Show.Show b) => GHC.Show.Show (Q.Stats.TimeSeries.DataPoint a b)
instance GHC.Generics.Generic (Q.Stats.TimeSeries.DataPoint a b)
instance Data.Csv.Conversion.FromNamedRecord (Q.Stats.TimeSeries.DataPoint Data.Time.LocalTime.Internal.LocalTime.LocalTime GHC.Types.Double)
instance Data.Csv.Conversion.FromNamedRecord (Q.Stats.TimeSeries.DataPoint GHC.Types.Double GHC.Types.Double)
module Q.Stats.Arima
data Ewma d
Ewma :: Double -> d -> Ewma d
ll :: (PDF d Double, Traversable t) => Ewma (d Double) -> t (DataPoint LocalTime Double) -> StateT Double Identity (t Double)
forecast :: forall d. Distribution d Double => Ewma (d Double) -> StateT Double RVar Double
forecastN :: (MonadRandom m, Distribution d Double) => Ewma (d Double) -> Double -> Int -> m ([Double], Double)
module Q.Stochastic.Process
rwalkState :: RVarT (State Double) Double
type Time = Double
-- | Discretization of stochastic process over given interval
class (Num b) => Discretize d b
-- | Discretization of the drift process.
dDrift :: (Discretize d b, StochasticProcess a b) => a -> d -> (Time, b) -> RVar b
-- | Discretization of the diffusion process.
dDiff :: (Discretize d b, StochasticProcess a b) => a -> d -> (Time, b) -> RVar b
-- | dt used.
dDt :: (Discretize d b, StochasticProcess a b) => a -> d -> (Time, b) -> Time
-- | A stochastic process of the form <math>
class (Num b) => StochasticProcess a b
-- | The process drift.
pDrift :: StochasticProcess a b => a -> (Time, b) -> RVar b
-- | The process diffusion.
pDiff :: StochasticProcess a b => a -> (Time, b) -> RVar b
-- | Evolve a process from a given state to a given time.
pEvolve :: (StochasticProcess a b, Discretize d b) => a -> d -> (Time, b) -> Time -> RVar b -> RVar b
-- | Similar to evolve, but evolves the process with the discretization
-- scheme <math>.
pEvolve' :: (StochasticProcess a b, Discretize d b, Num b) => a -> d -> (Time, b) -> RVar b -> RVar (Time, b)
-- | Geometric Brownian motion
data GeometricBrownian
GeometricBrownian :: Double -> Double -> GeometricBrownian
-- | Drift
[gbDrift] :: GeometricBrownian -> Double
-- | Vol
[gbDiff] :: GeometricBrownian -> Double
-- | Ito process
data ItoProcess
ItoProcess :: ((Time, Double) -> Double) -> ((Time, Double) -> Double) -> ItoProcess
[ipDrift] :: ItoProcess -> (Time, Double) -> Double
[ipDiff] :: ItoProcess -> (Time, Double) -> Double
instance GHC.Show.Show Q.Stochastic.Process.GeometricBrownian
instance Q.Stochastic.Process.StochasticProcess Q.Stochastic.Process.GeometricBrownian GHC.Types.Double
instance GHC.Num.Num a => GHC.Num.Num (Data.RVar.RVarT m a)
module Q.Stochastic.Discretize
-- | Euler discretization of stochastic processes
newtype Euler
Euler :: Double -> Euler
[eDt] :: Euler -> Double
-- | Euler end-point discretization of stochastic processes
newtype EndEuler
EndEuler :: Double -> EndEuler
[eeDt] :: EndEuler -> Double
instance GHC.Classes.Eq Q.Stochastic.Discretize.Euler
instance GHC.Show.Show Q.Stochastic.Discretize.Euler
instance GHC.Classes.Eq Q.Stochastic.Discretize.EndEuler
instance GHC.Show.Show Q.Stochastic.Discretize.EndEuler
instance (forall a b. Q.Stochastic.Process.StochasticProcess a GHC.Types.Double) => Q.Stochastic.Process.Discretize Q.Stochastic.Discretize.EndEuler GHC.Types.Double
instance Q.Stochastic.Process.Discretize Q.Stochastic.Discretize.Euler GHC.Types.Double
instance Q.Stochastic.Process.Discretize Q.Stochastic.Discretize.Euler (Data.Vector.Storable.Vector GHC.Types.Double)
module Q.Stochastic
module Q.Time.Date
-- | Defines a holidays for given calendar. Corresponds to calendar class
-- in QuantLib
class Calendar m
isHoliday :: Calendar m => m -> (Integer, Int, Int) -> Bool
isWeekend :: Calendar m => m -> Day -> Bool
isBusinessDay :: Calendar m => m -> Day -> Bool
hBusinessDayBetween :: Calendar m => m -> (Day, Day) -> Int
hNextBusinessDay :: Calendar m => m -> Day -> Day
instance GHC.Enum.Enum Q.Time.Date.BusinessDayConvention
instance GHC.Classes.Eq Q.Time.Date.BusinessDayConvention
instance GHC.Show.Show Q.Time.Date.BusinessDayConvention
instance GHC.Generics.Generic Q.Time.Date.BusinessDayConvention
module Q.Time.DayCounter
-- | Day counter type class
class DayCounter m
dcName :: DayCounter m => m -> String
dcCount :: DayCounter m => m -> Day -> Day -> Int
dcYearFraction :: DayCounter m => m -> Day -> Day -> Double
-- | Thirty day counters as in QuantLib
data Thirty360
ThirtyUSA :: Thirty360
ThirtyEuropean :: Thirty360
ThirtyItalian :: Thirty360
instance GHC.Read.Read Q.Time.DayCounter.Thirty360
instance GHC.Show.Show Q.Time.DayCounter.Thirty360
instance GHC.Classes.Eq Q.Time.DayCounter.Thirty360
instance GHC.Generics.Generic Q.Time.DayCounter.Thirty360
instance Q.Time.DayCounter.DayCounter Q.Time.DayCounter.Thirty360
module Q.Time
-- | Converts a shortned ISO08601 date to a Day
parseDay :: String -> Maybe Day
-- | Converts a shortened ISO08601 date string, or datetime to a
-- LocalTime. If the string doesn't contain time then
-- midnight is used.
parseLocalTime :: String -> Maybe LocalTime
instance Data.Csv.Conversion.ToField Data.Time.Calendar.Days.Day
instance Data.Csv.Conversion.FromField Data.Time.Calendar.Days.Day
module Q.Types
-- | Single-observable container.
data Observables1
Observables1 :: {-# UNPACK #-} !Double -> Observables1
-- | Two observable container.
data Observables2
Observables2 :: {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> Observables2
-- | Three observable container.
data Observables3
Observables3 :: {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> Observables3
-- | Four observable container.
data Observables4
Observables4 :: {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> Observables4
-- | Five observable container.
data Observables5
Observables5 :: {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> {-# UNPACK #-} !Double -> Observables5
-- | Type for Put or Calls
data OptionType
Put :: OptionType
Call :: OptionType
newtype Cash
Cash :: Double -> Cash
newtype Spot
Spot :: Double -> Spot
class Obs1 a
get1 :: Obs1 a => a -> Double
class (Obs1 a) => Obs2 a
get2 :: Obs2 a => a -> Double
class (Obs2 a) => Obs3 a
get3 :: Obs3 a => a -> Double
class (Obs3 a) => Obs4 a
get4 :: Obs4 a => a -> Double
class (Obs4 a) => Obs5 a
get5 :: Obs5 a => a -> Double
newtype Strike
Strike :: Double -> Strike
newtype Forward
Forward :: Double -> Forward
newtype Premium
Premium :: Double -> Premium
newtype Delta
Delta :: Double -> Delta
newtype Vega
Vega :: Double -> Vega
newtype Gamma
Gamma :: Double -> Gamma
newtype Expiry
Expiry :: Day -> Expiry
newtype YearFrac
YearFrac :: Double -> YearFrac
[unYearFrac] :: YearFrac -> Double
newtype Rate
Rate :: Double -> Rate
newtype DF
DF :: Double -> DF
newtype Vol
Vol :: Double -> Vol
-- | (w(S_0, K, T) = sigma_{BS}(S_0, K, T)T )
newtype TotalVar
TotalVar :: Double -> TotalVar
-- | Represents concepts that scale as a function of time such as
-- Vol
class TimeScaleable a
scale :: TimeScaleable a => YearFrac -> a -> a
cpi :: Num p => OptionType -> p
discountFactor :: YearFrac -> Rate -> DF
discount :: DF -> Double -> Double
undiscount :: DF -> Double -> Double
rateFromDiscount :: YearFrac -> DF -> Rate
totalVarToVol :: TotalVar -> YearFrac -> Vol
volToTotalVar :: Vol -> YearFrac -> TotalVar
($*$) :: (Coercible a Double, Coercible b Double) => a -> b -> a
($/$) :: (Coercible a Double, Coercible b Double) => a -> b -> a
($+$) :: (Coercible a Double, Coercible b Double) => a -> b -> a
instance GHC.Enum.Bounded Q.Types.OptionType
instance GHC.Read.Read Q.Types.OptionType
instance GHC.Show.Show Q.Types.OptionType
instance GHC.Classes.Eq Q.Types.OptionType
instance GHC.Generics.Generic Q.Types.OptionType
instance Foreign.Storable.Storable Q.Types.Cash
instance GHC.Float.Floating Q.Types.Cash
instance GHC.Float.RealFloat Q.Types.Cash
instance GHC.Real.RealFrac Q.Types.Cash
instance GHC.Real.Real Q.Types.Cash
instance GHC.Real.Fractional Q.Types.Cash
instance GHC.Num.Num Q.Types.Cash
instance GHC.Classes.Ord Q.Types.Cash
instance GHC.Read.Read Q.Types.Cash
instance GHC.Show.Show Q.Types.Cash
instance GHC.Classes.Eq Q.Types.Cash
instance GHC.Generics.Generic Q.Types.Cash
instance Foreign.Storable.Storable Q.Types.Spot
instance GHC.Float.Floating Q.Types.Spot
instance GHC.Float.RealFloat Q.Types.Spot
instance GHC.Real.RealFrac Q.Types.Spot
instance GHC.Real.Real Q.Types.Spot
instance GHC.Real.Fractional Q.Types.Spot
instance GHC.Num.Num Q.Types.Spot
instance GHC.Classes.Ord Q.Types.Spot
instance GHC.Read.Read Q.Types.Spot
instance GHC.Show.Show Q.Types.Spot
instance GHC.Classes.Eq Q.Types.Spot
instance GHC.Generics.Generic Q.Types.Spot
instance Foreign.Storable.Storable Q.Types.Forward
instance GHC.Float.Floating Q.Types.Forward
instance GHC.Float.RealFloat Q.Types.Forward
instance GHC.Real.RealFrac Q.Types.Forward
instance GHC.Real.Real Q.Types.Forward
instance GHC.Real.Fractional Q.Types.Forward
instance GHC.Num.Num Q.Types.Forward
instance GHC.Classes.Ord Q.Types.Forward
instance GHC.Read.Read Q.Types.Forward
instance GHC.Show.Show Q.Types.Forward
instance GHC.Classes.Eq Q.Types.Forward
instance GHC.Generics.Generic Q.Types.Forward
instance Foreign.Storable.Storable Q.Types.Strike
instance GHC.Float.Floating Q.Types.Strike
instance GHC.Float.RealFloat Q.Types.Strike
instance GHC.Real.RealFrac Q.Types.Strike
instance GHC.Real.Real Q.Types.Strike
instance GHC.Real.Fractional Q.Types.Strike
instance GHC.Num.Num Q.Types.Strike
instance GHC.Classes.Ord Q.Types.Strike
instance GHC.Read.Read Q.Types.Strike
instance GHC.Show.Show Q.Types.Strike
instance GHC.Classes.Eq Q.Types.Strike
instance GHC.Generics.Generic Q.Types.Strike
instance GHC.Classes.Ord Q.Types.Expiry
instance GHC.Read.Read Q.Types.Expiry
instance GHC.Show.Show Q.Types.Expiry
instance GHC.Classes.Eq Q.Types.Expiry
instance GHC.Generics.Generic Q.Types.Expiry
instance Foreign.Storable.Storable Q.Types.Premium
instance GHC.Float.Floating Q.Types.Premium
instance GHC.Float.RealFloat Q.Types.Premium
instance GHC.Real.RealFrac Q.Types.Premium
instance GHC.Real.Real Q.Types.Premium
instance GHC.Real.Fractional Q.Types.Premium
instance GHC.Num.Num Q.Types.Premium
instance GHC.Classes.Ord Q.Types.Premium
instance GHC.Read.Read Q.Types.Premium
instance GHC.Show.Show Q.Types.Premium
instance GHC.Classes.Eq Q.Types.Premium
instance GHC.Generics.Generic Q.Types.Premium
instance Foreign.Storable.Storable Q.Types.Delta
instance GHC.Float.Floating Q.Types.Delta
instance GHC.Float.RealFloat Q.Types.Delta
instance GHC.Real.RealFrac Q.Types.Delta
instance GHC.Real.Real Q.Types.Delta
instance GHC.Real.Fractional Q.Types.Delta
instance GHC.Num.Num Q.Types.Delta
instance GHC.Classes.Ord Q.Types.Delta
instance GHC.Read.Read Q.Types.Delta
instance GHC.Show.Show Q.Types.Delta
instance GHC.Classes.Eq Q.Types.Delta
instance GHC.Generics.Generic Q.Types.Delta
instance Foreign.Storable.Storable Q.Types.Vega
instance GHC.Float.Floating Q.Types.Vega
instance GHC.Float.RealFloat Q.Types.Vega
instance GHC.Real.RealFrac Q.Types.Vega
instance GHC.Real.Real Q.Types.Vega
instance GHC.Real.Fractional Q.Types.Vega
instance GHC.Num.Num Q.Types.Vega
instance GHC.Classes.Ord Q.Types.Vega
instance GHC.Read.Read Q.Types.Vega
instance GHC.Show.Show Q.Types.Vega
instance GHC.Classes.Eq Q.Types.Vega
instance GHC.Generics.Generic Q.Types.Vega
instance Foreign.Storable.Storable Q.Types.Gamma
instance GHC.Float.Floating Q.Types.Gamma
instance GHC.Float.RealFloat Q.Types.Gamma
instance GHC.Real.RealFrac Q.Types.Gamma
instance GHC.Real.Real Q.Types.Gamma
instance GHC.Real.Fractional Q.Types.Gamma
instance GHC.Num.Num Q.Types.Gamma
instance GHC.Classes.Ord Q.Types.Gamma
instance GHC.Read.Read Q.Types.Gamma
instance GHC.Show.Show Q.Types.Gamma
instance GHC.Classes.Eq Q.Types.Gamma
instance GHC.Generics.Generic Q.Types.Gamma
instance Foreign.Storable.Storable Q.Types.YearFrac
instance GHC.Float.Floating Q.Types.YearFrac
instance GHC.Float.RealFloat Q.Types.YearFrac
instance GHC.Real.RealFrac Q.Types.YearFrac
instance GHC.Real.Real Q.Types.YearFrac
instance GHC.Real.Fractional Q.Types.YearFrac
instance GHC.Num.Num Q.Types.YearFrac
instance GHC.Classes.Ord Q.Types.YearFrac
instance GHC.Read.Read Q.Types.YearFrac
instance GHC.Show.Show Q.Types.YearFrac
instance GHC.Classes.Eq Q.Types.YearFrac
instance GHC.Generics.Generic Q.Types.YearFrac
instance Foreign.Storable.Storable Q.Types.Rate
instance GHC.Float.Floating Q.Types.Rate
instance GHC.Float.RealFloat Q.Types.Rate
instance GHC.Real.RealFrac Q.Types.Rate
instance GHC.Real.Real Q.Types.Rate
instance GHC.Real.Fractional Q.Types.Rate
instance GHC.Num.Num Q.Types.Rate
instance GHC.Classes.Ord Q.Types.Rate
instance GHC.Read.Read Q.Types.Rate
instance GHC.Show.Show Q.Types.Rate
instance GHC.Classes.Eq Q.Types.Rate
instance GHC.Generics.Generic Q.Types.Rate
instance Foreign.Storable.Storable Q.Types.DF
instance GHC.Float.Floating Q.Types.DF
instance GHC.Float.RealFloat Q.Types.DF
instance GHC.Real.RealFrac Q.Types.DF
instance GHC.Real.Real Q.Types.DF
instance GHC.Real.Fractional Q.Types.DF
instance GHC.Num.Num Q.Types.DF
instance GHC.Classes.Ord Q.Types.DF
instance GHC.Read.Read Q.Types.DF
instance GHC.Show.Show Q.Types.DF
instance GHC.Classes.Eq Q.Types.DF
instance GHC.Generics.Generic Q.Types.DF
instance Foreign.Storable.Storable Q.Types.Vol
instance GHC.Float.Floating Q.Types.Vol
instance GHC.Float.RealFloat Q.Types.Vol
instance GHC.Real.RealFrac Q.Types.Vol
instance GHC.Real.Real Q.Types.Vol
instance GHC.Real.Fractional Q.Types.Vol
instance GHC.Num.Num Q.Types.Vol
instance GHC.Classes.Ord Q.Types.Vol
instance GHC.Read.Read Q.Types.Vol
instance GHC.Show.Show Q.Types.Vol
instance GHC.Classes.Eq Q.Types.Vol
instance GHC.Generics.Generic Q.Types.Vol
instance Foreign.Storable.Storable Q.Types.TotalVar
instance GHC.Float.Floating Q.Types.TotalVar
instance GHC.Float.RealFloat Q.Types.TotalVar
instance GHC.Real.RealFrac Q.Types.TotalVar
instance GHC.Real.Real Q.Types.TotalVar
instance GHC.Real.Fractional Q.Types.TotalVar
instance GHC.Num.Num Q.Types.TotalVar
instance GHC.Classes.Ord Q.Types.TotalVar
instance GHC.Read.Read Q.Types.TotalVar
instance GHC.Show.Show Q.Types.TotalVar
instance GHC.Classes.Eq Q.Types.TotalVar
instance GHC.Generics.Generic Q.Types.TotalVar
instance Q.Types.Obs5 Q.Types.Observables5
instance Q.Types.Obs4 Q.Types.Observables4
instance Q.Types.Obs4 Q.Types.Observables5
instance Q.Types.Obs3 Q.Types.Observables3
instance Q.Types.Obs3 Q.Types.Observables4
instance Q.Types.Obs3 Q.Types.Observables5
instance Q.Types.Obs2 Q.Types.Observables2
instance Q.Types.Obs2 Q.Types.Observables3
instance Q.Types.Obs2 Q.Types.Observables4
instance Q.Types.Obs2 Q.Types.Observables5
instance Q.Types.Obs1 Q.Types.Observables1
instance Q.Types.Obs1 Q.Types.Observables2
instance Q.Types.Obs1 Q.Types.Observables3
instance Q.Types.Obs1 Q.Types.Observables4
instance Q.Types.Obs1 Q.Types.Observables5
instance Q.Types.TimeScaleable GHC.Types.Double
instance Q.Types.TimeScaleable Q.Types.Rate
instance Q.Types.TimeScaleable Q.Types.Vol
instance Data.Csv.Conversion.FromField Q.Types.Vol
instance Data.Csv.Conversion.ToField Q.Types.Vol
instance Data.Csv.Conversion.FromField Q.Types.Rate
instance Data.Csv.Conversion.ToField Q.Types.Rate
instance Data.Csv.Conversion.FromField Q.Types.YearFrac
instance Data.Csv.Conversion.ToField Q.Types.YearFrac
instance Data.Csv.Conversion.FromField Q.Types.Gamma
instance Data.Csv.Conversion.ToField Q.Types.Gamma
instance Data.Csv.Conversion.FromField Q.Types.Vega
instance Data.Csv.Conversion.ToField Q.Types.Vega
instance Data.Csv.Conversion.FromField Q.Types.Delta
instance Data.Csv.Conversion.ToField Q.Types.Delta
instance Data.Csv.Conversion.FromField Q.Types.Premium
instance Data.Csv.Conversion.ToField Q.Types.Premium
instance Data.Csv.Conversion.FromField Q.Types.Expiry
instance Data.Csv.Conversion.ToField Q.Types.Expiry
instance Data.Csv.Conversion.FromField Q.Types.Strike
instance Data.Csv.Conversion.ToField Q.Types.Strike
instance Data.Csv.Conversion.FromField Q.Types.Spot
instance Data.Csv.Conversion.ToField Q.Types.Spot
instance Data.Csv.Conversion.FromField Q.Types.Cash
instance Data.Csv.Conversion.ToField Q.Types.Cash
instance GHC.Enum.Enum Q.Types.OptionType
instance Data.Csv.Conversion.FromField Q.Types.OptionType
instance Data.Csv.Conversion.ToField Q.Types.OptionType
module Q.SortedVector
fromList :: (Storable a, Ord a) => [a] -> SortedVector a
fromVector :: (Storable a, Ord a) => Vector a -> SortedVector a
fromSortedList :: Storable a => [a] -> SortedVector a
newtype SortedVector a
SortedVector :: Vector a -> SortedVector a
minElement :: Storable a => SortedVector a -> a
maxElement :: Storable a => SortedVector a -> a
module Q.Interpolation
class (Ord k, Storable k, Storable v) => Interpolator a k v
interpolate :: Interpolator a k v => a -> [(k, v)] -> k -> v
class (Ord k, Storable k, Storable v) => InterpolatorV a k v
interpolateV :: InterpolatorV a k v => a -> SortedVector k -> Vector v -> k -> v
instance (GHC.Classes.Ord k, Foreign.Storable.Storable k, Foreign.Storable.Storable v, Q.Interpolation.InterpolatorV a k v) => Q.Interpolation.Interpolator a k v
module Q.Payoff
class Payoff a
payoff :: (Payoff a, Obs1 b) => a -> b -> Cash
-- | Path independent payoffs based on a fixed strike.
data StrikedPayoff
-- | Vanilla option payoff <math> for call and <math> for put
PlainVanillaPayoff :: OptionType -> Strike -> StrikedPayoff
PercentagePayoff :: OptionType -> Strike -> StrikedPayoff
AssetOrNothingPayoff :: OptionType -> Strike -> StrikedPayoff
CashOrNothingPayoff :: OptionType -> Strike -> Cash -> StrikedPayoff
instance Q.Payoff.Payoff Q.Payoff.StrikedPayoff
module Q.Options.ImpliedVol.StrikeInterpolation
data StrikeInterpolation
Linear :: StrikeInterpolation
CubicNatural :: StrikeInterpolation
CubicAkima :: StrikeInterpolation
CubicMonotone :: StrikeInterpolation
data StrikeExtrapolation
Constant :: StrikeExtrapolation
ConstantGradient :: StrikeExtrapolation
ConstantCurvature :: StrikeExtrapolation
instance Q.Interpolation.InterpolatorV Q.Options.ImpliedVol.StrikeInterpolation.StrikeInterpolation Q.Types.Strike Q.Types.Vol
module Q.Options
data Valuation
Valuation :: Premium -> Delta -> Vega -> Gamma -> Valuation
[vPremium] :: Valuation -> Premium
[vDelta] :: Valuation -> Delta
[vVega] :: Valuation -> Vega
[vGamma] :: Valuation -> Gamma
-- | intrinsinc value of an option.
intrinsinc :: OptionType -> Forward -> Strike -> DF -> Double
-- | returns True if the undiscounted option premium is greater than the
-- intrinsinc
hasTimeValue :: OptionType -> Forward -> Strike -> Premium -> DF -> Bool
instance GHC.Show.Show Q.Options.Valuation
module Q.Options.Black76
data Black76
Black76 :: Forward -> DF -> YearFrac -> Vol -> Black76
[b76F] :: Black76 -> Forward
[b76DF] :: Black76 -> DF
[b76T] :: Black76 -> YearFrac
[b76Vol] :: Black76 -> Vol
-- | At the money forward strike.
atmf :: Black76 -> Strike
-- | European option valuation with black 76
euOption :: Black76 -> OptionType -> Strike -> Valuation
-- | see euOption
eucall :: Black76 -> Strike -> Valuation
-- | see euOption
euput :: Black76 -> Strike -> Valuation
module Q.Greeks
-- | A relative or an absolute bump. Used with numerical Greeks.
data Bump
Abs :: Double -> Bump
Rel :: Double -> Bump
data DiffMethod
ForwardDiff :: DiffMethod
BackwardDiff :: DiffMethod
CenteralDiff :: DiffMethod
class Bumpable a
bumpUp :: Bumpable a => a -> Bump -> a
bumpDown :: Bumpable a => a -> Bump -> a
stepSize :: Bumpable a => a -> Bump -> Double
firstOrder :: Bumpable a => DiffMethod -> Bump -> (a -> Double) -> a -> Double
instance GHC.Types.Coercible a GHC.Types.Double => Q.Greeks.Bumpable a
module Q.ContingentClaim
-- | A cash flow is a time and amount.
data CashFlow
CashFlow :: LocalTime -> Double -> CashFlow
-- | The cash flow time.
[cfTime] :: CashFlow -> LocalTime
-- | The cash flow amount.
[cfAmount] :: CashFlow -> Double
-- | Stop at time t and potentially apply n payouts up to the monitoring
-- time.
data CCProcessor a
CCProcessor :: LocalTime -> [Map LocalTime a -> CashFlow] -> CCProcessor a
-- | Stopping time.
[monitorTime] :: CCProcessor a -> LocalTime
-- | list of payout functions at the stopping time.
[payouts] :: CCProcessor a -> [Map LocalTime a -> CashFlow]
-- | A claim contingent on some observable a.
--
-- An example of an observable is a spot driven asset, such as a stock.
newtype ContingentClaim a
ContingentClaim :: [CCProcessor a] -> ContingentClaim a
[unCC] :: ContingentClaim a -> [CCProcessor a]
-- | multipley a contingent claim by its notional.
multiplier :: Double -> ContingentClaim a -> ContingentClaim a
-- | Change direction of the portfolio
short :: ContingentClaim a -> ContingentClaim a
type CCBuilder w r a = WriterT w (Reader r) a
-- | Monitor an observable at the given time t.
monitor :: LocalTime -> CCBuilder (ContingentClaim a) (Map LocalTime a) a
-- | Pay an amount at a given time
pay :: forall a. LocalTime -> CCBuilder (ContingentClaim a) (Map LocalTime a) CashFlow -> ContingentClaim a
instance GHC.Classes.Eq Q.ContingentClaim.CashFlow
instance GHC.Show.Show Q.ContingentClaim.CashFlow
instance GHC.Base.Monoid (Q.ContingentClaim.ContingentClaim a)
instance GHC.Base.Semigroup (Q.ContingentClaim.ContingentClaim a)
module Q.ContingentClaim.Options
vanillaPayout :: OptionType -> Double -> Double -> Double
spreadPayout :: OptionType -> Double -> Double -> Double -> Double
straddlePayout :: Double -> Double -> Double
vanillaOption :: OptionType -> Double -> LocalTime -> ContingentClaim Double
callOption :: Double -> LocalTime -> ContingentClaim Double
putOption :: Double -> LocalTime -> ContingentClaim Double
-- | A call spread is a portfolio: <math> s.t. <math>
callSpread :: Double -> Double -> LocalTime -> ContingentClaim Double
-- | A put spread is a portfolio: <math> s.t. <math>
putSpread :: Double -> Double -> LocalTime -> ContingentClaim Double
-- | A straddle is a a portfolio :(C(K, T) + Put(K, T))
straddle :: Double -> LocalTime -> ContingentClaim Double
module Q.MonteCarlo
type Path b = [(Time, b)]
-- | Summary type class aggregates all priced values of paths
class (PathPricer p) => Summary m p | m -> p
-- | Updates summary with given priced pathes
sSummarize :: Summary m p => m -> [p] -> m
-- | Defines a metric, i.e. calculate distance between 2 summaries
sNorm :: Summary m p => m -> m -> Double
-- | Path generator is a stochastic path generator
class PathGenerator m
pgMkNew :: PathGenerator m => m -> IO m
pgGenerate :: PathGenerator m => Integer -> m -> Path b
-- | Path pricer provides a price for given path
class PathPricer m
ppPrice :: PathPricer m => m -> Path b -> m
type MonteCarlo s a = StateT [(Time, s)] RVar a
-- | Generate a single trajectory stopping at each provided time.
trajectory :: forall a b d. (StochasticProcess a b, Discretize d b) => d -> a -> b -> [Time] -> [RVar b] -> RVar [b]
-- | Generate multiple trajectories. See trajectory
trajectories :: forall a b d. (StochasticProcess a b, Discretize d b) => Int -> d -> a -> b -> [Time] -> [RVar b] -> RVar [[b]]
observationTimes :: ContingentClaim a -> [Day]
class Model a b | a -> b
discountFactor :: Model a b => a -> YearFrac -> YearFrac -> RVar Rate
evolve :: Model a b => a -> YearFrac -> StateT (YearFrac, b) RVar Double
module Q.Options.BlackScholes
-- | Parameters for a simplified black scholes equation.
data BlackScholes
BlackScholes :: Spot -> Rate -> Vol -> BlackScholes
-- | The asset's spot on the valuation date.
[bsSpot] :: BlackScholes -> Spot
-- | Risk free rate.
[bsRate] :: BlackScholes -> Rate
-- | Volatility.
[bsVol] :: BlackScholes -> Vol
atmf :: BlackScholes -> YearFrac -> Strike
-- | European option valuation with black scholes.
euOption :: BlackScholes -> YearFrac -> OptionType -> Strike -> Valuation
-- | see euOption
eucall :: BlackScholes -> YearFrac -> Strike -> Valuation
-- | see euOption
euput :: BlackScholes -> YearFrac -> Strike -> Valuation
instance GHC.Show.Show Q.Options.BlackScholes.BlackScholes
instance Q.MonteCarlo.Model Q.Options.BlackScholes.BlackScholes GHC.Types.Double
module Q.Options.ImpliedVol.LetsBeRational
euImpliedVol :: OptionType -> Forward -> Strike -> YearFrac -> Rate -> Premium -> Vol
module Q.Options.Bachelier
data Bachelier
Bachelier :: Forward -> Rate -> Vol -> Bachelier
-- | European option valuation with bachelier model.
euOption :: Bachelier -> YearFrac -> OptionType -> Strike -> Valuation
-- | see euOption
eucall :: Bachelier -> YearFrac -> Strike -> Valuation
-- | see euOption
euput :: Bachelier -> YearFrac -> Strike -> Valuation
instance GHC.Show.Show Q.Options.Bachelier.Bachelier
instance Q.MonteCarlo.Model Q.Options.Bachelier.Bachelier GHC.Types.Double
module Q.Options.ImpliedVol.Normal
-- | Method to use to calculate the normal implied vol.
data Method
-- | Jackel analytical formula approximation.
Jackel :: Method
-- | J. Choi, K kim, and M. Kwak (2009) | Numerical root finding. Currently
-- Ridders is used.
ChoKimKwak :: Method
RootFinding :: Natural -> Tolerance -> (Double, Double, Double) -> Method
-- | Maximum number of iterations.
[maxIter] :: Method -> Natural
-- | Tolerance (relative or absolute)
[tol] :: Method -> Tolerance
-- | Triple of (low bound, initial guess, upper bound). If initial
-- guess if out of bracket middle of bracket is taken as.
[bracket] :: Method -> (Double, Double, Double)
-- | Default method implementation of euImpliedVolWith using
-- Jackel.
euImpliedVol :: OptionType -> Forward -> Strike -> YearFrac -> Rate -> Premium -> Vol
-- | Calcualte the bachelier option implied vol of a european option.
--
-- If the options premium does not have time value
-- hasTimeValue return 0.
euImpliedVolWith :: Method -> OptionType -> Forward -> Strike -> YearFrac -> Rate -> Premium -> Vol
euImpliedVolWith' :: Method -> OptionType -> Forward -> Strike -> YearFrac -> Rate -> Premium -> Vol
sqrtEpsilon :: Double
h :: Floating p => p -> p
instance Data.Default.Class.Default Q.Options.ImpliedVol.Normal.Method
module Q.Options.ImpliedVol
newtype LogRelStrike
LogRel :: Double -> LogRelStrike
newtype AbsRelStrike
AbsRel :: Double -> AbsRelStrike
newtype MoneynessForwardStrike
MoneynessForward :: Double -> MoneynessForwardStrike
newtype LogMoneynessForwardStrike
LogMoneynessForward :: Double -> LogMoneynessForwardStrike
newtype MoneynessSpotStrike
MoneynessSpot :: Double -> MoneynessSpotStrike
newtype LogMoneynessSpotStrike
LogMoneynessSpot :: Double -> LogMoneynessSpotStrike
newtype VolShift
VolShift :: Double -> VolShift
data VolType
Normal :: VolType
LogNormal :: VolType
ShiftedLogNormal :: VolShift -> VolType
euImpliedVol :: VolType -> OptionType -> Forward -> Strike -> YearFrac -> DF -> Premium -> Vol
instance Foreign.Storable.Storable Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Float.Floating Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Float.RealFloat Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Real.RealFrac Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Real.Real Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Real.Fractional Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Num.Num Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Classes.Ord Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Read.Read Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Show.Show Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Classes.Eq Q.Options.ImpliedVol.AbsRelStrike
instance GHC.Generics.Generic Q.Options.ImpliedVol.AbsRelStrike
instance Foreign.Storable.Storable Q.Options.ImpliedVol.LogRelStrike
instance GHC.Float.Floating Q.Options.ImpliedVol.LogRelStrike
instance GHC.Float.RealFloat Q.Options.ImpliedVol.LogRelStrike
instance GHC.Real.RealFrac Q.Options.ImpliedVol.LogRelStrike
instance GHC.Real.Real Q.Options.ImpliedVol.LogRelStrike
instance GHC.Real.Fractional Q.Options.ImpliedVol.LogRelStrike
instance GHC.Num.Num Q.Options.ImpliedVol.LogRelStrike
instance GHC.Classes.Ord Q.Options.ImpliedVol.LogRelStrike
instance GHC.Read.Read Q.Options.ImpliedVol.LogRelStrike
instance GHC.Show.Show Q.Options.ImpliedVol.LogRelStrike
instance GHC.Classes.Eq Q.Options.ImpliedVol.LogRelStrike
instance GHC.Generics.Generic Q.Options.ImpliedVol.LogRelStrike
instance Foreign.Storable.Storable Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Float.Floating Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Float.RealFloat Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Real.RealFrac Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Real.Real Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Real.Fractional Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Num.Num Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Classes.Ord Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Read.Read Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Show.Show Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Classes.Eq Q.Options.ImpliedVol.MoneynessForwardStrike
instance GHC.Generics.Generic Q.Options.ImpliedVol.MoneynessForwardStrike
instance Foreign.Storable.Storable Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Float.Floating Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Float.RealFloat Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Real.RealFrac Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Real.Real Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Real.Fractional Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Num.Num Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Classes.Ord Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Read.Read Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Show.Show Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Classes.Eq Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance GHC.Generics.Generic Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance Foreign.Storable.Storable Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Float.Floating Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Float.RealFloat Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Real.RealFrac Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Real.Real Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Real.Fractional Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Num.Num Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Classes.Ord Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Read.Read Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Show.Show Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Classes.Eq Q.Options.ImpliedVol.MoneynessSpotStrike
instance GHC.Generics.Generic Q.Options.ImpliedVol.MoneynessSpotStrike
instance Foreign.Storable.Storable Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Float.Floating Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Float.RealFloat Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Real.RealFrac Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Real.Real Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Real.Fractional Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Num.Num Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Classes.Ord Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Read.Read Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Show.Show Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Classes.Eq Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance GHC.Generics.Generic Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance Foreign.Storable.Storable Q.Options.ImpliedVol.VolShift
instance GHC.Float.Floating Q.Options.ImpliedVol.VolShift
instance GHC.Float.RealFloat Q.Options.ImpliedVol.VolShift
instance GHC.Real.RealFrac Q.Options.ImpliedVol.VolShift
instance GHC.Real.Real Q.Options.ImpliedVol.VolShift
instance GHC.Real.Fractional Q.Options.ImpliedVol.VolShift
instance GHC.Num.Num Q.Options.ImpliedVol.VolShift
instance GHC.Classes.Ord Q.Options.ImpliedVol.VolShift
instance GHC.Read.Read Q.Options.ImpliedVol.VolShift
instance GHC.Show.Show Q.Options.ImpliedVol.VolShift
instance GHC.Classes.Eq Q.Options.ImpliedVol.VolShift
instance GHC.Generics.Generic Q.Options.ImpliedVol.VolShift
instance GHC.Read.Read Q.Options.ImpliedVol.VolType
instance GHC.Show.Show Q.Options.ImpliedVol.VolType
instance GHC.Classes.Eq Q.Options.ImpliedVol.VolType
instance GHC.Generics.Generic Q.Options.ImpliedVol.VolType
module Q.Options.ImpliedVol.TimeSlice
class TimeSlice v k
totalVar :: TimeSlice v k => v -> k -> TotalVar
instance Q.Options.ImpliedVol.TimeSlice.TimeSlice (k -> Q.Types.TotalVar) k
instance Q.Options.ImpliedVol.TimeSlice.TimeSlice Q.Options.Black76.Black76 k
module Q.Options.ImpliedVol.TimeInterpolation
data TimeInterpolation
LinearInVol :: TimeInterpolation
LinearInTotalVar :: TimeInterpolation
Gatheral :: TimeInterpolation
data TimeExtrapolation
TerminalMoneyness :: TimeExtrapolation
module Q.Options.ImpliedVol.SVI
newtype Alpha
Alpha :: Double -> Alpha
newtype Beta
Beta :: Double -> Beta
newtype Rho
Rho :: Double -> Rho
newtype M
M :: Double -> M
newtype Sigma
Sigma :: Double -> Sigma
-- | Stochastic volatility inspired parameterization of the vol surface.
data SVI
-- | The original raw SVI representation from Gatheral
RSVI :: Alpha -> Beta -> Rho -> M -> Sigma -> SVI
isValidSVI :: SVI -> Bool
instance GHC.Float.Floating Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Real.Fractional Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Num.Num Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Classes.Ord Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Show.Show Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Classes.Eq Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Generics.Generic Q.Options.ImpliedVol.SVI.Alpha
instance GHC.Float.Floating Q.Options.ImpliedVol.SVI.Beta
instance GHC.Real.Fractional Q.Options.ImpliedVol.SVI.Beta
instance GHC.Num.Num Q.Options.ImpliedVol.SVI.Beta
instance GHC.Classes.Ord Q.Options.ImpliedVol.SVI.Beta
instance GHC.Show.Show Q.Options.ImpliedVol.SVI.Beta
instance GHC.Classes.Eq Q.Options.ImpliedVol.SVI.Beta
instance GHC.Generics.Generic Q.Options.ImpliedVol.SVI.Beta
instance GHC.Float.Floating Q.Options.ImpliedVol.SVI.Rho
instance GHC.Real.Fractional Q.Options.ImpliedVol.SVI.Rho
instance GHC.Num.Num Q.Options.ImpliedVol.SVI.Rho
instance GHC.Classes.Ord Q.Options.ImpliedVol.SVI.Rho
instance GHC.Show.Show Q.Options.ImpliedVol.SVI.Rho
instance GHC.Classes.Eq Q.Options.ImpliedVol.SVI.Rho
instance GHC.Generics.Generic Q.Options.ImpliedVol.SVI.Rho
instance GHC.Float.Floating Q.Options.ImpliedVol.SVI.M
instance GHC.Real.Fractional Q.Options.ImpliedVol.SVI.M
instance GHC.Num.Num Q.Options.ImpliedVol.SVI.M
instance GHC.Classes.Ord Q.Options.ImpliedVol.SVI.M
instance GHC.Show.Show Q.Options.ImpliedVol.SVI.M
instance GHC.Classes.Eq Q.Options.ImpliedVol.SVI.M
instance GHC.Generics.Generic Q.Options.ImpliedVol.SVI.M
instance GHC.Float.Floating Q.Options.ImpliedVol.SVI.Sigma
instance GHC.Real.Fractional Q.Options.ImpliedVol.SVI.Sigma
instance GHC.Num.Num Q.Options.ImpliedVol.SVI.Sigma
instance GHC.Classes.Ord Q.Options.ImpliedVol.SVI.Sigma
instance GHC.Show.Show Q.Options.ImpliedVol.SVI.Sigma
instance GHC.Classes.Eq Q.Options.ImpliedVol.SVI.Sigma
instance GHC.Generics.Generic Q.Options.ImpliedVol.SVI.Sigma
instance Q.Options.ImpliedVol.TimeSlice.TimeSlice Q.Options.ImpliedVol.SVI.SVI Q.Options.ImpliedVol.LogRelStrike
module Q.Options.ImpliedVol.InterpolatingSmile
data InterpolatingSmile
StrikeSmile :: Forward -> YearFrac -> SortedVector Strike -> Vector Vol -> StrikeInterpolation -> StrikeExtrapolation -> Strike -> Strike -> InterpolatingSmile
[smileForward] :: InterpolatingSmile -> Forward
[smileTenor] :: InterpolatingSmile -> YearFrac
[smileStrikes] :: InterpolatingSmile -> SortedVector Strike
[smileVols] :: InterpolatingSmile -> Vector Vol
[smileInterpolation] :: InterpolatingSmile -> StrikeInterpolation
[smileExtrapolation] :: InterpolatingSmile -> StrikeExtrapolation
[smileMinStrike] :: InterpolatingSmile -> Strike
[smileMaxStrike] :: InterpolatingSmile -> Strike
impliedVol :: InterpolatingSmile -> Strike -> Vol
instance Q.Options.ImpliedVol.TimeSlice.TimeSlice Q.Options.ImpliedVol.InterpolatingSmile.InterpolatingSmile Q.Types.Strike
module Q.Options.ImpliedVol.Surface
-- | Implied volatility surface where the strikes are in the space of
-- k and implied volatility time slice is v.
data Surface v k
Surface :: Spot -> SortedVector YearFrac -> (YearFrac -> Forward) -> (YearFrac -> DF) -> (YearFrac -> TotalVar) -> Map YearFrac v -> TimeInterpolation -> VolType -> Surface v k
-- | Spot.
[surfaceSpot] :: Surface v k -> Spot
-- | Ordered list of tenors.
[surfaceTenors] :: Surface v k -> SortedVector YearFrac
-- | The forward curve.
[surfaceForwardCurve] :: Surface v k -> YearFrac -> Forward
-- | The discount curve.
[surfaceDiscountCurve] :: Surface v k -> YearFrac -> DF
-- | A spline of the at the money total variance.
[surfaceAtmTotalVar] :: Surface v k -> YearFrac -> TotalVar
-- | Map from tenor to TimeSlice
[surfaceVols] :: Surface v k -> Map YearFrac v
-- | Method of interpolation between tenors.
[surfaceTimeInterpolation] :: Surface v k -> TimeInterpolation
-- | The type of surface.
[surfaceType] :: Surface v k -> VolType
totalVarKT :: (StrikeSpace k, TimeSlice v k) => Surface v k -> Strike -> YearFrac -> TotalVar
fwdTotalVarKT :: (StrikeSpace k, TimeSlice v k) => Surface v k -> Strike -> YearFrac -> Strike -> YearFrac -> TotalVar
volKT :: (StrikeSpace k, TimeSlice v k) => Surface v k -> Strike -> YearFrac -> Vol
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Types.Strike
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Options.ImpliedVol.AbsRelStrike
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Options.ImpliedVol.LogRelStrike
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Options.ImpliedVol.MoneynessForwardStrike
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Options.ImpliedVol.LogMoneynessForwardStrike
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Options.ImpliedVol.LogMoneynessSpotStrike
instance Q.Options.ImpliedVol.Surface.StrikeSpace Q.Options.ImpliedVol.MoneynessSpotStrike
module Q.Util.File
write :: Show t => [[t]] -> [String] -> FilePath -> IO ()