Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data CashFlow = CashFlow {}
- data CCProcessor a = CCProcessor {}
- newtype ContingentClaim a = ContingentClaim {
- unCC :: [CCProcessor a]
- multiplier :: Double -> ContingentClaim a -> ContingentClaim a
- short :: ContingentClaim a -> ContingentClaim a
- type CCBuilder w r a = WriterT w (Reader r) a
- monitor :: LocalTime -> CCBuilder (ContingentClaim a) (Map LocalTime a) a
- pay :: forall a. LocalTime -> CCBuilder (ContingentClaim a) (Map LocalTime a) CashFlow -> ContingentClaim a
Documentation
A cash flow is a time and amount.
data CCProcessor a Source #
Stop at time t and potentially apply n payouts up to the monitoring time.
newtype ContingentClaim a Source #
A claim contingent on some observable a.
An example of an observable is a spot driven asset, such as a stock.
ContingentClaim | |
|
Instances
Semigroup (ContingentClaim a) Source # | |
Defined in Q.ContingentClaim (<>) :: ContingentClaim a -> ContingentClaim a -> ContingentClaim a # sconcat :: NonEmpty (ContingentClaim a) -> ContingentClaim a # stimes :: Integral b => b -> ContingentClaim a -> ContingentClaim a # | |
Monoid (ContingentClaim a) Source # | |
Defined in Q.ContingentClaim mempty :: ContingentClaim a # mappend :: ContingentClaim a -> ContingentClaim a -> ContingentClaim a # mconcat :: [ContingentClaim a] -> ContingentClaim a # |
multiplier :: Double -> ContingentClaim a -> ContingentClaim a Source #
multipley a contingent claim by its notional.
short :: ContingentClaim a -> ContingentClaim a Source #
Change direction of the portfolio
monitor :: LocalTime -> CCBuilder (ContingentClaim a) (Map LocalTime a) a Source #
Monitor an observable at the given time t.
pay :: forall a. LocalTime -> CCBuilder (ContingentClaim a) (Map LocalTime a) CashFlow -> ContingentClaim a Source #
Pay an amount at a given time