Hawkes Processes for Order Arrival and Market Event Modeling
Het digitale vingerafdrukartikel gebruikt een vector met drie cijfers — hawkes_mu, hawkes_alpha, hawkes_beta – als de timingcomponent van de gedragssignatuur van een deelnemer, en beweert dat marktmakers een sterke zelfexcitatie vertonen. Er staat nooit waar die drie getallen vandaan komen, waar ze op gebaseerd zijn, of in hoeverre je ze moet vertrouwen. Dit artikel is de ontbrekende helft: de schatter, de fitdiagnostiek en de enige afgeleide grootheid die belangrijker blijkt te zijn dan de drie parameters zelf: de vertakkingsverhouding .
De claim die hier wordt getest, is beperkt en controleerbaar. De orderstroom is zelfopwindend: een agressieve verkoop maakt de volgende agressieve verkoop waarschijnlijker, op een manier die een Poisson-model met een in de tijd variërende snelheid niet kan reproduceren. Als dat waar is, zou een Hawkes-proces dat is afgestemd op de tijdstempels van onbewerkte handel (a) een Poisson-basislijn moeten verslaan op het gebied van de aangehouden waarschijnlijkheid, (b) een vertakkingsverhouding moeten opleveren die strikt tussen 0 en 1 ligt, en (c) een goodness-of-fit-test met tijdsherschaling moeten doorstaan. Punten (a) en (b) worden algemeen gerapporteerd voor aandelenfutures. Punt (c) is waar gepubliceerde Hawkes-artikelen meestal stil blijven, en het is waar cryptotape nooit is gecontroleerd op deze blog.
Twee stukjes achtergrondinformatie die deze blog al bezit, dus die zijn hier niet opnieuw afgeleid. De zelfopwekkende feedbackstructuur – gebeurtenissen die meer gebeurtenissen van dezelfde soort veroorzaken, subkritisch onder een drempel en op hol geslagen daarboven – wordt concreet afgeleid als een reproductiegetal in liquidation cascades as a trading signal, inclusief de totale beweging in geometrische reeksen, het superkritische flash-crash-regime en stroomonderbrekers als een van de drie dingen die dit begrensden. De vertakkingsverhouding hieronder is de puntprocesanaloog daarvan . Wat hier echt additief is: is schatbaar in realtime op basis van alleen handelstijdstempels, zonder liquidatiekaart, zonder diepte van het orderboek en zonder aannames over de hefboomwerking. Dat is de hele reden om ons bezig te houden met de puntprocesmachinerie.
Het uitgangspunt dat kloktijd de verkeerde bemonsteringsas is, is het grondargument van beyond time bars, dat dit oplost door betere balken te bouwen. In dit artikel wordt het anders opgelost: door helemaal geen steekproeven te nemen en de gebeurtenistijden rechtstreeks te modelleren.
Basisprincipes van puntprocessen, in het kort

Een puntproces is een willekeurige reeks gebeurtenistijden, gedefinieerd door de voorwaardelijke intensiteit — het momentane aankomstpercentage gegeven de volledige geschiedenis :
Het homogene Poisson-proces is het geval . Het inhomogene Poisson-proces laat dit toe een deterministische vorm volgen (bijvoorbeeld een U-vormige intraday-curve), maar nog steeds uitgaan van voorwaardelijke onafhankelijkheid: weten dat een transactie zojuist heeft plaatsgevonden, zegt niets over de vraag of er nog een op handen is. Die veronderstelling is wat de echte orderstroom schendt, en de schending is het hele onderwerp van dit artikel. Het sterretje erin is het hele onderscheid – het markeert de afhankelijkheid van de geschiedenis.
Het Hawkes-proces

