Une fois dans une entreprise HFT ...

Mon histoire de trading personnelle, tous les matchs sont aléatoires.
image
J'ai commencé ma carrière chez HFT dans la branche australienne de l'une des plus grandes sociétés commerciales américaines en tant que programmeur C ++. Le premier jour, j'ai été accueilli par un bureau avec d'immenses fenêtres donnant sur le port de Sydney, dont l'un était écrit avec un feutre «<2ms». C'était la tâche principale d'une douzaine de développeurs, mais jusqu'à présent, pas pour moi. Alors ...


Choc initial


L'un des gars a proposé l'idée de négocier des options à la Bourse australienne (ASX), ou plutôt des écarts d'options et leurs combinaisons avec couverture obligatoire. Il avait besoin de quelque chose qui puisse gérer un tas de règles de trading déroutantes et être intégré à notre plateforme de trading, qui s'appelait Orc. C'était au début des années 2000 et j'ai écrit ma solution pour cela sur VB6 sous Windows 2000. Ce faisant, j'ai utilisé C ++, Boost et l'analyseur Spirit multi-thread pour m'intégrer à Orc. Ce dernier a calculé des arbres binomiaux ou trinomiaux pour évaluer sur demande les options américaines sur l'ASX. Pour mon code de prix, j'ai utilisé le code de quelqu'un d'autre en VBA, ligne par ligne réécrite en C ++.


Cependant, Orc n'a pas toujours calculé le prix à la demande, il a souvent utilisé la mise en cache. Si les paramètres d'origine sont restés les mêmes, Orc a simplement renvoyé le prix de la mémoire, au lieu de le recompter à nouveau. Cette plate-forme était trop lente pour rivaliser avec sa propre plate-forme Timber Hill (maintenant Interactive Brokers) ou Ord Liquidator d'IMD, qui était le système de caisses le plus rapide à l'époque. Elle semblait trop pauvre pour rivaliser avec les autres en performance, peu importe les trucs que je faisais avec elle. Cependant, avec un grand cache de prix des options multidimensionnelles (les valeurs manquantes ont été obtenues à partir de celui-ci par simple interpolation), constamment mises à jour dans plusieurs threads par du code écrit en C ++, de manière inattendue, nous avons pu effectuer les transactions qui n'étaient pas disponibles auparavant.


Lorsque le taux d'intérêt ou la courbe de volatilité a changé dans Orc Trader, mon cache de prix a recommencé à se remplir. Bien sûr, cette décision n'était pas originale. J'ai lu pour la première fois sur la mise en cache des prix des options dans un ancien article quelques années plus tôt. Comme dans un microprocesseur moderne avec une exécution extraordinaire, vous pouvez deviner les calculs suivants, qui devront peut-être encore être effectués à l'avenir. Les prix du marché sont discrets. N'oubliez pas que les calculs les plus rapides sont ceux qui n'ont pas besoin d'être effectués. L'idée suivante était qu'il était difficile, mais pas impossible, de casser un délai nul. J'ai fait cette étrange conclusion sur la prédiction de l'avenir du fait que le message le plus rapide n'est pas à envoyer. À mon avis, c'est encore plus important.


À mon avis, la meilleure architecture est le manque d'architecture rigide. Cela peut sembler un peu ridicule, mais c'est de la pure vérité dans le cas du HFT. Le code non structuré se transforme instantanément en héritage, si vous ne faites pas attention à l'architecture du système. Puisqu'en fait l'optimisation prématurée est la base de tout, il est plus rentable de ne pas démystifier les mythes informatiques bien connus et de permettre à vos concurrents de tomber dessus.


Mon hack pour la plate-forme Orc Trader n'était pas une solution idéale, mais il a plu à certaines personnes avec des offres qui étaient auparavant impossibles. Ils avaient même l'air heureux quand ils ont vu ces accords dans leurs rapports de leurs propres yeux. Cependant, dans l'ensemble, ce n'était qu'un succès mineur. Par la suite, il s'est transformé en centaines de règles manuelles pour la recherche d'opérations, ne remboursant que les frais d'opérateur avec son trading. Mais au moins, je me suis amusé.


Se concentrer sur «<2 ms»


Rappelons la condition «<2ms» enregistrée sur la vitre. J'ai écrit un article suggérant un moyen plus rapide et plus complexe de réduire encore les délais. Une équipe de trois programmeurs, dont moi, était censée l'implémenter. Le premier choix s'est porté sur la bourse coréenne. Il n'y avait pas besoin de mise en cache des prix dans ce projet, car le modèle de tarification des options européennes n'est pas beaucoup plus compliqué qu'une simple interpolation, même dans plusieurs dimensions.


À l'heure actuelle, les processeurs avec une fréquence de 2-3 GHz viennent tout juste d'apparaître. Notre mesure de performance était quelque peu erronée - nous avons principalement mesuré les retards à l'intérieur de notre code que ceux qui se trouvent à l'intérieur du système d'exploitation (qui sont en fait beaucoup plus grands.) Cela fonctionnait toujours lorsque les données arrivaient à des intervalles de millisecondes, car à cette époque la pile réseau dépensé sur le traitement de l'emballage de 50 à 100 microsecondes. La principale chose à retenir ici est que lorsqu'un processeur peut exécuter plus d'un milliard d' opérations par seconde, plus d'un million d'instructions entrent dans ces deux millisecondes. Honnêtement, c'est un très, très mauvais code si ce million d'instructions va dans la tarification simple. Si décider d'un accord vous prend un million de pas, quittez immédiatement. Chaque nano seconde est importante ici.


Il s'est avéré que j'étais attaché à une équipe pas très bien coordonnée, et en tant que nouvel employé, je devais faire attention. Nous n'étions que trois au département de développement. L'un des membres de l'équipe (qui était en fait un excellent programmeur) était apparemment fatigué et a commencé à passer tout son temps à travailler sur des jeux et des forums sur les accélérateurs vidéo. «M. GPU» écrivait les bibliothèques de base de l'entreprise pour le multithreading, et elles n'étaient pas mauvaises, bien qu'elles souffraient de problèmes de conception. Toute la synchronisation a été effectuée via des mutex et toute opération a nécessité des verrous. En fin de compte, je suis à nouveau venu utiliser la bibliothèque C ++ Boost. «M. GPU», apparemment, n'a pas apprécié le projet et semblait impliqué dans une sorte de grève. Il était sans aucun doute agacé par la nécessité de travailler sur mon idée. L'autre gars était moins capable, mais encore peu compétent. Habituellement, il mangeait beaucoup et allait constamment dans la salle de réunion pour y regarder un autre film sur DVD.


Mais nous avons dû faire face d'une manière ou d'une autre afin de surmonter ces deux millisecondes. Il s'est avéré que j'avais besoin d'écrire plus de code que prévu - j'ai dû rester en retard plusieurs fois. «M. GPU» a fait le travail d'intégration, tandis que «Alienated Dude» n'a rien fait du tout. En conséquence, notre nouveau système a accusé des retards d'un peu moins de cinq microsecondes. Il m'a semblé que c'était un énorme succès. Cependant, ce chiffre ne tient pas compte des latences du réseau. Certainement, ils sont maintenant beaucoup plus importants qu'il y a un mois.


