Example #1
0
 static SabrIborCapletFloorletVolatilityBootstrapper()
 {
     TRANSFORMS    = new ParameterLimitsTransform[4];
     TRANSFORMS[0] = new SingleRangeLimitTransform(0, ParameterLimitsTransform_LimitType.GREATER_THAN); // alpha > 0
     TRANSFORMS[1] = new DoubleRangeLimitTransform(0.0, 1.0);                                           // 0 <= beta <= 1
     TRANSFORMS[2] = new DoubleRangeLimitTransform(-RHO_LIMIT, RHO_LIMIT);                              // -1 <= rho <= 1
     TRANSFORMS[3] = new DoubleRangeLimitTransform(0.001d, 2.50d);
     // nu > 0  and limit on Nu to avoid numerical instability in formula for large nu.
 }
 static SabrModelFitter()
 {
     DEFAULT_TRANSFORMS    = new ParameterLimitsTransform[4];
     DEFAULT_TRANSFORMS[0] = new SingleRangeLimitTransform(0, ParameterLimitsTransform_LimitType.GREATER_THAN); // alpha > 0
     DEFAULT_TRANSFORMS[1] = new DoubleRangeLimitTransform(0, 1.0);                                             // 0 <= beta <= 1
     DEFAULT_TRANSFORMS[2] = new DoubleRangeLimitTransform(-RHO_LIMIT, RHO_LIMIT);                              // -RHO_LIMIT <= rho <= RHO_LIMIT
     DEFAULT_TRANSFORMS[3] = new DoubleRangeLimitTransform(0.01d, 2.50d);
     // nu > 0  and limit on Nu to avoid numerical instability in formula for large nu.
 }