ActiveX Software for Visual Basic 6/.NET, C++ 6/.NET, Delphi, Borland C++ Builder: Matrix Maths, Time Series
 
 Home   |   Products   |   Testimonials   |   Prices   |   Support   |   Contact   |   Publications   |   About   |   Buy Now
Quick Links   Home   Purchase   Support
Products   Product Home   ActiveX/COM Components   .NET Components   Version History
Support   Support Home   Installation Help
About Us   Company Info   Clients   Testimonials   Publications   Contact Us

   Java Financial Software - Black-Scholes Option Pricing
 

    Options/J 10.0
Financial Options Pricing and Analysis Java Component

Product Features  Download  Product FAQ  Screen Shots!   Prices Buy Now

Options/J Java Options Pricing and Analysis Software

Options/J is designed to make life easier for quantitative analysts, option traders and others needing fast stock option pricing in Java applications.

Options/J is a full Java library, supplied in JAR format and comes complete with demo application and source code ready to use. It can price options, estimate historical and implied volatility, calculate greeks and more and is usable in both Windows, Linux and Apple Mac using Java.

Options/J gives you the power to easily create your own trading system, option price calculator, implied volatility estimator and more. With our easy to use, yet powerful software, including demo applications with source code, backed up by our top notch support, you will be able to build applications to price stock options, commodities and currencies in minutes, not days.

Options/J 10.0 contains a range of powerful options pricing methods including the following:
  • Fast analytic Black-Scholes and Bjerksund-Stensland models which include discrete dividends
  • Probabilistic Methods to compute values such as:

       Upside stock potential,
       Downside stock potential
       Probability of security price being above, below, touching or between values.
  • Fast analytic methods to compute probability of stock ever touching a price level as well as Monte Carlo methods
  • Risk-Reward methods to compute potential risk and reward for option trades.
  • Compute prices and greeks in just one function call for both European and American style options

Options/J contains a range of fast analytic methods as well as in some cases, Monte Carlo methods so the two can be confirmed as desired. Importantly, we have included a fast analytic method for computing the probability of a security touching a price level within a set time. For options trading, this type of calculation may be very important.

Options/J is very fast, yet easy to use. In only one line of code, you can add derivative pricing to your application. a software package that enables you to price stock options, commodities and currencies. It is a full Java Library for creating your own stock option pricing applications, options calculators and option trading applications. If you need the ability to program in ActiveX, COM or .NET, take a look at our other products, Options/X and Options/NET which are designed for Windows environments and IDEs including: Visual Basic 6, VBA, Visual C++ 6, C# and more.

With Options/J, you can compute greeks, implied and historical volatility to value put and call derivatives for American and European options using the Black-Scholes formula, Binomial Cox-Ross-Rubenstein model and others. 

With Options/J, you can create your own exchange traded stock option price calculator to compute stock option prices for European and American Options, analyze options volatility smile or compute historical volatility. Are you interested in making money using stock options? Have you tried stock trading, but now need to work out how to trade options successfully? One of the most essential tools for options trading is software for options pricing. The beauty of Options/J is that you are in control of exactly what is computed and what algorithm is used. You are free to create your own options pricing calculator using the built-in functions of OptionsJ. 

We provide the source code in Java so that you can use the built-in options pricing models to easily create your own option pricing calculator. Use our example program or develop your own Windows or Linux applications for option trading easily. While we may not be able to turn you into an options trader, we do provide the software that is used by options traders and brokers to value and analyze stock options.

With full source samples you will be able to quickly and easily implement Options Trading software. Using implied volatility analysis, compute the volatility smile. If you are interested in stock options trading, futures trading, implementing and testing your own option trading strategies, or even just want to learn options trading, then you will need solid, reliable options pricing software. While many options software products are difficult to learn or require extensive training or courses, Options/J is very powerful yet easy to use. If you need help getting started or require additional features please contact us as we provide extensive support with all of our software. Please refer to our client testimonials to see what others say. In many cases our options trading software will enable you to be up and running within minutes of downloading the software.

Both zip and tar versions of the software are available, please contact us if you require assistance.

Related Options Software

Options/NET - Options Analysis .NET Component
Volatility/X - Volatility Estimation Excel Add-In
Options/X - Options Analysis ActiveX/COM Component

Features of Options/J

Find the "greeks" - Delta, Gamma, Theta, Vega, Rho. Dividend earnings as a percentage yield can also be included. European and American options can be analyzed using the Black-Scholes option pricing formula, Binomial options pricing methods (Cox-Ross-Rubinstein), Black method for futures or any of the other methods listed below.  

Options/J includes a number of popular models for estimating the theoretical option prices and contains the following models:

  • Black-Scholes-Merton (allows for dividend yields)
  • Black-76 (Futures)
  • Cox-Ross-Rubinstein (Binomial)
  • Bjerksund-Stensland (fast estimation of American options)
  • Barone-Adesi-Whaley
  • Garman-Kohlhagen (used to price European currency options)
  • Roll-Geske-Whaley
  • French-84 (allows for the effect of trading days)
  • Merton jump diffusion
  • Historical volatility (estimate volatility using raw price data)

These option pricing algorithms provide a method of determining the call and put prices for European and American options, greeks, implied volatility and volatility skew for both call and put options is also available.
Options/J comes in 2 different editions: Enterprise and Platinum. The difference between each of these methods is given in the table below:

Pricing Models    
Black-Scholes

yes

yes

Binomial

yes

yes

Bjerksund-Stensland

yes

yes

Barone-Adesi-Whaley

yes

yes

Garman-Kohlhagen

yes

yes

Roll-Geske-Whaley

yes

yes

French-84

yes

yes

Merton jump diffusion

yes

