private ICube GetRisk(IPvModel model) { switch (Metric) { case RiskMetric.AssetCurveDelta: return(model.AssetDelta()); case RiskMetric.FxDelta: return(model.FxDelta(model.VanillaModel.FundingModel.FxMatrix.BaseCurrency, _currencyProvider, false)); default: throw new Exception($"Unable to process risk metric {Metric}"); } }
private ICube GetRisk(IPvModel model) { switch (Metric) { case RiskMetric.AssetCurveDelta: return(model.AssetDelta()); //case RiskMetric.AssetCurveDeltaGamma: // return portfolio.AssetDeltaGamma(model); case RiskMetric.FxDelta: return(model.FxDeltaSpecific(_currencyProvider.GetCurrency("ZAR"), FxPairsForDelta, _currencyProvider, false)); //case RiskMetric.FxDeltaGamma: // return portfolio.FxDelta(model, _currencyProvider.GetCurrency("ZAR"), _currencyProvider, true); default: throw new Exception($"Unable to process risk metric {Metric}"); } }