- QuantLib
- IncrementalStatistics
 
Statistics tool based on incremental accumulation. More...
#include <ql/math/statistics/incrementalstatistics.hpp>
| Public Types | |
| typedef Real | value_type | 
| Public Member Functions | |
| Inspectors | |
| Size | samples () const | 
| number of samples collected | |
| Real | weightSum () const | 
| sum of data weights | |
| Real | mean () const | 
| Real | variance () const | 
| Real | standardDeviation () const | 
| Real | errorEstimate () const | 
| Real | skewness () const | 
| Real | kurtosis () const | 
| Real | min () const | 
| Real | max () const | 
| Real | downsideVariance () const | 
| Real | downsideDeviation () const | 
| Modifiers | |
| void | add (Real value, Real weight=1.0) | 
| adds a datum to the set, possibly with a weight | |
| template<class DataIterator > | |
| void | addSequence (DataIterator begin, DataIterator end) | 
| adds a sequence of data to the set, with default weight | |
| template<class DataIterator , class WeightIterator > | |
| void | addSequence (DataIterator begin, DataIterator end, WeightIterator wbegin) | 
| adds a sequence of data to the set, each with its weight | |
| void | reset () | 
| resets the data to a null set | |
| Protected Attributes | |
| Size | sampleNumber_ | 
| Size | downsideSampleNumber_ | 
| Real | sampleWeight_ | 
| Real | downsideSampleWeight_ | 
| Real | sum_ | 
| Real | quadraticSum_ | 
| Real | downsideQuadraticSum_ | 
| Real | cubicSum_ | 
| Real | fourthPowerSum_ | 
| Real | min_ | 
| Real | max_ | 
Statistics tool based on incremental accumulation.
It can accumulate a set of data and return statistics (e.g: mean, variance, skewness, kurtosis, error estimation, etc.)
| Real standardDeviation | ( | ) | const | 
returns the standard deviation  , defined as the square root of the variance.
, defined as the square root of the variance. 
| Real errorEstimate | ( | ) | const | 
returns the error estimate  , defined as the square root of the ratio of the variance to the number of samples.
, defined as the square root of the ratio of the variance to the number of samples. 
returns the skewness, defined as
![\[ \frac{N^2}{(N-1)(N-2)} \frac{\left\langle \left( x-\langle x \rangle \right)^3 \right\rangle}{\sigma^3}. \]](form_256.png) 
The above evaluates to 0 for a Gaussian distribution.
returns the excess kurtosis, defined as
![\[ \frac{N^2(N+1)}{(N-1)(N-2)(N-3)} \frac{\left\langle \left(x-\langle x \rangle \right)^4 \right\rangle}{\sigma^4} - \frac{3(N-1)^2}{(N-2)(N-3)}. \]](form_257.png) 
The above evaluates to 0 for a Gaussian distribution.
| Real downsideVariance | ( | ) | const | 
returns the downside variance, defined as
![\[ \frac{N}{N-1} \times \frac{ \sum_{i=1}^{N} \theta \times x_i^{2}}{ \sum_{i=1}^{N} w_i} \]](form_248.png) 
, where  = 0 if x > 0 and
 = 0 if x > 0 and  =1 if x <0
 =1 if x <0 
| Real downsideDeviation | ( | ) | const | 
returns the downside deviation, defined as the square root of the downside variance.
adds a datum to the set, possibly with a weight
| void addSequence | ( | DataIterator | begin, | 
| DataIterator | end, | ||
| WeightIterator | wbegin | ||
| ) | 
adds a sequence of data to the set, each with its weight