Een univariate Hawkes-proces heeft intensiteit
met de achtergrondintensiteit (exogene aankomsten) en de excitatiekernel. Elke gebeurtenis verhoogt de intensiteit , dat vervolgens vergaat in de vorm van . Een cluster van recente gebeurtenissen produceert een hoge intensiteit, waardoor verdere gebeurtenissen waarschijnlijker worden: het proces onthoudt zijn eigen geschiedenis.
De vertakkingsverhouding
is het gemiddelde aantal onderliggende gebeurtenissen dat door één ouder wordt geactiveerd. Stationariteit vereist ; de stationaire gemiddelde intensiteit is , die uiteenloopt als . Dus splitst de totale activiteit op in een exogene fractie en een endogene fractie : bij 70 procent van de gebeurtenissen zijn reacties op andere gebeurtenissen en niet zozeer reacties op iets buiten de markt.
Dit is precies de subkritische/superkritische verdeling van de cascadevermenigvuldiger in liquidatiecascades, bereikt vanuit een andere richting. Het verschil in wat het u kost om te berekenen: vereist een voorwaartse kaart van de dichtheid van gedwongen verkopen en de diepte van het liveboek, die beide schattingen zijn die gebaseerd zijn op aannames over de verdeling van de hefboomwerking. vereist een lijst met tijdstempels.
Filimonov en Sornette (2012) hebben gerapporteerd tussen 1998 en 2007 steeg van grofweg 0,3 naar ruim 0,7 in E-mini S&P 500-futures. Hardiman, Bercot en Bouchaud (2013) schatten hetzelfde contract in de buurt van met een machtswet-kern van exponent ongeveer bij korte vertragingen. Beide zijn aandelenfutures van meer dan tien jaar geleden, en geen van beide wordt zonder meting naar crypto overgedragen. Het reproduceren ervan is niet het doel van dit artikel; controleren of hetzelfde regime 24 uur per dag, 7 dagen per week, met verschillende deelnemers een eeuwigdurende futures-band hanteert en er geen sprake is van marktopen discontinuïteit.
Kernelkeuzes
Exponentieel, , met . Markoviaans, dus de waarschijnlijkheid heeft een -recursie per gebeurtenis (hieronder). Dit is waar elke praktische pasvorm begint.
Machtswet, . Reproduceert clustering met lang geheugen, maar verliest de recursie - waarschijnlijkheidsevaluatie wordt of vereist inkorting.
Som van exponentiële waarden, . Benadert het verval van de machtswet met tijdschalen terwijl de recursie behouden blijft. naar is meestal genoeg, met van milliseconden tot minuten.
Of de aankomsten van cryptohandel exponentieel afnemen of dat het een machtswet is, is een empirische vraag met een waarschijnlijkheidsratio-antwoord, en wordt hieronder gemeten in plaats van geciteerd.
Multivariate Hawkes-processen

Voor soorten evenementen,
waar beschrijft hoe type prikkelt het type . Bij exponentiële kernels is de vertakkingsmatrix dat wel , en stationariteit vereist spectrale straal . De eigenvector van geassocieerd met de grootste eigenwaarde identificeert de dominante excitatiemodus - welke groep gebeurtenistypen de neiging heeft samen te vuren.
De interessante instantiatie voor een orderboek is : marktkoop, marktverkoop, kooplimiet, verkooplimiet, koop annuleren, verkoop annuleren. Die matrix heeft 36 vermeldingen en is het onderdeel van de Hawkes-toolkit die deze blog nergens anders heeft. Merk op dat een van de voorspelde gegevens al empirisch is gedocumenteerd zonder de woordenschat: gecorreleerde massa-annulering over opeenvolgende niveaus – wall pulls – wordt rechtstreeks gemeten in [wachtrijpositie en orderboekmuuranalyse] (/en/blog/post/queue-position-order-book-wall-analysis). Een gemonteerd is hetzelfde fenomeen uitgedrukt als een kern, en de twee metingen zouden overeen moeten komen. Als ze dat niet doen, heeft een van hen ongelijk.
Cross-asset- en multi-venue-versies zijn dezelfde machines met verschillende labels: niet-diagonale kernels vangen leadlag en besmetting op, en Shi, Broussard en Booth (2019) gebruikten precies dit op de 30 Dow-aandelen tijdens de flashcrash van 2010, waarbij ze asymmetrische kruisexcitatie met identificeerbare besmettingsbronnen vonden.
Kalibratie

