Prof. Jayanth R. Varma - Software

It is all on GitHub now.

This page used to host some of the software that I have written for educational use. This has all been removed because GitHub is a better way to share software. Below are links to some of my GitHub repositories:

Black Scholes for options, portfolios, combos (Python)

This Python package computes Black Scholes options values and Greeks for options and option combos with a number of valuable features. It includes all first order greeks, important second order greeks (gamma, gamma dual, vanna, volga and charm), and the most important third order greek (color). The package handles a portfolio of options (option combinations) where different options are held long or short positions with different weights. The aggregate value and Greeks can be computed for the entire portfolio. Option portfolios can contain forward contracts and zero coupon bonds. Plotting functions are provided to plot payoffs, profits, values and Greeks of various options (combos).

Command line python front end to ics calendar (Python)

A Python command line front-end to your Calendar. It allows you to get your agenda, view weekly and monthly calendars (ascii text graphical calendar), search for events, add new events, delete events, and edit events.

Bond pricing using YTM or zero curve. Also basic NPV/IRR functions (Python)

This Python package provides bond pricing functions as well as basic NPV/IRR functions. Bond valuation can be done using an yield to maturity or using a zero yield curve. There is a convenience function to construct a zero yield curve from a few points on the par bond or zero yield curve or from Nelson Siegel parameters.

R package for financial present value functions and option pricing (R)

This R package implements the basic financial analysis functions similar to (but not identical to) what is available in most spreadsheet software. This includes finding the IRR and NPV of regularly spaced cash flows and annuities. Bond pricing and YTM calculations are included. In addition, Black Scholes option pricing and Greeks are also provided.

R Shiny App for Black Scholes Option Valuation and Greeks (R)

Interactive R Shiny App for Black Scholes Option Valuation and Greeks. User can input the strike, maturity, volatility, risk free rate and underlying price. App displays and plots the option values and greeks as the input parameters are changed.

R-Shiny App for computing and plotting the Markowitz mean-variance efficient frontier (R)

This is a R-Shiny App for computing and plotting the Markowitz mean-variance efficient frontier. User can input the number of securities, their means, variances and correlations, and the App plots the efficient frontier and the associated portfolio composition as the input parameters are changed..

Java functions and applet for Black Scholes option pricing formula (Java)

This software provides JAVA code for option valuation using Black Scholes. It provides a set of JAVA functions for Black Scholes option values, implied volatility and greeks. It also provides a graphic use interface using Swing where the user can provide the asset price, strike, interest rate, volatility and other parameters. The GUI instantly displays the option values and greeks as the input parameters are changed.

Valuation of options on bonds and of bonds with embedded put and call options (C++)

This software uses the Black-Derman-Toy (BDT) model to value Options on Bonds (Interest Rate Options) or bonds with embedded interest rate options (put/call options). A single factor binomial interest rate tree is built calibrated to the specified yield curve and volatility curve and this is used to value the options.

Markowitz Efficient Frontier (C++)

This software computes Markowitz (Mean-Variance) Efficient Frontier. Also computes risk and return for any portfolio.

Binomial valuation of options and convertible bonds (C++)

The software handles embedded puts and calls (including soft calls) and has limited support for multi-currency structures. The software uses a binomial lattice with the stock price as the only state variable. This means that all call and put features are regarded as options only on the stock price, and values that may attach to these because of the volatility of interest rates, exchange rates or the credit spread are ignored. The software does not use the warrant valuation approach which requires the volatility of equity (stocks plus warrants). Instead, it ignores the dilution effect and uses stock price volatility which is more readily available. The software can also be used in valuing options on stocks. This is more useful for American puts, and to a lesser extent American calls on dividend paying stocks. European options can be valued more easily by the Black-Scholes formula.

Excel Addin for Black Scholes (Visual Basic (Microsoft Excel))

Black Scholes Option Valuation, Implied Volatility and Option Greeks

Excel Addin for Bond Pricing (Visual Basic (Microsoft Excel))

Bond pricing using a zero yield curve

Excel Addin for Numerical Integration (Visual Basic (Microsoft Excel))

Numerical Integration using Romberg

Excel Addin for Kernel Density (Visual Basic (Microsoft Excel))

Kernel (Probability) Density Estimation