Eugen Soloviov

Eugen Soloviov

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.

Articles

保真度關卡:由粗到細的回測會更快地愚弄你——除非廉價代理的排序方式與昂貴評估一致

保真度關卡:由粗到細的回測會更快地愚弄你——除非廉價代理的排序方式與昂貴評估一致

下鑽式/多保真度搜索(ASHA、逐次減半、Hyperband)以低成本方式篩選成千上萬個配置,只將存活者提升到昂貴的完整評估階段。這是一種真實的加速——但如果低保真度的排序與高保真度的排序不一致,它就會悄無聲息地崩潰。我們測量了折數-排序相關性:在只用一折時,Spearman ρ 可能低至 0.03(排序幾乎是隨機的),隨著折數累積,逐步升高到 0.43、0.67、0.78、0.91。修復方法是設定一道強制性關卡——先測量 ρ(廉價, 完整),並自動將最低保真度提升到 ρ ≥ 0.5 的第一個檔位。

隨機搜尋 vs 智慧搜尋:交叉點在評估成本,而非演算法本身

隨機搜尋 vs 智慧搜尋:交叉點在評估成本,而非演算法本身

當單次回測很便宜時,簡單的打亂 Sobol 序列在原始吞吐量上碾壓所有"智慧"取樣器——TPE、CMA-ES、ASHA 要繳納 Python ask/tell 稅,導致速度下降 20 倍,在相同牆鍾時間內評估的點數遠遠更少,因而落敗。讓每次評估變得昂貴(多時間框架 + walk-forward 折)之後,交叉點就翻轉了。我們測量了這兩種情形,以及為什麼摺疊排名保真度(ρ@1 從 0.03 升至 0.43)是剪枝能否奏效的前提條件。

雙軸參數空間:為什麼你的大部分參數掃描幾乎是免費的

雙軸參數空間:為什麼你的大部分參數掃描幾乎是免費的

並非所有參數的搜尋成本都相同。一個策略的參數會分裂為一條昂貴軸(指標——需要在整個序列上重新計算)和一條廉價軸(決策閾值——對預計算訊號做一次 O(n) 遍歷)。由於指標對閾值不變,你只需計算一次,就能以約 5,600 cfg/s 的速度掃描數千種閾值配置——比每種配置都重新計算大約便宜 1,600 倍。這是對維度災難的一次重新定價。

框架稅:當你的回測庫比手寫的 pandas 迴圈還慢

框架稅:當你的回測庫比手寫的 pandas 迴圈還慢

我們在同一個參數掃描任務上對八個回測引擎進行了基準測試——15萬根K線、80個HMA交叉組合、交易筆數嚴格鎖定在2707筆。兩個最受歡迎的事件驅動框架的速度居然比手寫的 pandas 迴圈還慢,而一個向量化/編譯型引擎完成同樣的工作快了約13000倍。這是一篇關於主流庫從未被設計用來攤銷的逐K線開銷的研究。

回測過擬合機率(PBO):你的搜尋跑贏拋硬幣了嗎?

回測過擬合機率(PBO):你的搜尋跑贏拋硬幣了嗎?

Deflated Sharpe Ratio 給獲勝策略定價;PBO 給挑出它的那次搜尋定價。組合對稱交叉驗證(Combinatorially Symmetric Cross-Validation)在一個 1000x200 的表現矩陣上跑 C(16,8) = 12,870 次訓練/測試切分,問的是:樣本內贏家會不會落入樣本外的後一半?幾乎每個人都會看錯的地方——PBO 的零假設值是 0.5,不是 1。在 200 個零優勢策略上,最佳樣本內年化夏普比率 1.98 在樣本外坍縮到 0.06,PBO = 0.476:如同拋硬幣,徹底過擬合。植入一個真實優勢(年化夏普比率 2.38),PBO 降到 0.001,樣本內的 3.73 在樣本外仍保住 2.34。在純隨機遊走上跑移動平均線網格,同樣沒有任何樣本外的技巧——60 個矩陣平均 PBO 0.463,在統計上和零假設無法區分——而在其中一個具有代表性的矩陣上,這場海市蜃樓十分鮮明:最佳樣本內夏普比率 2.33 坍縮到樣本外中位數 -0.22,PBO 0.573,63% 的機率會虧錢。

IPC 稅:把回測引擎放到 socket 背後會損失 13%——而這幾乎與 socket 無關

IPC 稅:把回測引擎放到 socket 背後會損失 13%——而這幾乎與 socket 無關

