/// <summary> /// Get the curve name of the curve for a given currency. /// </summary> /// <param name="currency"> the currency </param> /// <returns> the curve name </returns> public static CurveName getCurveName(Currency currency) { if (currency.Equals(EUR)) { return(EUR_DSC.Name); } if (currency.Equals(USD)) { return(USD_DSC.Name); } if (currency.Equals(GBP)) { return(GBP_DSC.Name); } throw new System.ArgumentException(); }
public double fxRate(Currency baseCurrency, Currency counterCurrency) { if (baseCurrency.Equals(counterCurrency)) { return(1); } if (baseCurrency.Equals(outerInstance.rates1.Pair.Base)) { return(outerInstance.rates1.fxRate(baseCurrency, counterCurrency, scenarioIndex)); } else if (baseCurrency.Equals(outerInstance.rates2.Pair.Base)) { return(outerInstance.rates2.fxRate(baseCurrency, counterCurrency, scenarioIndex)); } else { return(outerInstance.rates3.fxRate(baseCurrency, counterCurrency, scenarioIndex)); } }
//------------------------------------------------------------------------- public virtual double fxRate(Currency baseCurrency, Currency counterCurrency) { return(baseCurrency.Equals(counterCurrency) ? 1 : RATE); }