If UnRisk was a Ballroom Dance

It most probably was the Foxchatrot demo performed by Luca & Lorraine Barrichi.

Watch The Dance

They prove that it does not need heavy make-up, bells and whistles to dance in the most elegant and smooth way, reduced to the essence of dancing.
Their foxchatrot combines the best of several worlds: foxtrot steps and a jazzy version of Bali Hai.
At UnRisk we are also passionate about combinations from several worlds: Take Mathematica as a language, advanced numerical techniques proven in reactor modelling and treat your customers as if you had to dance with them.

To Tree or Not To Tree

Binomial trees are perfect. Well, the Cox-Ross-Rubinstein One-Level Model is perfect to introduce the concept of a risk-neutral measure, which is (and was also not for me) not easy to understand for beginners. When there are no dividends, constant interest rates and constant volatilities, then N-level binomial trees recombine.
Recombining N-level trees need little storage and are easy to implement, even for instruments with early exercise rights. If done properly (from the algorithmic point of view), they are quite efficient.
A readable piece od Mathematica code for a European call would be

BinomialEuropeanCall[S_, K_, r_, sigma_, T_, n_] :=
Module[{dt, a, up, down, P, Q, BinomTree, value, level},
dt = T/n;
a = Exp[r*dt];
up = Exp[sigma*Sqrt[dt]]*a; down = Exp[-sigma*Sqrt[dt]]*a;
P = (a - down)/(up - down); Q = 1 - P;
P = P*Exp[-r*dt]; Q = Q*Exp[-r*dt];

BinomTree = Table[Max[S*down^node*up^(n - node) - K, 0], {node, 0, n}];
Do[BinomTree =
Table[{P, Q}.{BinomTree[[node]], BinomTree[[node + 1]]},
{node, 1, level}]; {level, n, 1, -1}];
value = BinomTree[[1]];
Clear[BinomTree];
value]


Nevertheless, there must be some disadvantages of binomial trees, otherwise my blog colleague Michael Aichinger would not have any reason to tell you about, say, Finite Elements and other really clever methods.
Even or odd?
One disadvantage of naïve implementations of binomial trees is that the option value depends quite heavily (and oscillatory) on the number of levels used as the following figure exhibits:


For vanilla instruments, these oscillations could be repaired by calculating the mean of two neighbouring values. But when discontinuous conditions are of importance (like in knock-out options), things get even worse. The following figure shows the value of an up-and out call option calculated by binomial trees and its binomial delta.

The true (Black-Scholes) delta should become negative above 115 or so. But the calculated binomial delta is positive in most of the points and negative only at the sharp peaks downwards. So, if one delta-hedges, he/she might end up with a situation of increased instead of decreased market risk. Well done, trees!

I will return to trinomial trees in my next blog entry.

We take UnRisk-Q to the Quant Community

Our PRICING ENGINE has been introduced 2001. Hundreds of front-office and risk practitioners enjoy immediate results, from instant deal types in the Excel front-end and the robustness from high-end numerical schemes.

If UnRisk was a Car

it most probably was a Fiat 500 Abarth. The name comes from the world famous tuning firm that in the 1950s and 1960s took ordinary Fiats and turned them into racing cars with a formidable reputation.
It has exceptional performance, 135 bhp but safety ist maximized by the latest control technologies. It is driven by the need to improve a car's performance for comfort and security.
We, at UnRisk, have tuned proven models by high-end numerical schemes and boost performance by clever principal component application, GPU co-processing and Grid-computing. To get a speed-up of 10.000, you do not need a supercomputer. A minimalist Windows-based infrastructure is perfect. A solution, easy to set up and deploy, that is validated. UnRisk FACTORY.

Equal Valuation and Risk Management?

Valuation and risk management, two sides of the quant business, must be treated with equal sophistication, with equal respect, and with equal suspicion. And there must be closer interaction between them. At every stage of valuation and model development you must be asking questions about risk and robustness. It is dangerous to come up with some fancy model and only afterwards start asking questions about model error. Anyone who has ever calibrated a model knows that the methods used to mitigate model risk almost come as an afterthought, and are totally inconsistent with the original model.

Model Risk Seminar in Vienna

17-Jun-08, Vienna. Over 30 quants and risk experts joined Andreas Binder and Michael Aichinger on their tour through the most beautiful, but dangerous fields of mathematical finance. In the spirited discussion it turned out again that it is recognized that different models applied on the same deal type will usually lead to different prices (If they really differ, distrust the instrument)). Not so surprisingly, the surprise that good, but complex, model information can get lost in the numerical jungle and evaporate to ground-fog.

Next Model Risk event: 15-Jul-09, Zurich.

The UnRisk Language: Callable Bonds

UnRisk code: click to enlarge


Let's assume we want to price the following callable fixed rate bond:
- the underlying bond pays annual coupons of 5.2%, following the 30/360 day-count convention and corresponding to a nominal amount of 100,000 EUR
- the first coupon period starts at October 10, 2008 and the redemption (the nominal amount) is paid at October 10, 2018
- in addition, the bond is callable at each coupon date, starting from October 10, 2011


What are the steps to translate the termsheet of this callable fixed rate bond into the language of UnRisk?
The picture above gives the answer (due to the descriptive language of UnRisk, the code does not need to be explained in detail): First, the underlying fixed rate bond is constructed - this is done by the constructor MakeFixedRateBond. In the next line it is shown how the cashflows of the underlying bond may be generated (the function Cashflows is applied). In order to make the bond callable, a call schedule (constructed by MakeCallPutSchedule) has to be assigned - the callable bond is then constructed by the use of the function MakeCPFixedRateBond. That's about it.


The next question is: How do I get a fair price for this callable bond under, e.g. , a Hull & White (or a Black Karasinski or a LIBOR market) model?
Again, the picture above shows how this can be done: First, the Hull & White model has to constructed - we use the command MakeGeneralHullWhiteModel (usually this has to be done by the use of the UnRisk calibration routine, which identifies the parameters of the interest rate model from given bond, cap and swaption prices). The available interest rate models (especially their calibration) will be explained in a later blog.
But let's come back to our callable bond: By the use of the function Valuate (which may be used to price any financial instrument under any model) we gain the fair value of the callable bond under the given Hull & White model (the credit spread is assumed to be 80bp). The returned list contains the dirty / clean value of the underlying bond, the value of the call option and the dirty / clean value of the callable bond.

Symbols or Numbers?

I start this Blog label "Mathematics" with a reference to Paul Wilmott's Blog Numbers People and Symbols People. Paul named as one of the most influencing quantitative analysts, in his blog he discusses the ability of people to handle abstractions.

If UnRisk was a City Guide


It most probably was a Wallpaper . They present a tightly edited discreetly packaged list of the best a location has to offer the design conscious traveler. Wallpaper CG are compiled by the magazine's travel experts providing up-to-the-minute information.
Each guide combines info on Landmarks, Hotels, Urban Life, Shopping, Sport, Architours and Escapes. As a business traveler, I like the 24 hours, see-the-best-of-the-city-in-just-one-day, section. WCG issues are sub compact. I put it in a pocket of my jacket and it goes where I go.

Save Wallstreet's Soul?

Newsweek published the following article recently: Revenge of the Nerd  
Paul Wilmott is a 49-year-old Oxford-trained mathematician ond arguable the most influential quant of today .. Wilmott has cultivated a loyal following of truth-seeking converts from the failed school of thoughts that the entire world can be turned into Greek symbols, plugged into equations priced and predicted...