我們把一個 numba 回測核心逐行移植到 Rust,並以四種方式跨程序邊界呼叫它,用等價性校驗確認到最後一筆交易都完全一致的 PnL。把整條 1.2 MB 的價格序列通過 Unix socket 傳輸一次,成本約 2 毫秒——約佔整個任務耗時的 0.1%。對同一份資料做 JSON 編碼,成本是原始位元組的 1348 倍;健談式的逐組合呼叫把資料重複傳輸了 80 次;逐 bar 呼叫模式會在一個 2.0 秒的任務上白白付出 2.1 秒的純 IPC 開銷。邊界本身很便宜,稅出在你如何跨越它。

Deflated Sharpe Ratio:你回測裡的'贏家',有多少能扛過多重檢驗?

Deflated Sharpe Ratio:你回測裡的'贏家',有多少能扛過多重檢驗?

參數搜尋是一臺製造運氣的機器。在純噪聲上——1,000 個真實優勢為零的策略——最佳年化夏普比率平均達到 1.63,樸素顯著性檢驗 100% 的時候都會宣佈發現。我們構建受控的真實基準,證明 Deflated Sharpe Ratio、Harvey-Liu 折價法與 White's Reality Check 能夠恢復誠實:假髮現率從 1.000 降到 0.001-0.057,噪聲上限之上的真實優勢仍以接近 1 的功效被保留——還有一個真實的陷阱(相關網格),在那裡原始 DSR 會過度折損,其結論必須放在一整條有效試驗數估計的區間上通讀,而不是隻看一個數字。

目標函數設計:你最佳化的那個指標,正悄悄替你選好了策略

目標函數設計:你最佳化的那個指標,正悄悄替你選好了策略

要搜尋'最好'的策略,你必須先定義什麼是'最好'——而那個標量,會悄悄替你選出贏家。在帶有已知優勢的合成數據上(600 個種子,T=2000,80 個候選閾值),樸素的逐筆(per-trade)夏普比率會加冕一張彩票:它在 56% 的種子上選出曝光率低於 5% 的贏家,在 57% 的種子上發生退化——在最極端的那個種子上,8 筆交易的樣本內夏普比率高達 21.09,樣本外卻崩塌到 0.13。誠實的修復幾乎平淡無奇:在整條時間線上測量,它從不退化(樣本外 1.71)。交易筆數(conf_k)收縮與曝光率下限可以給逐筆指標打補丁,但即便完全修復,它們也只能追平整條時間線夏普比率(1.70 對 1.71)——永遠無法超過它。古德哈特定律,在回測裡,配上受控的真實基準。

前視偏差:一根 K 線的錯誤如何從純噪聲中憑空製造出 15 的夏普比率

前視偏差:一根 K 線的錯誤如何從純噪聲中憑空製造出 15 的夏普比率

一項對細微前視洩漏如何悄然抬高回測表現的受控研究。在完全沒有真實優勢的情況下,同 K 線成交從純噪聲中製造出 +14.8 的年化夏普比率;提前一根 K 線窺視指標則製造出 +4.8。本文給出完整分類、實測量級,以及在它耗費你真金白銀之前如何檢測每一種洩漏。

回測引擎速度階梯:筆記本 CPU 上 298 倍提速,PnL 精確到最後一筆交易

回測引擎速度階梯:筆記本 CPU 上 298 倍提速,PnL 精確到最後一筆交易

對同一個 80 組合參數掃描的五種實現,全部驗證產出完全相同的 PnL:pandas 的 rolling.apply 耗時 69.9 秒,numpy 3.1 秒,numba 2.0 秒,並行 numba 0.23 秒——在一臺 Apple M2 Max 上、硬體零改動,實測提速 298 倍,即便相對一個稱職的向量化基準也仍快約 13 倍。每一級階梯到底帶來了什麼、為什麼 GPU 不是那塊缺失的拼圖,以及海量參數搜尋中真正的瓶頸藏在哪裡。

researcher:面向人類與 AI 智慧體的可搜尋量化研究檔案庫

researcher:面向人類與 AI 智慧體的可搜尋量化研究檔案庫

我們如何構建 researcher.marketmaker.cc —— 一個統一的、支援全文搜尋的量化研究檔案庫(arXiv 論文、GitHub 倉庫、量化部落格、TradingView Pine 指令碼),人類可以瀏覽,AI 智慧體可以通過 MCP 查詢。

algo-investor-skills:用 Claude Code 技能打造經得起騙局質疑的投資人方案

algo-investor-skills:用 Claude Code 技能打造經得起騙局質疑的投資人方案

深入解讀 algo-investor-skills —— 一套 Claude Code 技能,能把一個演算法交易策略從原始的實測事實,一路打造成經過審計、以誠實為先的投資人方案。六個可組合的技能、一個金融模型引擎、一套獨立驗證的證明包,以及一道絕不編造任何數字的強制性懷疑型投資人審計關卡。