L'un des autres membres du personnel m'a félicité. J'ai appris de lui que la majorité des informaticiens (y compris lui) considéraient cela comme une tâche impossible. Apparemment, ils espéraient que j'échouerais. Les changements que j'ai apportés n'ont pas rencontré un large enthousiasme, mais j'ai reçu une petite prime sans augmentation significative de salaire.


J'imaginais rester à ce poste pendant vingt ans, surtout après la bulle Internet. Mais maintenant, il est clairement temps pour moi de passer à autre chose.


Rechercher un nouvel emploi


J'ai contacté plusieurs sociétés HFT et partagé mes réflexions sur ce qui peut être fait. Une bonne société commerciale néerlandaise m'a écouté très attentivement, mais n'a rien offert. Des années plus tard, j'ai découvert que leur équipe avait commencé à mettre en œuvre quelque chose comme ce dont nous avions parlé dans l'interview la semaine suivante. J'ai entendu dire que l'approche avait réussi. Ils l'ont appelé la «méthode de base implicite», dans laquelle tout se résumait à prédire le prix théorique d'un contrat à terme ou d'un actif sous-jacent. J'aime leur nom pour ma méthode, même si cela ressemble à un culte du cargo. Eh bien, c'est ainsi que les entreprises financières font généralement leurs affaires. Malgré la tromperie de leur part, j'étais flatté.


Ensuite, j'ai parlé avec une entreprise australienne avec une équipe d'une douzaine de développeurs concentrés sur le trading sur la bourse ASX. Leur plate-forme était généralement encore plus lente qu'Orc Trader, dépensant de nombreuses millisecondes en calculs. J'ai demandé à rencontrer le chef de l'entreprise, qui a eu beaucoup plus de succès et beaucoup plus jeune que moi. Il était l'un des gars aux salaires très élevés, dont les revenus devaient être déclarés conformément aux lois australiennes.


Leur entreprise ne semblait pas "complètement propre", et il m'a averti que l'argent qu'ils gagnaient à l'étranger ne pouvait pas toujours être légalement retourné à la société mère. Les négociations avec cette société étaient une perte de temps - je ne veux pas être un chapeau noir. Gris ailleurs Trouver des lacunes dans les règles est un jeu amusant, tant qu'il est éthique. Cependant, nous ne devons pas franchir ces lignes rouges. Il n'y a pas de plaisir à gagner en trichant, mais plus important encore, votre réputation compte. Les gens ont toujours sous-estimer les pertes de scandales et je e veux risque.


J'ai aussi aimé l'une des banques d'investissement, dont j'ai parlé avec le représentant. C'était une succursale d'un grand bureau de Wall Street. J'ai déjà réussi à travailler plusieurs années dans ce genre d'environnement. Le seuil d'entrée semblait plutôt bas - ils ne voulaient pas gagner d'argent, ils voulaient juste créer un chiffre d'affaires en bourse sans frais, afin que leur service financier puisse chanter des sérénades à cette branche. Cela me semblait une bonne option, et j'étais sûr que cela ne les dérangerait pas de créer un chiffre d'affaires, ainsi que de ne pas recevoir de bénéfices supplémentaires. Les bénéfices provoquent généralement rarement des plaintes.


La bonne chose à propos de mon entreprise précédente était qu'ils pouvaient licencier même des employés qui gagnaient de l'argent. Quelqu'un a violé les règles en effectuant plusieurs transactions non autorisées. Ils ont apporté l'argent de l'entreprise et j'ai été impressionné qu'ils aient été licenciés de toute façon pour avoir enfreint les règles. Un tel poste de direction correct est extrêmement rare, en particulier dans la finance.


Puis, de façon tout à fait inattendue, une autre opportunité s'est présentée.


J'ai déjeuné une fois avec un gars que je connaissais en informatique à l'Université de Tasmanie, qui travaillait maintenant pour ITG. Il m'a invité à parler avec ITG, car ils faisaient du commerce privé. C'était une nouvelle pour moi - je pensais que ce n'étaient que des courtiers. J'ai rencontré leur directeur général pour la région Asie-Pacifique, et il a parlé en détail de leur plate-forme d'arbitrage, qui fonctionne avec des actions nominées en USD et en CAD. J'ai ensuite rencontré le PDG des États-Unis, Ray Killian, lors d'un voyage en Australie. La réunion s'est bien déroulée et il ne semble plus y avoir d'obstacles au développement du trading haute fréquence des ITG. Le PDG de la région Asie-Pacifique ainsi que leur président, qui était également membre du conseil d'administration d'ITG Inc., coté au NYSE, ont finalement présenté aux États-Unis un plan d'affaires impromptu et des calculs de risques pour une réunion du conseil.


Que s'est-il passé ensuite, je ne sais pas - on m'a dit trois versions complètement différentes au cours des prochaines années. Selon une version, le conseil d'administration a approuvé le plan d'affaires, mais Killian a tout récupéré. Selon une autre version, certains membres du conseil d'administration n'ont pas approuvé le projet. Selon la troisième version, le plan d'affaires n'a pas du tout atteint les membres du conseil d'administration. Je ne sais pas quelles versions étaient erronées (peut-être en même temps), mais cela n'avait pas d'importance. Les gars d'ITG ont décidé de se passer de leur employeur et d'investir des fonds personnels. Ce n'était pas tout à fait le travail que je cherchais, mais si l'entreprise se déroulait bien, je pourrais gagner environ un quart des actions de la nouvelle société grâce aux options reçues au cours de plusieurs années sur l'acquisition. C'était comme une victoire.


Naissance d'une entreprise HFT


Ainsi, après avoir reçu un investissement de 1,5 million de dollars australiens, le moment est venu de recommencer à travailler seul avec un ordinateur portable au bureau. J'ai installé plusieurs serveurs et postes de travail, installé SuSE Linux 64 bits, embauché trois programmeurs - et l'horloge mesurant la période payée par les investisseurs a commencé à tourner. Il s'est avéré que je ne suis pas un très bon administrateur système Linux. Bientôt, j'étais fatigué de faire des tâches mal administrées et je les ai assignées à un pigiste. Maintenant, il y avait quatre personnes et demie. Mais il s'est avéré que le SuSE Linux 64 bits, en particulier sur les processeurs AMD avec leur bus Hypertransport, n'était pas prêt pour les chargements aux heures de grande écoute, nous sommes donc revenus à l'assemblage RedHat / CentOS 32 bits. C'était une sage décision de «M. Sysadmin», un peu en avant de nous.


Quatre mois plus tard, nous avons anticipé. Nous devions choisir de courir sur notre ASX ou d'aller en Corée. Trois bourses coréennes, KSE, KOSDAQ et KOFFEX, ont ensuite fusionné en une seule bourse coréenne, KRX. Nous avons choisi la Corée, bien que les environnements commerciaux et techniques y soient plus complexes et risqués. Cependant, il y avait également plus d'opportunités, plus des mathématiques plus simples dans les modèles de tarification et un petit nombre d'outils promettaient une base de code plus légère.


