Example: Number of Payable Coupons

In this example, the settlement date is 11/11/86. The number of payable coupons between this date and the maturity date is returned.

import com.imsl.finance.*;
import java.text.*;
import java.util.*;

public class coupnumEx1 {

    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("11/11/86");
        GregorianCalendar maturity = parse("3/1/99");
        int freq = Bond.SEMIANNUAL;
        DayCountBasis dcb = DayCountBasis.BasisActual365;
        int coupnum = Bond.coupnum(settlement, maturity, freq, dcb);
        System.out.println("The number of coupons payable between the "
                + "\nsettlement date and the maturity date is " + coupnum);
    }
}

Output

The number of coupons payable between the 
settlement date and the maturity date is 25
Link to Java source.