Maximale waarschijnlijkheid
Voor evenemententijden op :
De eerste term beloont de intensiteit waar gebeurtenissen plaatsvonden; de tweede bestraft intensiteit die niets heeft opgeleverd.
Voor de exponentiële kernel de recursie
geeft bij per gebeurtenis, en de compensator sluit:
Totale kosten , wat ervoor zorgt dat miljoenen gebeurtenissen routine zijn. Optimaliseer met L-BFGS-B onder positiviteitsbeperkingen.
Twee faalmodi die de moeite waard zijn om te kennen voordat u een uitgang vertrouwt. Het waarschijnlijkheidsoppervlak vlakt ernstig af als , dus een bijna kritische fit kan een zelfverzekerd ogende puntschatting opleveren die zich in een vallei bevindt die bijna vlak is in - profileer altijd de waarschijnlijkheid in in plaats van de Hessiaan van de optimizer te lezen. En in het multivariate geval groeit het aantal parameters als , dus verleden tijd je hebt groeps-Lasso nodig voor de kernelnormen, anders past de matrix bij ruis.
EM en niet-parametrische schatting
EM beschouwt de vertakkende structuur als latent: elke gebeurtenis komt voort uit een immigrant of een nakomeling van een eerdere gebeurtenis. De generieke E-step/M-step-mechanica, het lokaal-optimale voorbehoud en de meervoudige initialisatiediscipline worden behandeld in de Baum-Welch-sectie van regime-detectie met HMM's en zijn hier identiek. Het Hawkes-specifieke onderdeel is de E-step-hoeveelheid zelf:
is een posterior over welke gebeurtenis veroorzaakte welke — een interpreteerbare output, niet alleen een tussenproduct voor optimalisatie. Opgeteld per gebeurtenistype geeft het een toeschrijving van de tape: dit deel van de verkopen van het afgelopen uur werd veroorzaakt door eerdere verkopen, dat deel kwam van buitenaf. Hiermee kunt u ook een schatting maken niet-parametrisch als stuksgewijs constant op een raster, en dat is hoe je de exponentiële aanname controleert zonder je aan een alternatief te binden. Kosten: voor het volledige matrix, zodat deze niet ruwweg verder schaalt gebeurtenissen zonder benadering.
De spectrale methode van Bacry en Muzy is de andere modelvrije route: de spectrale vermogensdichtheid van een stationair Hawkes-proces houdt rekening met , dus door de covariantiedichtheid te schatten en de factorisatie op te lossen, worden de kernels hersteld zonder dat er een parametrische vorm wordt aangenomen.
Echte cryptotape passen

