Insights & News

Blog

Deep dives into AI trading, market analysis, and the future of DeFi.

Browse collections →
Filter by tag:
July 2, 2026
#Algo-Trading

Die Framework-Steuer: Wenn deine Backtest-Bibliothek langsamer ist als eine naive Pandas-Schleife

Wir haben acht Backtest-Engines auf einem einzigen identischen Parameter-Sweep gemessen — 150k Bars, 80 HMA-Cross-Kombinationen, mit auf 2707 fixierter Trade-Anzahl-Parität. Zwei der beliebtesten ereignisgesteuerten Frameworks liefen langsamer als eine handgeschriebene Pandas-Schleife, während eine vektorisierte/kompilierte Engine dieselbe Arbeit rund 13.000× schneller erledigte. Eine Untersuchung des Overheads pro Bar, den beliebte Bibliotheken nie amortisieren sollten.

#Algo-Trading#Backtest#Performance
Read Article →
July 1, 2026
#algotrading

Die Probability of Backtest Overfitting: Hat Ihre Suche einen Münzwurf geschlagen?

Der Deflated Sharpe Ratio bewertet die Gewinnerstrategie; PBO bewertet die Suche, die sie ausgewählt hat. Combinatorially Symmetric Cross-Validation führt C(16,8) = 12.870 Train/Test-Splits über eine 1000x200-Performance-Matrix durch und fragt: landet der In-Sample-Gewinner Out-of-Sample in der unteren Hälfte? Die Falle, die fast jeder übersieht — der Nullwert von PBO ist 0.5, nicht 1. Bei 200 Strategien ohne Edge bricht der beste In-Sample-annualisierte Sharpe von 1.98 Out-of-Sample auf 0.06 ein, und PBO = 0.476: ein Münzwurf, vollständig überangepasst. Pflanzen Sie einen echten Edge (annualisierter Sharpe 2.38), fällt PBO auf 0.001, und der In-Sample-Wert 3.73 übersteht Out-of-Sample als 2.34. Ein Moving-Average-Raster auf einem reinen Random Walk hat ebenfalls kein Out-of-Sample-Können — PBO 0.463 gemittelt über 60 Matrizen, statistisch nicht vom Nullwert unterscheidbar — und an einer repräsentativen Matrix ist die Illusion deutlich sichtbar: ein bester In-Sample-Sharpe von 2.33 bricht auf einen medianen Out-of-Sample-Wert von -0.22 ein, PBO 0.573, eine 63%ige Verlustwahrscheinlichkeit.

#algotrading#backtest#overfitting
Read Article →
June 30, 2026
#algotrading

Die IPC-Steuer: Die Backtest-Engine hinter einen Socket stellen und 13% verlieren — fast nichts davon geht auf den Socket

Wir haben einen numba-Backtest-Kernel Zeile für Zeile nach Rust portiert und ihn auf vier Arten über eine Prozessgrenze hinweg aufgerufen, mit einem Äquivalenz-Gate, das identisches PnL bis zum letzten Trade bestätigt. Das Versenden der gesamten 1,2-MB-Preisreihe über einen Unix-Socket kostet ~2 ms — etwa 0,1% des Jobs. JSON-Kodierung derselben Payload kostet 1348x mehr als rohe Bytes, geschwätzige Aufrufe pro Kombination verschicken die Daten 80 Mal erneut, und ein Aufrufmuster pro Bar würde 2,1 s reine IPC bei einem 2,0-s-Job kosten. Die Grenze ist billig; die Steuer liegt darin, wie man sie überquert.

#algotrading#backtest#performance
Read Article →
June 29, 2026
#algotrading

Der Deflated Sharpe Ratio: Wie viele Ihrer Backtest-'Gewinner' überleben Multiple Testing?

Eine Parametersuche ist eine Maschine zur Herstellung von Glück. Auf reinem Rauschen — 1.000 Strategien ohne echten Edge — liegt der beste annualisierte Sharpe im Schnitt bei 1,63, und der naive Signifikanztest meldet in 100 % der Fälle eine Entdeckung. Wir bauen eine kontrollierte Ground Truth und zeigen, dass der Deflated Sharpe Ratio, der Harvey-Liu-Haircut und White's Reality Check Ehrlichkeit wiederherstellen: Falschentdeckungen sinken von 1,000 auf 0,001-0,057, echte Edges oberhalb der Rausch-Obergrenze werden mit einer Power von ~1 erkannt — und es gibt eine echte Falle (korrelierte Grids), bei der der rohe DSR über-deflatiert und das Urteil über ein ganzes Band von Schätzungen der effektiven Trials gelesen werden muss, nicht über eine einzige Zahl.

#algotrading#backtest#overfitting
Read Article →
June 28, 2026
#algotrading

Design der Zielfunktion: Die Metrik, die Sie optimieren, wählt heimlich Ihre Strategie

Um die 'beste' Strategie zu suchen, müssen Sie zuerst 'beste' definieren — und dieser Skalar wählt still den Gewinner. Auf synthetischen Daten mit bekanntem Edge (600 Seeds, T=2000, 80 Schwellenwerte) krönt ein naiver Per-Trade-Sharpe eine Lotterie: Er wählt in 56% der Seeds einen Gewinner mit unter 5% Exposure und entartet in 57% — beim extremsten Seed liefern 8 Trades einen In-Sample-Sharpe von 21.09, der Out-of-Sample auf 0.13 zusammenbricht. Die ehrliche Reparatur ist fast langweilig: Messung über die gesamte Zeitreihe, die nie entartet (Out-of-Sample 1.71). Ein Trade-Count-Shrinkage (conf_k) und ein Exposure-Floor können eine Per-Trade-Metrik nachrüsten, aber selbst vollständig repariert erreichen sie nur den vollständigen Zeitreihen-Sharpe (1.70 vs. 1.71) — nie darüber hinaus. Goodharts Gesetz, in einem Backtest, mit kontrollierter Ground Truth.

#algotrading#backtest#overfitting
Read Article →
June 27, 2026
#algotrading

Look-Ahead Bias: Wie ein Ein-Balken-Fehler aus reinem Rauschen eine Sharpe Ratio von 15 fabriziert

Eine kontrollierte Studie der subtilen Look-Ahead-Lecks, die Backtests still und leise aufblähen. Ohne jeden realen Edge fabriziert eine Ausführung im selben Balken eine annualisierte Sharpe Ratio von +14,8 aus purem Rauschen; ein Ein-Balken-Blick eines Indikators in die Zukunft, +4,8. Die Taxonomie, die gemessenen Größenordnungen und wie man jedes Leck erkennt, bevor es Sie Geld kostet.

#algotrading#backtest#look-ahead bias
Read Article →
June 26, 2026
#algotrading

Die Backtest-Geschwindigkeitsleiter: 298x auf einer Laptop-CPU, identischer PnL bis zum letzten Trade

Fünf Implementierungen desselben Parameter-Sweeps über 80 Kombinationen, alle nachweislich mit identischem PnL: pandas rolling.apply braucht 69,9 Sekunden, numpy 3,1, numba 2,0, paralleles numba 0,23 — eine gemessene 298-fache Beschleunigung auf einem Apple M2 Max ohne jede Hardware-Änderung und immer noch ~13x gegenüber einer soliden vektorisierten Basislinie. Was jede Stufe bringt, warum eine GPU nicht das fehlende Teil ist und wo der eigentliche Engpass der massenhaften Parametersuche liegt.

#algotrading#backtest#performance
Read Article →