public virtual void test_getSensitivity_name()
 {
     assertEquals(SENSI_3.getSensitivity(NAME1, NAME1, USD), ENTRY_USD);
     assertEquals(SENSI_3.getSensitivity(NAME1, NAME2, USD), CrossGammaParameterSensitivity.of(NAME1, METADATA1, NAME2, METADATA2, USD, MATRIX_USD2));
     assertEquals(SENSI_3.getSensitivity(NAME2, NAME1, USD), CrossGammaParameterSensitivity.of(NAME2, METADATA2, NAME1, METADATA1, USD, MATRIX_USD2));
     assertEquals(SENSI_3.getSensitivity(NAME2, NAME2, USD), CrossGammaParameterSensitivity.of(NAME2, METADATA2, NAME2, METADATA2, USD, DoubleMatrix.of(2, 2, -500, -400, -200, -300)));
 }
Ejemplo n.º 2
0
        //-------------------------------------------------------------------------
        public virtual void test_multipliedBy()
        {
            CrossGammaParameterSensitivity @base = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD1);
            CrossGammaParameterSensitivity test  = @base.multipliedBy(FACTOR1);

            assertEquals(test, CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD_FACTOR));
        }
Ejemplo n.º 3
0
        //-------------------------------------------------------------------------
        public virtual void test_convertedTo()
        {
            CrossGammaParameterSensitivity @base = CrossGammaParameterSensitivity.of(NAME1, METADATA_EUR1, EUR, MATRIX_EUR1);
            CrossGammaParameterSensitivity test  = @base.convertedTo(USD, FX_RATE);

            assertEquals(@base.convertedTo(EUR, FX_RATE), @base);
            assertEquals(test, CrossGammaParameterSensitivity.of(NAME1, METADATA_EUR1, USD, MATRIX_EUR1_IN_USD));
        }
Ejemplo n.º 4
0
        public virtual void test_diagonal_eurUsd()
        {
            CrossGammaParameterSensitivity @base = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, ImmutableList.of(Pair.of(NAME1, METADATA_USD1), Pair.of(NAME2, METADATA_EUR1)), USD, MATRIX_USD_EUR);
            CurrencyParameterSensitivity   test  = @base.diagonal();
            DoubleArray value = DoubleArray.of(MATRIX_USD1.get(0, 0), MATRIX_USD1.get(1, 1));

            assertEquals(test, CurrencyParameterSensitivity.of(NAME1, METADATA_USD1, USD, value));
        }
Ejemplo n.º 5
0
        public virtual void test_diagonal()
        {
            CrossGammaParameterSensitivity @base = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD1);
            CurrencyParameterSensitivity   test  = @base.diagonal();
            DoubleArray value = DoubleArray.of(MATRIX_USD1.get(0, 0), MATRIX_USD1.get(1, 1));

            assertEquals(test, CurrencyParameterSensitivity.of(NAME1, METADATA_USD1, USD, value));
        }
Ejemplo n.º 6
0
        //-------------------------------------------------------------------------
        public virtual void test_withSensitivity()
        {
            CrossGammaParameterSensitivity @base = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD1);
            CrossGammaParameterSensitivity test  = @base.withSensitivity(MATRIX_USD_FACTOR);

            assertEquals(test, CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD_FACTOR));
            assertThrowsIllegalArg(() => @base.withSensitivity(DoubleMatrix.of(1, 1, 1d)));
        }
Ejemplo n.º 7
0
        //-------------------------------------------------------------------------
        public virtual void coverage()
        {
            CrossGammaParameterSensitivity test = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD1);

            coverImmutableBean(test);
            CrossGammaParameterSensitivity test2 = CrossGammaParameterSensitivity.of(NAME2, METADATA_EUR1, EUR, MATRIX_EUR1);

            coverBeanEquals(test, test2);
        }
Ejemplo n.º 8
0
        //-------------------------------------------------------------------------
        public virtual void test_total()
        {
            CrossGammaParameterSensitivity @base = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD1);
            CurrencyAmount test = @base.total();

            assertEquals(test.Currency, USD);
            double expected = MATRIX_USD1.get(0, 0) + MATRIX_USD1.get(0, 1) + MATRIX_USD1.get(1, 0) + MATRIX_USD1.get(1, 1);

            assertEquals(test.Amount, expected);
        }
Ejemplo n.º 9
0
        public virtual void test_getSensitivity_eurUsd()
        {
            CrossGammaParameterSensitivity test      = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, ImmutableList.of(Pair.of(NAME1, METADATA_USD1), Pair.of(NAME2, METADATA_EUR1)), USD, MATRIX_USD_EUR);
            CrossGammaParameterSensitivity expected1 = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, USD, MATRIX_USD1);

            assertEquals(test.getSensitivity(NAME1), expected1);
            CrossGammaParameterSensitivity expected2 = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, NAME2, METADATA_EUR1, USD, MATRIX_EUR1);

            assertEquals(test.getSensitivity(NAME2), expected2);
            assertThrowsIllegalArg(() => test.getSensitivity(CurveName.of("NAME-3")));
        }
Ejemplo n.º 10
0
        public virtual void test_of_eurUsd()
        {
            CrossGammaParameterSensitivity test = CrossGammaParameterSensitivity.of(NAME1, METADATA_USD1, ImmutableList.of(Pair.of(NAME1, METADATA_USD1), Pair.of(NAME2, METADATA_EUR1)), USD, MATRIX_USD_EUR);

            assertEquals(test.MarketDataName, NAME1);
            assertEquals(test.ParameterCount, 2);
            assertEquals(test.ParameterMetadata, METADATA_USD1);
            assertEquals(test.getParameterMetadata(0), METADATA_USD1[0]);
            assertEquals(test.Currency, USD);
            assertEquals(test.Sensitivity, MATRIX_USD_EUR);
            assertEquals(test.Order, ImmutableList.of(Pair.of(NAME1, METADATA_USD1), Pair.of(NAME2, METADATA_EUR1)));
        }
 /// <summary>
 /// Obtains an instance from a single sensitivity entry.
 /// </summary>
 /// <param name="sensitivity">  the sensitivity entry </param>
 /// <returns> the sensitivities instance </returns>
 public static CrossGammaParameterSensitivities of(CrossGammaParameterSensitivity sensitivity)
 {
     return(new CrossGammaParameterSensitivities(ImmutableList.of(sensitivity)));
 }
Ejemplo n.º 12
0
 public virtual void test_of_metadata_badMetadata()
 {
     assertThrowsIllegalArg(() => CrossGammaParameterSensitivity.of(NAME1, METADATA_BAD, USD, MATRIX_USD1));
 }