Sujet 11 : Modélisation d actifs financiers Sujet proposé par J. Lelong & M. Echenim. [DOCUMENTATION API LOGICIEL MODAFI]
|
|
- Noëlle Goudreau
- il y a 8 ans
- Total affichages :
Transcription
1 Sujet 11 : Modélisation d actifs financiers Sujet proposé par J. Lelong & M. Echenim. [DOCUMENTATION API LOGICIEL MODAFI] 1 P a g e
2 Sommaire Introduction p.3 Gestion de l Univers p.3 o Ajout / Suppression d actifs o Corrélation Simuler des actifs p.5 Exploiter les résultats p.6 Evaluation d actifs p.6 Erreurs p.7 XML Sauvegarde / Restauration de l Univers p.7 o Structure générale o Détails des taux o Détails des sous-jacents o Détails des corrélations o Détails des produits dérivés o Exemple complet XML Exportation des cours simulés p.13 o Structure générale o Exemple complet XML Exportation des évaluations p.15 o Structure générale o Exemple complet 2 P a g e
3 I. Introduction Ce document décrit de manière informelle comment utiliser l API. On détaille les fonctions principales de l API (avec des exemples d utilisation) ainsi que l architecture des fichiers d entrée/sortie de l application. Pour la documentation exhaustive et l architecture de l application, se référer au document d implémentation. II. Gestion de l Univers On sépare les actifs en trois catégories : les actifs «simples» dont le cours ne dépend pas d autres actifs (classe SousJacent), les actifs dont le cours dépend d un sous-jacent (classe ProduitDerive) et les taux (classe Taux). Tous les actifs sont stockés dans une classe appelée Univers. Cette classe est unique et ne peut pas être instanciée par l utilisateur. Chaque actif sous-jacent, chaque produit dérivé et chaque taux peuvent être stockés dans cette structure. L instance unique de l univers est obtenue avec la fonction : static Univers GetInstance() 1) Ajout / Suppression d actifs Les fonctions de création/ajout d actifs sont les suivantes : void AjouterObligationCoupon(String nom, int maturite, Double taux_coupon, Double valeur, Double intervalle,datetime date) void AjouterCallDividende(String nom, SousJacentSimple sj, int maturite, Double strike, Double r) void AjouterCallDividendePro(String nom, SousJacentSimple sj, int maturite, Double strike, Double r) void AjouterCallSimple(String nom, SousJacentSimple sj, int maturite, Double strike, Double r) void AjouterPutDividende(String nom, SousJacentSimple sj, int maturite, Double strike, Double r) void AjouterPutDividendePro(String nom, SousJacentSimple sj, int maturite, Double strike, Double r) void AjouterPutSimple(String nom, SousJacentSimple sj, int maturite, Double strike, Double r) void AjouterSpotForex(String nom, Double pip, Double solde, Double valeur,double levier_max, Definitions.typeDevise devc, Definitions.typeDevise dev1, Definitions.typeDevise dev2) void AjouterSousJacentMBGDividendePro(String nom, Double spot, Double tendance, Double volatilite,double proportion, Double intervalle) void AjouterSousJacentMBGDividende(String nom, Double spot, Double tendance, Double volatilite,double dividende, Double intervalle) void AjouterSousJacentMB(String nom, Double spot) void AjouterSousJacentMBD(String nom, Double spot, Double tendance, Double volatilite) void AjouterSousJacentMBG(String nom, Double spot, Double tendance, Double volatilite) void AjouterSousJacentMerton(String nom, Double spot, Double tendance, Double volatilite, Double lambda, Double moyennesauts, Double alpha) void AjouterSousJacentKouWang(String nom, Double spot, Double tendance, Double volatilite, Double lambda, Double p, Double lambda1, Double lambda2) void AjouterSousJacentPoisson(String nom, Double spot, Double lambda) void AjouterSousJacent(SousJacent sj) void AjouterZeroCoupon(String nom, Taux taux, int maturite) 3 P a g e
4 void AjouterTauxZeroCouponVasicek(String nom, Double tinit, Double volatilite, Double a, Double b, int maturite) void AjouterTauxCourtVasicek(String nom, Double tinit, Double volatilite, Double a, Double b) void AjouterBasisSwapTaux(string nom, double nominal, int maturite, DateTime dateemission, int intervallevar1, int intervallevar2, int convention1, int convention2, bool typeswap, double spread1, double spread2, int typetauxvariable1, int typetauxvariable2) void AjouterSwapDevise(string nom, double nomdomestique, int maturite, DateTime dateemission, int intervalledomestique, int intervalleetrangere, int conventiond, int conventione, bool typeswap, Definitions.typeDevise deviseetrangere, Definitions.typeDevise devisedomestique, double txfixedomestique, double txfixeetrangere) void AjouterSwapTaux(string nom, double nominal, int maturite, DateTime dateemission, int intervallefixe, int intervallevar, int conventionf, int conventionv, bool typeswap, double txfixe, double spread, int typetauxvariable) On peut également instancier des actifs directement avec leur constructeur, puis les ajouter dans l univers avec des fonctions génériques d ajout (voir la documentation du code). Il est cependant fortement conseillé d utiliser les méthodes précédentes, car elles garantissent la cohérence entre les actifs et les taux. Ainsi dans tout le programme, un actif est identifié par son nom. Passer par la classe univers pour gérer les actifs garantit l unicité du nom. De même, en passant par les constructeurs, on peut très bien faire des associations produits dérivés / sous-jacents incohérentes (ex. créer un call de sous-jacent suivant un processus de Poisson). Les méthodes précédentes interdisent de telles associations. On peut accéder aux actifs et aux taux enregistrés dans l univers avec : ProduitDerive Univers.GetProduitDerive(String nomproduit) SousJacent Univers.GetSousJacent(String nomsousjacent) Taux GetTaux(String nomtaux) Exemple : Le code suivant ajoute une action Google suivant un modèle brownien géométrique (spot = 100, tendance = 0.05, volatilité = 20%) et un call sur cet actif (prix d exercice = 110, maturité = 3 mois, taux d intérêt mensuel = 0.4%). Univers uni = Univers.GetInstance() ; uni.ajoutersousjacentmbg("goog", 100, 0.05, 0.2) ; SousJacent sj = uni.getsousjacent("goog") ; uni.ajoutercall("call_goog", sj, 3, 110, 0.004); Il est possible de retirer des actifs et des taux avec les fonctions suivantes: void SupprimerSousJacent(String nom) void SupprimerProduitDerive(String nom) void SupprimerTaux(String nom) void Univers.ViderUnivers() On peut également charger/enregistrer un univers préenregistré dans un fichier avec la fonction : void Output.RestaureUniversXML(String nomfichier) void Output.sauvegardeUniversXML(String nomfichier) (cf. section VII pour la structure des fichiers XML) 4 P a g e
5 2) Corrélation Pour corréler/décorréler des actifs: void Univers.SetCorrelation(String noma1, String noma2, Double correlation) Double Univers.GetCorrelation(String noma1, String noma2) void DecorrelerUnivers() Remarque : Il n y a pas d erreur levée quand on entre des corrélations incohérentes. Une erreur sera levée plus tard lors de la simulation. On rappelle qu ajouter un sous-jacent à un univers cohérent est susceptible de briser cette cohérence. Exemple : Le code suivant définit et corrèle les actions Google et Microsoft à 50%. Ces actifs ne suivent pas le même modèle. Univers uni = Univers.GetInstance() ; uni.ajoutersousjacentmbg("goog", 100, 0.05, 0.2) ; uni.ajoutersousjacentmbd("msft", 50, 0.03, 0.15) ; SetCorrelation("GOOG", "MSFT", 0.5) /* Idem SetCorrelation("MSFT", "GOOG", 0.5) */ III. Simuler des actifs Le cours d un actif sous-jacent est aléatoire et il est calculé à partir d un mouvement brownien. Le cours d un produit dérivé est obtenu en appliquant une formule fermée sur le cours de son sous-jacent. C est la classe Simulation qui pilote les simulations. Il est nécessaire d instancier cette classe en précisant les paramètres de la grille de simulation dans le constructeur. pas est le pas de discrétisation de la simulation, nbunitesdetemps est le nombre d unités de temps sur lesquelles on simule et toutcorreler est un booléen indiquant si on simule les actifs financiers sur le même mouvement brownien (corréler tous les actifs à 100%). Activer toutcorreler masque donc toutes les corrélations enregistrées. Simulation(Double pas, int nbunitesdetemps, Boolean toutcorreler) On peut alors ajouter des actifs ou des taux à simuler avec les méthodes : void Simulation.AjouterProduitDeriveALaSimulation(ProduitDerive prod) void Simulation.AjouterSousJacentALaSimulation(SousJacent sj) void Simulation.AjouterTauxALaSimulation(Taux taux) Pour ajouter un produit dérivé, il n est pas nécessaire d ajouter son sous-jacent. Celui-ci sera ajouté automatiquement avant de lancer la simulation, mais n apparaîtra pas dans le tableau des résultats. Pour lancer la simulation, il faut simplement appeler la fonction : Resultat Simulation.Simule() Cette méthode retourne un objet Resultat détaillé dans la section suivante. 5 P a g e
6 Exemple : Le code suivant simule les deux actifs précédents pendant 6 mois avec 10 subdivisions par mois. Simulation sim = new Simulation(0.1, 6, false); SousJacent action = Univers.GetInstance().GetSousJacent("GOOG"); sim.ajoutersousjacentalasimulation(action); ProduitDerive option = Univers.GetInstance().GetProduitDerive("Call_GOOG"); sim.ajouterproduitderivealasimulation(option); Resultat res = sim.simule(); IV. Exploiter les résultats Les résultats d une simulation sont stockés dans un objet Resultat. Les cours des actifs simulés peuvent être récupérés en faisant appel à la fonction : Double Resultat.Prix(String nomactif, Double date) La date doit être cohérente avec la grille de la simulation. On lève systématiquement une erreur si la date passée en paramètre ne correspond pas à une date de la grille (la fonction ne cherche pas à arrondir à la date de simulation la plus proche). Exemple : avec la simulation précédente Resultat res = sim.simule(); res.prix("goog", 0); // correct, prix spot de l'action res.prix("call_goog", 1.10); // correct, prix à un 1.1 mois de l'option res.prix("call_goog", 1.11); // incorrect, le pas de simulation est de 0.1 res.prix("call_goog", 4); // correct, la maturité de l option est dépassée mais on reste dans l'intervalle de simulation (0 à 6 mois), l option vaut 0 res.prix("call_goog", 7); // incorrect, on n'est plus dans l'intervalle de simulation Les résultats peuvent être exportés dans des fichiers au format CSV et XML avec les fonctions : void Output.simToCSV(String nomfichier) void Output.simToXML(String nomfichier) (cf. section VIII pour la structure des fichiers XML) V. Evaluation d actifs Certains actifs comme les swap, les obligations couponnées et les spot Forex ne sont pas simulables. Il est simplement possible d évaluer leur prix à la date de création du produit. Les fonctions permettant d évaluer les actifs sont les suivantes (elle retournent le prix du produit en date d évaluation): double Swap.Evalue() double ObligationCoupon.Evalue() double SpotForex.Evalue() 6 P a g e
7 Les résultats peuvent être exportés dans des fichiers au format XML avec la fonction : void Output.evalToXML(String nomfichier) (cf. section IX pour la structure des fichiers XML) VI. Erreurs On lève une exception à chaque utilisation incorrecte d une fonction. On vérifie systématiquement la cohérence des paramètres des fonctions de l API : les références ne doivent pas être à null et certaines valeurs ont des contraintes particulières (comme être positives). On vérifie également les erreurs d exécution plus fines comme la cohérence des actifs dans l univers (deux actifs ne peuvent pas avoir le même nom), les relations entre les actifs (le sous-jacent d un call est obligatoirement modélisé par un mouvement brownien géométrique). 5 Exemple : La fonction AjouterSousJacentPoisson(String nom, Double spot, Double lambda) lève les erreurs suivantes : SjNameException("Erreur : un sous-jacent doit contenir un nom.") si le nom est à null ou la chaine vide. UniversArgumentException("Erreur : L'actif " + nom + " existe déjà dans l'univers.") si un autre actif du même nom existe déjà dans l univers. ArgumentException("Paramètre \"spot\" negatif", "spot") si le spot est négatif ou nul. ArgumentException("Paramètre \"lambda\" negatif", "lambda") si le paramètre lambda est négatif ou nul. On utilise les exceptions fournies par le framework (ArgumentException dans l exemple précédent), et on définit des exceptions génériques (SjNameException et UniversArgumentException dans l exemple précédent) pour factoriser le code. VII. XML Sauvegarde / Restauration de l Univers 1) Structure générale La structure générale du fichier de sauvegarde XML est la suivante : <?xml version="1.0"?> <Univers> <ListeTaux> /* détails des taux */ </ListeTaux> <ListeSousJacents> /* détails des sous-jacents */ </ListeSousJacents> <ListeProduitsDerives> /* détails des produits dérivés */ </ListeProduitsDerives> <MatriceCorrelation> 7 P a g e
8 /* détails des corrélations */ </MatriceCorrelation> </Univers> 2) Détails des taux A l intérieur de la balise <ListeTaux> doivent être décrits tous les taux de l univers. Pour décrire un taux, on doit : ouvrir une balise <Taux > possédant un attribut nomtaux de valeur le nom du taux. Ouvrir une balise <TauxInit>, écrire la valeur du cours initial du taux, puis refermer le taux initial avec la balise </TauxInit>. Selon le type du taux, plusieurs balises sont à remplir : voici les différents actifs que l on peut ajouter : 2-1) Taux cours modèle Vasicek Ouvrir une balise <TypeTaux> possédant un attribut nomtypetaux de valeur TauxCourtVasicek, puis refermer le type de taux avec la balise </TypeTaux> Ouvrir une balise <Modele>, possédant un attribut nommodele de valeur Vasicek. Ouvrir une balise pour chaque paramètre, donner la valeur du paramètre, puis refermer la balise. Les paramètres à renseigner doivent être indiqués dans l ordre suivant : Volatilite, A, B. Refermer le modèle avec la balise </Modele>. Refermer le taux avec la balise </Taux>. Exemple : <Taux nomtaux="taux 2"> <TauxInit>1</TauxInit> <TypeTaux nomtypetaux="tauxcourtvasicek" /> <Modele nommodele="vasicek"> <Volatilite>0,5</Volatilite> <A>0,3</A> <B>0,2</B> </Modele> </Taux> 2-2) Taux zéro-coupon modèle Vasicek Ouvrir une balise <TypeTaux> possédant un attribut nomtypetaux de valeur TauxZCVasicek, puis refermer le type de taux avec la balise </TypeTaux> Ouvrir une balise <Modele>, possédant un attribut nommodele de valeur Vasicek. Ouvrir une balise pour chaque paramètre, donner la valeur du paramètre, puis refermer la balise. Les paramètres à renseigner doivent être indiqués dans l ordre suivant : Volatilite, A, B. Refermer le modèle avec la balise </Modele>. Refermer le taux avec la balise </Taux>. Exemple : <Taux nomtaux="taux 1"> <TauxInit>1</TauxInit> <TypeTaux nomtypetaux="tauxzcvasicek" /> <Maturite>2</Maturite> <Modele nommodele="vasicek"> <Volatilite>0,5</Volatilite> <A>0,3</A> <B>0,2</B> </Modele> </Taux> 8 P a g e
9 3) Détails des sous-jacents A l intérieur de la balise <ListeSousJacents> doivent être décrits tous les sous-jacents de l univers. Pour décrire un sous-jacent, on doit : ouvrir une balise <SousJacent> possédant un attribut nomsousjacent de valeur le nom du sous-jacent. Selon le type d actif, plusieurs balises sont à remplir : voici les différents actifs que l on peut ajouter : 3-1) Sous-jacents simples Ouvrir une balise <TypeSousJacent > possédant un attribut nomtypesousjacent de valeur SousJacentSimple Ouvrir une balise <Spot>, écrire la valeur du spot du sous-jacent (valeur initiale du cours), puis refermer le spot avec la balise </Spot>. Ouvrir une balise <Modele>, possédant un attribut nommodele de valeur le nom du modèle mathématique du sous-jacent ("MB", "MBD", "MBG", "MBGDividende", "MBGDividendePro", "Merton", "KouWang", "Vasicek", ou "Poisson"). Ouvrir une balise pour chaque paramètre du modèle mathématique choisi, donner la valeur du paramètre, puis refermer la balise. Les paramètres varient selon le modèle choisi, et doivent être indiqués dans l ordre suivant ; o MB : aucun paramètre. o MBD : Tendance, Volatilite. o MBG : Tendance, Volatilite. o MBGDividende : Tendance, Volatilite, Valeur, Intervalle. o MBGDividendePro : Tendance, Volatilite, Proportion, Intervalle. o Merton : Tendance, Volatilite, Lambda, Alpha, M (moyenne des sauts). o KouWang : Tendance, Volatilite, Lambda, P, Lambda1, Lambda2. o Poisson : Lambda. Refermer le modèle avec la balise </Modele>. Refermer le type de sous-jacent avec la balise </TypeSousJacent>. Refermer le sous-jacent avec la balise </SousJacent>. Exemple : sous-jacent simple mouvement brownien géométrique avec dividendes proportionnels <SousJacent nomsousjacent="action avec dividendes proportionnels"> <TypeSousJacent nomtypesousjacent="sousjacentsimple"> <Spot>100</Spot> <Modele nommodele="mbgdividendepro"> <Tendance>0,5</Tendance> <Volatilite>0,2</Volatilite> <Proportion>1000</Proportion> <Intervalle>0,4</Intervalle> </Modele> </TypeSousJacent> </SousJacent> 3-2) Obligations Ouvrir une balise <TypeSousJacent > possédant un attribut nomtypesousjacent de valeur Obligation 9 P a g e
10 Ouvrir une balise <Maturite >, écrire la valeur de la maturité (en années), puis refermer la maturité avec la balise </Maturite>. Ouvrir une balise <TypeObligation, possédant un attribut type de valeur le nom du type d obligation ("ZeroCoupon", "ObligationCoupon"). Ouvrir une balise pour chaque paramètre du type choisi, donner la valeur du paramètre, puis refermer la balise. Les paramètres varient selon le modèle choisi, et doivent être indiqués dans l ordre suivant ; o ZeroCoupon : Taux. o ObligationCoupon : TauxCoupon, Valeur, Intervalle, DateEmission. Refermer le type d obligation avec la balise </TypeObligation >. Refermer le type de sous-jacent avec la balise </TypeObligation >. Refermer le sous-jacent avec la balise </SousJacent>. Exemple : obligation avec coupons <SousJacent nomsousjacent="obligation avec coupons"> <TypeSousJacent nomtypesousjacent="obligation"> <Maturite>10</Maturite> <TypeObligation nomtypeobligation="obligationcoupon"> <TauxCoupon>0,3</TauxCoupon> <Valeur>100</Valeur> <Intervalle>0,5</Intervalle> <DateEmission>09/06/ :00:00</DateEmission> </TypeObligation> </TypeSousJacent> </SousJacent> Tous les sous-jacents de l univers doivent être décrits selon les schémas ci-dessus, et écrits les uns à la suite des autres dans la balise <ListeSousJacents>. 4) Détails des produits dérivés A l intérieur de la balise <ListeProduitsDerives> doivent être décrits tous les produits dérivés de l univers. Pour décrire un produit dérivé, on doit : Ouvrir une balise <ProduitDerive> possédant un attribut nomproduitderive de valeur le nom du produit dérivé. Ouvrir une balise <TypeProduitDerive> possédant un attribut nomtypeproduitderive de valeur le nom du type du produit dérivé : "Option", "Swap" ou "SpotForex". 4-1) Dans le cas d une option Ouvrir une balise <SousJacent>, écrire le nom du sous-jacent, puis refermer le sous-jacent avec la balise </SousJacent>. Ouvrir une balise pour chaque paramètre, donner la valeur du paramètre, puis refermer la balise. Les paramètres à renseigner doivent être indiqués dans l ordre suivant : Maturite, Strike, Taux. Ouvrir une balise <TypeOption>, possédant un attribut nomtypeoption de valeur le nom du type de l option ("CallSimple", "CallDividende", "CallDividendePro","PutSimple", "PutDividende","PutDividendePro"). Refermer le type d option avec la balise </TypeOption>. Refermer le type de produit dérivé avec la balise </TypeProduitDerive>. Refermer le produit dérivé avec la balise </ProduitDerive>. Exemple : call sur sous-jacents avec dividendes proportionnels <ProduitDerive nomproduitderive="call avec dividendes proportionnels"> 10 P a g e
11 <TypeProduitDerive nomtypeproduitderive="option"> <SousJacent>action avec dividendes proportionnels</sousjacent> <Maturite>10</Maturite> <Strike>100</Strike> <Taux>0,05</Taux> <TypeOption nomtypeoption="calldividendepro" /> </TypeProduitDerive> </ProduitDerive> Le sous-jacent dont le nom est indiqué dans la balise <SousJacent> doit impérativement avoir été défini précédemment dans la balise <ListeSousJacents>. 4-2) Dans le cas d un swap Ouvrir une balise pour chaque paramètre, donner la valeur du paramètre, puis refermer la balise. Les paramètres à renseigner doivent être indiqués dans l ordre suivant : Nominal, Maturite, DateEmission, Intervalle1, Intervalle2, Convention1, Convention 2, CaracteristiqueSwap. Ouvrir une balise <TypeSwap>, possédant un attribut nomtypeswap de valeur le nom du type du swap ("SwapTaux", "BasisSwap", "SwapDevise"). Ouvrir une balise pour chaque paramètre du type choisi, donner la valeur du paramètre, puis refermer la balise. Les paramètres à renseigner varient selon le type choisi, et doivent être indiqués dans l ordre suivant : o SwapTaux : TauxFixe, TypeTauxVariable, SpreadTauxVariable. o BasisSwap : TypeTauxVariable1, TypeTauxVariableVariable2, SpreadTauxVariable1, SpreadTauxVariable2. o SwapDevise : DeviseDomestique, DeviseEtrangere, TauxFixeDomestique, TauxFixeEtrangere. Refermer le type de swap avec la balise </TypeSwap>. Refermer le type de produit dérivé avec la balise </TypeProduitDerive>. Refermer le produit dérivé avec la balise </ProduitDerive>. Exemple : swap de devise <ProduitDerive nomproduitderive="swap de devises"> <TypeProduitDerive nomtypeproduitderive="swap"> <Nominal>100</Nominal> <Maturite>10</Maturite> <DateEmission>09/06/ :00:00</DateEmission> <Intervalle1>1</Intervalle1> <Intervalle2>1</Intervalle2> <Convention1>0</Convention1> <Convention2>0</Convention2> <CaracteristiqueSwap>True</CaracteristiqueSwap> <TypeSwap nomtypeswap="swapdevise"> <DeviseDomestique>EUR</DeviseDomestique> <DeviseEtrangere>USD</DeviseEtrangere> <TauxFixeDomestique>0,5</TauxFixeDomestique> <TauxFixeEtrangere>0,3</TauxFixeEtrangere> </TypeSwap> </TypeProduitDerive> </ProduitDerive> 4-3) Dans le cas d un spotforex Ouvrir une balise pour chaque paramètre, donner la valeur du paramètre, puis refermer la balise. Les paramètres à renseigner doivent être indiqués dans l ordre suivant : Pip, SoldeCompte, ValeurInvestie, LevierMax, DeviseCompte, DeviseChange1, DeviseChange2. Refermer le type de produit dérivé avec la balise </TypeProduitDerive>. Refermer le produit dérivé avec la balise </ProduitDerive>. 11 P a g e
12 Exemple : <ProduitDerive nomproduitderive="operation spot sur Forex"> <TypeProduitDerive nomtypeproduitderive="spotforex"> <Pip>0,0001</Pip> <SoldeCompte>1919, </SoldeCompte> <ValeurInvestie>10000</ValeurInvestie> <LevierMax>200</LevierMax> <DeviseCompte>EUR</DeviseCompte> <DeviseChange1>EUR</DeviseChange1> <DeviseChange2>USD</DeviseChange2> </TypeProduitDerive> </ProduitDerive> 5) Détails des corrélations Les corrélations entre les sous-jacents, taux sont spécifiées dans la balise <MatriceCorrelation>. Par défaut, la matrice de corrélation entre les sous-jacents, taux est la matrice identité (tous les sousjacents et taux sont indépendants, donc de corrélation nulle). Pour modifier la corrélation entre deux actifs, il suffit d ouvrir une balise <Cellule> avec deux paramètres actif1 et actif2 de valeur les noms des deux sous-jacents à corréler, d écrire la valeur de la nouvelle corrélation, puis de fermer la corrélation avec la balise </Cellule>. Exemple : corrélation correcte en XML : <Cellule actif1=" nom de l actif 1" actif2="nom de l actif 2">0,5</Cellule> Les corrélations doivent être mises à la suite dans la balise <MatriceCorrelation>. Si une corrélation entre deux sous-jacents est définie plus d une fois, c est la dernière valeur qui est conservée par l application lors de la restauration d un univers. Remarque : Les flottants doivent être entrés dans le fichier XML avec une virgule et non un point. 6) Exemple complet Nous détaillons ici un exemple de simulation traduit en fichier XML dans lequel on définit un taux Taux1, un sous-jacent simple SJ1, une obligation Obl1 et un produit dérivé P1 vérifiant : Taux 1 est un taux court modèle Vasicek de volatilité 0.5, de coefficient A = 0.3, B = 0.2 et de valeur initial 1. SJ1 est un actif de spot 100 et ayant pour modèle le mouvement brownien géométrique de paramètres une tendance de 0.05 et une volatilité de 0.2. Obl1 est une obligation de nominal 100, de maturité 10 ans, versant des coupons de 5%, et ayant été émise le 15 février P1 est une option d achat (produit dérivé de type Call européen simple) portant sur le sous-jacent SJ1, de prix d exercice 90 (strike) et de maturité 10 sous un taux d intérêt de <?xml version="1.0"?> <Univers> <ListeTaux> <Taux nomtaux="taux1"> <TauxInit>1</TauxInit> <TypeTaux nomtypetaux="tauxcourtvasicek" /> 12 P a g e
13 <Modele nommodele="vasicek"> <Volatilite>0,5</Volatilite> <A>0,3</A> <B>0,2</B> </Modele> </Taux> </ListeTaux> <ListeSousJacents> <SousJacent nomsousjacent="sj1"> <TypeSousJacent nomtypesousjacent="sousjacentsimple"> <Spot>100</Spot> <Modele nommodele="mbg"> <Tendance>0,05</Tendance> <Volatilite>0,2</Volatilite> </Modele> </TypeSousJacent> </SousJacent> <SousJacent nomsousjacent="obl1"> <TypeSousJacent nomtypesousjacent="obligation"> <Maturite>10</Maturite> <TypeObligation nomtypeobligation="obligationcoupon"> <TauxCoupon>0,05</TauxCoupon> <Valeur>100</Valeur> <Intervalle>1</Intervalle> <DateEmission>15/02/ :00:00</DateEmission> </TypeObligation> </TypeSousJacent> </SousJacent> </ListeSousJacents> <ListeProduitsDerives> <ProduitDerive nomproduitderive="p1"> <TypeProduitDerive nomtypeproduitderive="option"> <SousJacent>SJ1</SousJacent> <Maturite>2</Maturite> <Strike>90</Strike> <Taux>0,04</Taux> <TypeOption nomtypeoption="callsimple" /> </TypeProduitDerive> </ProduitDerive> </ListeProduitsDerives> <MatriceCorrelation> <Cellule actif1="sj1" actif2="sj1">1</cellule> <Cellule actif1="sj1" actif2="taux1">0</cellule> <Cellule actif1="taux1" actif2="sj1">0</cellule> <Cellule actif1="taux1" actif2="taux1">1</cellule> </MatriceCorrelation> </Univers> VIII. XML Exportation des cours simulés 1) Structure générale La structure générale du fichier reprend la précédente (il n y a pas de section pour les corrélations) : <?xml version="1.0"?> <Simulation> <ListeTaux> /* détails des taux */ </ListeTaux> <ListeSousJacents> 13 P a g e
14 /* détails des sous-jacents */ </ListeSousJacents> <ListeProduitsDerives> /* détails des produits dérivés */ </ListeProduitsDerives> </Simulation> Après chaque ouverture/fermeture de <Taux>, <SousJacent> ou <ProduitDerive> on ajoute les cours. Pour décrire un cours, on doit ouvrir une balise <Valeur> possédant un attribut indice de valeur le cours de l actif à la date indice (l attribut est nommé ainsi car la date coïncide avec l indice du cours dans les structures de données interne). 2) Exemple complet Nous détaillons ici un exemple de simulation traduit en fichier XML dans lequel on définit un sousjacent SJ1 et un produit dérivé P1 vérifiant : SJ1 est un actif de spot 100 et ayant pour modèle le mouvement brownien géométrique de paramètres une tendance de 0.05 et une volatilité de 0.2. P1 est une option d achat (produit dérivé de type Call européen simple) portant sur le sous-jacent SJ1, de prix d exercice 90 (strike) et de maturité 2 sous un taux d intérêt de La simulation s effectue sur une durée de 5 unités de temps subdivisées en 2 simulations. <?xml version="1.0"?> <Simulation> <ListeTaux /> <ListeSousJacents> <SousJacent nomsousjacent="sj1"> <TypeSousJacent nomtypesousjacent="sousjacentsimple"> <Spot>100</Spot> <Modele nommodele="mbg"> <Tendance>0,05</Tendance> <Volatilite>0,2</Volatilite> </Modele> </TypeSousJacent> </SousJacent> <Valeur indice="1">100</valeur> <Valeur indice="2">112,35409</valeur> <Valeur indice="3">137,11955</valeur> <Valeur indice="4">139,30552</valeur> <Valeur indice="5">160,54333</valeur> <Valeur indice="6">182,13675</valeur> <Valeur indice="7">184,95295</valeur> <Valeur indice="8">147,8214</valeur> <Valeur indice="9">163,55084</valeur> <Valeur indice="10">203,87873</valeur> <Valeur indice="11">195,21022</valeur> </ListeSousJacents> <ListeProduitsDerives> <ProduitDerive nomproduitderive="p1"> <TypeProduitDerive nomtypeproduitderive="option"> <SousJacent>SJ1</SousJacent> <Maturite>2</Maturite> <Strike>90</Strike> <Taux>0,04</Taux> <TypeOption nomtypeoption="callsimple" /> </TypeProduitDerive> 14 P a g e
15 </ProduitDerive> <Valeur indice="1">20,86781</valeur> <Valeur indice="2">29,07052</valeur> <Valeur indice="3">50,72671</valeur> <Valeur indice="4">51,09023</valeur> <Valeur indice="5">70,54333</valeur> <Valeur indice="6">0</valeur> <Valeur indice="7">0</valeur> <Valeur indice="8">0</valeur> <Valeur indice="9">0</valeur> <Valeur indice="10">0</valeur> <Valeur indice="11">0</valeur> </ListeProduitsDerives> </Simulation> IX. XML Exportation des évaluations 1) Structure générale La structure générale du fichier reprend la précédente (il n y a pas de section pour les corrélations) : <?xml version="1.0"?> <Simulation> <ListeTaux> /* détails des taux */ </ListeTaux> <ListeSousJacents> /* détails des sous-jacents */ </ListeSousJacents> <ListeProduitsDerives> /* détails des produits dérivés */ </ListeProduitsDerives> </Simulation> Après chaque ouverture/fermeture de <Taux>, <SousJacent> ou <ProduitDerive> on ajoute les évaluations. Pour décrire une évaluation : Ouvrir une balise <DateEvaluation>, écrire la date d évaluation, puis refermer la date d évaluation avec la balise </DateEvaluation>. Ouvrir une balise <ValeurEvaluation>, écrire la valeur d évaluation, puis refermer la valeur d évaluation avec la balise </ValeurEvaluation>. 2) Exemple complet Nous détaillons ici un exemple d évaluations traduites en fichier XML dans lequel on définit une obligation Obl1 et un basis swap Swap1 vérifiant : Obl1 est une obligation de nominal 100, de maturité 2 ans, versant des coupons de 5%, et ayant été émise le 3 avril Swap1 est un basis swap sur un nominal de 100, de maturité 10 ans, échangeant annuellement de l Euribor 1 mois contre de l Euribor 7 mois + 5 bps créé le 3 avril <?xml version="1.0"?> <Evaluation> <ListeSousJacents> 15 P a g e
16 <SousJacent nomsousjacent="obl1"> <TypeSousJacent nomtypesousjacent="obligation"> <Maturite>2</Maturite> <TypeObligation nomtypeobligation="obligationcoupon"> <TauxCoupon>0,05</TauxCoupon> <Valeur>100</Valeur> <Intervalle>0,5</Intervalle> <DateEmission>03/04/ :00:00</DateEmission> </TypeObligation> </TypeSousJacent> </SousJacent> <DateEvaluation>12/06/ :00:00</DateEvaluation> <ValeurEvaluation>119, </ValeurEvaluation> </ListeSousJacents> <ListeProduitsDerives> <ProduitDerive nomproduitderive="swap1"> <TypeProduitDerive nomtypeproduitderive="swap"> <Nominal>100</Nominal> <Maturite>10</Maturite> <DateEmission>03/04/ :00:00</DateEmission> <Intervalle1>1</Intervalle1> <Intervalle2>1</Intervalle2> <Convention1>0</Convention1> <Convention2>1</Convention2> <CaracteristiqueSwap>True</CaracteristiqueSwap> <TypeSwap nomtypeswap="basisswaptaux"> <TypeTauxVariable1>1</TypeTauxVariable1> <TypeTauxVariable2>7</TypeTauxVariable2> <SpreadTauxVariable1>0</SpreadTauxVariable1> <SpreadTauxVariable2>5</SpreadTauxVariable2> </TypeSwap> </TypeProduitDerive> </ProduitDerive> <DateEvaluation>12/06/ :00:00</DateEvaluation> <ValeurEvaluation>-0, </ValeurEvaluation> </ListeProduitsDerives> </Evaluation> 16 P a g e
Manuel d Utilisateur - Logiciel ModAFi. Jonathan ANJOU - Maud EYZAT - Kévin NAVARRO
Manuel d Utilisateur - Logiciel ModAFi Jonathan ANJOU - Maud EYZAT - Kévin NAVARRO Grenoble, 12 juin 2012 Table des matières 1 Introduction 3 2 Modèles supportés 3 2.1 Les diérents modèles supportés pour
Plus en détailCorrigés des premiers exercices sur les classes
Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.
Plus en détailOptions et Swap sur intérêt
Options et Swap sur intérêt Risk Management - TP 3-1 - Exercice1 : choix de deux options J ai décidé d utiliser le site Swissquote pour cette recherche. Toutefois j ai préféré prendre des warrants (certificats
Plus en détailLes techniques des marchés financiers
Les techniques des marchés financiers Corrigé des exercices supplémentaires Christine Lambert éditions Ellipses Exercice 1 : le suivi d une position de change... 2 Exercice 2 : les titres de taux... 3
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailPratique des options Grecs et stratégies de trading. F. Wellers
Pratique des options Grecs et stratégies de trading F. Wellers Plan de la conférence 0 Philosophie et structure du cours 1 Définitions des grecs 2 Propriétés des grecs 3 Qu est ce que la volatilité? 4
Plus en détailLISTE D EXERCICES 2 (à la maison)
Université de Lorraine Faculté des Sciences et Technologies MASTER 2 IMOI, parcours AD et MF Année 2013/2014 Ecole des Mines de Nancy LISTE D EXERCICES 2 (à la maison) 2.1 Un particulier place 500 euros
Plus en détailDéveloppement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com
Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend
Plus en détailProgramme Compte bancaire (code)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public
Plus en détailListe des notes techniques... xxi Liste des encadrés... xxiii Préface à l édition internationale... xxv Préface à l édition francophone...
Liste des notes techniques.................... xxi Liste des encadrés....................... xxiii Préface à l édition internationale.................. xxv Préface à l édition francophone..................
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailLicence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...
Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez
Plus en détailQUESTIONS D ENTRETIENS EN FINANCE DE MARCHE
QUESTIONS D ENTRETIENS EN FINANCE DE MARCHE Le présent document est un recueil de questions, la plupart techniques, posées à des candidats généralement jeunes diplômés, issus d école d ingénieurs, de commerce
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailPlateforme PAYZEN. Définition de Web-services
Plateforme PAYZEN Définition de Web-services Ordre de paiement Version 1.1 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Lyra-Network
Plus en détail1/ Présentation de SQL Server :
Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture
Plus en détailProbabilités III Introduction à l évaluation d options
Probabilités III Introduction à l évaluation d options Jacques Printems Promotion 2012 2013 1 Modèle à temps discret 2 Introduction aux modèles en temps continu Limite du modèle binomial lorsque N + Un
Plus en détailChapitre 2. Classes et objets
Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons
Plus en détailTP, première séquence d exercices.
TP, première séquence d exercices. Benoît Valiron benoit.valiron@lipn.univ-paris13.fr 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la
Plus en détailPremiers Pas en Programmation Objet : les Classes et les Objets
Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.
Plus en détailLangage Java. Classe de première SI
Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailQuelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)
Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 - Année 2004-2005 auteur : Frédéric Vernier semaine : 11-16 octobre 2004 conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailGUIDE UTILISATEUR. KPAX Discover
GUIDE UTILISATEUR KPAX Discover STATUT DU COPYRIGHT ET DE LA REPRODUCTION La société KPAX vous autorise à consulter le contenu de ce document sous réserve d appliquer à toutes les copies les droits d auteur
Plus en détailAlfstore workflow framework Spécification technique
Alfstore workflow framework Spécification technique Version 0.91 (2012-08-03) www.alfstore.com Email: info@alfstore.com Alfstore workflow framework 2012-10-28 1/28 Historique des versions Version Date
Plus en détailPrénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailPrésentation Salle des marchés. Centrale Lille Octobre 2007. Contacts: Matthieu MONLUN Responsable de la salle des marchés
Présentation Salle des marchés Centrale Lille Octobre 2007 Contacts: Matthieu MONLUN Responsable de la salle des marchés Jérôme CHANE Sales Fixed Income Tel: 03.20.57.50.00 Email: prenom.nom@calyon.com
Plus en détailSOFI Gestion+ Version 5.4. Echanges de données informatiques Spicers Sofi gestion+ Groupements. SOFI Informatique. Actualisé le 10.09.
SOFI Gestion+ SOFI Informatique Version 5.4 Echanges de données informatiques Spicers Sofi gestion+ Groupements Actualisé le 10.09.2004 Table des matières 1. Catalogue et tarifs... 4 1.1 Définition EDI...
Plus en détailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailValorisation d es des options Novembre 2007
Valorisation des options Novembre 2007 Plan Rappels Relations de prix Le modèle binomial Le modèle de Black-Scholes Les grecques Page 2 Rappels (1) Définition Une option est un contrat financier qui confère
Plus en détailAlgorithmique et programmation : les bases (VBA) Corrigé
PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 1 mai juin 2006 Corrigé Résumé Ce document décrit l écriture dans le langage VBA des éléments vus en algorithmique. Table des matières 1 Pourquoi
Plus en détailProcessus 6 : Gestion de la trésorerie et du financement
1 / 10 Processus 6 : Gestion de la trésorerie et du financement Le P6 regroupe 3 parties : - Le suivi et l optimisation de la trésorerie à court terme (au jour le jour) ; - La détermination des besoins
Plus en détailDéfinition des Webservices Ordre de paiement par email. Version 1.0
Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document
Plus en détailTP 1. Prise en main du langage Python
TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer
Plus en détailLES MARCHÉS DÉRIVÉS DE CHANGE. Finance internationale 9éme ed. Y. Simon & D. Lautier
LES MARCHÉS DÉRIVÉS DE CHANGE 1 Section 1. Les instruments dérivés de change négociés sur le marché interbancaire Section 2. Les instruments dérivés de change négociés sur les marchés boursiers organisés
Plus en détailLangage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2
Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD
Plus en détailIntroduction à JDBC. Accès aux bases de données en Java
Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailTraduction des Langages : Le Compilateur Micro Java
BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant
Plus en détailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détailTp 1 correction. Structures de données (IF2)
Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que
Plus en détailProgrammation avec des objets : Cours 7. Menu du jour
1 Programmation avec des objets : Cours 7 Menu du jour 1. Retour sur la classe Liste 2. Précisions sur l interface 3. Difficultés dans le cas d erreurs 4. Soulever des exceptions 5. Utilisation des Listes
Plus en détailTP de risque management Risque Forex
TP de risque management Risque Forex Exercice 1 Partie 1. Le but de cette exercice est voir quel sont les options qui permettent de gérer le risque du au taux de change. En effet, dans notre cas, une société
Plus en détailRemote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Plus en détailCalcul et gestion de taux
Calcul et gestion de taux Chapitre 1 : la gestion du risque obligataire... 2 1. Caractéristique d une obligation (Bond/ Bund / Gilt)... 2 2. Typologie... 4 3. Cotation d une obligation à taux fixe... 4
Plus en détailProjet Active Object
Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques
Plus en détailBases Java - Eclipse / Netbeans
Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement
Plus en détailQuestion 1: Analyse et évaluation des obligations / Gestion de portefeuille
Question 1: Analyse et évaluation des obligations / Gestion de portefeuille (33 points) Monsieur X est un gérant de fonds obligataire qui a repris la responsabilité de gestion du portefeuille obligataire
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailTutoriel D utilisation. Du PGI Open line d EBP
Tutoriel D utilisation Du PGI Open line d EBP Tutoriel d utilisation du PGI EBP Open line - christophe.cessac@ac-orleans-tours.fr LP Les charmilles / Mission TICE Page 1/64 Table des matières Première
Plus en détailHéritage presque multiple en Java (1/2)
Héritage presque multiple en Java (1/2) Utiliser deux classes ou plus dans la définition d'une nouvelle classe peut se faire par composition. class Etudiant{ int numero; Diplome d; float passeexamen(examen
Plus en détailNOTICE MÉTHODOLOGIQUE SUR LES OPTIONS DE CHANGE
NOTICE MÉTHODOLOGIQUE SUR LES OPTIONS DE CHANGE Avec le développement des produits dérivés, le marché des options de change exerce une influence croissante sur le marché du change au comptant. Cette étude,
Plus en détail2- Comment les traders gèrent les risques
2- Comment les traders gèrent les risques front office middle office back office trading échange d'actifs financiers contrôle des risques, calcul du capital requis enregistrement des opérations traitement
Plus en détailProgrammation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
Plus en détailTP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options
Université de Lorraine Modélisation Stochastique Master 2 IMOI 2014-2015 TP1 Méthodes de Monte Carlo et techniques de réduction de variance, application au pricing d options 1 Les options Le but de ce
Plus en détailTable des matières. Avant-propos. Chapitre 2 L actualisation... 21. Chapitre 1 L intérêt... 1. Chapitre 3 Les annuités... 33 III. Entraînement...
III Table des matières Avant-propos Remerciements................................. Les auteurs..................................... Chapitre 1 L intérêt............................. 1 1. Mise en situation...........................
Plus en détailLES TYPES DE DONNÉES DU LANGAGE PASCAL
LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.
Plus en détailJEU BOURSIER 2015. Séance d introduction à la plateforme de trading SaxoWebTrader. - Pour débutants -
JEU BOURSIER 2015 Séance d introduction à la plateforme de trading SaxoWebTrader - Pour débutants - A partir d un ordinateur: a) Rends-toi sur le site suisse de SaxoBank: https://webtrader.saxobank.ch/sim/login/
Plus en détailTP2 : Client d une BDD SqlServer
TP2 : Client d une BDD SqlServer Objectifs : utiliser la barre de menu, utiliser les préférences d application (settings) ou (options), gérer la persistance des données, utiliser la bibliothèque jtds:jdbc
Plus en détailExercice du cours Gestion Financière à Court Terme : «Analyse d un reverse convertible»
Exercice du cours Gestion Financière à Court Terme : «Analyse d un reverse convertible» Quand la trésorerie d une entreprise est positive, le trésorier cherche le meilleur placement pour placer les excédents.
Plus en détailCOMPRENDRE LES OPTIONS BINAIRES - LEÇON 1
COMPRENDRE LES OPTIONS BINAIRES - LEÇON 1 Qu est ce que sont les options binaires? Le trading d options binaires, parfois connu sous le nom des options numériques ou ORF (options de retour fixe), est une
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailOptions, Futures, Parité call put
Département de Mathématiques TD Finance / Mathématiques Financières Options, Futures, Parité call put Exercice 1 Quelle est la différence entre (a) prendre une position longue sur un forward avec un prix
Plus en détailExchange Traded Funds (ETF) Mécanismes et principales utilisations. 12 Mai 2011
Exchange Traded Funds (ETF) Mécanismes et principales utilisations 12 Mai 2011 Sommaire I Présentation du marché des ETF II Construction des ETF III Principales utilisations IV Les ETF dans le contexte
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailProgrammation par les Objets en Java
Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée
Plus en détailCapital économique en assurance vie : utilisation des «replicating portfolios»
Capital économique en assurance vie : utilisation des «replicating portfolios» Anne LARPIN, CFO SL France Stéphane CAMON, CRO SL France 1 Executive summary Le bouleversement de la réglementation financière
Plus en détailTD/TP PAC - Programmation n 3
Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html
Plus en détailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détailHedging delta et gamma neutre d un option digitale
Hedging delta et gamma neutre d un option digitale Daniel Herlemont 1 Introduction L objectif de ce projet est d examiner la couverture delta-gamma neutre d un portefeuille d options digitales Asset-Or-Nothing
Plus en détailTraitement des données avec Microsoft EXCEL 2010
Traitement des données avec Microsoft EXCEL 2010 Vincent Jalby Septembre 2012 1 Saisie des données Les données collectées sont saisies dans une feuille Excel. Chaque ligne correspond à une observation
Plus en détailTypes d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles
Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce
Plus en détailLe Mini E-book de XForex pour débutants TRADER PRO. Guide de trading de devises
Le Mini E-book de XForex pour débutants TRADER PRO Guide de trading de devises XForex vous a préparé un condensé du E- book, son manuel électronique sur le trading de devises. Le Mini E-book a été conçu
Plus en détailGuide de prise en main. Yourcegid SOLOS. Devis-Factures. 12/08/2013 Page 1 / 38
Yourcegid SOLOS Devis-Factures 12/08/2013 Page 1 / 38 Sommaire 1. YOURCEGID SOLOS DEVIS-FACTURES : AUTONOME, SIMPLE, INTUITIF ET PERSONNALISABLE 3 2. CENTRE D'AIDE ET SUPPORT... 5 3. ERGONOMIE... 6 Les
Plus en détailSHERLOCK 7. Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5
SHERLOCK 7 Version 1.2.0 du 01/09/09 JAVASCRIPT 1.5 Cette note montre comment intégrer un script Java dans une investigation Sherlock et les différents aspects de Java script. S T E M M E R I M A G I N
Plus en détailHighPush. document 3.0 18/06/2009 Révision pour version 3.0 2.0 20/11/2008 Revision pour la 2.0 1.0 01/10/2008 Documentation initiale.
Version du Date document 3.0 18/06/2009 Révision pour version 3.0 2.0 20/11/2008 Revision pour la 2.0 1.0 01/10/2008 Documentation initiale Commentaires 1 Table des matières 1 Introduction / Identification...
Plus en détailConversion d un entier. Méthode par soustraction
Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut
Plus en détailPROJET MODELE DE TAUX
MASTER 272 INGENIERIE ECONOMIQUE ET FINANCIERE PROJET MODELE DE TAUX Pricing du taux d intérêt des caplets avec le modèle de taux G2++ Professeur : Christophe LUNVEN 29 Fevrier 2012 Taylan KUNAL - Dinh
Plus en détailPolycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5
UNIVERISTE MOHAMMED PREMIER Faculté des Sciences d Oujda Oujda - Maroc Polycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5 Pr. El Mostafa DAOUDI Département de Mathématiques
Plus en détailComprendre vos relevés de comptes CFD/FOREX:
Comprendre vos relevés de comptes CFD/FOREX: WHS ProStation WHS FutureStation Version: 16.06 2011 1 Rapports disponibles Rapport Historique du compte Fournit une vue d ensemble sur une période de temps
Plus en détailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailExercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Plus en détailLA GESTION DU RISQUE DE CHANGE. Finance internationale, 9 ème édition Y. Simon et D. Lautier
LA GESTION DU RISQUE DE CHANGE 2 Section 1. Problématique de la gestion du risque de change Section 2. La réduction de l exposition de l entreprise au risque de change Section 3. La gestion du risque de
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailGUIDE PRATIQUE. Du provisionnement des emprunts à risques
Ministère de l Égalité des territoires et du Logement Ministère de l Économie et des Finances GUIDE PRATIQUE Du provisionnement des emprunts à risques Application aux Offices Publics de l Habitat à comptabilité
Plus en détailManuel du logiciel PrestaTest.
Manuel du logiciel. Ce document décrit les différents tests que permet le logiciel, il liste également les informations nécessaires à chacun d entre eux. Table des matières Prérequis de PrestaConnect :...2
Plus en détailCours 1: Java et les objets
Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailUtilitaires méconnus de StrataFrame
Utilitaires méconnus de StrataFrame Voici quelques classes d utilitaires, parmi ceux qui se trouvent dans le NameSpace MicroFour.StrataFrame.Tools. Cette liste n est pas exhaustive, et les regroupements
Plus en détailDérivés Financiers Contrats à terme
Dérivés Financiers Contrats à terme Mécanique des marchés à terme 1) Supposons que vous prenez une position courte sur un contrat à terme, pour vendre de l argent en juillet à 10,20 par once, sur le New
Plus en détailÉtude des résultats des investisseurs particuliers sur le trading de CFD et de Forex en France
Étude des résultats des investisseurs particuliers sur le trading de CFD et de Forex en France Le 13 octobre 2014 Autorité des marchés financiers 17, place de la Bourse 75082 Paris cedex 02 Tél. : 01 53
Plus en détailProduits structurés. Sacha Duparc, Développement & Trading Produits Structurés 20.12.2013
Produits structurés Sacha Duparc, Développement & Trading Produits Structurés 20.12.2013 Importance du marché des produits structurés en Suisse Les produits structurés constituent une catégorie d investissement
Plus en détailPlateforme PAYZEN. Intégration du module de paiement pour la plateforme Magento version 1.3.x.x. Paiement en plusieurs fois. Version 1.
Plateforme PAYZEN Intégration du module de paiement pour la plateforme Magento version 1.3.x.x Paiement en plusieurs fois Version 1.4a Guide d intégration du module de paiement Multiple Magento 1/24 SUIVI,
Plus en détailBTS Groupement A. Mathématiques Session 2011. Spécialités CIRA, IRIS, Systèmes électroniques, TPIL
BTS Groupement A Mathématiques Session 11 Exercice 1 : 1 points Spécialités CIRA, IRIS, Systèmes électroniques, TPIL On considère un circuit composé d une résistance et d un condensateur représenté par
Plus en détail