Examples of FXMatrix


Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

    ArgumentChecker.notNull(volatilityModel, "volatility model");
    ArgumentChecker.notNull(currencyPair, "currency pair");
    final Collection<Currency> currencies = getCurrencyMap().values();
    final Currency firstCurrency = currencyPair.getFirst();
    final Currency secondCurrency = currencyPair.getSecond();
    final FXMatrix fxMatrix = curves.getFxRates();
    ArgumentChecker.isTrue(fxMatrix.containsPair(firstCurrency, secondCurrency), "FX matrix does not contain rates for {} and {}", firstCurrency, secondCurrency);
    ArgumentChecker.isTrue(currencies.contains(firstCurrency), "Curve currency map does not contain currency {}; have {}", firstCurrency, currencies);
    ArgumentChecker.isTrue(currencies.contains(secondCurrency), "Curve currency map does not contain currency {}, have {}", secondCurrency, currencies);
    _volatilityModel = volatilityModel;
    _currencyPair = currencyPair;
  }
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

   * (minimum: 1.0E-1; maximum: 1.0E+1, function value accuracy: 1.0E-4; parameter absolute accuracy: 1.0E-9).
   * @param parameters The Hull-White parameters.
   * @param ccy The currency for which the LMM parameters are valid (LMM on the discounting curve).
   */
  public SuccessiveLeastSquareLMMDDCalibrationObjective(final LiborMarketModelDisplacedDiffusionParameters parameters, final Currency ccy) {
    super(new FXMatrix(ccy), ccy);
    _lmmParameters = parameters;
    _ccyLMM = ccy;
    _volatilityInit = new double[_lmmParameters.getNbPeriod()][_lmmParameters.getNbFactor()];
    for (int loopperiod = 0; loopperiod < _lmmParameters.getNbPeriod(); loopperiod++) {
      for (int loopfact = 0; loopfact < _lmmParameters.getNbFactor(); loopfact++) {
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

   * @param parameters The Hull-White parameters.
   * @param ccy The currency for which the Hull-White parameters are valid (Hull-White on the discounting curve).
   * @param ratio The ratio between the first factor volatility and the second factor volatility.
   */
  public SuccessiveRootFinderG2ppCalibrationObjective(final G2ppPiecewiseConstantParameters parameters, final Currency ccy, final double ratio) {
    super(new FXMatrix(ccy), ccy);
    _g2Parameters = parameters;
    _ratio = ratio;
    _ccyG2 = ccy;
    setMinimumParameter(1.0E-6);
    setMaximumParameter(1.0);
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

   * (minimum: 1.0E-6; maximum: 1.0, function value accuracy: 1.0E-4; parameter absolute accuracy: 1.0E-9).
   * @param parameters The Year on Year cap/floor parameters.
   * @param ccy The currency for which the Hull-White parameters are valid.
   */
  public SuccessiveRootFinderInflationYearOnYearCapFloorCalibrationObjective(final InflationYearOnYearCapFloorParameters parameters, final Currency ccy) {
    super(new FXMatrix(ccy), ccy);
    _inflationCapYearOnYearParameters = parameters;
    _ccyInflationcapYearOnYear = ccy;
    setMinimumParameter(1.0E-6);
    setMaximumParameter(1.0);
    setFunctionValueAccuracy(1.0E-4);
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

   * (minimum: 1.0E-6; maximum: 1.0, function value accuracy: 1.0E-4; parameter absolute accuracy: 1.0E-9).
   * @param parameters The Hull-White parameters.
   * @param ccy The currency for which the LMM parameters are valid (LMM on the discounting curve).
   */
  public SuccessiveRootFinderLMMDDCalibrationObjective(final LiborMarketModelDisplacedDiffusionParameters parameters, final Currency ccy) {
    super(new FXMatrix(ccy), ccy);
    _lmmParameters = parameters;
    _ccyLMM = ccy;
    setMinimumParameter(1.0E-6);
    setMaximumParameter(1.0);
    setFunctionValueAccuracy(1.0E-4);
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

  public MulticurveProviderForward() {
    // TODO: Do we need a LinkedHashMap or a more efficient Map could be used?
    _discountingCurves = new HashMap<>();
    _forwardIborCurves = new HashMap<>();
    _forwardONCurves = new LinkedHashMap<>();
    _fxMatrix = new FXMatrix();
    setAllCurves();
  }
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

  @Override
  public MulticurveProviderForward copy() {
    final LinkedHashMap<Currency, YieldAndDiscountCurve> discountingCurves = new LinkedHashMap<>(_discountingCurves);
    final LinkedHashMap<IborIndex, DoublesCurve> forwardIborCurves = new LinkedHashMap<>(_forwardIborCurves);
    final LinkedHashMap<IndexON, YieldAndDiscountCurve> forwardONCurves = new LinkedHashMap<>(_forwardONCurves);
    final FXMatrix fxMatrix = new FXMatrix(_fxMatrix);
    return new MulticurveProviderForward(discountingCurves, forwardIborCurves, forwardONCurves, fxMatrix);
  }
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

   * (minimum: 1.0E-6; maximum: 1.0, function value accuracy: 1.0E-4; parameter absolute accuracy: 1.0E-9).
   * @param parameters The Zero Coupon cap/floor parameters.
   * @param ccy The currency for which the Hull-White parameters are valid.
   */
  public SuccessiveRootFinderInflationZeroCouponCapFloorCalibrationObjective(final InflationZeroCouponCapFloorParameters parameters, final Currency ccy) {
    super(new FXMatrix(ccy), ccy);
    _inflationCapZeroCouponParameters = parameters;
    _ccyInflationcapZeroCoupon = ccy;
    setMinimumParameter(1.0E-6);
    setMaximumParameter(1.0);
    setFunctionValueAccuracy(1.0E-4);
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

        result.setCurve(entry.getKey(), entry.getValue());
      }
      for (final Map.Entry<IndexON, YieldAndDiscountCurve> entry : provider.getForwardONCurves().entrySet()) {
        result.setCurve(entry.getKey(), entry.getValue());
      }
      final FXMatrix matrix = provider.getFxRates();
      final Collection<Currency> currencies = matrix.getCurrencies().keySet();
      final Iterator<Currency> iterator = currencies.iterator();
      if (currencies.size() > 0) {
        final Currency initialCurrency = iterator.next();
        while (iterator.hasNext()) {
          final Currency otherCurrency = iterator.next();
          result.getFxRates().addCurrency(initialCurrency, otherCurrency, matrix.getFxRate(initialCurrency, otherCurrency));
        }
      }
    }
    return result;
  }
View Full Code Here

Examples of com.opengamma.analytics.financial.forex.method.FXMatrix

        result.setCurve(entry.getKey(), entry.getValue());
      }
      for (final Map.Entry<IndexON, YieldAndDiscountCurve> entry : underlying.getForwardONCurves().entrySet()) {
        result.setCurve(entry.getKey(), entry.getValue());
      }
      final FXMatrix matrix = underlying.getFxRates();
      final Collection<Currency> currencies = matrix.getCurrencies().keySet();
      final Iterator<Currency> iterator = currencies.iterator();
      if (currencies.size() > 0) {
        final Currency initialCurrency = iterator.next();
        while (iterator.hasNext()) {
          final Currency otherCurrency = iterator.next();
          underlying.getFxRates().addCurrency(initialCurrency, otherCurrency, matrix.getFxRate(initialCurrency, otherCurrency));
        }
      }
      //TODO actually merge.
    }
    return result;
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.