Les cascades de liquidations comme signal de trading : lire un flux force et preannonce
La plupart des flux de marche restent secrets jusqu'a leur execution. Un vendeur discretionnaire decide de vendre au moment ou il le decide ; on apprend son intention dans le flux des transactions, apres coup. Les liquidations a effet de levier font exception, et cette exception est enorme. Une liquidation est forcee — le detenteur de la position n'a aucun pouvoir sur le fait qu'elle ait lieu — et elle est preannoncee — le prix exact auquel elle se declenche est une fonction deterministe de parametres qui sont, on-chain, entierement publics et, off-chain, estimables statistiquement. Chaque position longue a effet de levier est un ordre de vente au marche permanent, pose a un prix qu'elle diffuse a quiconque prend la peine de le calculer.
Cela change toute la perspective. L'article compagnon sur la mecanique des liquidations d'Aave et Compound traite les liquidations du cote du liquidateur — la course aux infrastructures pour etre celui qui rembourse la dette douteuse et encaisse le bonus. Cet article adopte le cote du trader face au meme objet : non pas "comment gagner la liquidation ?", mais "l'ensemble des prix de liquidation de tous les autres forme une carte du flux force futur, et je peux trader contre cette carte". Nous construisons deux versions de cette carte — une exacte on-chain, une floue sur les perps CEX —, quantifions le moment ou une chaine de liquidations devient auto-entretenue et expliquons soigneusement l'effet de ce flux sur le prix.
Le graphique on-chain de profondeur des liquidations
Sur un marche monetaire, le prix de liquidation d'une position n'est pas estime. Il est derive. Rappelons le facteur de sante de l'introduction a la mecanique : une position peut etre liquidee lorsque
avec les montants de collateraux, leurs prix d'oracle, les seuils de liquidation et les valeurs de la dette. Nous n'allons pas le deduire a nouveau ; nous l'inversons. Prenons le cas courant — un seul collatéral volatile (par exemple WETH) qui finance une dette stable (USDC). En posant et en isolant le prix du collatéral, on obtient le prix de declenchement de la position :
Ce nombre unique est ce que l'emprunteur a annonce. Il signifie : si WETH touche sur l'oracle, cette position devient une offre forcee. Et la taille de cette offre est elle aussi connaissable — au declenchement, un liquidateur rembourse de dette et saisit des collateraux d'une valeur de , de sorte qu'environ
de valeur de collatéral arrive sur le marche (ou est couverte) lorsque la position se declenche.
Reprenons la position concrete de l'introduction a la mecanique : 10 WETH deposes a 3 000 $ US, 20 000 USDC empruntes, seuil de liquidation , bonus de 5 %. Son declencheur est , et avec un facteur de cloture de 50 %, elle place a ce prix une offre forcee de WETH de . Un emprunteur, une barre sur le graphique. Faites cela pour chaque emprunteur du protocole, regroupez les resultats par , et vous obtenez un histogramme : notionnel des ventes forcees en fonction du prix. C'est le graphique on-chain de profondeur des liquidations — le cousin natif des DEX du carnet d'ordres, sauf que les "ordres" sont involontaires et que leurs prix sont calcules, pas cotes.