Elk getal in deze sectie moet afkomstig zijn van een daadwerkelijke fit met echte gegevens. Het herstellen van parameters die u in een simulator heeft geïnjecteerd, is geen bewijs, behalve dat de optimalisatie werkt.
De gegevens: Binance BTC/USDT aggTrade tijdstempels over een gedefinieerd venster, waarbij het aantal vensters, symbolen en gebeurtenissen expliciet wordt vermeld naast elk gerapporteerd cijfer. aggTrade verzamelt vullingen tegen dezelfde prijs van één takerorder in één record, wat hier de juiste eenheid is: één agressieve order is één gebeurtenis, niet één gebeurtenis per tegenpartijvulling.
Univariate pasvorm
import numpy as np
import pandas as pd
from tick.hawkes import HawkesExpKern
trades = pd.read_parquet("binance_btcusdt_aggtrades.parquet")
t0 = trades["transact_time"].iloc[0]
ts = ((trades["transact_time"] - t0) / 1000.0).to_numpy(dtype=np.float64)
T = ts[-1]
learner = HawkesExpKern(decays=BETA_GRID, penalty="none", verbose=False)
learner.fit([ts])
mu_hat = learner.baseline[0]
alpha_hat = learner.adjacency[0, 0]
n_hat = alpha_hat / BETA_CHOSEN
print(f"events = {len(ts)}")
print(f"window = {T/3600:.2f} h")
print(f"mu = {mu_hat:.4f} events/s")
print(f"n = {n_hat:.4f}")
print(f"lambda_bar (model) = {mu_hat/(1-n_hat):.4f} events/s")
print(f"lambda_bar (data) = {len(ts)/T:.4f} events/s")
De laatste twee afdrukken zijn de eerste geestelijke gezondheidscontrole die niets kost: als de gemiddelde intensiteit van het model stationair is niet in de buurt van het empirische gebeurtenispercentage komt, is de fit verkeerd, ongeacht wat de optimizer rapporteerde.
mag niet met de hand worden gerepareerd. Profileer de waarschijnlijkheid over een raster van verval en rapporteer het profiel, omdat En handel sterk af en kan stabiel zijn terwijl geen van beide parameters dat is.
Vervalt de kernel feitelijk exponentieel?
De machtswetclaim in de literatuur komt uit aandelenfuturespapieren uit 2013. Test het direct: pas een exponentiële kernel en een machtswet-kernel op dezelfde tape toe, vergelijk op basis van de log-waarschijnlijkheid van vastgehouden gegevens (niet in de steekproef, aangezien de machtswet een extra parameter heeft), en kijk afzonderlijk naar het empirische intensiteitsverval na grote transacties.
large = ts[trades["quantity"].to_numpy() > LARGE_TRADE_THRESHOLD]
lags = np.logspace(-3, 2, 60) # 1 ms .. 100 s
rate = np.empty(len(lags) - 1)
for k in range(len(lags) - 1):
lo, hi = lags[k], lags[k + 1]
counts = [
np.searchsorted(ts, t0_ + hi) - np.searchsorted(ts, t0_ + lo)
for t0_ in large
]
rate[k] = np.mean(counts) / (hi - lo)
Geplot log-log, een exponentiële kern buigt; een machtswet is recht. Die plot is een sterker bewijsstuk dan beide waarschijnlijkheidsgetallen, omdat het laat zien waar het buitenbeentje zit: exponentiële waarden passen doorgaans onder de staart en overpassen de eerste paar milliseconden.
De vertakkingsmatrix
Minimaal haalbaar multivariate model: twee dimensies, agressieve koop en agressieve verkoop, gescheiden door is_buyer_maker. Als L3-gegevens beschikbaar zijn, uitbreiden naar annuleringen.
buys = ts[~trades["is_buyer_maker"].to_numpy()] # taker bought
sells = ts[ trades["is_buyer_maker"].to_numpy()] # taker sold
mv = HawkesExpKern(decays=BETA_CHOSEN, penalty="l2", C=C_CV, verbose=False)
mv.fit([buys, sells])
G = mv.adjacency / BETA_CHOSEN # branching matrix
rho = np.max(np.abs(np.linalg.eigvals(G)))
print("G =\n", G)
print(f"spectral radius = {rho:.4f}") # must be < 1
De twee grootheden die moeten worden gepubliceerd zijn de matrix zelf en de spectrale straal ervan. De asymmetrie is het interessante deel: of verkopen-opwindt-verkopen groter is dan kopen-opwinden-kopen, en of de kruistermen symmetrisch zijn, zijn toetsbare uitspraken over cryptotape die niemand hier heeft gemeten.
Goodness of Fit: tijd opnieuw schalen
De tijdherschalingsstelling: als het model correct is, de getransformeerde tijden vormen een Poisson-proces met eenheidssnelheid, dus de verschillen Zijn .
from scipy.stats import kstest, expon
compensator = np.empty(len(ts))
for i, ti in enumerate(ts):
compensator[i] = mu_hat * ti + (alpha_hat / BETA_CHOSEN) * np.sum(
1 - np.exp(-BETA_CHOSEN * (ti - ts[:i]))
)
tau = np.diff(compensator)
stat, pval = kstest(tau, expon(scale=1.0).cdf)
print(f"KS = {stat:.4f}, p = {pval:.4g}, N = {len(tau)}")
Eén waarschuwing bij het lezen van deze test: met bij de honderdduizenden wordt de KS-test afgewezen vanwege triviale verkeerde specificatie. Een kleine p-waarde van betekent op zichzelf bijna niets; de informatieve output is de QQ-plot van tegen en de KS-statistiek zelf, die een schaalvrije effectgrootte is. Rapporteer beide, en rapporteer ze eerlijk – als de exponentiële kernel op cryptotape wordt afgewezen, is dat een resultaat dat de moeite waard is om te publiceren in plaats van te begraven, in dezelfde geest als het eerlijke negatieve resultaat over robuuste randen.
Beweegt n daadwerkelijk met kwetsbaarheid?
De bewering dat is een real-time fragiliteitsindicator die voortdurend wordt aangehaald en zelden wordt getest. De test is eenvoudig: schatting op rollende vensters over een rustige periode en over een bekende crypto-cascadedatum, en kijk of deze vóór of alleen tijdens de gebeurtenis stijgt. Een hoeveelheid die alleen gelijktijdig met de crash stijgt, is een beschrijving en geen waarschuwing.
Stabiliteit en robuustheid

