I downloaded the GNU Scientific Library, converted two relevant functions to C++, and added them to mylib.cpp. They are at the bottom of the page at http://25yearsofprogramming.com/msvcpp/mylibcpp.htm
. If you have some experience with C#, you'll probably find the code comprehensible. It might be possible to create an equivalent calculation method in Excel. I don't find the algorithm comprehensible, but I'm not worrying about that for now.
The Levy function returns a random double from the Levy distribution. (The exponential random function is needed by the Levy function.)
The GSL "Bugs" file has a report from one user who believes that the Levy functions have some glitches or inaccuracies. I'm in no position to judge, and, if it's true, in even less of a position to attempt troubleshooting, but thought I should mention it. I generated some sets of random numbers, transferred them to Excel, and graphed them with Tools > Data Analysis > Histogram. With alpha=2, it does indeed look like a normal curve, and other alpha values seem to produce graphs having the shapes they should, and with long tails.
This is only a step in the right direction. The next step is to use the random numbers to calculate consecutive daily price changes, hopefully using a value of "c" that correctly produces the Levy equivalent of "standard deviation" of price fluctuations. I'm experimenting with how to do that. That is, just having any old Levy distribution isn't enough. You need to be able to simulate the price pattern of a stock that has, say, a 40% volatility. The resulting price series must have the desired 40% volatility when calculated the usual way, except that the distribution is Levy and not lognormal.
If you're not familiar with the GNU General Public License (what the GSL is licensed under, and what I also use), a brief summary is: as long as what you're doing is for personal use, you can copy the code and do whatever you want with it. If you redistribute it (as I am doing by publishing a modified version of the code), you must retain all copyright notices (and add yours, with notations of what changes you've made) and also license it under GPL3, meaning that the entire package it is part of must be open source.
With regard to alpha, what little reading I've done on it from time to time has left me with the (vague) impression that Mandelbrot has been fairly consistent about the 1.7 figure, and not necessarily just for cotton. I could speculate that he might say it results more from collective human behavioral characteristics (aggregate behavior of many people) than from any characteristics of the asset being traded. That's one guess, anyway.
It would be interesting to see what the best parameter settings are for skewness and kurtosis and whether it is prudent to assume that they are constant over time.
The kurtosis is alpha. Skewness is a measure called beta, and would be the trend. This function doesn't allow for beta. There is a related GSL function that does, but I figure it is safest to assume beta is always 0 (no trend).