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

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


    assertEquals("ParameterSensitivity: getAllNamesCurrency", sensitivity1.getSensitivity(NAME_2, EUR), sensitivity1.getSensitivity(NAME_2_EUR));
  }

  @Test
  public void equalHash() {
    MultipleCurrencyParameterSensitivity sensitivity = new MultipleCurrencyParameterSensitivity();
    sensitivity = sensitivity.plus(NAME_1_USD, SENSITIVITY_1_1);
    sensitivity = sensitivity.plus(NAME_2_EUR, SENSITIVITY_2_1);
    MultipleCurrencyParameterSensitivity modified = new MultipleCurrencyParameterSensitivity();
    modified = modified.plus(NAME_2_USD, SENSITIVITY_2_1);
    modified = modified.plus(NAME_2_EUR, SENSITIVITY_2_1);
    assertEquals("ParameterSensitivity: equalHash", sensitivity, sensitivity);
    assertEquals("ParameterSensitivity: equalHash", sensitivity.hashCode(), sensitivity.hashCode());
    assertFalse("ParameterSensitivity: equalHash", sensitivity.equals(SENSITIVITY_1_1));
    assertFalse("ParameterSensitivity: equalHash", sensitivity.equals(modified));
  }
View Full Code Here


    final LinkedHashMap<Pair<String, Currency>, DoubleMatrix1D> data = new LinkedHashMap<>();
    data.put(Pair.of(name1, Currency.AUD), sensitivities1);
    data.put(Pair.of(name2, Currency.EUR), sensitivities2);
    data.put(Pair.of(name3, Currency.USD), sensitivities3);
    data.put(Pair.of(name4, Currency.CAD), sensitivities4);
    final MultipleCurrencyParameterSensitivity sensitivities = new MultipleCurrencyParameterSensitivity(data);
    assertEquals(sensitivities, cycleObject(MultipleCurrencyParameterSensitivity.class, sensitivities));
  }
View Full Code Here

  private static final double TOLERANCE_DELTA = 1.0E+2; // 0.01 currency unit for 1bp on 100m

  @Test
  public void parameterSensitivityBlock() {
    final MultipleCurrencyParameterSensitivity pvpsAnnuityExact = PSC.calculateSensitivity(ANNUITY, MARKET_DSC, MARKET_DSC.getAllNames());
    final MultipleCurrencyParameterSensitivity pvpsAnnuityFD = PSC_DSC_FD.calculateSensitivity(ANNUITY, MARKET_DSC);
    AssertSensivityObjects.assertEquals("ParameterSensitivityMarketBlockCalculator: fixed annuity ", pvpsAnnuityExact, pvpsAnnuityFD, TOLERANCE_DELTA);

    final MultipleCurrencyParameterSensitivity pvps2AnnuityExact = PSC.calculateSensitivity(ANNUITY, MARKET_FWD, MARKET_FWD.getAllNames());
    final MultipleCurrencyParameterSensitivity pvps2AnnuityFD = PSC_FWD_FD.calculateSensitivity(ANNUITY, MARKET_FWD);
    AssertSensivityObjects.assertEquals("ParameterSensitivityMarketBlockCalculator: fixed annuity ", pvps2AnnuityExact, pvps2AnnuityFD, TOLERANCE_DELTA);

    final MultipleCurrencyParameterSensitivity pvpsSwapExact = PSC.calculateSensitivity(SWAP, MARKET_DSC, MARKET_DSC.getAllNames());
    final MultipleCurrencyParameterSensitivity pvpsSwapFD = PSC_DSC_FD.calculateSensitivity(SWAP, MARKET_DSC);
    AssertSensivityObjects.assertEquals("ParameterSensitivityMarketBlockCalculator: swap ", pvpsSwapExact, pvpsSwapFD, TOLERANCE_DELTA);

    final MultipleCurrencyParameterSensitivity pvps2SwapExact = PSC.calculateSensitivity(SWAP, MARKET_FWD, MARKET_FWD.getAllNames());
    final MultipleCurrencyParameterSensitivity pvps2SwapFD = PSC_FWD_FD.calculateSensitivity(SWAP, MARKET_FWD);
    AssertSensivityObjects.assertEquals("ParameterSensitivityMarketBlockCalculator: swap", pvps2SwapExact, pvps2SwapFD, TOLERANCE_DELTA);

    final MultipleCurrencyParameterSensitivity pvpsOisExact = PSC.calculateSensitivity(OIS, MARKET_DSC, MARKET_DSC.getAllNames());
    final MultipleCurrencyParameterSensitivity pvpsOisFD = PSC_DSC_FD.calculateSensitivity(OIS, MARKET_DSC);
    AssertSensivityObjects.assertEquals("ParameterSensitivityMarketBlockCalculator: Ois", pvpsOisExact, pvpsOisFD, TOLERANCE_DELTA);

    final MultipleCurrencyParameterSensitivity pvps2OisExact = PSC.calculateSensitivity(OIS, MARKET_FWD, MARKET_FWD.getAllNames());
    final MultipleCurrencyParameterSensitivity pvps2OisFD = PSC_FWD_FD.calculateSensitivity(OIS, MARKET_FWD);
    AssertSensivityObjects.assertEquals("ParameterSensitivityMarketBlockCalculator: Ois", pvps2OisExact, pvps2OisFD, TOLERANCE_DELTA);

    final Set<String> required = new TreeSet<>();
    required.add(DSC_NAME);
    final MultipleCurrencyParameterSensitivity pvpsSwapNoFwd = PSC.calculateSensitivity(SWAP, MARKET_DSC, required);
    assertTrue("ParameterSensitivityMarketBlockCalculator: fixed curve ", pvpsSwapNoFwd.getAllNamesCurrency().size() == 1);
    assertArrayEquals("ParameterSensitivityMarketBlockCalculator: fixed curve ", pvpsSwapNoFwd.getSensitivity(DSC_NAME, USD).getData(), pvpsSwapExact.getSensitivity(DSC_NAME, USD).getData(),
        TOLERANCE_DELTA);
  }
