SlideShare a Scribd company logo
1 of 18
Financial Information Exchangeprotocole (FIX) Présenté par : Mehdi Dbouki
Plan Qu’est ce que le protocole FIX ? Qui utilisent le protocole FIX ? Historique du protocole FIX  Les avantages du protocole FIX  Les messages Exemple 2
Qu’est ce que le protocole FIX ? C’est un protocole de messagerie standard pour la transmission électronique de messages liés à des échanges entre différentes institutions financières  C’est le protocole de communications commerciales leader du marché  3
Qui utilisent le protocole FIX ? Les institutions d’investissement (the buy side) Les maisons de courtage (the sell side) Les bourses  Les services publics Les fournisseurs de logiciels et de services 4
Historique du protocole FIX  FIX a été développé par l’organisation  « Fix Protocol Limited (FPL)»    FPL  est le résultat de la collaboration des institutions financières et industrielles .  1992, première utilisation du protocole FIX ,[object Object],Les versions de FIX : ,[object Object]
Les versions antérieures : V 4.0 ,V 4.1 ,V 4.2 ,V4.3 et V4.4     5
Les avantages du protocole FIX  FIX  est un protocole ouvert et gratuit     FIX possède une énorme communauté commerciale active Mise en place simple  Compatibilité avec : ,[object Object]
C++, Java, .NET, Python et Ruby6
Les messages Admin Messages  Permet de maintenir les différents aspects de la session FIX ( Connexion )  Application Messages Permet la transmission des messages d’affaire  7
Admin Messages Logon : message d authentification  Logout : la fermeture de la session  Heartbeat : la vérification du lien de la communication entre  		       deux parties  Test Request : teste la qualité du lien de la communication Reject (Session) : échec de validation au niveau de la session Sequence reset : récupérer ou réinitialiser le message . 8
Application Messages Confirmation New order Order cancel request 9
Format des messages FIX Le message contient 3 parties : En-tête  Corps Pied de page  Le message est un ensemble de champs Chaque champ est une valeur paire de balises <tag> = <Valeur>     Exemple : 55=IBM  Tous les champs se terminent par le délimiteur ^ Exemple : 55=IBM ^ 54=1 ^  10
Format des messages FIX Tous les messages commencent par « 8 = FIX. x » x : la version du FIX   Tous les messages se terminent par «10 = x ^ » x : la valeur du checksum Chaque tag a son propre dictionnaire de commandes . 11
Format des messages FIX Message Codes Type (Tag 35) • 0 = Heartbeat • 1 = Test Request • 2 = Resend Request • 3 = Reject • 4 = Sequence Reset • 5 = Logout • 6 = Indication of Interest • 7 = Advertisement • 8 = Execution Report • 9 = Order Cancel Reject • A = Logon • B = News • C = Email • D = Order - Single • E = Order - List • F = Order Cancel Request • G = Order Cancel/Replace Request • H = Order Status Request • J = Allocation • K = List Cancel Request • L = List Execute • M = List Status Request and more 12
buy side trading system Système commercial  Buyside sell side trading system Système commercial  Sellside FIX engine FIX engine Exemple Un gestionnaire de fonds envoie un ordre à un courtier        TCP Over a WAN L’ordre est transmit via TCP après que le « bye side » déclenche la connexion et que le « sellside » accepte . 13
Exemple Le “buy side” se connectesur le port du FIX Engine du “Sell Side” via TCP Le “Sell side” accepte la connexion  TCP Le “Buy side” envoie le message ‘Logon’ Le “Sell side” envoie le message ‘Logon’ Le “Buy side” envoie le message ‘New Order ’ Le “Sell side” envoie le message ‘Execution’ 14
buy side trading system Système commercial                 A sell side trading system Système commercial                  B FIX engine FIX engine Exemple Exemple d’un ordre de transaction et son annulation LOGON New Order Execution Report Order Cancel Execution (Cancel Accept) LOGOUT 15
Exemple Exemple d un message FIX : L’achat de 5000 IBM (prix d’une machine:110.75) 8=FIX.4.2^9=251^35=D^49=DMGR^56=ABROKER^34=2^ 52=20030615-01:14:49^ 11=12345^21=1^ 55=IBM^54=1^ 60=2003061501:14:49^38=5000^40=2^44=110.75^ 10=127^ En-tête : 8=BeginString (indicates FIX 4.2) 35=MsgType (new order) 49=SenderID (DMGR) 56=Target ID (ABROKER) 52=SendTime Pied de page : 10=Checksum Corps: 11=ClOrderID (client order id) 55=Symbol (IBM) 38=OrderQty (5000) 44=Price (110.75) 60=SendTime 16

More Related Content

What's hot

Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximation
Wael Ismail
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)
abdellah12
 
Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009
Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009
Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009
Soufien Zarrouki
 

What's hot (20)

Principe de fonctionnement du cryptage RSA
Principe de fonctionnement du cryptage RSAPrincipe de fonctionnement du cryptage RSA
Principe de fonctionnement du cryptage RSA
 
Les algorithmes d’approximation
Les algorithmes d’approximationLes algorithmes d’approximation
Les algorithmes d’approximation
 
