protected GeneralizedBlackScholesProcess GetStochasticProcess(DateTime d, MarkitSurface marketData) { // Spot level Handle <Quote> spotLevel = new Handle <Quote>(new SimpleQuote(marketData.impliedSpot)); // Risk free rate (term structure) Handle <YieldTermStructure> riskFreeTS = marketData.riskFree_FwdCrv(); // Dividend yield (term structure) Handle <YieldTermStructure> dividendTS = marketData.dividend_FwdCrv(); // Volatility ATM Forward (term structure) BlackVarianceCurve atmf_vol_curve = marketData.ATMF_Vol_TS(d); Handle <BlackVolTermStructure> volatilityTS = new Handle <BlackVolTermStructure>(atmf_vol_curve); // Return return(new GeneralizedBlackScholesProcess(spotLevel, dividendTS, riskFreeTS, volatilityTS)); }