Een gemonteerd is geen meting totdat je weet hoeveel hij beweegt als je dingen verandert die er niet toe doen. Vier specifieke vallen, in ruwe volgorde van hoeveel schade ze aanrichten.
Tijdstempelresolutie zorgt voor zelfexcitatie. Binance aggTrade tijdstempels hebben een resolutie van milliseconden. Transacties die echt microseconden uit elkaar lagen, storten in op identieke milliseconden, en een waarschijnlijkheid van Hawkes interpreteert samenvallende gebeurtenissen als maximale opwinding – geëvalueerd met precies nul vertraging. Dit geeft vooroordelen naar boven, en de bias neemt toe met de activiteit, wat betekent dat het juist het slechtst is tijdens de bursts waarin je het liefst wilt dat het getal betrouwbaar is. Kwantificeer het: tel het deel van de gebeurtenissen die een tijdstempel delen met een buurman, pas het vervolgens opnieuw aan met die gebeurtenissen die gelijkmatig binnen hun millisecondenbak zijn gejitterd en rapporteer hoeveel beweegt. Als de jitter verandert met meer dan het betrouwbaarheidsinterval meet het hoofdcijfer de klok, niet de markt.
Exchange-batchverwerking. Exchanges zenden geen gebeurtenissen uit wanneer ze plaatsvinden; ze stoten ze uit terwijl hun matching- en verspreidingspijplijn doorspoelt. De één-per-seconde-beperking van Binance op de liquidatiestroom is het gedocumenteerde precedent: een stroom die lijkt op geclusterde aankomsten is deels een artefact van de uitgever. Elke batching in de handelsfeed drukt een periodiciteit in de verdeling tussen aankomsten in, die een Hawkes-kernel met plezier zal absorberen . Controleer het direct: maak een histogram van de tussenaankomsttijden en zoek naar pieken tijdens de batchingperiode voordat u iets past.
Gevoeligheid voor het veronderstelde verval. hangt af van , En wordt gewoonlijk vastgezet of in een raster gezocht, in plaats van gezamenlijk te worden geschat. Rapport als functie van over het plausibele bereik, niet als een punt. Als de curve vlak is, is het getal reëel; als sporen dichtbij, je hebt je antwoord gekozen.
Schattingsperiode. geschat over een uur, een dag en een week zullen verschillen, deels omdat het proces werkelijk niet-stationair is en deels omdat een langer venster regimes combineert, wat de schijnbare opwinding vergroot door variatie tussen regimes te combineren met clustering binnen regimes. Rapporteer de vensterlengte-sweep. De juiste manier om een stijging te lezen ligt tegen dezelfde raamlengte gemeten op andere momenten, nooit tegen een getal uit een ander raam.
Het patroon hier is het patroon dat is vastgelegd in de GPU-precisieval: een pijplijn die netjes loopt en een plausibel getal retourneert, is geen bewijs van een correct getal, en de enige verdediging is het verstoren van de invoer die er niet toe zou moeten doen en bevestigen dat de uitvoer niet beweegt.
Wat dit wel en niet voor jou oplevert

Drie verbindingen met de microstructuurtheorie, kort gehouden omdat de blog ze elders uitgebreid behandelt.
Prijsvorming. In Kyle (1985) prijst de marktmaker op basis van netto orderstromen, waarbij geïnformeerde handel en ruishandel worden gecombineerd; de impactcoëfficiënt en diepte zijn uiteengezet in de vervolgliteratuur – inclusief het bewijs tegen Kyle’s lineariteit – in slippage cost models. De Hawkes die kaarten lezen op echt nieuwe informatie en de zelfopgewekte gebeurtenissen op mechanische reacties, op het maken ervan een meetbare proxy voor het door lawaai veroorzaakte aandeel van de stroom.
Volatiliteitsclustering. Clustering, persistentie, de stationariteitstoestand en de langetermijnvariantie – structureel de exacte analoog van En – worden behandeld in GARCH volatility forecasting for crypto. De werkelijk nieuwe bewering is Bacry, Delattre, Hoffmann en Muzy (2013): een bijna kritisch Hawkes-proces genereert rendementsreeksen waarvan de autocorrelatie van volatiliteit vervalt als een machtswet, zonder dat er ergens een expliciet volatiliteitsmodel bestaat. Volatiliteitsclustering blijkt een opkomende eigenschap van een zelfopwekkende orderstroom te zijn, in plaats van te worden aangenomen.
Epps-effect. Bacry en Muzy toonden aan dat een bivariaat Hawkes-model het verval van gemeten correlatie bij hoge bemonsteringsfrequentie reproduceert, puur op basis van de eindige voortplantingstijd van excitatie tussen de twee processen - geen extra mechanisme vereist.
Bij de uitvoering is het voorschrift dat volgt uit zelfexcitatie – vertragen na een slice, versnellen in rustige perioden – al de kern van de POV-feedback-loop-sectie in [TWAP-, VWAP- en POV-uitvoeringsalgoritmen] (/en/blog/post/twap-vwap-pov-execution-algorithms), en de kritiek op naïeve equal slicing is Almgren-Chriss. Wat een Hawkes-fit toevoegt, is niet het advies, maar een getal: de aangepaste kernelhalfwaardetijd zegt hoe lang het duurt voordat de excitatie van je eigen segment vervalt, waardoor 'even wachten' wordt omgezet in een specifieke pauzelengte.
Beperkingen