FormationPython2019.pptx
FormationPython2019.pptxFormationPython2019.pptx
FormationPython2019.pptx
 
Mise en place d’un serveur radius
Mise en place d’un serveur radiusMise en place d’un serveur radius
Mise en place d’un serveur radius
 
Corrige exercices pascal_fenni_2018
Corrige exercices pascal_fenni_2018Corrige exercices pascal_fenni_2018
Corrige exercices pascal_fenni_2018
 
Les structures de données.pptx
Les structures de données.pptxLes structures de données.pptx
Les structures de données.pptx
 
CNIT 141: 9. Elliptic Curve Cryptosystems
CNIT 141: 9. Elliptic Curve CryptosystemsCNIT 141: 9. Elliptic Curve Cryptosystems
CNIT 141: 9. Elliptic Curve Cryptosystems
 
La Sécurité informatiques
La Sécurité informatiquesLa Sécurité informatiques
La Sécurité informatiques
 
Exercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdfExercices_Python_Fenni_2023 -corrigé.pdf
Exercices_Python_Fenni_2023 -corrigé.pdf
 
Exercices sur-python-turtle-corrige
Exercices sur-python-turtle-corrigeExercices sur-python-turtle-corrige
Exercices sur-python-turtle-corrige
 
Construction du modèle de Hull White avec l'arbre binomial
Construction du modèle de Hull White avec l'arbre binomialConstruction du modèle de Hull White avec l'arbre binomial
Construction du modèle de Hull White avec l'arbre binomial
 
Linux KVM のコードを追いかけてみよう
Linux KVM のコードを追いかけてみようLinux KVM のコードを追いかけてみよう
Linux KVM のコードを追いかけてみよう
 
Elliptical curve cryptography
Elliptical curve cryptographyElliptical curve cryptography
Elliptical curve cryptography
 
Le modèle OSI
Le modèle OSILe modèle OSI
Le modèle OSI
 
Ch8 correction exercices (1)
Ch8 correction exercices (1)Ch8 correction exercices (1)
Ch8 correction exercices (1)
 
Fonctionnalités et protocoles des couches applicatives
Fonctionnalités et protocoles des couches applicativesFonctionnalités et protocoles des couches applicatives
Fonctionnalités et protocoles des couches applicatives
 
Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009
Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009
Asi gestionnaire de parc informatique (admissibilité) qcm bap e 2009
 
IPv6
IPv6IPv6
IPv6
 
Probabilité
ProbabilitéProbabilité
Probabilité
 
encryption and decryption
encryption and decryptionencryption and decryption
encryption and decryption
 

More from Cynapsys It Hotspot

Comment manager une équipe de 100 ingénieurs
Comment manager une équipe de 100 ingénieurs Comment manager une équipe de 100 ingénieurs
Comment manager une équipe de 100 ingénieurs
Cynapsys It Hotspot
 

More from Cynapsys It Hotspot (20)

Présentation data warehouse etl et olap
Présentation data warehouse etl et olapPrésentation data warehouse etl et olap
Présentation data warehouse etl et olap
 
Présentation Angular 2
Présentation Angular 2 Présentation Angular 2
Présentation Angular 2
 
Introduction à la Business Intelligence
Introduction à la Business Intelligence Introduction à la Business Intelligence
Introduction à la Business Intelligence
 
Catalogue pfe cynapsys_2016_2017
Catalogue pfe cynapsys_2016_2017Catalogue pfe cynapsys_2016_2017
Catalogue pfe cynapsys_2016_2017
 
Présentation noura baccar " Innovation on Indoor GeoLocalization Applications...
Présentation noura baccar " Innovation on Indoor GeoLocalization Applications...Présentation noura baccar " Innovation on Indoor GeoLocalization Applications...
Présentation noura baccar " Innovation on Indoor GeoLocalization Applications...
 
Comment manager une équipe de 100 ingénieurs
Comment manager une équipe de 100 ingénieurs Comment manager une équipe de 100 ingénieurs
Comment manager une équipe de 100 ingénieurs
 
Exposé 1 brevet med truki (1)
Exposé 1  brevet  med truki (1)Exposé 1  brevet  med truki (1)
Exposé 1 brevet med truki (1)
 
Exposé 2 brevet med truki (2)
Exposé 2  brevet  med truki (2)Exposé 2  brevet  med truki (2)
Exposé 2 brevet med truki (2)
 
Présentation nouveauté java7
Présentation nouveauté java7Présentation nouveauté java7
Présentation nouveauté java7
 
Cloud presentation
Cloud  presentationCloud  presentation
Cloud presentation
 
Présentation cloud computing
Présentation cloud computingPrésentation cloud computing
Présentation cloud computing
 
Présentation banc_ test
Présentation banc_ testPrésentation banc_ test
Présentation banc_ test
 
Automotive : Domaine & applications
Automotive : Domaine & applicationsAutomotive : Domaine & applications
Automotive : Domaine & applications
 
PRESENTATION CYN APSYS/MANTIS
PRESENTATION CYN APSYS/MANTISPRESENTATION CYN APSYS/MANTIS
PRESENTATION CYN APSYS/MANTIS
 