Trois reserves d'honnetete empechent cette carte de devenir une fiction :
- Les positions multi-actifs n'ont pas un unique prix de declenchement. Une position avec deux collateraux volatils et deux dettes se liquide sur une surface dans l'espace des prix, et non en un point. La reduction pratique consiste a calculer le declencheur le long de l'axe du collatéral volatile dominant, en maintenant tous les autres prix d'oracle a leur valeur actuelle. C'est correct pour un mouvement sur un seul actif et faux pour un mouvement d'un panier correle — ce qui compte, car les krachs correles sont precisement ceux ou de nombreux declencheurs bougent ensemble. Considerez le mono-actif comme une marginale de premier ordre, pas comme une garantie.
- Une vente forcee un dump de marche sur une seule plateforme. Les liquidateurs competents ne vendent pas aveuglement au marche les collateraux saisis dans le pool disponible le moins liquide ; ils acheminent les ordres entre DEX et CEX et conservent souvent le collatéral en se couvrant en delta sur un perp au lieu de realiser immediatement le collatéral (le probleme du swap de sortie sur lequel s'attarde l'introduction a la mecanique). Ainsi, est une borne superieure du flux ayant un impact sur le prix, et non une estimation ponctuelle. Une partie se reporte sur des couvertures qui ne touchent jamais le spot.
- Les declencheurs bougent avec l'oracle, pas avec le marche. Sur Aave et Compound, la position devient liquidable lorsque l'oracle franchit , et les oracles se mettent a jour selon une cadence de deviation et de heartbeat, avec un retard sur le marche. Le graphique de profondeur est donc une carte des endroits ou le flux force devient eligible, conditionnee par la prochaine transmission de l'oracle — une subtilite que l'introduction traite en detail.
Une troisieme source se situe entre le graphique des marches monetaires et la heatmap CEX : les DEX de perps. Hyperliquid, GMX et dYdX v4 gerent des contrats perpetuels a effet de levier comme une plateforme centralisee, mais conservent l'etat des positions on-chain ou dans une chambre de compensation interrogeable. Cela signifie que leurs prix de liquidation obeissent a la meme formule de marge isolee que les perps CEX — mais qu'ils sont calcules a partir de positions reelles (taille, collatéral, entree), plutot qu'estimes depuis l'OI agrege. L'etat de la chambre de compensation d'Hyperliquid expose la marge et le prix de marque de chaque compte ; les positions GMX sont on-chain et sont liquidees a des prix derives de l'oracle par des keepers. En pratique : pour les DEX de perps, on peut construire une carte des liquidations avec un effet de levier de style CEX mais une precision de style on-chain, bien plus proche de l'exactitude du graphique Aave que des conjectures de la heatmap. Lorsqu'une plateforme publie les positions, il n'y a jamais besoin de deviner.
Meme avec ces reserves, le graphique on-chain est la carte du flux force la plus propre qui existe sur les marches : aucune hypothese sur la distribution de l'effet de levier, aucune taille cachee, chaque entree lisible dans l'etat.
La heatmap des liquidations CEX
Les plateformes centralisees de contrats perpetuels vous placent dans la situation opposee — un open interest beaucoup plus important et presque aucun detail au niveau des positions qui rendrait le graphique on-chain exact. Vous ne pouvez pas lire les positions individuelles. Ce que vous pouvez lire, c'est l'open interest agrege et le volume echange. La heatmap des liquidations est ce qu'on obtient en essayant de reconstruire le graphique de profondeur a partir de ces agregats et d'hypotheses, et ces hypotheses sont essentielles.
L'arithmetique par position est simple. Pour une position longue lineaire a marge isolee (reglee en USDT), ouverte au prix avec un effet de levier et un taux de marge de maintenance , la liquidation se declenche lorsque les capitaux propres tombent au niveau de l'exigence de maintenance :
et, symetriquement, . Fixons une entree a avec et parcourons les niveaux d'effet de levier :
| Effet de levier | Distance sous l'entree | |
|---|---|---|
| 5× | $2,415 | −19.5% |
| 10× | $2,715 | −9.5% |
| 25× | $2,895 | −3.5% |
| 50× | $2,955 | −1.5% |
| 100× | $2,985 | −0.5% |
La forme de cette colonne explique a elle seule pourquoi les heatmaps s'illuminent juste sous le prix recent : les positions a fort effet de levier se liquident a un cheveu du prix d'entree ; partout ou le volume a recemment ete echange, une bande dense de declencheurs 50–100× se trouve a une fraction de pour cent. Le createur de la heatmap procede ainsi : il traite le volume recemment echange comme un proxy des endroits ou les positions ont ete ouvertes (leur ), repartit ce volume entre un ensemble suppose de niveaux d'effet de levier — 5×, 10×, 25×, 50×, 100× avec des poids supposes —, projette chaque tranche vers son et colore l'axe des prix selon le notionnel a effet de levier estime qui se liquide a cet endroit. Les bandes lumineuses sont des zones de liquidation estimees et denses.

