210 likes | 348 Views
13e rencontre SMAI math-industrie. Le calcul parallèle dans le domaine bancaire. 22/03/2011. Table of contents. Le domaine d’application: Enjeux / problématique Une réalisation industrielle Les directions d’amélioration. 1. Le domaine d’application: Enjeux / problématique.
E N D
13e rencontre SMAI math-industrie Le calcul parallèle dans le domaine bancaire 22/03/2011 José Luu, Head of scientific computing
Table of contents • Le domaine d’application: Enjeux / problématique • Une réalisation industrielle • Les directions d’amélioration
1 • Le domaine d’application: Enjeux / problématique
Qu’est-ce qu’un produit dérivé ? • L’option • le client de l’option achète le droit de décider plus tard. Exemple : option d’achat (=CALL) d’un million de tonnes de fer à 2 ans • Le client paie l’option (il paie une prime) • Le client a 2 ans pour décider • Abandon de l’option • Achat du fer au prix convenu initialement (quelque soit le prix à l’instant de la décision) Exemple : l’option cachée dans les titres de transport • Utilisations • Sécurisation du futur (industriels, placements garantis) • Pari sur le futur (fonds a stratégie – hedge funds)
Comment calculer le prix du produit dérivé ? • Références: • //demonstrations.wolfram.com/ExploringTheBlackScholesFormula/ • Inventing Money, Nicholas Dunbar, John Wiley and Sons • The Greatest Trade Ever Gregory Zuckerman
Comment gérer le produit dérivé ? • La Gestion • Couverture delta: • Toujours posséder une quantité d’actifs proportionnelle à la dérivée. • On démontre que: • La prime est dépensée pour la couverture • Les risques sont éliminés • Les actifs sont livrés au client au prix convenu.
La méthode de Monte-Carlo Réalise l’intégrale Peu sensible à la dimension du problème • Multi sous-jacents Très robuste pour le pricing • Moins pour les dérivées Nécessite beaucoup de calculs • Volatilité locale
Actifs multiples et Volatilité locale • La volatilité locale • Schéma d’Euler explicite • Certains instruments nécessitent 1010 dW
2 • Une réalisation industrielle
Un savoir faire du service Equity Derivatives Premier calculateur MC parallèle en 1998 • Puissance totale agrégée • 1015 dW par jour • Disponibilité • 8 heures d’interruption sur 2 ans soit 99,95% • Taux d’utilisation des machines • 90% des machines 12H par jour • Programmation • Infrastructure Linux • Peu couteuse • Open-Source: Maitrise complète • Algorithmique de pricing • Programmes développés en mode local (non parallèle) • Même programmes en parallèle et même résultats (10-15) • Nouveaux deals (payoff a développer) • Mise en production en 48 heures (routine)
Caractéristiques Capacité de recalcul complet en 10 minutes • Nécessaire en cas de gros décalage du marché Augmentation de la puissance par ajout de machines • Instruments financiers de grande dimension • Augmentation du nombre de deals traités • Exemple: ajout de 1000 cores=5 chassis
Pilotage, équilibrage de charge dynamique Client Supervision 1: client demande un Cache 2: Le client envoie le pricing au cache attend le résultat retourné par le cache. RG Système de calcul Résultat agrégé RM Cache Base de données 3: Le cache demande N kernels 5:Chaque kernel renvoie ses résultats au cache 4:Le cache envoie le pricing aux N kernels Serveur Web + Pages PHP Kernel Kernel Kernel Kernel Kernel
Partitionnement • Utilisations • Batch de nuit • Calculs interactifs • Recette Clients sur différents continents Règles de débordement • Débordement vers les partitions non chargées • Isolation lorsque 2 partitions sont en charge
Tolérance aux pannes, fiabilité • Effort • 50% du code technique de parallèlisation Composants critiques triplés Pas de persistance d’état dans les composants critiques Pas d’interruption de service • Perte de machine • Perte de data center • Montée de version programme ou OS • Sans reconfiguration
A x B D e1 e2 e3 e4 C Développement des programmes • Développement/Debug en mode local Production en parallèle • Mêmes résultats (10-15) • Même séquence aléatoire • Même programme • Même structures de données Sérialiseur binaire maison • Déclaratif • Capable de transporter des graphes avec cycles et héritage multiple
Enseignements • Architecture • Code unique • Tolérance aux pannes Les détails qui comptent autant que l’architecture • Observabilité (mise en place de sondes au cœur du système) • Connaissance complète du système • Analyse des (dis-)fonctionnement • Remèdes sur les causes premières • Stratégies de régulation de charge • Tuning pour une plage de fonctionnement étendue • Peu de dépendance sur des timeouts pour le fonctionnement normal ou exceptionnel
3 • Les directions d’amélioration
Ce que les évolutions doivent préserver • Robustesse de la méthode de Monte-Carlo • pas de recalibration instrument par instrument • Découpage des tirages de Monte-Carlo pour pouvoir traiter de grandes dimensions • Facilité d’ajout de puissance par augmentation du nombre de machines • Programmation/debug/optimisation avec outils évolués (par ex: MS Edit and Continue) • Code identique en local et en parallèle
Améliorations technologiques • Multiphase • =MPI faiblement couplé Instructions vectorielles sur processeurs standard • Altivec, SSE2, AVX … • 3 tests GPU dans 2 services • EDP 2D ADI • Fin 2008, sur premières cartes avec double précision • Gain d’un facteur 2 (par rapport à 1 core standard) • Monte-Carlo Volatilité locale 2 sous-jacents • Gain d’un facteur 80 (par rapport à 1 core standard) • EDP 3D ADI • Fin 2010 • Gain d’un facteur 2 à 3 (par rapport à 1 core standard)
GPU suite Attention à: • Programmation spéciale • Mémoire limitée • Transferts mémoire explicites et couteux • Exceptions IEEE • Double precision (puissance limitée ou non disponible) • Observabilité, outils d’optimisation • Références • Fast Tridiagonal Solvers on the GPU • http://code.google.com/p/cudpp/ • http://www.arbitragis-research.com/cuda-in-computational-finance/monteCarlo.pdf
Améliorations mathématiques • Modèles • Corrélation locale • Local LSV • Dividendes non linéaires • Convergence • SPM (stabilité des dérivées A. Reghai) • Quasi MC, complété par Pseudo • L'échantillonnage préférentiel • Variable de contrôle Autres algorithmes • EDP • American MC • LSM (frontière d’exercice) • Quantification