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.

บทความ

Deflated Sharpe Ratio: 'ผู้ชนะ' จาก Backtest ของคุณกี่ตัวที่รอดจาก Multiple Testing?

Deflated Sharpe Ratio: 'ผู้ชนะ' จาก Backtest ของคุณกี่ตัวที่รอดจาก Multiple Testing?

parameter search คือเครื่องจักรผลิตความโชคดี บน pure noise — กลยุทธ์ 1,000 ตัวที่ไม่มี edge จริงเลย — Sharpe ต่อปีที่ดีที่สุดเฉลี่ยอยู่ที่ 1.63 และ naive significance test ฟันธงว่าพบการค้นพบ 100% ของเวลา เราสร้าง ground truth ที่ควบคุมได้และแสดงให้เห็นว่า Deflated Sharpe Ratio, Harvey-Liu haircut และ White's Reality Check คืนความซื่อสัตย์กลับมา: false discovery ลดลงจาก 1.000 เหลือ 0.001-0.057, edge จริงที่อยู่เหนือ noise ceiling ถูกเก็บไว้ด้วย power ~1 — และกับดักจริงหนึ่งอย่าง (correlated grid) ที่ raw DSR over-deflate และคำตัดสินต้องอ่านข้าม band ทั้งหมดของ effective-trial estimator ไม่ใช่แค่ตัวเดียว

การออกแบบ Objective Function: ตัวชี้วัดที่คุณ Optimize แอบเลือกกลยุทธ์ให้คุณ

การออกแบบ Objective Function: ตัวชี้วัดที่คุณ Optimize แอบเลือกกลยุทธ์ให้คุณ

การจะค้นหากลยุทธ์ที่ 'ดีที่สุด' คุณต้องนิยาม 'ดีที่สุด' ก่อน — และตัวเลขสเกลาร์ตัวนั้นเป็นผู้เลือกผู้ชนะอย่างเงียบ ๆ บนข้อมูล synthetic ที่มี edge จริงที่รู้ค่า (600 seed, T=2000, 80 threshold) per-trade Sharpe แบบ naive สวมมงกุฎให้ lottery: มันเลือกผู้ชนะที่ exposure ต่ำกว่า 5% ใน 56% ของ seed และเสื่อมสภาพ (degenerate) ใน 57% — บน seed ที่ชัดเจนที่สุด มี 8 เทรดที่ทำ in-sample Sharpe ได้ 21.09 แล้วยุบลงเหลือ 0.13 นอก sample การแก้ไขที่ซื่อสัตย์นั้นเกือบจะน่าเบื่อ: วัดบน full timeline ซึ่งไม่เคยเสื่อมสภาพเลย (out-of-sample 1.71) trade-count shrinkage (conf_k) และ exposure floor สามารถซ่อมแซม per-trade metric ได้ แต่แม้จะซ่อมเต็มที่แล้วก็ยังแค่เท่ากับ full-timeline Sharpe (1.70 เทียบกับ 1.71) — ไม่เคยเอาชนะมันได้เลย กฎของ Goodhart ในบริบทของ backtest พร้อม ground truth ที่ควบคุมได้

Look-Ahead Bias: ความผิดพลาดเพียงหนึ่งแท่งเทียนสร้าง Sharpe 15 จาก Noise ล้วน ๆ ได้อย่างไร

Look-Ahead Bias: ความผิดพลาดเพียงหนึ่งแท่งเทียนสร้าง Sharpe 15 จาก Noise ล้วน ๆ ได้อย่างไร

การศึกษาแบบควบคุมเกี่ยวกับการรั่วไหลแบบ look-ahead ที่แอบเพิ่มผลลัพธ์ backtest อย่างเงียบ ๆ แม้ไม่มี edge จริงเลย การ fill บนแท่งเดียวกันก็สร้าง Sharpe ต่อปีที่ +14.8 จาก noise ล้วน ๆ ส่วนการแอบดู indicator ล่วงหน้าหนึ่งแท่งสร้าง +4.8 อนุกรมวิธานของการรั่วไหล ขนาดที่วัดได้จริง และวิธีตรวจจับแต่ละแบบก่อนที่มันจะทำให้คุณเสียเงิน