Puis une chose amusante s'est produite. Lors de la création d'un nouveau système, vous essayez généralement de faire quelques conventions de dénomination pour vous faciliter la vie. J'ai décidé d'utiliser des codes ISO ou une partie d'entre eux pour la normalisation. Cependant, en raison de la fusion des bourses coréennes, aucun code ISO n'a encore été attribué pour la nouvelle bourse. J'ai pris contact avec le groupe responsable de l'ISO, qui s'est avéré être le seul gars avec une table Excel assis quelque part en Europe. Il a décidé que le nouveau code de l'échange combiné serait XKOX. J'ai cliqué et lui ai écrit que cette combinaison ne sonnait pas très harmonieuse en anglais. La meilleure idée serait peut-être d'utiliser des codes KRX ou XKRX évidents? Nous avons ri et donc XKRX est devenu le nouveau code ISO. Alors maintenant, je peux dire que c'est moi qui ai créé le code ISO pour l'échange coréen unifié.


À cette époque, en Corée, les commerçants, même à haute fréquence, ne pouvaient pas accéder directement à la bourse. Vous deviez passer par la passerelle du courtier et utiliser leur API spécifique pour vous connecter. Il n'y a eu aucune collocation. Parmi les clients, il y avait une grande différence dans les retards non contrôlés par le courtier, simplement en raison des différentes technologies de localisation et d'interaction. Futures et options négociés sur la bourse KOFFEX. KOFFEX était situé à Busan, une ville portuaire à une distance d'un peu plus de trois cents kilomètres de Séoul. Les contrats dérivés sur l'indice KOSPI 200 avaient une petite valeur nominale, mais une grande taille de lot. Pour cette raison, ils étaient les dérivés les plus ingénieux au monde avec un écart dix fois supérieur au reste. Le contrat euro / dollar sur CME était numéro deux, et les options sur KOSPI 200 étaient numéro un. Cela s'est avéré être trop pour KOFFEX, de sorte que les principaux échanges de ces instruments ont été effectués pour leur compte sur la bourse KSE de Séoul. Par conséquent, tout ce dont nous avions besoin de l'échange était situé à un moment donné à Séoul, bien qu'il ait lui-même été fondé à Busan.


À ce stade, je savais déjà que la pile réseau introduit les retards les plus importants que j'ai pu gérer dans notre nouvelle implémentation. J'ai trouvé un convertisseur de protocole matériel Ethernet vers InfiniBand qui a introduit un retard de 3 microsecondes. Il a été conçu comme un module connecté au commutateur TopSpin InfiniBand. Le bus Hypertransport (HTX) d'AMD, une alternative au PCI Express, était plus moderne, offrant moins de latence interne. J'ai acheté plusieurs cartes réseau et cartes mères Pathscale HTX Infinipath avec prise en charge HTX (elles n'existaient alors que dans les versions alpha, par exemple, l'une d'entre elles avait le numéro de série 0x0000045!), Mettez toutes ces pièces hétéroclites dans un grand boîtier et en ai obtenu une chère, mais pile réseau extrêmement rapide, ce dont j'ai été très satisfait. Bien sûr, il avait l'air un peu maladroit et maladroit, mais il était l'un des plus compétitifs au monde. Pendant plusieurs années, les cartes réseau ordinaires n'ont pas pu se comparer à ma configuration.


Choisir un courtier


Après cela, nous sommes allés à Séoul pour trouver un courtier et une place dans le centre de données. Je suis allé avec l'un des investisseurs, un homme du nom de Bubble, qui est ensuite devenu notre employé. Au début, il était partagé entre ITG et HFT, mais plus tard, il était complètement à notre disposition, car le PDG, le président d'APR et d'autres employés d'ITG étaient nos investisseurs. C'est lui qui a été chargé de réserver un hôtel à Séoul. Il s'est avéré qu'il avait choisi un motel à l'heure, séduit par une description artistique très pittoresque qui cachait la vraie image - des chambres sales et minables avec une climatisation feuilletée, un ordinateur infecté par des virus. Pas un bon début. Plusieurs courtiers nous ont appelés et ont exprimé leur surprise face à notre région. Maladroit mais drôle. Le voyage a été assez productif, nous avons fait une affaire incroyablement incroyable.


Bonne affaire


Le bureau de Muppetz Securities nous a proposé un service DMA. La grande entreprise que j'ai quittée n'avait pas d'accès direct. HP/Compaq/Tandem , , . 500 000 , HP. , , . DMA .25, . , , , .


“ ” RTS, , . . RTS , , . , Orc. Orc, . , RTS API 10% .


, InfiniBand. – X.25. , . Muppetz Securities , , .


, Muppetz , . X.25 . - HFT-, , ? , .


, "" . , HFT- , . , . , Muppetz , . ., . , Muppetz , , – !


, . , , KRX. , , , , . . CRT-. , , . . , , ? , “”.


Muppetz X.25 , KRX, . - , , , .


X.25


X.25 . T1 E1 ( ) Koscom, KRX. 64 (kbps) . , - , . , ( ) .


X.25 . , , . - , X.25. , , , – BBS, FIDO, Z-modem, Y-modem, . , , . . . , . , , . Sangoma, .


. . . , , . HFT , . , , . , , . T1. , , . X.25, , Sangoma. – .


X.25. Postgresql ( ), C++, .. , , -. , . , , . , .


()


. . . – 85% ! , ( ), . .


.


, “” . , , . , , . , , . , . . , ( , " "), 72 . , . , . , , , . , . … ! – . , , .


(IV) . IV, ( ) . . , IV , . , . R, . IV . - , . , , . , , ( .) , .


. . , . , , . . , .


, . . . . “” . - , , . , . .


Zero


Lorsque vous négociez en bourse, vous pensez que vous avez de la chance si vous avez reçu une partie de l'écart en votre faveur. A cette époque en Corée, les options ATM et moins chères, avaient un tick de 0,01 prix. Ces 0,01 coûtent environ un dollar pour un contrat. Lorsque vous négociez immédiatement un robot haute fréquence avec une série d'options, si vous êtes chanceux, vous quittez la transaction avec une moyenne de dix ou vingt cents. L'un de mes objectifs dans ce travail était de dépasser les chiffres de chiffre d'affaires que j'ai vus plus tôt. Je me souviens que le record en dernier lieu était de 1,13 million de contrats par jour. Si vous pouviez échanger un million d'options et prendre 10 ou 20 cents pour chacune, vous seriez très heureux. En théorie, il n'y a pas de différence entre la pratique et la théorie. Réaliser cela s'est avéré assez difficile pour moi.


Ensuite, je me suis souvenu de la conversation d'un des commerçants, M. B., avec quelqu'un dans la cuisine d'une ancienne entreprise (au fait, il a finalement dirigé l'entreprise). On a demandé à M. B. s'il achetait avec un bon signal commercial et faisait un profit, pourquoi Ne ferme-t-il pas immédiatement le poste? Il a répondu que si tout était si simple, il gagnerait beaucoup plus d'argent que maintenant. Nous avons eu une excellente latence avec un bon emplacement et un canal X.25 direct. La technologie a fonctionné, le modèle de tarification a donné les bons prix. Peut-être qu'on pourrait faire l'impossible?