Il faut expliciter pourquoi il s'agit d'une image floue et non du jumeau du graphique on-chain :
- La distribution de l'effet de levier est inconnue. Toute la heatmap est une convolution du volume avec un histogramme de l'effet de levier suppose. Des hypotheses differentes deplacent les bandes lumineuses. Deux fournisseurs de donnees reputes publient des heatmaps visiblement differentes pour le meme marche le meme jour, et tous deux ont "raison" compte tenu de leurs a priori.
- La marge croisee invalide la formule par position. Le ci-dessus est un resultat de marge isolee. Une position a marge croisee se liquide en fonction des capitaux propres de l'ensemble du compte, de sorte que son declencheur effectif depend des autres positions du trader, de leur PnL latent et des collateraux qu'il ajoute en cours de mouvement — rien de tout cela n'est observable. La taille en marge croisee est pratiquement invisible pour l'estimateur.
- Taille cachee et dynamique. L'open interest est un agregat net-plus-brut ; il ne donne pas la correspondance entre l'OI et les entrees individuelles. Les traders ajoutent, reduisent et couvrent leurs positions en continu. La marge de maintenance par paliers ( augmente avec le notionnel de la position) deplace les declencheurs des grosses positions par rapport a ceux des petites, au meme niveau d'effet de levier.
- La liquidation se fait par tranches, pas instantanement. Les plateformes liquident progressivement les grosses positions et acheminent le risque residuel via un fonds d'assurance et le deleveraging automatique ; ainsi, meme un cluster correctement localise ne se deverse pas en une seule execution.
La bonne facon de considerer la heatmap est comme un a priori sur les endroits ou le flux force est probablement concentre, a confirmer ou a refuter par les executions de liquidation realisees (le flux forceOrder decrit dans la section sur le pipeline ci-dessous), et non comme un registre. Elle est reellement utile et reellement imprecise ; faire semblant du contraire est la meilleure facon de se faire emporter par les clusters memes que l'on surveille. Pour comprendre pourquoi tant d'effet de levier s'accumule sur les perps — et pourquoi le cout du financement continue de pousser ces positions vers leurs declencheurs — voir l'arbitrage des taux de financement entre plateformes.
Dynamique des cascades, quantifiee
Une liquidation isolee est un point de donnees. Une cascade est la boucle de retroaction, et elle a un seuil que l'on peut ecrire. La boucle est mecanique : une vente forcee frappe le carnet → l'impact sur le prix fait bouger le marche → le mouvement fait passer la tranche suivante de positions sous son declencheur → ces positions sont liquidees → davantage de ventes forcees → et ainsi de suite. Que cette boucle s'eteigne ou s'emballe n'est pas une question de sentiment ; c'est le rapport entre deux quantites que vous avez deja construites.
Travaillons avec des baisses de prix fractionnelles . Deux ingredients :
- Densite de liquidation — notionnel de vente forcee par unite de baisse fractionnelle du prix, lu directement sur le graphique de profondeur / la heatmap : . Elle mesure la quantite de carburant empilee dans une bande de prix.
- Profondeur de marche — notionnel de ventes au marche necessaire pour faire bouger le prix d'une unite de . Dans un modele d'impact lineaire (Kyle), une vente de notionnel fait bouger le prix de . C'est la capacite du carnet d'ordres a absorber le flux force, et c'est exactement la quantite etudiee dans l'analyse des murs du carnet et de la position dans la file — un "mur" est un pic local de .
Iterons. Un choc exogene fait baisser le prix de , declenchant de ventes forcees. Ces ventes provoquent une baisse supplementaire . Definissons le multiplicateur de cascade
et la recurrence est simplement . La baisse totale est une serie geometrique :
Tout depend de la valeur de :
- — sous-critique. Chaque vague de liquidations declenche moins de ventes que la precedente. La cascade s'eteint d'elle-meme ; le mouvement total est un multiple borne du choc initial. La plupart des evenements de liquidation se situent ici.
- — supercritique. Chaque vague declenche au moins autant de ventes que la precedente. La serie geometrique diverge ; le mouvement n'est limite que par l'epuisement des positions liquidables, l'approfondissement du carnet a des prix plus bas ou un coupe-circuit de la plateforme. C'est le regime du "flash crash / long squeeze".
est un nombre de reproduction — le d'une epidemie de liquidations. Il indique que la cascade s'emballe exactement lorsque la liquidite des ventes forcees concentree dans une bande de prix depasse la liquidite du carnet disponible pour l'absorber a cet endroit. C'est pourquoi un choc modeste dans un cluster dense sur un carnet peu profond est bien plus dangereux qu'un choc important dans un espace de prix vide : le danger est , et non la taille du choc. Cette structure auto-excitatrice — des evenements qui declenchent davantage d'evenements de meme nature — est la meme qui incite a modeliser le flux d'ordres avec des processus de Hawkes, et c'est pourquoi les liquidations arrivent par clusters plutot qu'uniformement.

