exane manipulation de données financières sous matlab exane bnp paribas trading & arbitrage...

23
Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand {charles-albert.lehalle| nicolas.bertrand}@exane.com

Upload: felicien-raffin

Post on 04-Apr-2015

132 views

Category:

Documents


10 download

TRANSCRIPT

Page 1: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Exa

ne

Manipulation de données financières

sous MATLAB

Exane BNP Paribas

Trading & Arbitrage Research

nov 2005

Charles-Albert Lehalle, Nicolas Bertrand{charles-albert.lehalle|nicolas.bertrand}@exane.com

Page 2: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Manipulation de données financières avec MATLAB

Prise en compte de la spécificité des données financières

Prise en compte de la spécificité des traitements financiers

Importance de la documentation

Exemples didactiques de manipulations de données financières

Screening

Simulation de données réalistes

Bilan

Un socle unique pour de nombreuses applications

Atouts traditionnels de MATLAB

Page 3: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Objectif:Une approche métier au service du développement d’outils internes

Opérationnel

Prototypage

Données Résultats

Déploiement

Validation

Page 4: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage Quels types de données ?

Temporels et multivariés

Explicitement rythmés

quotidiens Entre chocs

Evénementiels

Implicitement rythmés

Page 5: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Types de données, types d’analyses, sources de données

Ensemblede cours cours events

informationsmixtes

Portefeuille

Diversification de portefeuille

Analyse technique

Scanning systématique

Pricing,volatilité, etc

Covariances, bêta

Marketimpact, etc

stocks

Bloomberg,Reuters,DataStream, FacSet, etc…

tradesEuronext database

Page 6: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage Eléments d'implémentation: le signal financier

Un type MATLAB polymorphe: struct

Un signal =

Un titre

Une série de date

Une série de données (volume, open, close, high, low) au même pas d'échantillonnage

Les noms de ces variables

+ des informations optionnelles

En MATLAB:

>> data = struct( 'title', 'le titre', 'date', vecteur-colonne, ...)value: [20732x8 double]date: [20732x1 double]names: {1x8 cell}title: ‘BN FP Equity'

Page 7: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Quels types de traitements ?

Au fil de l’eau (filtrage) pour produire

Pricing (titre / portefeuille)

Des alarmes (risque / gain associé à une configuration, …)

Des caractéristiques (formes, configurations, …)

Par « batchs » pour produire

Calcul d’allocations

Reporting (PnL, VaR)

Des estimateurs du comportement du marché (corrélations, modèles, …)

Des anticipations court terme (probabilités de retournement, …)

Page 8: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage Prototype unique pour tout les traitements

Entrées / sorties : listes de signaux

Mode de sollicitation (initialisation, détection, estimation, bootstrap, etc)

Etat

Il s'agit d'une fonction MATLAB dont le prototype est de la forme

Function [outputs, state] = analyse( mode, state, inputs, ...)

solicitation

entrées sorties

état

Page 9: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage Vers une architecture optimale des traitements

Chaînage

Séparation claire des analyses

Travail collaboratif / maintenabilité

Backtesting naturel

lecture

Travail sur les prix

Decoupagequotidien des

volumes

Travail surles volumes

Conjonction prix -

volumes

affichage

écriture

Page 10: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage Documenter pour échanger

documentation utilisateur m2html documentation technique OCAMAWEB

Page 11: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Exemples didactiques

Exemples de manipulations de données financières

Screening

Simulation de données réalistes

Page 12: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Screening

Objectifs :

Screener automatiquement des données financières et des indicateurs de marché

Sous forme de charts paramétrables et de documents de synthèse

Moyens :

Accès aux données

Calcul des indicateurs (bandes de Bollinger, moyennes mobiles, performances, etc.)

Construction des charts

Page 13: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Screening: principe

Extraction des données financières Calcul des indicateurs Paramétrage,

tracé des charts

Page 14: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Screening: rendu

Chart seul Document de synthèse (pdf)

Page 15: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Simulation de données réalistes

Objectifs :

A partir d’historiques de données (courbes, certaines quotidiennes, d’autres mensuelles)

Simuler des « années réalistes » concordant avec les caractéristiques statistiques des courbes réelles