J'ai parlé avec les actionnaires et leur ai dit que j'avais besoin de 25 000 AUD supplémentaires pour survivre au mois et essayer quelque chose de nouveau. Le principal investisseur a accordé un prêt de 25 000 AUD. MF, l'un des premiers employés, a codé ce que nous avons appelé la stratégie zéro. Tout était simple - pour ne pas avoir de position dirigée, attendez qu'une option apparaisse dans le verre, dont le prix diffère de notre appréciation au moins par un tick. Frappez-le ensuite. Attends. Ensuite, pliez-le et tirez un profit. Cela pourrait-il fonctionner?


Nous vivrons!


Notre revenu de négociation mensuel a commencé à être mesuré à six chiffres. La stratégie de Zero a fonctionné. Nous avons augmenté le capital de négociation afin que vous puissiez acheter 500 ou 1000 options ATM, puis faire demi-tour et les vider. Il n'y a pas de marché intelligent ici. Nous n'étions qu'un preneur agressif.


Être preneur sur le marché peut être plus problématique qu'être fabricant. En tant que teneur de marché, vous devez vous écarter du marché quand il vous oppose, mais vous devez être suffisamment stoïque pour ne pas devenir trop maladroit et pour ne pas perdre une place précieuse dans la file d'attente. En règle générale, votre seuil de prix, après avoir surmonté ce que vous devez fuir le verre pour éviter toute perte, est inférieur à celui de l'agresseur qui profite de l'avantage commercial. Cela ressemble à un jeu étrange dans lequel l'agresseur a en fait un handicap de retard, car il n'est prêt à bouger qu'après que le fabricant a déjà fait son mouvement, toutes choses étant égales par ailleurs. Ou cela ressemble à un sprint de 100 mètres, où le fabricant a un avantage de 50 mètres, et vous devez le poursuivre en quelque sorte. Cette analogie décrit à peu près la stratégie de Zero. Une connexion directe via X.25 avec des fils passant par la fenêtre et l'emplacement sur le campus était suffisante pour surmonter la naïveté de notre stratégie à ces débuts. La fortune nous sourit.


C'était une sorte de divertissement pour voir comment l'argent, pour ainsi dire, apparaît seul sur un compte bancaire après avoir réalisé un profit. C'était un peu surréaliste. Nous négocions des options d'index en Corée et les dollars australiens apparaissent sur un compte bancaire à Sydney.


Un peu d'argent a été dépensé pour un cluster domestique dans notre bureau récemment loué sur Hunter Street, 200 mètres carrés, de nombreux petits ordinateurs mini-ITX sur un rack bon marché dans une quincaillerie, des cartes RAM, des alimentations ATX et un commutateur réseau. La simulation de la volatilité implicite, les tests historiques et la stratégie elle-même se sont tous améliorés avec l'arrivée de plusieurs centaines de cœurs supplémentaires.


La prochaine étape de notre trading a été la transition de la stratégie Zero à une stratégie de trading à part entière avec couverture. Au lieu d'essayer de couvrir une position par le biais de futures, nous nous sommes tournés vers la couverture avec d'autres options. Nous ne voulions pas transférer de postes toute la nuit, mais nous étions heureux de les conserver tout au long de la journée. La stratégie Zero a tenu une exposition totale de plusieurs secondes tout au long de la journée. La nouvelle stratégie nous a fait garder notre position toute la journée. Cette idée a très bien fonctionné. Environ les deux tiers du marché KRX étaient des options à faible delta avec des prix assez statiques. Il n'était pas rare de voir plus d'un million de lots enchérir ou demander dans de minuscules options. Cependant, achetez ces options bon marché et il vous sera très difficile de les réinitialiser avant la fermeture du marché. Par conséquent, nous nous sommes simplement concentrés sur les options avec des spreads plus étroits et avec des deltas importants, avec des ticks de taille 0,01 avec des prix inférieurs à 3,00. Ils représentaient environ un tiers de la taille moyenne du marché. En fin de compte, nous avons atteint une part de marché typique de 6-7%, et parfois plus de 10%. Il est étonnant que nous ayons échangé environ un tiers du volume du marché sur lequel nous nous sommes concentrés. Un morceau de gâteau si normal. Surmonter le record de chiffre d'affaires passé a eu lieu.


Tri des fils


L'idée du premier hack significatif est venue après avoir regardé la paire torsadée qui a été posée à travers la fenêtre. Les modems des lignes T1 et E1 transmettaient ce signal via des connexions maladroites menant à un boîtier encore plus grand, qui était ensuite connecté via d'énormes connecteurs à des cartes série. Une petite recherche et un plan évident sont nés. J'ai acheté plusieurs nouvelles cartes Sangoma dans lesquelles j'ai connecté les canaux NetOptics T1 / E1 avec une paire torsadée et installé cet assemblage en Corée. Quand on m'a demandé à quoi ça servait, j'ai répondu que c'était pour surveiller l'état de la ligne et mesurer les retards. Cette affirmation était techniquement correcte, mais incomplète.


Les nouvelles cartes Sangoma prennent en charge le mode mixte, dans lequel les cartes acceptent simplement tous les bits du canal. J'ai commencé à les analyser et j'ai réalisé à quoi ressemblaient les flux. Les canaux virtuels X.25 ont été regroupés en canaux de données de marché. Ils avaient tendance à aller l'un après l'autre. Il y avait d'autres groupes de canaux pour les options put, call et futures. J'ai dû démonter la couche HDLC moi-même, mais j'ai rapidement décodé des paquets correspondant aux canaux KRX. Ce contournement du modem et du périphérique réseau a permis d'économiser environ une milliseconde.


Ce n'était pas un territoire inconnu. L'échange Eurex fournissait autrefois une API privée - et il a été piraté et inversé l'ingénierie du protocole d'échange. Après cela, le document officiel sur le règlement technique de l'adhésion à la bourse a été ajusté afin qu'il devienne une violation des règles. Ensuite, cette pratique a été arrêtée, mais en Corée, il n'y avait pas une telle règle. De même, lorsque ASX a ouvert son premier petit point de colocation à Bondi, j'ai remarqué que plusieurs entreprises clientes avaient des serveurs 1U de Dell, sans aucun modem. L'ingénierie inverse du protocole Nasdaq n'était pas aussi inhabituelle que je l'espérais - il existe de nombreux pirates intelligents.


Couper et jeter


En Corée, les choses se sont améliorées. Maintenant que j'avais le train de bits un par un (enfin, ou au moins octet par octet), je pouvais voir que les paquets perdaient beaucoup de temps dans les fils. Millisecondes Une méthode courante dans la surveillance du réseau est la tranche, lorsque vous coupez simplement la première partie du paquet. J'ai implémenté cela avec mon code de contournement de couche HDLC et maintenant nous étions très en avance parce que les champs d'enchère et de demande dont nous avions besoin étaient situés au début du package de devis. Économisez 100 octets à 128 Kbps et vous êtes en avance à 6,1 ms. Au fur et à mesure que les spécifications et l'accélération des canaux KRX augmentaient, notre avantage diminuait, mais il restait quand même acceptable. Maintenant, nous avons envoyé nos commandes avant même que le paquet de données d'entrée avec les prix n'ait été entièrement accepté.