Mettons-y des chiffres. Supposons que le carnet soit tel que 10 M$ de ventes au marche fassent baisser l'ETH de 1 %, soit de notionnel par unite de prix fractionnelle. Comparons maintenant deux regimes pour la bande de 1 % de largeur juste sous le spot :
- Bande dense, notionnel de ventes forcees groupe de 30 M$. Alors et . Supercritique : un choc qui entame le haut de la bande fait detoner toute la pile, et le plancher du modele est determine non par , mais par l'endroit ou les positions s'epuisent.
- Bande clairsemee, notionnel groupe de 6 M$. Alors , , et le mouvement total est — un repli amplifie mais borne. Meme choc, meme carnet, cluster cinq fois moins dense, et le resultat passe de l'effondrement a une meche achetable.
La version discrete est une courte simulation sur les clusters tries, et il vaut la peine de l'ecrire car elle rend le seuil tangible :
def cascade(p0, clusters, kyle_lambda):
"""
p0: price after the exogenous shock
clusters: {trigger_price: forced_notional} for long positions
kyle_lambda: fractional price impact per $ of market sell (1/depth)
Returns the floor price and total liquidated notional.
"""
p, sold, fired = p0, 0.0, set()
while True:
new = [(tp, n) for tp, n in clusters.items()
if tp not in fired and tp >= p]
if not new:
break
q = sum(n for _, n in new) # this round's forced sell
fired.update(tp for tp, _ in new)
p *= (1 - kyle_lambda * q) # linear price impact of the round
sold += q
return p, sold
Deux remarques pratiques. Tout d'abord, est local — il varie le long de l'axe des prix, car (densite du cluster) et (profondeur du carnet) varient eux aussi. La question tradable n'est pas "le marche est-il fragile ?", mais "a quel prix precis franchit-il 1 ?". Ensuite, le meme mecanisme fonctionne en sens inverse pour les shorts lors d'une hausse (un short squeeze est une cascade dont les signes sont inverses) ; la carte a donc deux cotes : le carburant des liquidations de longs sous le spot et le carburant des liquidations de shorts au-dessus. La boucle vente forcee → impact sur le prix → vente forcee est le mecanisme de risque endogene formalise dans la litterature sur les ventes forcees (Cont & Wagalath), ou la liquidation en detresse fabrique sa propre correlation et son propre impact.
Signaux : les clusters comme aimants et zones de retournement
Une carte du flux force produit deux lectures tradables distinctes, presque opposees, selon le moment par rapport a la cascade.
Avant : les clusters sont des aimants a prix. Un cluster de liquidations dense est un reservoir de flux garanti et insensible au prix. Il attire deux types d'acteurs : les traders en quete de liquidite qui veulent executer une taille face aux contreparties forcees, et les traders predateurs qui poussent le prix vers le cluster precisement pour declencher le flux (la chasse aux stops, a l'echelle du protocole). Il en resulte une tendance bien documentee du prix a graviter vers les grands clusters — le niveau agit comme un aimant — car il existe une incitation permanente a reduire la distance. Lorsque vous voyez le spot glisser vers une bande lumineuse avec peu de conviction, la bande elle-meme fait partie de l'explication. Prevoir la reaction du carnet a l'approche du prix — le mur absorbera-t-il le flux ou cedera-t-il — est exactement le type de probleme de prediction du carnet a court terme auquel s'attaquent des modeles comme DeepLOB.
Apres : les clusters sont des zones de retournement. C'est la lecture la plus precieuse et la plus mal utilisee ; formulons-la avec soin. Le flux de liquidation force est, par construction, non informationnel — le vendeur ne vend pas parce qu'il pense que le prix est trop eleve ; il vend parce qu'un moteur de marge le lui a ordonne. Un flux non informationnel fait bouger le prix temporairement. Une fois les positions du cluster epuisees, la vente mecanique s'arrete brutalement et, si la cascade a depasse la juste valeur dans sa descente, le prix tend a revenir — la "meche de liquidation". Le mecanisme n'est pas une legende : le resultat standard est que l'impact sur le prix d'une vente forcee et non informee comporte une composante transitoire qui s'inverse une fois le flux termine, selon la meme logique de vente forcee qui produit une dislocation temporaire puis un retour partiel dans la litterature sur les ventes en detresse d'actions.

