Package com.opengamma.analytics.financial.provider.sensitivity.multicurve

Examples of com.opengamma.analytics.financial.provider.sensitivity.multicurve.MultipleCurrencyParameterSensitivity


    new MultipleCurrencyParameterSensitivity().getSensitivity(null);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testGetSensitivityNullName() {
    new MultipleCurrencyParameterSensitivity().getSensitivity(null, Currency.EUR);
  }
View Full Code Here


    new MultipleCurrencyParameterSensitivity().getSensitivity(null, Currency.EUR);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testGetSensitivityNullCurrency() {
    new MultipleCurrencyParameterSensitivity().getSensitivity(NAME_1, null);
  }
View Full Code Here

  @Test(expectedExceptions = UnsupportedOperationException.class)
  public void testAddToUnmodifiableMap() {
    final LinkedHashMap<Pair<String, Currency>, DoubleMatrix1D> map = new LinkedHashMap<>();
    map.put(NAME_1_EUR, SENSITIVITY_1_1);
    final MultipleCurrencyParameterSensitivity sensitivities = MultipleCurrencyParameterSensitivity.of(map);
    final Map<Pair<String, Currency>, DoubleMatrix1D> unmodifiable = sensitivities.getSensitivities();
    unmodifiable.put(NAME_1_USD, SENSITIVITY_1_2);
  }
View Full Code Here

    unmodifiable.put(NAME_1_USD, SENSITIVITY_1_2);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testConvertNullFXMatrix() {
    new MultipleCurrencyParameterSensitivity().converted(null, EUR);
  }
View Full Code Here

    new MultipleCurrencyParameterSensitivity().converted(null, EUR);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testConvertNullCurrency() {
    new MultipleCurrencyParameterSensitivity().converted(new FXMatrix(), null);
  }
View Full Code Here

  @Test
  public void testObject() {
    LinkedHashMap<Pair<String, Currency>, DoubleMatrix1D> map = new LinkedHashMap<>();
    map.put(NAME_1_EUR, SENSITIVITY_1_1);
    final MultipleCurrencyParameterSensitivity sensitivity = new MultipleCurrencyParameterSensitivity(map);
    assertFalse(sensitivity.getSensitivities() == map);
    assertEquals(map, sensitivity.getSensitivities());
    assertEquals(map.keySet(), sensitivity.getAllNamesCurrency());
    assertEquals(SENSITIVITY_1_1, sensitivity.getSensitivity(NAME_1_EUR));
    assertEquals(SENSITIVITY_1_1, sensitivity.getSensitivity(NAME_1, EUR));
    MultipleCurrencyParameterSensitivity other = new MultipleCurrencyParameterSensitivity(map);
    assertEquals(sensitivity, other);
    assertEquals(sensitivity.hashCode(), other.hashCode());
    map = new LinkedHashMap<>();
    assertFalse(sensitivity.getSensitivities().equals(map));
    map.put(NAME_1_EUR, SENSITIVITY_1_1);
    other = new MultipleCurrencyParameterSensitivity(map);
    assertEquals(sensitivity, other);
    map.put(NAME_1_USD, SENSITIVITY_1_2);
    map.put(NAME_2_USD, SENSITIVITY_2_1);
    other = MultipleCurrencyParameterSensitivity.of(map);
    assertFalse(sensitivity.equals(other));
    other = new MultipleCurrencyParameterSensitivity();
    assertTrue(other.getSensitivities().isEmpty());
  }
View Full Code Here

    final GeneratorAttributeIR swapAttribute = new GeneratorAttributeIR(Period.ofYears(4));
    final SwapFixedInflationZeroCouponDefinition swapDefinition = GENERATOR_INFLATION_SWAP.generateInstrument(NOW, spreadJPYEUR, notional, swapAttribute);
    final InstrumentDerivative swap = swapDefinition.toDerivative(NOW, new ZonedDateTimeDoubleTimeSeries[] {TS_PRICE_INDEX_USD_WITH_TODAY, TS_PRICE_INDEX_USD_WITH_TODAY});
    final ParameterInflationSensitivityParameterCalculator<InflationProviderInterface> PSC = new ParameterInflationSensitivityParameterCalculator<>(PVCSDIC);
    final MarketQuoteInflationSensitivityBlockCalculator<InflationProviderInterface> MQSC = new MarketQuoteInflationSensitivityBlockCalculator<>(PSC);
    @SuppressWarnings("unused")
    final MultipleCurrencyParameterSensitivity mqs = MQSC.fromInstrument(swap, multicurves7, blocks7);
  }
