Introducing OpenOffice Calc plugin for JQuantlib
A Calc plugin for advanced financial calculations in Open Office
JQuantLib has a set of advanced capabilities in financial numerical computations. This project, which is about to be checked in JQ repository exposes these capabilities in Open Office. Here is a sneak peek.
Why a Calc plugin?
Since JQuantlib is written in Java, there are numerous ways to provide cross-platform GUI. Some of the prominent ones being -
- Swing front end
- JavaFX front end
- Web based (may be a lot AJAX thrown in) front end
- Jython/Python front end
- OpenOffice Calc spreadsheet front end
- OpenOffice usage is on the rise. Since we have more and more people using OOo, it makes sense to capitalize on the oppurtunity.
- OpenOffice is open source. Nothing like combining two open source apps to get a more powerful one.
- Swing and Web based solutions are more suited for development and deployment in company that has its objective sorted out. Making a general purpose, one size fits all GUI for a library as extensive as JQuantlib will definitely make the presentation quite cluttered.
- Development and enhancement of the OOo plugin is less costlier when compared to other clients. Part of the reason is that with OOo calc plugin the front-end design phase is short-circuited. OOo does all the hard work and developers can focus on the main task at hand.
- A OOo calc plugin offers an excellent oppurtunity for a piecmeal, incremental and distributed development. Each function of the plugin can be developed independently of others, something which is invaluable in open source world.
- Last but not the least, with Calc there is no dependency on third-party chart libraries such as JFreeChart. This certainly makes the solution leaner and at the same does not restrict the visualization formats.
Version 0.1 - a first look
My intention with version 0.1 was to kickstart the process of JQuantlib plugin. Rather than trying to save the world, I have limited myself to the most elementary functions. As with all open source applications, the hope here is that community will accept and carry forward the work. As of now, the plugin has following functionalities -
- BlackScoles European option pricing. Function name - JQEUROPEANBLACKSCHOLES()
- Generation of prime numbers. Function name - JQGETPRIMENUMBERAT(index)
- Generation of PoissonDistribution values.
- Generation of NormalDistribution values.
- Generation of NonCentralChiSquaredDistribution values.
- Generation of InverseCumulativePoisson Distribution values.
- Generation of InverseCumulativeNormal Distribution values.
- Generation of Gamma distribution values.
- Generation of CumulativePoissonDistribution values.
- Generation of CumulativeNormalDistribution values.
- Generation of BinomialDistributionValue values.
- Generation of Factorials and log of factorials.
You can find a more detailed writeup here.
As a sample, you can have a look at this pdf version of the spreadsheet that does the BlackScholes pricing of options.
Another spreadsheet that does prime number generation and log of factorial can be found here.
Of course for the spreadsheets to work properly, you need the plugin. I'll post the home and download location of the plugin as soon as these details are finalized.
Update April 13: With Ueli's help the OOo plugin was checked in -
http://jquant.svn.sourceforge.net/viewvc/jquant/trunk/jquantlib-ooplugin/?diff_format=h
Ueli also got my interest rate derivatives ans statistics work checked in to JQuantlib -
Helo,
Was wondering if you can tell me how to use:
"OpenOffice Calc spreadsheet front end",
via embedding calc in a Java JFrame!
Or if you know someone that does know how to do this,
please point me in that direction.
Paluee
Posted by paluee on July 15, 2009 at 10:49 AM TPT #