บันไดความเร็วของ Backtest Engine: 298x บน CPU แล็ปท็อป, PnL เหมือนเดิมทุกประการจนถึง Trade สุดท้าย

บันไดความเร็วของ Backtest Engine: 298x บน CPU แล็ปท็อป, PnL เหมือนเดิมทุกประการจนถึง Trade สุดท้าย

ห้า implementation ของ parameter sweep 80 combo ชุดเดียวกัน ทุกตัวตรวจสอบแล้วว่าให้ PnL เหมือนกันทุกประการ: pandas rolling.apply ใช้เวลา 69.9 วินาที, numpy 3.1, numba 2.0, parallel numba 0.23 — ความเร็วที่วัดได้จริงเพิ่มขึ้น 298x บน Apple M2 Max โดยไม่เปลี่ยนฮาร์ดแวร์เลย และยังเร็วกว่า baseline แบบ vectorized ที่ทำได้ดีอยู่แล้วประมาณ 13x แต่ละขั้นบันไดให้อะไรบ้าง ทำไม GPU ไม่ใช่ชิ้นส่วนที่ขาดหายไป และคอขวดที่แท้จริงของการค้นหาพารามิเตอร์จำนวนมากอยู่ที่ไหน

researcher: คลังงานวิจัยควอนต์ที่ค้นหาได้สำหรับมนุษย์และเอเจนต์ AI

researcher: คลังงานวิจัยควอนต์ที่ค้นหาได้สำหรับมนุษย์และเอเจนต์ AI

เราสร้าง researcher.marketmaker.cc ขึ้นมาอย่างไร — คลังงานวิจัยควอนต์แบบรวมศูนย์ที่ค้นหาด้วยข้อความเต็ม (เปเปอร์จาก arXiv, repo บน GitHub, บล็อกควอนต์, สคริปต์ Pine บน TradingView) ที่มนุษย์เปิดเรียกดูและเอเจนต์ AI สอบถามผ่าน MCP ได้

algo-investor-skills: ชุด Skills ของ Claude Code ที่สร้างข้อเสนอสำหรับนักลงทุนแบบกันการหลอกลวง

algo-investor-skills: ชุด Skills ของ Claude Code ที่สร้างข้อเสนอสำหรับนักลงทุนแบบกันการหลอกลวง

เจาะลึก algo-investor-skills — ชุด skills ของ Claude Code ที่พากลยุทธ์ algotrading จากข้อเท็จจริงที่วัดได้แบบดิบ ๆ ไปสู่ข้อเสนอสำหรับนักลงทุนที่ผ่านการตรวจสอบและซื่อสัตย์เป็นที่ตั้ง หกสกิลที่ประกอบกันได้ เอนจินโมเดลทางการเงิน ชุดหลักฐานสำหรับการตรวจสอบโดยอิสระ และด่านตรวจสอบโดยนักลงทุนขี้สงสัยที่บังคับใช้ ซึ่งไม่เคยกุตัวเลขขึ้นมาเอง

เกณฑ์เคลลี (Kelly criterion) สำหรับกลยุทธ์: เลือกขนาดโพซิชันและจัดสรรเงินทุนอย่างไร

เกณฑ์เคลลี (Kelly criterion) สำหรับกลยุทธ์: เลือกขนาดโพซิชันและจัดสรรเงินทุนอย่างไร

กลยุทธ์ที่มีค่าคาดหวังเป็นบวกก็ยังทำให้พอร์ตล้มละลายได้หากเลือกขนาดเดิมพันผิด เราเจาะลึกเกณฑ์เคลลีตั้งแต่การหาสูตรไปจนถึงพอร์ตของกลยุทธ์: ทำไม full Kelly จึงอันตราย ทำไม Kelly แบบเศษส่วนให้การเติบโต 75% ที่ความผันผวนเพียงครึ่งเดียว และเครื่องคิดเลขแบบโต้ตอบที่เห็นได้ชัดว่าสัดส่วนเคลลีเปลี่ยนผลตอบแทนและความเสี่ยงอย่างไร

