コード例 #1
0
 def testShiftCurve(self):
     curve = InterestRateCurve(ccy='USD', index=Index('LIBOR'), term='M', 
                               numTerms=3, pricingDate=self.pricingDate, marketId='TEST1')
     curve.load()
     #curve.printCurve()
     cv1 = curve.buildZeroCurve()
     curve.shift(0.01)
     cv2 = curve.buildZeroCurve()
     for node in cv1.nodes():
         a = node
     for node in cv2.nodes():
         a = node
コード例 #2
0
    def testBuildMMAndSwapFullCurve(self):
        curve = InterestRateCurve(ccy='USD', index=Index('LIBOR'), term='M', 
                                  numTerms=3, pricingDate=self.pricingDate)
        curve.addRate(InterestRate(term='M', numTerms=1, type='Deposit', 
                                   mid=0.003, curve=curve))
        curve.addRate(InterestRate(term='M', numTerms=3, type='Deposit', 
                                   mid=0.0039, curve=curve))
        curve.addRate(InterestRate(term='M', numTerms=6, type='Deposit', 
                                   mid=0.0056, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=1, type='Swap', 
                                   mid=0.0052, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=2, type='Swap', 
                                   mid=0.0054, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=3, type='Swap', 
                                   mid=0.0066, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=4, type='Swap', 
                                   mid=0.0089, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=5, type='Swap', 
                                   mid=0.0116, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=7, type='Swap', 
                                   mid=0.0164, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=10, type='Swap', 
                                   mid=0.0214, curve=curve))
        curve.addRate(InterestRate(term='Y', numTerms=30, type='Swap', 
                                   mid=0.0295, curve=curve))

        cv = curve.buildZeroCurve()
        for node in cv.nodes():
            a = node
コード例 #3
0
 def testCreateCurveAndRates(self):
     curve = InterestRateCurve(ccy='USD', index=Index('LIBOR'), term='M', 
                               numTerms=3, pricingDate=self.pricingDate)
     rate = InterestRate(term='M', numTerms=1, type='Deposit', mid=0.01,
                         curve=curve)
     curve.addRate(rate)
     cv = curve.buildZeroCurve()
     for node in cv.nodes():
         a = node
コード例 #4
0
 def testBuild1RateCurve(self):
     curve = InterestRateCurve(ccy='USD', index=Index('LIBOR'), term='M', 
                               numTerms=3, pricingDate=self.pricingDate, marketId='TEST1')
     rate = InterestRate(term='M', numTerms=1, type='Deposit', mid=0.01,
                         curve=curve)
     #TODO: Fix. this addRate adds the rate to the DB
     curve.addRate(rate)
     zeroCurve = curve.buildZeroCurve()
     for node in zeroCurve.nodes():
         a = node