Geen remming. Het klassieke model staat alleen toe dat gebeurtenissen de intensiteit verhogen. Markten bevatten het tegenovergestelde: een grote limietorder die de druk absorbeert, kan agressieve handel afschrikken. Hawkes-processen met inhibitie staan negatieve kernelwaarden toe, ten koste van het afdwingen ervan . Of dit van belang is voor een bepaalde fit, is zichtbaar in de niet-parametrische kernelschatting – als deze stuksgewijs constant is met enige vertraging onder nul daalt, vecht het beperkte model tegen de gegevens.
Niet-stationariteit. Het standaardmodel gaat uit van stationariteit, en crypto is 24/7 maar niet uniform: liquiditeit, deelnemersmix en gebeurtenispercentage verschuiven allemaal gedurende de dag en rond de tijdstempels van de financiering. Een tijdsvariërende basislijn handelt dit af ten koste van meer parameters, en de bovenstaande gevoeligheid van het schattingsvenster is hoe je erachter komt of je het nodig hebt.
Samenvatting

Het Hawkes-proces is de machinerie om één reden waard: het brengt de clustering van de orderstroom samen in één enkel interpreteerbaar getal, de vertakkingsverhouding. , berekenbaar op basis van alleen tijdstempels, zonder reconstructie van het orderboek en zonder aannames over hefboomwerking of positionering. Dat maakt het de goedkoopste beschikbare schatting van hoe endogeen een markt momenteel is – dezelfde vraag liquidation cascades beantwoordt duur via .
De machinerie is eenvoudig: exponentiële kernels geven een waarschijnlijkheid via de recursie geeft EM een interpreteerbaar posterieur beeld van welke gebeurtenis dat heeft veroorzaakt, en herschaling van de tijd levert een echte goodness-of-fit-test op in plaats van een plausibiliteitsargument. Wat niet eenvoudig is, is vertrouwen op de output. Afrondingsafwijkingen bij tijdstempels in milliseconden precies omhoog tijdens bursts, uitwisseling van batching-afdrukken structuur die de kernel zal absorberen, en beweegt met zowel het veronderstelde verval als het schattingsvenster. Een vertakkingsratio gerapporteerd zonder deze vier gevoeligheden is een getal en geen meting.
Referenties en verder lezen
- Hawkes, AG (1971). "Spectra van enkele zelfopwindende en wederzijds opwindende puntprocessen." Biometrie, 58(1), 83-90.
- Bacry, E., Mastromatteo, I., en Muzy, J.-F. (2015). "Hawkes-processen in financiën." Marktmicrostructuur en liquiditeit.
- Shi, F., Broussard, J.P., en Booth, G.G. (2019). "Het modelleren van Flash Crash-gedrag op een aandelenmarkt met behulp van multivariate Hawkes-processen."
- Hardiman, S., Bercot, N., en Bouchaud, J.-P. (2013). "Kritische reflexiviteit op de financiële markten: een procesanalyse van Hawkes."
- Bacry, E., en Muzy, J.-F. (2014). "Hawkes model voor prijs en handelt in hoogfrequente dynamiek." Kwantitatieve financiën.
- Bompaire, M., Bacry, E., en Gaiffas, S. (2017). "vink aan: een Python-bibliotheek voor statistisch leren, met de nadruk op Hawkes-processen." JMLR.
- Filimonov, V., en Sornette, D. (2012). "Reflexiviteit op de financiële markten kwantificeren."
- Kumar, P. (2021). "Deep Hawkes-proces voor hoogfrequente marktvorming."
- vink bibliotheekdocumentatie aan: Hawkes-module.
- Morse, S. "Python-klasse voor Hawkes-processen." (Tutorial en code)
Auteurs
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.