Parfois, l'échange échangeait des canaux virtuels, et nous restions avec un câble lent jusqu'à ce que je décrypte les nouveaux numéros. Le reste de l'infrastructure s'améliorait également lentement. Maintenant, nous avions des câbles qui ne passaient pas par la fenêtre, mais à travers les goulottes de câbles de l'interrupteur principal du bâtiment. Nous avons également accroché un petit climatiseur au-dessus de la fenêtre, ce qui était très nécessaire, car la température dans le rack augmentait constamment. Notre salle de travail n'était pas un vrai centre de données. Ensuite, notre banque a vendu ses produits dérivés et après un certain temps, le nouveau propriétaire a décidé que nous étions trop petits et nous a ordonné de quitter nos bureaux. Plus tard, j'ai découvert qu'il avait son groupe de trading d'IA à Tokyo, qui voulait vraiment notre chambre pour lui.


Encore un essai


J'ai dû me battre pour nous trouver une nouvelle maison. Nous nous sommes concentrés sur la recherche de plusieurs points à la fois afin que l'entreprise soit un peu plus durable. Le protocole X.25 n'était pas encore bien connu, mais n'était plus inhabituel. Une personne nommée Dr. S. est venue à notre aide et a placé notre équipement dans le centre de données de l'autre côté de la route. Ce courtier était un peu plus intelligent et comprenait que si nous voyons l'intégralité du flux de données physiques, nous pouvons potentiellement voir les commandes d'autres clients. Il avait raison - techniquement, nous le pouvions, mais jusqu'à présent, nous ne l'avons pas fait. Nous avons dû mettre en place une infrastructure distincte pour notre propre configuration de flux de données de marché. Ce courtier a fait un excellent travail et nous lui sommes reconnaissants pour une migration en douceur. L'expérience avec Muppetz était une exception. Les courtiers en Corée sont de bonnes personnes.


Nous avons déployé la même infrastructure dans un nouvel emplacement et avons poursuivi nos recherches. Nous avons remarqué que la vitesse des données de marché sur différents sites était très différente. Nous n'avons pas pu obtenir de signal GPS pour synchroniser l'horloge locale sur le réseau, mais la Corée a utilisé la norme CDMA pour les communications mobiles. Le fabricant local Endrun Technologies a vendu une jolie petite boîte en plastique, avec laquelle nous avons pu obtenir un signal stable de l'heure exacte. Cet appareil a reçu un signal GPS à l'intérieur du CDMA et transmis des données NMEA via un port série et (via un autre câble) des impulsions à des intervalles ultra-précis. La spécification CDMA promet une gigue pour des signaux temporels précis de pas plus de 10 microsecondes, en fait, nous avons obtenu environ une microseconde à Séoul. À titre de comparaison, un opérateur canadien CDMA a montré une précision d'environ 5 ou 6 microsecondes.


Nous avons fini par colocaliser dans le centre de données souterrain de KRX. Entrer à l'intérieur n'a pas été facile en raison d'une sécurité stricte. Ayant parcouru un long chemin sous terre, j'ai remarqué qu'un signal de téléphone portable était capté à l'intérieur du centre de données. J'ai mis notre récepteur CDMA dans le rack et cela a fonctionné - nous avons obtenu l'heure exacte du signal cellulaire interrompu jusqu'à ce que quelque chose à l'intérieur de celui-ci brûle. Soupçonnant qu'une antenne plus efficace doit être installée, avant le prochain voyage à Séoul, j'ai acheté une antenne flexible blanche d'un mètre de long et je lui ai soudé le connecteur SMA. Quand je suis descendu dans le bunker souterrain du centre de données KRX et que j'ai mis une grande antenne blanche sur notre rack, les gars de Koscom m'ont regardé avec méfiance. Je ne sais pas ce qu’ils pensaient d’eux là-bas, mais plusieurs autres personnes au fil des ans ont mentionné qu’elles avaient vu mon antenne blanche située au sommet du rack du KRX.


Maintenant, nous avions l'heure exacte à tous les points de présence et nous devions établir un échange de données entre eux. Nous avons constaté qu'à quelques pâtés de maisons du campus, nous avons reçu un retard de 300 microsecondes entre nos points via une connexion Ethernet de dix mégabits du fournisseur de la ville. C'était un très bon indicateur et nous avons coordonné toutes nos données de marché et commandes sur ces lignes Internet. En Corée, Internet est merveilleux et c'était suffisant pour nous à l'époque. Des millisecondes des avantages d'obtenir des données de marché pour tous les points de présence ont immédiatement amélioré le trading. Alors que nos meilleures commandes provenaient du campus d'échange, les données de marché les plus rapides provenaient d'un point situé à quelques pâtés de maisons. Cela s'est avéré plutôt inattendu et cet emplacement est resté le meilleur endroit pour obtenir des données de marché pendant plusieurs années.


Un peu plus tard, à un nouveau point de l'extension du bâtiment de la bourse KRX, nous avons mis en place l'obtention des données du marché et les retards se sont avérés énormes. C'était la première fois que je rencontrais Citadel en Corée, j'ai pu le déterminer par les horodatages dans les paquets réseau - ils peuvent tout vous dire si vous pouvez les écouter. Nous avons demandé de déconnecter ce canal, Koscom a interrompu la transmission et a physiquement déconnecté la ligne. Après un mois ou deux, nous avons payé pour se reconnecter, ils ont tourné sur la même ligne, sans rien changer, et maintenant c'était l'un des meilleurs. Ce sont les caprices de la vie en Corée. Je soupçonne qu'un nouveau type d'équilibreur à tourniquet quelque part au milieu a pu améliorer la situation. Pour d'autres bizarreries observées là-bas, je n'ai pas pu trouver de raison évidente.


Les canaux virtuels d'envoi d'ordres sur X.25 étaient de 64 kbit / s chacun - celui-ci est extrêmement lent. J'ai pensé que nous pourrions utiliser le même hack avec les cartes Sangoma et j'ai commencé à écrire du code qui enverrait un paquet avec la commande avant même qu'il ne soit complètement formé en mémoire, ce qui nous ferait gagner des millisecondes. Après l'envoi de la commande, nous pourrions transformer le colis en un colis invalide, si soudainement la situation du marché avait le temps de changer et la commande envoyée n'était plus nécessaire. Cependant, notre petite équipe était déjà très occupée, et cette tâche n'était pas une priorité, car nos performances de trading étaient déjà assez bonnes. Nous en avons appris davantage sur la modélisation de la volatilité implicite et les stratégies affinées.


Seuls les changements sont permanents


