von      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m None3Used to compile claims for the Monte Carlo engine. ADT for Put or Calls Observables are the observables available in a Monte Carlo simulation. Most basic MCs will have one observables (Black-Scholes) whereas more complex ones will have multiple (i.e. Heston-Hull-White). " is just a list of the underlying s. . is the underlying type of contingent claims. Payout time for cash flow MList containing: -- Time of observation, -- Function to access specific observable, -- Function to collect observations and transform them into a cash flow. n6Function to generate a vanilla put/call style payout. o-Function to generate a binary option payout. Takes a maturity time and a function and generates a ContingentClaim dependent only on the terminal value of the observable. VTakes an OptionType, a strike, and a time to maturity and generates a vanilla option. hTakes an OptionType, a strike, a payout amount and a time to maturity and generates a vanilla option. nTakes an OptionType, a strike, observation times, time to maturity and generates an arithmetic Asian option. lTakes an OptionType, a strike, observation times, time to maturity and generates a geometric Asian option. .Scales up a contingent claim by a multiplier. CFlips the signs in a contingent claim to make it a short position. <Takes an amount and a time and generates a fixed cash flow. ;Takes a time to maturity and generates a forward contract. cA call spread is a long position in a low-strike call and a short position in a high strike call. `A put spread is a long position in a high strike put and a short position in a low strike put. HA straddle is a put and a call with the same time to maturity / strike. /Just combines two contingent claims into one.  Converts a  into a  for use by the MC engine. >Utility function to pull the head of a basket of observables. Offers the ability to change the function on the observable an option is based on. All options default to being based on the first observable. :Utility function for when the observable function is just p " n Put or Call Strike Observable val Price o Put or call strike +Payout amount if binary condition achieved observable level calculated payout qr    no qrNone3The Q class defines those models on which Monte Carlo simulations can be performed. Minimal complete definition: , !, " and #. AInitializes a Monte Carlo simulation for a given number of runs. CEvolves the internal states of the MC variables between two times. !ZStateful discounting function, takes a model and a time, and returns a vector of results. "@Stateful forward generator for a given model at a certain time. #5Internal function to evolve a model to a given time. $VDetermines the maximum size time-step for discretization purposes. Defaults to 1/250. %@Perform a simulation of a compiled basket of contingent claims. &Runs a simulation for a . 'Like &=, but splits the trials in two and does antithetic variates. (&) with a default random number generator. )') with a default random number generator. * Wraps the Identity monad in the + transformer. +2A monad transformer for Monte-Carlo calculations. ,RunsF a MonteCarlo calculation and provides the result of the computation. -.Utility function to get the number of trials. Model number of trials Model time to evolve to !"#model time to evolve to 'whether or not to use flipped variates computation result $%model compilied basket of claims number of trials  antithetic? computation result &model claims to value initial random state trials $whether to use antithetic variables  final value '()*+,Monte Carlo computation. Initial state.  Initial random-generator state. Final result of computation. -s !"#$%&'()*+,-*+, !"#$%&'()-  !"#$%&'()*+,-s Safe-Inferred.LA function, a lower bound, an upper bound and returns the integrated value. /Midpoint integration. 0Trapezoidal integration. 1"Integration using Simpson's rule. ./01./01./01./01 Safe-Inferred26, that represents the difference between two 6s. 4gA flat curve is just a flat curve with one continuously compounded rate at all points on the curve. 6The 67 class defines the basic operations of a yield curve. Minimal complete definition: 7. 74Calculate the discount factor for a given maturity. 8/Calculate the forward rate between a t1 and t2 9.Calculate the spot rate for a given maturity. 23456789tu234567896789452323456789tu Safe-Inferred:;A flat surface has one volatility at all times/maturities. <The <> class defines the basic operations of a volatility surface. Minimal complete definition: =. =7Calculate the implied vol for a given strike/maturity. >3Calculate the variance at a given strike/maturity. ?.Calculates Dupire local vol for a given strikematurity forward generating yield curve. :;<=>?Volatility surface Initial stock price 6 to generate forwards Current stock level Time Local volatility v:;<=>?<=>?:;:;<=>?v Safe-Inferred@The @O class defines those models which have closed-form characteristic functions. Minimal complete definition: A. Still under construction. ANCreates a characteristic function for a model, without martingale adjustment. BNCalculates characteristic function given a forward generator and yield curve. @ABC@ABC@ABC@ABCNone24:MDD# represents a Black-Scholes model. E6 to handle discounting FInitial asset level. G Volatility. H6 to generate forwards DEFGHIwDEFGHIDEFGHIDEFGHIwNone24:MJJ5 represents a Merton model (Black-Scholes w/ jumps). K6 to generate discount rates LInitial asset level MAsset volatility NIntensity of Poisson process OAverage size of jump PVolatility of jumps Q6 to generate forwards JKLMNOPQRx JKLMNOPQR JKLMNOPQRJKLMNOPQRx None24:MSS, represents a Dupire-style local vol model. T6 to generate discount rates UInitial asset level V9Local vol function taking a time to maturity and a level W6 to generate forwards STUVWXySTUVWXSTUVWXSTUVWXy None24:M YY9 represents a Heston model (i.e. stochastic volatility). Z6 to generate discounts [Initial asset level. \Initial variance ]Mean-reversion variance ^Vol-vol _Correlation between processes `Mean reversion speed a6 to generate forwards YZ[\]^_`abz YZ[\]^_`ab YZ[\]^_`abY Z[\]^_`abz None cdefgh{ijklm cdefghijklm cfdehikmjgl cdefgh{ijklm|    !"#$%&'()*+,-./0123456789:;;<<=>?@AABCDEFGHIJJKLMNOOPQRSTUV W W X Y U V Z Z [ \ ] ^ _ ` a b c d e f g h i j k l mnopqrstuvwxyz { | }~quantfin-0.1.0.1Quant.ContingentClaimQuant.MonteCarloQuant.Math.IntegrationQuant.YieldCurve Quant.VolSurf Quant.ModelsQuant.Models.BlackQuant.Models.MertonQuant.Models.DupireQuant.Models.Heston Quant.TestContingentClaimBasket OptionTypeCallPut ObservablesContingentClaimContingentClaim' payoutTime collector observations terminalOnly vanillaOption binaryOptionarithmeticAsianOptiongeometricAsianOption multipliershortfixedforwardContract callSpread putSpreadstraddlecombineccBasketobsHeadchangeObservableFctobsNum Discretize initializeevolve discounter forwardGenevolve'maxStep simulateState runSimulationrunSimulationAntiquickSim quickSimAnti MonteCarlo MonteCarloTrunMC getTrials Integratormidpoint trapezoidsimpsonNetYC FlatCurve YieldCurvediscforwardspotFlatSurfVolSurfvolvarlocalVolCharFunccharFunc charFuncMartcharFuncOptionBlack blackInitblackVolblackForwardGenblackYieldCurveMerton mertonInitial mertonVolmertonIntensitymertonJumpMean mertonJumpVolmertonForwardGenmertonDiscounterDupire dupireInitial dupireFuncHeston hestonInithestonV0hestonVF hestonLambda hestonCorrel hestonMeanRevhestonForwardGen hestonDiscbaseYCblackoptvalopt'val'val''hestonval'''opt''val'''' vanillaPayout binaryPayoutbaseGHC.List!!changeObservableFct'fst3processClaimWithMap$fYieldCurveNetYC$fYieldCurveFlatCurve$fVolSurfFlatSurf$fDiscretizeBlack$fDiscretizeMerton$fDiscretizeDupire$fDiscretizeHestonblack'