/// <summary> /// Pricings the structure ids by market. /// </summary> /// <param name="marketEnvironmentId">The market environment id.</param> /// <returns></returns> public static IList <string> PricingStructureIdsByMarket(string marketEnvironmentId) { MarketEnvironment marketEnvironment = Get(marketEnvironmentId); var items = marketEnvironment != null ? marketEnvironment.PricingStructureIds : new List <string>(); return(items); }
///<summary> /// Creates a market environment for use in calculations. ///</summary> ///<param name="marketName">The name of the market environment.</param> ///<param name="curve">The curve.</param> ///<returns></returns> public static IMarketEnvironment Create(string marketName, IPricingStructure curve) { var environment = new MarketEnvironment(marketName); var name = (PricingStructureIdentifier)curve.GetPricingStructureId(); environment.AddPricingStructure(name.UniqueIdentifier, curve); return(environment); }
static public IMarketEnvironment CreateSimpleInflationCurve(string curveName, DateTime baseDate, Double[] times, Double[] dfs) { var market = new MarketEnvironment(); var interpMethod = InterpolationMethodHelper.Parse("LinearInterpolation"); var curve = new SimpleDiscountFactorCurve(baseDate, interpMethod, true, times, dfs); market.AddPricingStructure(curveName, curve); return(market); }
///<summary> /// Creates a market environment for use in calculations. ///</summary> ///<param name="marketName">The name of the market environment.</param> ///<param name="curve">The curve.</param> ///<returns></returns> public static IMarketEnvironment Create(string marketName, List <IPricingStructure> curve) { var environment = new MarketEnvironment(marketName); foreach (var structure in curve) { var name = (PricingStructureIdentifier)structure.GetPricingStructureId(); environment.AddPricingStructure(name.UniqueIdentifier, structure); } return(environment); }
/// <summary> /// Gets the specified id. /// </summary> /// <param name="id">The id.</param> /// <returns></returns> public static MarketEnvironment Get(string id) { MarketEnvironment marketEnvironment = null; if (_marketEnvironments.ContainsKey(id)) { marketEnvironment = (MarketEnvironment)_marketEnvironments[id]; } return(marketEnvironment); }
static public IMarketEnvironment CreateDFandVolCurves(string curveName, string volcurveName, DateTime baseDate, Double[] times, Double[] dfs, Double[] voltimes, Double[] volstrikes, Double[,] vols) { var market = new MarketEnvironment(); var interpMethod = InterpolationMethodHelper.Parse("LinearInterpolation"); var curve = new SimpleDiscountFactorCurve(baseDate, interpMethod, true, times, dfs); var volcurve = new SimpleVolatilitySurface(baseDate, interpMethod, true, voltimes, volstrikes, vols); market.AddPricingStructure(curveName, curve); market.AddPricingStructure(volcurveName, volcurve); return(market); }
/// <summary> /// Creates a market environment. /// </summary> /// <param name="market"></param> /// <returns></returns> public static IMarketEnvironment CreateMarketEnvironment(string market) { var marketEnvironment = new MarketEnvironment(market); return(marketEnvironment); }