Les échanges ne s'arrêtent jamais et KRX ne fait pas exception. Ils ont commencé à abandonner le protocole X.25 et sont passés à Ethernet et TCP / IP. L'échange prévoyait d'utiliser TCP pour envoyer des ordres et UDP pour les données du marché. Les performances commerciales de notre hack X.25 commençaient à s'estomper. Nous sommes devenus trop gros avec notre moteur de trading et notre stratégie. La performance de notre moteur de trading ne s'est pas beaucoup améliorée par rapport aux trois cents microsecondes initiales, elle a gonflé. À un moment donné, les gars ont répété mon hackathon de 72 heures et ont transformé le moteur en quelque chose de plus traditionnel, simple et rapide. Curieusement, nous ne sommes pas trop inquiets aujourd'hui d'une centaine de microsecondes ici ou là, car nous avons poursuivi des objectifs stratégiques et tactiques. Comparé aux autres, nous avons eu un retard négatif dû au fait que la carte réseau fonctionnait en mode promiscuous, contournant le modem et notre propre analyseur HDLC. Nos commandes se sont encore écoulées avant que les données du marché ne parviennent aux autres acteurs du marché.


Nous voulions essayer de pré-envoyer des commandes sur X.25, mais nous n'avions pas de personnes libres pour passer quelques mois sur la programmation, d'autant plus que l'utilisation de X.25 touchait à sa fin. Tout le code X.25 serait inutile quelques mois après la fin de ce projet. Cependant, l'idée a dû être testée et j'ai parlé au gars qui a écrit la plupart des logiciels à Sangoma. Il était le développeur principal et a fait le travail principal d'écrire un pilote de périphérique. Peut-être qu'il peut recommander quelqu'un? Il a dit qu'il le ferait lui-même comme un projet parallèle à domicile. Certains problèmes sont survenus car le code de ces pilotes était très déroutant avec l'abondance d'instructions de transition goto en C, mais même si ce n'est pas un très bon style, les pilotes ont fonctionné de manière stable. Ce code n'aurait pas dû vivre plus de quelques mois, donc cela semblait être un risque acceptable. Les tests ont pris un peu plus de temps que prévu et la pré-expédition a fonctionné, mais les performances ont été terribles. Le code était si diabolique que le chemin «rapide» fonctionnait plus lentement que le chemin normal. Cependant, nous n'avons pas eu le temps de réécrire tout le code de cette idée encore une fois.


Les modifications apportées à la prise en charge TCP sur KRX se sont avérées être un simple mappage des canaux virtuels X.25 aux sessions TCP. Vous pouvez avoir plusieurs sessions TCP ouvertes simultanément (qu'ils appellent PID) pour envoyer des commandes. Le format de transfert des données du marché a été porté inchangé pour fonctionner par-dessus UDP. Je ne me souviens pas s'ils ont ajouté le chiffrement à la version TCP immédiatement au lancement ou un peu plus tard, mais maintenant, lors de l'envoi d'une commande, le paquet de données complet immédiatement après l'en-tête TCP doit être chiffré à l'aide du chiffrement ARIA, et c'était une exigence . ARIA est le code national coréen. Il est très similaire à AES avec une disposition S-Box légèrement différente. Ceci est un bon chiffre.


Nous avons vu que la nouvelle architecture basée sur TCP allait secouer le marché et potentiellement détruire la plupart des activités des grands courtiers. Le bon vieux X.25 était lent, mais l'alternance de canaux signifiait que vous aviez de nombreux chemins parallèles pour envoyer des commandes qui pouvaient être partagées entre eux. Dans le nouveau monde du TCP, il y avait un nombre limité de sessions, deux ou quatre, et tous les clients devaient envoyer leurs commandes via ces connexions à tour de rôle, malgré la présence apparente de nombreux PID. À la suite de cette sérialisation, les demandes des clients ont été mises en file d'attente par le courtier. La condition de concurrence se posait désormais non seulement sur l'échange, mais également à l'intérieur de chaque courtier. Les grands courtiers pourraient perdre leurs parts de marché, car les lignes de communication existantes ne pouvaient prendre en charge qu'un nombre limité de clients HFT. De plus, la vitesse d'envoi des commandes a augmenté, la taille des paquets de données du marché a également augmenté et le taux de réception des données du marché n'a pas augmenté proportionnellement pour suivre le rythme. , - . , , .


, Koscom . 622 Mbps, , . – T1 E1. – -. T1, Cisco. T1 , , .


TCP KRX , . , Samsung Securities, , . - , . , . , , , ( .) . , , , , . – – . , .


promiscuous- , , . TCP/IP X.25 , , . . – KRX. , , - , . , , , , , . , . , .


FPGA


-. . , . – “ ” . UNSW NICTA. Linux, Itanium. - , , , . , – Sangoma, . FPGA- XILINX, Spartan 3. flash- FPGA , . , Sangoma promiscuous-. Sangoma . , Sangoma , . .


, FPGA . - FPGA Ethernet InfiniBand TopSpin. , FPGA- Celoxica 2004 , . HFT-, Celoxica UDP. , . Celoxica UDP Ethernet, . , . CTO -, , Celoxica , . Celoxica . VHDL, Handel-C , , , . - FPGA, , Impulse-C. , VHDL, .


SANGOMA . , , , , . , , . Telco, E1. , E1 . FPGA-, , , 622 /, Koscom.


, PCIe- . SFP- FPGA- XILINX . T1/E1, , . - , NetOptics . FPGA- FPGA-, . NetOptics . , , . , .


, . , , , . STS-3/STM-1 155 Mbps OC3 . , . ( .) , 64 /, , , . , “” KRX, FPGA- , .



KRX. TCP, , – . TCP- , . . -, , ? N heartbeat, PID . , . , IP-, Ethernet- .


– . . ID , . ( ), – , heartbeats-. , ARIA.


, 1Gbps FIX 4.2 ( BATS 10G), - , FPGA. 25 200 . Ethernet- , .


ARIA


, , C- 8- 32- . , . - , , , .


ARIA, . , SIMD-, . , .


, , TCP. , . , . Koscom “ , ”, , .


ARIA , .



. . Unix . , . , , . , .


, . . , . , " " - , . , , , , ? , , , . , , , . .


. TCP , , , ?
, , , . .


ARIA (CBC). , . , .


image


, , ( .) , . , KRX . . Koscom, , , - , . , , . - ( ) - CBC XOR . , , . , .


, . TCP-, . 90 , , , . , , , (.. ) , . .



, - , . (RF) . PhD ( .) , , PhD - , , C++. C++ . , ++ (, .) RF. , , , .


J'ai déjà découvert cette méthode à l'école doctorale, j'ai donc décidé qu'il valait mieux tout recommencer moi-même. J'ai pris le package OpenDT v5.2, qui fonctionnait via MPI sur notre cluster à partir de cartes mini-ITX. Maintenant, il est passé à plus d'un millier de cœurs avec des cartes mères vissées aux étagères du rack à partir de panneaux de particules et d'alimentations situées sur des étagères métalliques avec des trous sur le dessus. Deux semaines d'OpenDT travaillant sur ce cluster m'ont aidé à trouver une solution décente. Je pourrais répéter ce résultat en utilisant le code original de l'auteur de la méthode Random Forest, Leo Briman. J'ai jeté mes réalisations par-dessus la clôture à ML (le gars qui a envoyé mille commandes par seconde à la bourse, ce qui nous a presque tué alors) afin de le mettre en production. Il était un programmeur décent (bien qu'un mec introverti) et tout était prêt en deux semaines. Nous avons constaté une augmentation immédiate du bénéfice d'environ un tiers - ce fut un bon mois.


