package com.imsl.test.example.finance; import com.imsl.finance.*; import java.text.*; import java.util.*; /** *
* Computes the convexity of a 10 year bond.
* The convexity of a 10 year bond which pays interest semiannually is returned * in this example. * * @see Code * @see Output */ public class BondConvexityEx1 { static final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT, Locale.US); static private GregorianCalendar parse(String s) throws ParseException { GregorianCalendar cal = new GregorianCalendar(); cal.setTime(dateFormat.parse(s)); return cal; } public static void main(String args[]) throws ParseException { GregorianCalendar settlement = parse("7/1/90"); GregorianCalendar maturity = parse("7/1/00"); double coupon = .075; double yield = .09; int freq = Bond.SEMIANNUAL; DayCountBasis dcb = DayCountBasis.BasisActual365; double convexity = Bond.convexity(settlement, maturity, coupon, yield, freq, dcb); System.out.println("The convexity of the bond with semiannual " + "interest payments is " + convexity); } }