예제 #1
0
 public void TestCashflowGamma1CCR()
 {
     for (var i = 1; i <= 10; i++)
     {
         var delta1 = CashflowAnalytics.CashflowGamma1CCR(10000000.0m, i, (Decimal)Math.Exp(-0.05 * i));
         Debug.WriteLine(String.Format("Delta1 : {0} Time: {1}", delta1, i));
     }
 }
예제 #2
0
 public void TestCashflowNPV()
 {
     for (var i = 1; i <= 10; i++)
     {
         var npv = CashflowAnalytics.CashflowNPV(10000000.0m, (Decimal)Math.Exp(-0.05 * i));
         Debug.WriteLine(String.Format("npv : {0} Time: {1}", npv, i));
     }
 }
예제 #3
0
 public void TestInArrearsCouponNPV()
 {
     for (var i = 1; i <= 10; i++)
     {
         var df  = (Decimal)Math.Exp(-0.05 * i / 2);
         var npv = CashflowAnalytics.InArrearsCouponNPV(1000000.0m, 0.5m, 0.05m, df);
         Debug.WriteLine(String.Format("npv : {0} Time: {1} Df: {2} YearFraction: {3}", npv, i, df, 0.5m));
     }
 }
예제 #4
0
 public void TestISDADiscountedFixedCouponDeltaR()
 {
     for (var i = 0; i < 10; i++)
     {
         var df  = (Decimal)Math.Exp(-0.05 * i / 2);
         var npv = CashflowAnalytics.ISDADiscountedFixedCouponDeltaR(1000000.0m, 0.5m, 0.05m, df);
         Debug.WriteLine(String.Format("delta0 : {0} Time: {1} Df: {2} YearFraction: {3}", npv, i, df, 0.5m));
     }
 }
예제 #5
0
        public void TestCashflowDelta12()
        {
            var delta1 = CashflowAnalytics.CashflowBucketDelta12(10000000.0m, 0.25m, 10.0m, 0.05m, (Decimal)Math.Exp(-0.05 * 10.0));
            var index  = 0;

            foreach (var delta in delta1)
            {
                Debug.WriteLine(String.Format("Delta1 : {0} Time: {1}", delta, index * 0.25m));
                index++;
            }
            Debug.WriteLine(String.Format("TotalDelta1 : {0}", delta1.Sum()));
        }