D'autres améliorations et ajustements dans la couche ML ont donné un grand retour. Nous en sommes devenus très dépendants. La création d'une forêt aléatoire avec une réponse rapide a été un travail difficile, car l'accès à une énorme quantité de mémoire dans un ordre aléatoire est une malédiction de faible latence. Dans des projets ultérieurs, je l'ai fait un peu mieux. Après environ un an, il est devenu clair que si nous désactivions le ML, nous ne gagnerions pas du tout d'argent. Cependant, nous n'avons jamais vraiment exploré la question de savoir si cela était dû à notre stratégie ou si un faible retard n'était plus suffisant pour gagner. Je soupçonne le second. J'ai vu des joueurs intelligents comme Jump installer des dizaines de serveurs en Corée, et ils ne les ont évidemment pas utilisés au ralenti. Une quantité suffisante de ML était dans l'air.


Une façon mûre de penser au ML est qu'il s'agit simplement d'une méthode pour réduire la latence. Il vous fait gagner du temps en échangeant dans l'incertitude. Vous réagissez plus tôt, mais vous vous trompez peut-être. Cependant, même les meilleurs robots d'arbitrage ne sont pas nécessairement exécutés sur tous leurs ordres. Il est plus juste de considérer le ML comme un moyen d'obtenir des points de référence supplémentaires dans l'espace des retards et des incertitudes.


Canaries


Un autre hack que je devrais probablement mentionner est bien connu - la technologie des canaris. CME a été critiqué par de nombreux commerçants il y a quelque temps, car le Wall Street Journal a publié une étude dans laquelle il montrait que certains commerçants recevaient leurs commandes avant l'arrivée des données du marché, ce qui conduirait à passer ces commandes, et ce gain de vitesse leur a donné un avantage. sur les participants ordinaires. C'est un argument erroné, car les vitesses de deux processus différents ne peuvent jamais être identiques. C'est plus une raison pour introduire un code de traitement supplémentaire afin de recevoir simultanément des informations du canal lent des données de marché et du canal rapide de notification de l'exécution des ordres.


Il y a plusieurs échanges où la situation est différente. Le Nasdaq a été l'un des premiers échanges à recevoir des données de marché plus rapidement que les notifications d'ordres. C'était un piège pour les jeunes joueurs qui ne s'y attendaient pas.


Dans mes premières expériences sur le KRX, un canari aurait pu travailler une seconde avant d'obtenir des données de marché. Permettez-moi de vous rappeler que le canari est un ordre limite que vous avez précédemment placé dans la profondeur du verre, et non au meilleur niveau. Ainsi, lorsque le marché passe soudainement à un nouveau niveau de prix, votre canari commence à chanter, vous informant du mouvement une seconde avant le reste du marché. Si vous ne pouvez pas gagner d'argent avec cela, votre crâne doit être rempli de pierres au lieu de cerveaux. Eh bien, et j'ai trouvé des pierres dans ma tête.


C'était bizarre. Parfois, les différences de prix entre ces deux chaînes étaient si importantes que l'on pouvait voir le marché monter et descendre. S'il est naïf d'acheter lors de cette première hausse, le marché peut vous créer des problèmes en cas de baisse. Au lieu de cela, vous pouvez essayer de déterminer à l'avance l'heure de ces événements, afin de pouvoir acheter ci-dessous et vendre immédiatement vos contrats.


Trop de connaissances étaient un problème amusant. Nous avons intégré ce code dans notre processeur de données. L'un des gars, MF, a appelé cet événement "star power", comme les frères Mario.


Gigue vs retard


Vous vous souvenez comment l'intégration des trois bourses dans KRX n'a ​​pas réellement affecté les futures et les options de KOSPI, car ils étaient déjà négociés à Séoul sur le KSE. La bourse unie KRX a fermé le centre de données de Busan et tout le monde a déménagé à Séoul. Cependant, le gouvernement n'a pas atteint ses objectifs politiques et le centre de données de Busan a finalement rouvert.


Les banques et les courtiers de Séoul ont dépensé beaucoup d'argent pour ces transferts. Parfois, il s'est avéré qu'il n'y avait pas de peering entre les deux centres de données de Busan, et les données du marché sont d'abord allées à Séoul, puis à l'arrière. Le désordre. Ce n'est que maintenant, en 2016, que la bourse KRX a reculé pour que tout soit concentré à Busan. Avant cela, la meilleure solution était de collecter les données du marché à Séoul, et l'envoi d'ordres à Busan est coûteux et inefficace. Toutes les entreprises HFT (comme nous) envisageaient la possibilité de construire leurs propres lignes entre Séoul et Busan, mais Koscom lui a interdit de le faire afin de ne pas perdre ses revenus. Vous ne pouviez acheter que des lignes chères à Koscom, ce que tous les courtiers ont fait. En règle générale, vous vous êtes battu pour les chaînes qui ont donné un délai de 2,9 à 3,1 millisecondes. Assez lent pour un câble droit de 300 km ou une autoroute de 400 km. Ce n'est qu'au cours des dernières années que plusieurs liaisons radio à micro-ondes sont apparues.


Dans le même temps, le centre de données KRX est passé de la plus grande plate-forme commerciale au monde alimentée par des équipements HP / Compaq / Tandem à une plate-forme AIX alimentée par l'architecture IBM PowerPC. Avant cette migration, nous recevions un ping aller-retour de 12-12 ms (RTT) sur les lignes d'envoi des commandes avec une gigue d'environ 130 ms. Après avoir déménagé à Busan, le ping est devenu plus de 20 ms, mais la gigue est tombée à 30 ms. Bien que les retards aient doublé en moyenne, la réduction de la gigue a rendu notre stratégie plus efficace.


Ceci est similaire au cas où CME a réduit la gigue en remplaçant ses passerelles par des équipements iLink basés sur FPGA. L'aléatoire diminue et la vitesse devient plus importante. La différence avec la Corée était que le retard a en fait augmenté pour KRX, mais en tant que commerçants, peu nous importe, la réponse à une autre question est plus importante - mes efforts en valent-ils la peine? La nouvelle plateforme a amélioré notre retour sur investissement en Corée. De la même manière, je m'attends à ce que la gigue plus faible, en raison d'une diminution constante des retards à l'intérieur de la bourse (non seulement sur CME, mais aussi sur les échanges à travers le monde), continue de diviser les commerçants en ceux qui peuvent commercer rapidement et ceux qui ne le font pas. Les retards continuent d'avoir de l'importance, même s'ils ne sont pas critiques.


Compétition


Il convient de mentionner ce qui s'est passé lorsque Getco est venu en Corée. Je les connais peu sur le plan pratique. La première chose que j'ai entendue, ce sont les plaintes constantes des courtiers. Getco gère des transactions assez difficiles et, comme elles peuvent y gagner de l'argent, cela a également fonctionné en Corée. Il y avait des rumeurs de contrats incroyables avec les courtiers eux-mêmes afin qu'ils puissent augmenter leur part de marché. Ce n'est peut-être pas trop différent de l'entente canadienne avec la CIBC? Selon des rumeurs, Getco aurait alors payé un prix fixe très bas (peut-être seulement quelques milliers de dollars) à un courtier canadien pour obtenir des parts de marché pour la CIBC.