yes

Functions    
Call/Put Prices

yes

yes

Greeks

yes

yes

Implied Volatility

yes

yes

Probability Calculations

yes

yes

Risk-Reward Calculations

yes

yes

Historical Volatility

yes

yes

Continuous Dividends

yes

yes

Discrete Dividends

yes

yes

Server
   

yes

Sample Applications    
Java

yes

yes


Options/J Class Library in Eclipse IDE

If you are a Java developer, then there is a good chance you are familiar with one or more of the popular Java integrated development environments such as Eclipse or NetBeans IDE. As you can see from the image below, Options/J can be easily used in the Eclipse IDE and loaded into your application as a JAR file. From this point the class functions for options pricing and analysis are readily available. In many cases you need just one function call to obtain multiple results.

Full Fast options pricing and greeks can be obtained in the Eclipse IDE for your Java application..

A well known issue amongst serious Java developers, particularly those who have come from a C/C++ background, is how to return multiple values from Java functions. Without going into the arcane and somewhat pointless politics of the issue, it is worth commenting on how and why we deal with multiple return values. There exists engineering systems which we may refer to as MIMO or multiple-input multiple-output and so when it comes to software implementations, we may naturally prefer to be able to provide functions which can process data in a similar manner. Typically we may find ourselves dealing with some form of model where it makes sense to obtain all output values at the same time, through one function call. In computational finance areas such as option pricing, it is common to see a considerable amount of processing effort going into computing the option prices and greeks. For some algorithms however, it is more efficient to use the same common calculations and then produce multiple results stemming from these common calculations, than to use separate function calls which repeat the same calculations. The simplest solution to this issue is to make the function call return multiple values. While there are a few ways to do this, in our Java functions, we return values using a passed in array. 

For example, we may define an array of doubles which will receive the output and then call the appropriate function as follows:

double[] RetVals = new double[NVals ];

optionsj1.BSPriceGreeks(StockPrice, ExercisePrice, InterestRate, 
                        TimeToMaturity, Volatility, DividendRate, RetVals);

CallPrice = RetVals[0];  // Not necessary, but done for clarity
PutPrice = RetVals[1];
DeltaCall = RetVals[2];
DeltaPut = RetVals[3];
ThetaCall = RetVals[4];
ThetaPut = RetVals[5];
Gamma = RetVals[6];
Vega = RetVals[7];
RhoCall = RetVals[8];
RhoPut = RetVals[9];

Thus we can easily obtain multiple output values from a Java function. This is the general and easy to follow approach adopted in all of our function calls.

Options Source Code Examples

If you are aiming to develop an option trading system for the stock market, try Options/J, a Java Library in Windows and Linux compatible JAR format that enables you to quickly build your own system. 

The advantage of Options/J is that you can use it with our demo application and instantly begin creating your own application. With the addition of stock quotes, you can create your own option trading software, customized to your own purposes.

Options/J includes a sample application with source code in Java. You can quickly see just how easy it is to price and analyse data using Options/J. Options/J Java Class Library implements option pricing and analysis functions.  

 

   Screen shot of an application built in Eclipse using Options/J.

Options/J is a Java Class Library implemented in a single JAR file, so it can be used in a wide range of applications that support this standard for JRE 1.6 and above. This includes both Windows, Linux and Apple Mac OS-X with Java SE 6 installed. It can be used in Java programming IDEs such as Eclipse and NetBeans IDE. Options/J is written in 100% Java. The trial version of Options/J is feature limited: you will only be able to access Black-Scholes functions using the trial version. However it is possible to develop trial applications to test out your ideas. If you need to price American Options using the Binomial model (Cox-Ross-Rubenstein), or do futures pricing, then by purchasing the full version you can obtain the full capability.

Black-Scholes Option Pricing

The Black-Scholes option pricing formula can be used to compute the prices of Put and Call options, based on the current stock price, the exercise price of the stock at some future date, the risk-free interest rate, and the standard deviation of the log of the stock price returns (the volatility). If you have access to financial end-of-day stock data, then you can use our software in Excel to easily price financial options to work out their theoretical fair value. 

A number of assumptions are made when using the Black-Scholes formula. These include: the stock price has a lognormal distribution, there are no taxes, transaction costs, short sales are permitted and trading is continuous and frictionless, there is no arbitrage, the stock price dynamics are given by a geometric Brownian motion and the interest rate is risk-free for all amounts borrowed or lent. It is possible to take dividend rates for the security into consideration.

Further information on the Black-Scholes model for pricing derivatives and how to use Options/J to price stock, currencies and commodity Put and Call derivatives using European and American style options is given here:

Binomial Option Pricing

American options differ from European options by the fact that they can be exercised prior to the expiry date. This means that the Black-Scholes option pricing formula is not suitable for this type of option. Instead, the Cox-Ross-Rubinstein Binomial pricing algorithm is preferred. OptionsJ implements the binomial pricing algorithm for pricing American options. used to compute the prices of Put and Call options, based on the current stock price, the exercise price of the stock at some future date, the risk-free interest rate, the standard deviation of the log of the stock price returns (the volatility), and if applicable, the dividend rate.

Implied Volatility

Given the option price, it is possible to find the volatility implied by that price. This is known as the Implied Volatility and it has a number of characteristics which have been used to identify trading opportunities. Options/J implements implied volatility functionality for both American and European options using the Binomial and Black-Scholes methods respectively.

References

  1. F. Black and M. Scholes, The Pricing of Options and Corporate Liabilities, Political Economy, Vol 81, May-June, pp. 637-654.
  2. J.C. Hull, "Options, Futures, and other Derivative Securities", Second Edition, Prentice-Hall: Englewood Cliffs, 1993.