Conserver les corrélations (et autre moments) entre les courbes

Moyen :

Modélisation de la structure des données avec des copules (non paramétriques)

Simulation par Monte Carlo

Page 16: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Simulation de données réalistes : principe

Prétraitements (stationnarisation)

Espace de représentation(dans lequel les données sont

indépendantes)copules non paramétriques

Simulation de données indépendantes

Inversion des copules

Modèle de corrélations

Application des corrélations

Page 17: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Déploiement : compilation EXCEL COM

Déploiement sur les postes utilisateurs via Excel COM/Builder

Entrées : les données par DataStream

Sorties : 1000 simulations d’années plausibles

Exploitation: Distribution de l’exposition au risque (VaR)

Page 18: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

MATLAB: un socle unique pour de multiples applications

Asset Liability Management Families

Real Estate (geographical statistics) Statistics

Fixed Income (sensibility, …, yield curves) Statistics

Equity (volatility, correlations, Markovitz, …) Statistics, Optimization

Credit (structural models –Merton-, copula, …) Finance, Statistics

Diversified Portfolio (Markovitz, Black & Litterman, …) Optimization, Control

Risk Management

Value at Risk (correlations, copula) Statistics

Stress testing (extreme values, …) Base, Statistics

Insurance

Population dynamics Statistics, Base

Fixed Income & Currency Derivatives

Yield curves (Vasicek, …) Statistics

Swaps Finance

Fixed income options Finance

1/3

Page 19: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

MATLAB: un socle unique pour de multiples applications

Equity Derivatives Families

Closed form models (B&S, …) Finance

Simulations (multinomial trees, monte carlo, finite differences) Optimization, Stats

Sensibilities (greeks) Finance, Optimization

Credit Derivatives

Structural models Finance, Optimization

Reduced form models (empirical probabilities of default, …) Optimization, Statistics

Copula Statistics

Trading & Arbitrage

Technical analysis Finance, Statistics, Signal Processing

Arbitrage Statistics, Base, Optimization

Trading Statistics, Control, Signal Processing, Optimization

2/3

Page 20: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

MATLAB: un socle unique pour de multiples applications

Math and Optimization

Optimization Toolbox, Symbolic Math (Extended Symbolic Math), [Partial Differential Equation], Genetic Algorithm and Direct Search Toolbox

Statistics and Data Analysis

Statistics, Neural Network, Curve Fitting, Spline, [Model-Based Calibration]

Control System Design and Analysis

Control System, System Identification, [Fuzzy Logic], Robust Control Model, Predictive Control

Signal Processing and Communications

Signal Processing, [Communications], [Filter Design], [Filter Design HDL Coder], Wavelet, Fixed-Point, [RF]

Financial Modeling and Analysis

Financial, Financial Derivatives, GARCH, Financial Time Series, Datafeed, Fixed-Income

3/3

Page 21: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Bilan

Pré requis : un format de stockage de données et un format de manipulation de données,

Les atouts de MATLAB

Un socle unique pour de nombreuses applications (réduction des coûts)

Maîtriser l’enchaînement de plusieurs méthodologies (approche « grey box », contrôle du risque de modèle)

Prototypage rapide (script, graphiques, toolboxes)

Accès aux données (en évolution)

Peuvent être mis efficacement à disposition de la finance quantitative

Calculs en lignes + calculs en batch sur de gros volumes de données

Mise en place rapide d’applications pour validation / backtesting

Interactions avec les providers de données financières (actx / dde) et les legacy systems

Page 22: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Références

Documentation technique de programmesLiterate programming / OCAMAWEB http://www.literateprogramming.com/ftools.html

Séquencement de calculsJérôme Lacaille, Projet d’habilitation à diriger des recherches Chap 5; http://www.cmla.ens-cachan.fr/Utilisateurs/lacaille/hdr/hdr.pdf

J.P. Morrison, Flow-Based Programming: A New Approach to Application Developmenthttp://www.jpaulmorrison.com/fbp/

Page 23: Exane Manipulation de données financières sous MATLAB Exane BNP Paribas Trading & Arbitrage Research nov 2005 Charles-Albert Lehalle, Nicolas Bertrand

Trading & Arbitrage

Manipulation de données financières avec MATLAB