J'ai commencé à lire des reportages sur Getco occupant 5% du marché. Quelqu'un m'a dit que ce chiffre était plus proche de 15%. De nombreux courtiers se plaignent de leurs clients sans recevoir de commissions suffisantes de leur part. La communauté locale a été plutôt bruyante et frustrée par l'arrivée de Getco. Mais nous n'avons pas été un peu contrariés, en général. Nous étions des stratégies assez diversifiées et échangées que d'autres n'avaient pas, donc très peu de gens pouvaient même comprendre ce qui se passait avec nous. Cependant, c'était une leçon - Getco a amené de nouvelles personnes en échangeant des stratégies plus efficaces. Beaucoup de gens perdent leurs revenus et se plaignent, la presse fait scandale. Vous commencez à lire des histoires sur l'injustice du marché. Ce n'est pas - juste un écho des cris des perdants. C'est une triste histoire que vous entendez à plusieurs reprises sur les marchés lorsque les commerçants luttent pour les inefficacités du marché et l'efficacité de leur technologie. Le marché s'améliore, mais les plaintes deviennent plus fortes.


Ce que nous avons fait a fonctionné et était acceptable en Corée, et c'était acceptable dans de nombreux autres pays. Mais pas, par exemple, dans Eurex. Les règles varient d'un marché à l'autre. Si vous êtes gestionnaire de portefeuille, vous comprenez maintenant que vous ne voulez plus jouer à ce jeu. C'est une concurrence féroce, avec des centaines de commerçants intelligents comme moi qui préparent constamment de nouvelles stratégies. Mais vous n'avez pas besoin de jouer dans ce domaine. Un trader à haute fréquence comme moi se concentre sur le prochain tick. C’est tout ce dont nous nous soucions. Nous dépensons d'énormes ressources pour pousser nos collègues HFT à la prochaine étape. Je me fiche de votre portefeuille alpha. C'est au-delà de mon horizon, au-delà de mes préoccupations.


Je perds beaucoup et gagne beaucoup pendant la journée. La société HFT décrite ici, que j'ai fondée en mai 2005, que j'ai quittée en janvier 2011. Nous n'avons eu que huit jours perdus pendant tout ce temps selon notre stratégie commerciale principale. Dans quatre d'entre eux, la perte s'élevait à moins de 1000 USD et dans tous, elle était inférieure à 10 000 USD. Ce n'est pas aussi bon que la célèbre société Virtu (1 jour sur environ 1200 selon leurs documents d'introduction en bourse), mais je me suis réconcilié. Cependant, n'oubliez pas qu'il y a beaucoup de transactions parmi celles qui ne peuvent pas se vanter de résultats financiers élevés. Nous ne gagnons qu'une petite partie de l'écart, généralement 10% un jour normal, 5% un mauvais jour et 20% un bon jour. Les jours d'expiration des options nous ont parfois donné 50%, car de nombreux commerçants essaient de ne pas échanger ces vendredis chaque mois.


La loi des grands nombres permet à HFT de gagner de l'argent tous les jours. La même loi indique que si nous perdons notre avantage technologique, soit nous ne pourrons pas du tout faire du commerce, soit nous perdrons de l'argent tous les jours. Les entreprises HFT font souvent faillite et abandonnent. Il s'agit d'une industrie difficile, plongeant constamment dans l'infrastructure et la microstructure du marché afin d'améliorer son efficacité. Et ce sera un travail ingrat si les gens ne comprennent pas que le coq d'aujourd'hui peut se transformer instantanément en oreiller en plumes lorsqu'une entreprise comme Getco vient dans votre ville. Je suis sûr que l'arrivée de Jump a également provoqué l'apparition de plusieurs oreillers poussiéreux.


La Corée est un endroit amusant, car l'infrastructure d'échange KRX est toujours un gâchis complet. Il existe de nombreuses autres idées qui peuvent être mises en œuvre dans une infrastructure lente, maladroite et secrète. Les HFT aiment le gâchis car ils peuvent s'y plonger et trouver des avantages pour eux-mêmes. Ce n'est pas si difficile, vous avez juste besoin de plus d'attention aux moindres détails, car toute complexité consiste en des choses simples. Curieusement, HFTshniki déteste la colocation des échanges et la faible latence, car il est beaucoup plus difficile d'y trouver un avantage. HFTshniki aime aussi les sites que peu de gens connaissent ... Personne ne veut être pris en embuscade.


Gestionnaire de portefeuille


Ne vous inquiétez pas du prochain tick. Encouragez les structures de marché comme les ETF qui sont compétitifs, équitables et bon marché. Ensuite, vous pouvez vous lever et vous réjouir de voir ces sociétés HFT s'entretuer, se battre pour la propagation la plus faible. Cela leur permet de fournir des liquidités pour travailler pour vous, malgré leurs motivations. En fin de compte, seuls les achats plus élevés et les ventes plus faibles (c'est-à-dire la réduction de l'écart réel) fonctionnent en concurrence pour le prochain tick. Ce n'est pas une recette pour de l'argent facile en HFT.


Les HFT ont peur des gestionnaires de portefeuille - ils possèdent un grand club d'information qui tue les HFT. Les grosses commandes font bouger les prix, ce qui empêche le market maker de gagner son spread. Les gestionnaires d'actifs pensent même différemment. Chaque exécution d'un ordre est une transaction souhaitée, même si le marché est allé plus loin contre vous et que le compte a un tirage, et une perte est simplement une dépense qui est toujours dans votre modèle. Dans HFT, l'exécution est un risque, le rabattement est un désastre et la perte n'est qu'un haussement d'épaules.


Le gestionnaire de portefeuille doit utiliser des algorithmes et la magie de l'efficacité du marché pour améliorer la qualité d'exécution de ses ordres. Vous ne voulez pas embaucher vingt personnes à la fois juste pour concourir pour un poste dans la file d'attente au prochain tick? Vous devriez avoir plus peur des bases quantiques d'apprentissage automatique qui automatisent régulièrement votre alpha. Inquiétez-vous des traders HFT déçus qui décident de changer de modèle et investissent à long terme pour rivaliser directement avec vous. Je vois que les deux se produisent déjà.


Très peu de courtiers proposent des solutions compétitives, mais fondamentalement, tout semble un peu périmé. Un gestionnaire de portefeuille à large portefeuille avec une grande équipe peut réaliser des bénéfices supplémentaires en déployant leurs propres algorithmes et une plate-forme DMA afin que leurs traders puissent trader de manière plus agressive et plus fréquente, tout comme les HFT en déroute regardent leur horizon temporel. Mais attention - c'est une pente glissante ...




Il a déjà été publié sous le pseudonyme de Thomas Anderson. Ce texte n'inclut pas le sexe, la drogue ou le rock and roll du projet original, car cela n'ajouterait rien à l'histoire du trading. Peut-être que cela aidera à justifier ma décision d'abandonner le travail que j'aimais. Dans tous les cas, il vaut mieux ne rien dire, même si une attitude personnelle est perdue.

Source: https://habr.com/ru/post/fr414037/


All Articles