View Full Code Here

    assertTrue(other.getSensitivities().isEmpty());
  }

  @Test
  public void add() {
    MultipleCurrencyParameterSensitivity sensitivity1 = new MultipleCurrencyParameterSensitivity();
    sensitivity1 = sensitivity1.plus(NAME_1_USD, SENSITIVITY_1_1);
    sensitivity1 = sensitivity1.plus(NAME_1_USD, SENSITIVITY_1_2);
    assertEquals("Add same currency, different sensitivities: ", MATRIX.add(SENSITIVITY_1_1, SENSITIVITY_1_2), sensitivity1.getSensitivity(NAME_1_USD));
    MultipleCurrencyParameterSensitivity sensitivity2 = new MultipleCurrencyParameterSensitivity();
    sensitivity2 = sensitivity2.plus(NAME_1_EUR, SENSITIVITY_1_1);
    sensitivity2 = sensitivity2.plus(sensitivity1);
    assertEquals("Add different currency, test size: ", 2, sensitivity2.getSensitivities().size());
    final LinkedHashMap<Pair<String, Currency>, DoubleMatrix1D> expected = Maps.newLinkedHashMap();
    expected.put(NAME_1_EUR, SENSITIVITY_1_1);
    expected.put(NAME_1_USD, (DoubleMatrix1D) MATRIX.add(SENSITIVITY_1_1, SENSITIVITY_1_2));
    assertEquals("Add different currency, test map: ", expected, sensitivity2.getSensitivities());
    sensitivity2 = new MultipleCurrencyParameterSensitivity();
    sensitivity2 = sensitivity2.plus(NAME_1_USD, SENSITIVITY_1_1);
    sensitivity2 = sensitivity2.plus(sensitivity1);
    assertEquals("Add same currency, test sensitivities: ", MATRIX.add(SENSITIVITY_1_1, MATRIX.add(SENSITIVITY_1_1, SENSITIVITY_1_2)), sensitivity2.getSensitivity(NAME_1_USD));
    sensitivity2 = sensitivity2.plus(NAME_2_EUR, SENSITIVITY_2_1);
    assertEquals("Add different currency, test sensitivities of first currency: ", SENSITIVITY_2_1, sensitivity2.getSensitivity(NAME_2_EUR));
    assertEquals("Add different currency, test sensitivities of second currency: ", MATRIX.add(SENSITIVITY_1_1, MATRIX.add(SENSITIVITY_1_1, SENSITIVITY_1_2)), sensitivity2.getSensitivity(NAME_1_USD));
    sensitivity2 = sensitivity2.plus(NAME_2_EUR, SENSITIVITY_2_1);
    assertEquals("Test add same sensitivities: ", MATRIX.scale(SENSITIVITY_2_1, 2.0), sensitivity2.getSensitivity(NAME_2_EUR));
    assertEquals("Test other currency: ", MATRIX.add(SENSITIVITY_1_1, MATRIX.add(SENSITIVITY_1_1, SENSITIVITY_1_2)), sensitivity2.getSensitivity(NAME_1_USD));
    sensitivity2 = sensitivity2.plus(NAME_1_EUR, SENSITIVITY_1_1);
    assertEquals("ParameterSensitivity: add", MATRIX.scale(SENSITIVITY_2_1, 2.0), sensitivity2.getSensitivity(NAME_2_EUR));
    assertEquals("ParameterSensitivity: add", MATRIX.add(SENSITIVITY_1_1, MATRIX.add(SENSITIVITY_1_1, SENSITIVITY_1_2)), sensitivity2.getSensitivity(NAME_1_USD));
    assertEquals("ParameterSensitivity: add", SENSITIVITY_1_1, sensitivity2.getSensitivity(NAME_1_EUR));
  }
View Full Code Here

  @Test
  /**
   * Tests present value curve sensitivity when the valuation date is on trade date.
   */
  public void presentValueCurveSensitivityCap() {
    final MultipleCurrencyParameterSensitivity pvpsExact = PS_SS_C.calculateSensitivity(CAP_LONG, SABR_MULTICURVES, SABR_MULTICURVES.getMulticurveProvider().getAllNames());
    final MultipleCurrencyParameterSensitivity pvpsFD = PS_SS_FDC.calculateSensitivity(CAP_LONG, SABR_MULTICURVES);
    AssertSensivityObjects.assertEquals("SwaptionPhysicalFixedIborSABRMethod: presentValueCurveSensitivity ", pvpsExact, pvpsFD, TOLERANCE_PV_DELTA);
  }
View Full Code Here

  /**
   * Test the present value curves sensitivity.
   */
  public void presentValueCurveSensitivityWithNotional() {

    final MultipleCurrencyParameterSensitivity pvicsFD = PS_PV_FDC.calculateSensitivity(YEAR_ON_YEAR_WITH, MARKET.getInflationProvider());
    final MultipleCurrencyParameterSensitivity pvicsExact = PSC.calculateSensitivity(YEAR_ON_YEAR_WITH, MARKET.getInflationProvider(), MARKET.getAllNames());

    AssertSensivityObjects.assertEquals("Year on year coupon inflation DiscountingMethod: presentValueCurveSensitivity ", pvicsExact, pvicsFD, TOLERANCE_PV_DELTA);

  }
View Full Code Here

TOP

Related Classes of com.opengamma.analytics.financial.provider.sensitivity.multicurve.MultipleCurrencyParameterSensitivity

Copyright © 2018 www.massapicom. 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.