การวิเคราะห์หุ้นรายวัน: ระบบ AI ที่เปลี่ยนรายการเฝ้าดูให้กลายเป็นแดชบอร์ดการตัดสินใจประจำวัน

การวิเคราะห์หุ้นรายวัน: ระบบ AI ที่เปลี่ยนรายการเฝ้าดูให้กลายเป็นแดชบอร์ดการตัดสินใจประจำวัน

เจาะลึก daily_stock_analysis โดย ZhuLinsen — ระบบโอเพนซอร์สที่ดึงข้อมูลตลาดครอบคลุมหุ้น A ฮ่องกง สหรัฐฯ และอื่น ๆ รันการวิเคราะห์เชิงเทคนิคและข่าวผ่าน LLM แล้วส่ง 'แดชบอร์ดการตัดสินใจ' ที่มีโครงสร้างไปยังแอปแชตของคุณในทุกวันทำการซื้อขาย สถาปัตยกรรม การสำรองข้อมูล กลยุทธ์ agent และข้อจำกัด

Temporal Fusion Transformer สำหรับการพยากรณ์พอร์ตการลงทุนแบบหลายช่วงเวลา

Temporal Fusion Transformer สำหรับการพยากรณ์พอร์ตการลงทุนแบบหลายช่วงเวลา

Temporal Fusion Transformer ของ Google นำการพยากรณ์แบบหลายช่วงเวลาที่ตีความได้มาสู่การจัดการพอร์ตการลงทุนเชิงปริมาณอย่างไร พร้อมการเลือกตัวแปรด้วยกลไก attention เอาต์พุตแบบควอนไทล์ และไปป์ไลน์ pytorch-forecasting ที่ลงมือทำจริง

Conformal Prediction สำหรับการกำหนดขนาดสถานะแบบตระหนักความเสี่ยง

Conformal Prediction สำหรับการกำหนดขนาดสถานะแบบตระหนักความเสี่ยง

ช่วงการพยากรณ์แบบ distribution-free ที่มีการรับประกัน coverage เราใช้ split conformal, jackknife+ และ adaptive conformal inference เพื่อปรับเทียบความเสี่ยงในการเทรดและกำหนดขนาดสถานะโดยไม่ต้องตั้งสมมติฐานแบบพารามิเตอร์

การสร้างแบบจำลองและการพยากรณ์สเปรด Bid-Ask ด้วย Machine Learning

การสร้างแบบจำลองและการพยากรณ์สเปรด Bid-Ask ด้วย Machine Learning

การแยกองค์ประกอบและพยากรณ์สเปรด bid-ask ด้วย ML — ตั้งแต่ตัวประมาณค่าโดยปริยายของ Roll ไปจนถึง gradient boosting และโครงข่ายประสาทเทียม — พร้อมกับดักเรื่องหน่วย การรั่วไหลของข้อมูล และการตั้งเกณฑ์เปรียบเทียบที่กัดกินคุณใน production

DeepLOB: การเรียนรู้เชิงลึกบนสมุดคำสั่งซื้อขายแบบจำกัดราคา

DeepLOB: การเรียนรู้เชิงลึกบนสมุดคำสั่งซื้อขายแบบจำกัดราคา

DeepLOB ผสาน CNN, โมดูล inception และ LSTM เข้าด้วยกันอย่างไรเพื่อทำนายการเคลื่อนไหวของราคากลางจากข้อมูลสมุดคำสั่งดิบ — สถาปัตยกรรม ตัวเลขจริงจาก FI-2010 และการสร้างใหม่ด้วย PyTorch ที่ใช้งานได้จริง