La discipline que cela exige, formulee aussi directement que possible :
- Le retour a la moyenne apres une cascade est une tendance documentee, pas une loi ni un chiffre. Il depend du fait que le flux ait ete veritablement non informationnel et qu'aucune nouvelle information ne soit arrivee pendant la cascade. Une cascade de liquidations qui correspond aussi a une revalorisation du marche sur une information reelle (un depeg, un exploit, un choc macroeconomique) ne s'inversera pas — le flux force et le flux informationnel se superposent, et seul le premier est transitoire. Il n'existe pas d'avantage universel a "acheter la meche", et tout pourcentage precis de retour que vous voyez cite sans echantillon, plateforme et regime explicites doit etre considere comme du marketing.
- Le signal est l'epuisement, pas la baisse. Le moment tradable est celui ou les executions de liquidation realisees s'espacent — lorsque le flux
forceOrderse tait apres une rafale — car c'est alors que le vendeur mecanique a disparu. Entrer au milieu d'une cascade supercritique (), c'est se placer devant la boucle de retroaction meme contre laquelle la section precedente mettait en garde. - Les deux lectures ont besoin de la meme carte. Magnet et retournement sont les memes clusters observes a des phases differentes ; on ne peut trader ni l'un ni l'autre sans construire d'abord le graphique de profondeur et la heatmap, puis les confronter en continu aux executions realisees.
Il existe aussi une lecture directionnelle plus lente dans l'asymetrie de la carte a deux cotes. Le carburant des liquidations de longs se trouve sous le spot, celui des liquidations de shorts au-dessus ; lorsque l'un des deux cotes est beaucoup plus charge que l'autre, le marche presente un biais mecanique vers le cote lourd, car c'est la que le choc rencontre le plus de flux auto-entretenu. Un marche avec un mur de liquidations de longs 3 % plus bas et presque rien au-dessus est structurellement fragile a la baisse, quel que soit le recit : le chemin de moindre resistance est celui qui contient le plus de carburant. Un financement persistant et unilateral est souvent a l'origine de cette asymetrie : un marche qui paie les longs pour rester shorts (financement fortement negatif) accumule des shorts surcharges, dont le cluster de liquidation se trouve alors au-dessus du prix comme carburant de squeeze, et inversement. Le flux de financement et la carte des liquidations sont deux vues du meme effet de levier.
Le pipeline de donnees
Le systeme fusionne deux flux aux caracteres opposes : un index de positions on-chain prospectif (l'endroit ou le flux force deviendra eligible) et un flux de liquidations CEX realisees (l'endroit ou le flux force s'imprime en ce moment). L'un indique ou se trouve le carburant ; l'autre indique qu'il s'est enflamme.
La carte prospective — index des positions on-chain. Partez de l'historique des evenements Aave/Compound (Supply, Borrow, Repay, Withdraw, LiquidationCall), soit en rejouant les logs, soit en interrogeant un sous-graphe sur The Graph, puis agreguez-les dans les soldes courants par utilisateur — exactement le sous-systeme d'indexation que l'introduction a la mecanique decrit pour les bots de liquidation, reutilise ici pour l'agregation plutot que pour l'execution. A partir des soldes et des parametres de risque actuels, calculez le et le de chaque position, puis regroupez-les dans l'histogramme du graphique de profondeur. Actualisez a chaque nouveau bloc ; une fois les soldes en direct, l'histogramme est peu couteux a maintenir incrementalement.
Le flux realise — flux forceOrder de Binance. Binance Futures publie les liquidations effectives sur un websocket, wss://fstream.binance.com/ws/!forceOrder@arr (tableau de tous les symboles) ou <symbol>@forceOrder, chaque evenement contenant le cote, le prix et la quantite d'un ordre de liquidation. Un piege documente, et c'est exactement le genre d'imprecision qu'il faut reconnaitre : le flux public est limite a au plus un evenement de liquidation par symbole et par seconde — lors d'une cascade violente, quand les liquidations arrivent bien plus vite qu'a raison d'une par seconde, le flux echantillonne au lieu de signaler chaque execution ; le volume total de liquidations reconstruit a partir de ce flux est donc systematiquement sous-estime precisement au moment ou il importe le plus. Utilisez le flux pour le moment et la direction de la cascade (est-elle en train de se declencher, de quel cote, accelere-t-elle ou s'amenuise-t-elle ?), et non comme un registre precis des volumes.
Un squelette minimal d'ingestion — deux producteurs asynchrones ecrivant dans un bus normalise :
import asyncio, json, websockets
async def binance_liquidations(bus):
url = "wss://fstream.binance.com/ws/!forceOrder@arr"
async with websockets.connect(url) as ws:
async for msg in ws:
o = json.loads(msg)["o"] # order payload
await bus.put({
"src": "binance", "kind": "realized",
"symbol": o["s"],
"side": o["S"], # SELL = long liquidation
"price": float(o["p"]),
"qty": float(o["q"]), # NB: stream is sampled at 1/s
})
async def onchain_positions(bus, subgraph, poll=12):
while True:
positions = subgraph.fetch_open_positions() # balances + risk params
chart = {}
for pos in positions:
p_liq = pos.debt / (pos.collateral * pos.liq_threshold)
q = pos.close_factor * pos.debt * (1 + pos.liq_bonus)
chart[round(p_liq, 2)] = chart.get(round(p_liq, 2), 0.0) + q
await bus.put({"src": "aave", "kind": "forward", "chart": chart})
await asyncio.sleep(poll) # ~1 block cadence
async def main(subgraph):
bus = asyncio.Queue()
await asyncio.gather(
binance_liquidations(bus),
onchain_positions(bus, subgraph),
consumer(bus), # reconcile forward map vs realized tape, emit signals
)
C'est dans le consumer que se trouve la strategie : conserver la carte prospective (graphique on-chain plus heatmap CEX estimee), estimer le multiplicateur de cascade local par rapport a la profondeur du carnet en direct et surveiller le flux realise forceOrder pour detecter le declenchement puis — c'est la partie tradable — l'epuisement. Lorsque le flux s'accelere puis s'amenuise alors que le prix se trouve sous un cluster que la carte indiquait, vous avez un depassement non informationnel avec le vendeur force disparu : la configuration de retournement. Lorsque le flux accelere et que en amont, vous avez une cascade supercritique dont il faut rester a l'ecart. Meme carte, actions opposees ; c'est le flux qui les distingue en temps reel.
Ce qu'il faut retenir
Les liquidations inversent l'asymetrie d'information habituelle des marches : au lieu que le flux reste cache jusqu'a son execution, le prix et la taille des ventes forcees peuvent etre calcules a l'avance — exactement on-chain, approximativement sur les perps CEX. Construisez la carte (le graphique on-chain de profondeur est exact sous reserve du routage et du retard de l'oracle ; la heatmap CEX est un a priori conditionne par une distribution inconnue de l'effet de levier et aveugle a la marge croisee), et la fragilite de la carte se reduit a un seul ratio : le multiplicateur de cascade , densite des ventes forcees sur profondeur du carnet, un nombre de reproduction sous-critique sous 1 et en emballement au-dessus. Le signal se divise selon la phase — les clusters sont des aimants avant, des zones de retournement apres — et l'avantage de retournement n'existe que parce que le flux force est non informationnel et donc transitoire, une tendance documentee qui disparait des qu'une cascade coincide avec une information reelle. Tradez l'epuisement, pas la baisse ; respectez ; et ne prenez jamais une heatmap floue pour un registre indiquant ou les corps sont enterres.
References
- Qin, Zhou, Gamito, Jovanovic, Gervais (2021), An Empirical Study of DeFi Liquidations: Incentives, Risks, and Instabilities. arXiv:2106.06389.
- Kyle, A. S. (1985), Continuous Auctions and Insider Trading. Econometrica 53(6) — le coefficient lineaire d'impact sur les prix utilise dans le modele de cascade.
- Cont, R., & Wagalath, L. (2016), Fire Sales Forensics: Measuring Endogenous Risk. Mathematical Finance 26(4) — l'impact sur les prix des liquidations forcees et la correlation endogene.
- Bacry, E., Mastromatteo, I., Muzy, J.-F. (2015), Hawkes Processes in Finance. Market Microstructure and Liquidity 1(1) — le regroupement auto-excitateur des flux d'ordres et de liquidations.
- Documentation de l'API Binance Futures — flux d'ordres de liquidation (
!forceOrder@arr,<symbol>@forceOrder), notamment la limitation a un evenement par seconde et par symbole. - Sous-graphes Aave v3 et Compound III sur The Graph ;
getUserAccountDatad'Aave et parametres de risque des reserves.
Authors
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.