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
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
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
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