View Full Code Here

    final double notional = 100000;
    final SwapDefinition swapDefinition = JPYLIBOR3MEURIBOR3M.generateInstrument(NOW, spreadJPYEUR, notional, attr6Mx5Y);
    final InstrumentDerivative swap = swapDefinition.toDerivative(NOW);
    final ParameterSensitivityParameterCalculator<MulticurveProviderInterface> PSC = new ParameterSensitivityParameterCalculator<>(PVCSDC);
    final MarketQuoteSensitivityBlockCalculator<MulticurveProviderInterface> MQSC = new MarketQuoteSensitivityBlockCalculator<>(PSC);
    @SuppressWarnings("unused")
    final MultipleCurrencyParameterSensitivity mqs = MQSC.fromInstrument(swap, multicurves7, blocks7);
    //    int t = 0;
    //    t++;
  }
View Full Code Here

    final GeneratorAttributeIR swapAttribute = new GeneratorAttributeIR(Period.ofYears(4));
    final SwapFixedInflationZeroCouponDefinition swapDefinition = GENERATOR_INFALTION_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

  private static final double TOLERANCE = 1.0E-5;

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

    MultipleCurrencyParameterSensitivity.of(null);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testPlusNullPair() {
    new MultipleCurrencyParameterSensitivity().plus(null, SENSITIVITY_1_1);
  }
View Full Code Here

    new MultipleCurrencyParameterSensitivity().plus(null, SENSITIVITY_1_1);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testPlusNullMatrix() {
    new MultipleCurrencyParameterSensitivity().plus(NAME_1_EUR, null);
  }
View Full Code Here

    new MultipleCurrencyParameterSensitivity().plus(NAME_1_EUR, null);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testPlusNullSensitivities() {
    new MultipleCurrencyParameterSensitivity().plus(null);
  }
View Full Code Here

    new MultipleCurrencyParameterSensitivity().plus(null);
  }

  @Test(expectedExceptions = IllegalArgumentException.class)
  public void testGetSensitivityNullNameCurrencyPair() {
    new MultipleCurrencyParameterSensitivity().getSensitivity(null);
  }
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.