CAPDM Tutorial Applets

Black Scholes

Functionality:

This applet displays outcomes of the more general Black-Scholes formula on option valuation.

Remote Control using JavaScript

It is possible to set the independent variable values in the applet and return strings representing individual values or the status of the applet (ie all independent variable values).

Examples

Set Security s0 to 270

Set Standard Deviation of S0 to 0.6

Set Exercise X to 310

Set Risk Free to 4

Set Expiry Time to 0.5

Reset Applet

Show 'About' dialog

Show applet status

How to Invoke the Applet

The applet can be invoked by embedding an APPLET tag into your HTML document (if you look at the source of this document you will see a working example you can copy). The table below details the basic parameters used and additional startup parameters that are specific to this applet.

<APPLET 
  CODEBASE="../../../../classes"
  ALT="Black Scholes"
  CODE="applet.capdm.finance.blackscholes.BlackScholesApp" 
  NAME="BlackScholes"
  WIDTH="400"
  HEIGHT="500">
  <PARAM NAME="START_S0" VALUE="300">
<PARAM NAME="START_X" VALUE="250">
<PARAM NAME="START_RF" VALUE="10">
<PARAM NAME="START_SD" VALUE="0.40">
<PARAM NAME="START_T" VALUE="0.25"> </APPLET>
Basic Parameters Use
CODEBASE="../../../../classes" The CODEBASE of the applet must point at the top-level classes directory in order for the applet to be found.
CODE="applet.capdm.finance.
blackscholes.BlackScholesApp "
This required attribute gives the name of the file that contains the applet's compiled Applet subclass. This file is relative to the base URI of the applet.
ALT="Black Scholes" This optional attribute specifies any text that should be displayed if the browser understands the APPLET tag but can't run Java applets.
NAME="BlackScholes" This optional attribute specifies a name for the applet instance, which makes it possible for applets on the same page to find (and communicate with) each other. If you intend to use JavaScript/Applet scripting then the applet must be named as shown.
WIDTH="400" HEIGHT="500" These required attributes give the initial width and height (in pixels) of the applet display area, not counting any windows or dialogs that the applet brings up.
Applet Startup Parameters Use
"START_S0"
Starting value of S0 - default is 300
"START_X" Starting value of X - default is 250.
"START_RF" Starting value of Risk Free variable - default is 10
"START_SD" Starting value of Standard Deviation of s0 - default is 0.4
"START_T" Starting value of Expiry Time - default is 0.25

For more information on the use of the APPLET tag and other attributes you can use but which are not listed above, visit the W3.org specification page at: APPLET tag in HTML 4.

Runtime Applet API Calls

This applet can be called into using Javascript 1.1 while running. Although JavaScript can call the Applet directly, some convenient JavaScript functions have been created which deal with the details of the communication. The following table lists the call Names which can be made, and gives examples of their use and results.

API Call Name Parameters Use and Result
setValue(name,value) 'name' can be one of "SecurityS0", "SDofS0", "ExerciseX", "RiskFree", "ExpiryTime"
'value' is its new value

eg. javascript:document.BlackScholes.setValue('RiskFree','4');

Used to set the value of an independent variable in the applet

getValue() none javascript:document.BlackScholes.getValue(); Gets the status of the applet
getValue(name) 'name' can be one of "SecurityS0", "SDofS0", "ExerciseX", "RiskFree", "ExpiryTime"

eg. javascript:document.BlackScholes.getValue('RiskFree');

Returns the current value of the variable from the applet.

getValue(name,dp) 'name' can be one of "SecurityS0", "SDofS0", "ExerciseX", "RiskFree", "ExpiryTime"
'dp' is the number of decimal places of accuracy required
javascript:getValue("ExerciseX",2); Gets the current value of the variable as a string to the number of decimal places specified
showAbout() none javascript:showAbout(); Shows the version dialog box of this applet.
reset() none javascript:reset(); resets the applet to initial starting position