Mercredi 25 février 2009 3 25 /02 /Fév /2009 23:05
- Publié dans : Programmation AS3

Cette article fait partie d'une series de pré-requis nécessaire à la programmation d'un Pricer d'Option

Dans la formule de BS avec dividende continue on note N la fonction de répartition de la loi normale:


L'implémentation peut être faite de 2 manière. La 1ère, approximative, est présentée en commentaire. La seconde est celle de la fonction de répartition.

package fx.bidesign.maths
{
    import fx.bidesign.maths.Factorial;
    import fx.bidesign.maths.GammaEuler;
   
    public class ProbabilityTools
    {
        public function ProbabilityTools()
        {

        }

        public static function normalDistribution( p:Number ):Number
        {
            var f:Number;
            var u:Number;
            var s:Number;
            var t:Number;
            var s1:Number;

            u = p * p;

            if (u > 55.5)
            {
                if (p > 0) return 1;
                else return 0;
            }
            else
            {
                s = 0;
                t = 1;
                f = 3;
               
                while ( s != s1 )
                {
                    s1 = s;
                    s = s + t;
                    t = t * u / f;
                    f = f + 2;
                }
                return p * s / ( Math.sqrt( 8 * Math.atan(1) * Math.exp(u) ) ) + 0.5;
            }
        }
        public static function normalDensity( p:Number ):Number
        {
            return ( 1 / 2 * Math.PI ) * Math.exp( - ( p * p / 2 ) );
        }
        public static function chiDistribution( p:Number, deg:int )
        {
           
        }
        public static function chiDensity( p:Number, deg:int )
        {
            /*var result:Number = Math.pow( 0.5, deg/ 2 ) / GammaEuler( deg / 2 );
           
            result *= Math.pow( p, ( deg / 2 ) - 1 ) * Math.exp( - p / 2 );
           
            return result;*/
        }
        public static function tDistribution( p:Number, deg:int )
        {
           
        }
        public static function tDensity( p:Number, deg:int )
        {
            /*var result:Number = 1 / Math.sqrt( deg * Math.PI );
           
            result *= GammaEuler( ( deg + 1 ) / 2 ) / GammaEuler( deg / 2 );
           
            result *= 1 / Math.pow( 1 + ( p * p / deg ), ( deg + 1 ) / 2 );
           
            return result;*/
        }
    }
}

Cette classe appartient au package fx.bidesign.maths. Les sources seront mises à dispositions lorsques l'ensemble des tutoriaux concernant le pricer seront publiés

Par Gilles De Truchis
Ecrire un commentaire - Voir les 0 commentaires
Mercredi 25 février 2009 3 25 /02 /Fév /2009 22:58
- Publié dans : Programmation AS3

Cette article fait partie d'une series de pré-requis nécessaire à la programmation d'un Pricer d'Option

Dans l'article sur le modèle binomial on cherche à resoudre:

résultat de l'analyse combinatoire entre j et N. L'implémentation en AS3 peut être réalisée ainsi:

package fx.bidesign.maths
{
    import fx.bidesign.maths.Factorial;
   
    public class Combination
    {

        public function Combination()
        {

        }
        public static function evaluate( n:int, k:int ):Number
        {
            return Factorial.evaluate( n ) / ( Factorial.evaluate( k ) * Factorial.evaluate( n - k ) );
        }
    }
}


Cette classe appartient au package fx.bidesign.maths. Les sources seront mises à dispositions lorsques l'ensemble des tutoriaux concernant le pricer seront publiés Voici la classe factoriel:

package fx.bidesign.maths
{
    public class Factorial
    {
        public function Factorial()
        {

        }
        public static function evaluate( d:int )
        {
            var ret:Number = 1;
            for (var i:int = 2; i <= d; i++)
                ret *= i;
            return ret;
        }
    }
}


Cette classe appartient au package fx.bidesign.maths. Les sources seront mises à dispositions lorsques l'ensemble des tutoriaux concernant le pricer seront publiés

Par Gilles De Truchis
Ecrire un commentaire - Voir les 0 commentaires

Un problème d'affichage...?

Certaines pages de ce site contiennent des animations Flash qui nécessitent la dernière version du flash player.

haut de page

Varennes EcoFin

Mon site internet migre vers une nouvelle adresse: Varennes EcoFin. Il s'agit d'un site en flash recentré sur mes travaux de recherches, ma thèse et des resources pour les étudiants (programmes, bases de données etc.). Pour accéder à la version sans flash (HTML5): Varennes EcoFin Sky.

Présentation

Bienvenue

Bienvenue sur Ceteris Paribus... Ce site traite d'actualité économique, d'économétrie,  de macroéconomie, de finance, mais également de programmation Flash (actionscript 3). Vous y trouverez donc, entre autres, des ressources informatiques pour des applications financières, mais également des articles techniques sur divers modèles économétriques, financiers et macroéconomiques.

Note: Certaines pages de ce site contiennent des animations Flash qui nécessitent la dernière version du flash player.

En préparation...

Modèle de regime-switching: Volatility-switching et non-linearité.
VAR structurels et restriction par hétéroscedasticité.
Modèle Markov-Switching ARFIMA

Recherche

 
Créer un blog gratuit sur over-blog.com - Contact - C.G.U. - Signaler un abus - Articles les plus commentés