Formation traitement d_images
Formation traitement d_imagesFormation traitement d_images
Formation traitement d_images
 
Informatique Quantique
Informatique QuantiqueInformatique Quantique
Informatique Quantique
 
Informatique Quantique
Informatique QuantiqueInformatique Quantique
Informatique Quantique
 
Présentation Cryptographie
Présentation CryptographiePrésentation Cryptographie
Présentation Cryptographie
 
Presentaion fpga µc µp quelles est la solution
Presentaion  fpga µc µp quelles est la solutionPresentaion  fpga µc µp quelles est la solution
Presentaion fpga µc µp quelles est la solution
 
Comminucation v&nv
Comminucation v&nvComminucation v&nv
Comminucation v&nv
 

Financial Information Exchange

  • 1. Financial Information Exchangeprotocole (FIX) Présenté par : Mehdi Dbouki
  • 2. Plan Qu’est ce que le protocole FIX ? Qui utilisent le protocole FIX ? Historique du protocole FIX Les avantages du protocole FIX Les messages Exemple 2
  • 3. Qu’est ce que le protocole FIX ? C’est un protocole de messagerie standard pour la transmission électronique de messages liés à des échanges entre différentes institutions financières C’est le protocole de communications commerciales leader du marché 3
  • 4. Qui utilisent le protocole FIX ? Les institutions d’investissement (the buy side) Les maisons de courtage (the sell side) Les bourses Les services publics Les fournisseurs de logiciels et de services 4
  • 5.
  • 6. Les versions antérieures : V 4.0 ,V 4.1 ,V 4.2 ,V4.3 et V4.4 5
  • 7.
  • 8. C++, Java, .NET, Python et Ruby6
  • 9. Les messages Admin Messages Permet de maintenir les différents aspects de la session FIX ( Connexion ) Application Messages Permet la transmission des messages d’affaire 7
  • 10. Admin Messages Logon : message d authentification Logout : la fermeture de la session Heartbeat : la vérification du lien de la communication entre deux parties Test Request : teste la qualité du lien de la communication Reject (Session) : échec de validation au niveau de la session Sequence reset : récupérer ou réinitialiser le message . 8
  • 11. Application Messages Confirmation New order Order cancel request 9
  • 12. Format des messages FIX Le message contient 3 parties : En-tête Corps Pied de page Le message est un ensemble de champs Chaque champ est une valeur paire de balises <tag> = <Valeur> Exemple : 55=IBM Tous les champs se terminent par le délimiteur ^ Exemple : 55=IBM ^ 54=1 ^ 10
  • 13. Format des messages FIX Tous les messages commencent par « 8 = FIX. x » x : la version du FIX Tous les messages se terminent par «10 = x ^ » x : la valeur du checksum Chaque tag a son propre dictionnaire de commandes . 11
  • 14. Format des messages FIX Message Codes Type (Tag 35) • 0 = Heartbeat • 1 = Test Request • 2 = Resend Request • 3 = Reject • 4 = Sequence Reset • 5 = Logout • 6 = Indication of Interest • 7 = Advertisement • 8 = Execution Report • 9 = Order Cancel Reject • A = Logon • B = News • C = Email • D = Order - Single • E = Order - List • F = Order Cancel Request • G = Order Cancel/Replace Request • H = Order Status Request • J = Allocation • K = List Cancel Request • L = List Execute • M = List Status Request and more 12
  • 15. buy side trading system Système commercial Buyside sell side trading system Système commercial Sellside FIX engine FIX engine Exemple Un gestionnaire de fonds envoie un ordre à un courtier TCP Over a WAN L’ordre est transmit via TCP après que le « bye side » déclenche la connexion et que le « sellside » accepte . 13
  • 16. Exemple Le “buy side” se connectesur le port du FIX Engine du “Sell Side” via TCP Le “Sell side” accepte la connexion TCP Le “Buy side” envoie le message ‘Logon’ Le “Sell side” envoie le message ‘Logon’ Le “Buy side” envoie le message ‘New Order ’ Le “Sell side” envoie le message ‘Execution’ 14
  • 17. buy side trading system Système commercial A sell side trading system Système commercial B FIX engine FIX engine Exemple Exemple d’un ordre de transaction et son annulation LOGON New Order Execution Report Order Cancel Execution (Cancel Accept) LOGOUT 15
  • 18. Exemple Exemple d un message FIX : L’achat de 5000 IBM (prix d’une machine:110.75) 8=FIX.4.2^9=251^35=D^49=DMGR^56=ABROKER^34=2^ 52=20030615-01:14:49^ 11=12345^21=1^ 55=IBM^54=1^ 60=2003061501:14:49^38=5000^40=2^44=110.75^ 10=127^ En-tête : 8=BeginString (indicates FIX 4.2) 35=MsgType (new order) 49=SenderID (DMGR) 56=Target ID (ABROKER) 52=SendTime Pied de page : 10=Checksum Corps: 11=ClOrderID (client order id) 55=Symbol (IBM) 38=OrderQty (5000) 44=Price (110.75) 60=SendTime 16