Stable distributions

Stable distribution toolbox.

arlpy.stable.rnd(alpha=1.5, beta=0, scale=1, loc=0.0, size=1)

Generate independent stable random numbers.

  • alpha – characteristic exponent (0.1 to 2.0)
  • beta – skew (-1 to +1)
  • scale – scale parameter
  • loc – location parameter (mean for alpha > 1, median/mode when beta=0)
  • size – size of the random array to generate

This implementation is based on the method in J.M. Chambers, C.L. Mallows and B.W. Stuck, “A Method for Simulating Stable Random Variables,” JASA 71 (1976): 340-4. McCulloch’s MATLAB implementation (1996) served as a reference in developing this code.


Fit a symmetric alpha stable distribution to data.

Parameters:x – data
Returns:(alpha, c, delta)

alpha, c and delta are the characteristic exponent, scale parameter (dispersion^1/alpha) and location parameter respectively.

alpha is computed based on McCulloch (1986) fractile. c is computed based on Fama & Roll (1971) fractile. delta is the 50% trimmed mean of the sample.