Design a bond class, JAVA Programming

Assignment Help:

In the lectures, we have written programs for bond pricing in discrete time. We have also talked about the theory for bond pricing and yields in continuous time. In this exercise, you will implement a bond class with methods to go between yields and prices of arbitrary bonds.

a)  Design a bond class that can be used for general coupon bonds, making annual payments, to calculate yield to maturity (YTM) and bond prices. A continuous compounding convention for YTM calculations should be used. The bond declaration may look something like:

class bond {
public:
      bond() {}
      bond() {}
      bond(double T0,double C0, double P0,double t0);
      void set_price(double Price0);
double get_price();
      void set_YTM(double YTM0);
      double get_YTM();
      double T; 
      double t;
      double C;
      double P;
private:
      double Price;
      double YTM;
};
 
You may also wish to include additional methods and attributes. The reason why the original time to maturity, T, the current time, t, the coupon payments, C, and the principal, P, are public fields, whereas the Price and Yield to maturity are defined as private fields is that the former are general attributes of a bond and can take on arbitrary (nonnegative) values, whereas the latter two are linked: one implies the other.
 
b) Create a method that calculates the bond price, given, YTM T, t, C and P.

c) Create a method that calculates the YTM, given Price, T, t, C and P.
 
d) Write a program that uses your class to calculate the YTM for a bond and the price of another bond.


Related Discussions:- Design a bond class

Develop a java - jnlp application, Need Java/JNLP Application - GUI and Bac...

Need Java/JNLP Application - GUI and Backend Projects Project Description: I am looking for assistance in making changes to a complex java application. System launches fro

Multithreading and networking, This assignment has two main objectives. It ...

This assignment has two main objectives. It aims to establish a basic familiarity with the Java API (Java Thread class) for creating multithreaded Java application, and the Java ne

Explain about core java, Java is increasingly used for middleware applicati...

Java is increasingly used for middleware applications to communicate among Server and clients. Java has features like multithreading, portability and networking capabilities. Chang

Implement queues - linked list, Implement Queues / Linked List Project D...

Implement Queues / Linked List Project Description: In this project, two kinds of queue are implemented: LinkedQueue implements FIFOQueueInterface { .... } and LLQueueItr imp

Develop a geonetwork template, Develop a GeoNetwork Template Project Des...

Develop a GeoNetwork Template Project Description: Want a personalized GeoNetwork Template with the consideration of the logo included to this proposal and its colors. The ba

What is initializing fields, What is Initializing Fields ? Fields can (...

What is Initializing Fields ? Fields can (and often should) be initialized while they're declared, just like local variables. class Car { String licensePlate = ""; // e.g

Convert encrypted hsql database into csv format, Project Description: We...

Project Description: We have an encrypted HSQL Database which we need to convert into CSV format. HSQL DB . We have java application jar file which reads that database but no

What is scope of variable in java, What is Scope of Variable ? Space in...

What is Scope of Variable ? Space in that a variable is effective is called as the scope of a variable. In other words we can say area where that variable is available for the

Java project illustrate sequential and selection programming, This project ...

This project focuses on demonstrating the understanding of data types, input/output, sequential and selection programming statements, and mathematical operations. The project re

Student, short Java application that stores words in an Array or ArrayList....

short Java application that stores words in an Array or ArrayList.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd