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.

บทความ

ความสัมพันธ์ของสัญญาณ: ต้องติดตามกี่คู่เหรียญ

ความสัมพันธ์ของสัญญาณ: ต้องติดตามกี่คู่เหรียญ

ทำไม 10 คู่คริปโตถึงไม่ให้การกระจายความเสี่ยง 10 เท่า วิธีคำนวณ effective_N ผ่าน correlation_factor และต้องติดตามกี่คู่เพื่อให้ orchestrator slot ถูกใช้งาน 80-90%

Polars vs Pandas สำหรับ Algotrading: ผลการทดสอบด้วยข้อมูลจริง

Polars vs Pandas สำหรับ Algotrading: ผลการทดสอบด้วยข้อมูลจริง

การเปรียบเทียบ Polars และ Pandas อย่างละเอียดในงาน algotrading: การทดสอบประสิทธิภาพสำหรับการกรอง การรวมข้อมูล การคำนวณสัญญาณ rolling, I/O และการใช้หน่วยความจำ สถาปัตยกรรม Polars + Numba แบบไฮบริดเพื่อประสิทธิภาพสูงสุดในการ backtest

การวิเคราะห์ Plateau: วิธีแยกแยะจุดที่เหมาะสมที่แข็งแกร่งออกจาก Overfitting

การวิเคราะห์ Plateau: วิธีแยกแยะจุดที่เหมาะสมที่แข็งแกร่งออกจาก Overfitting

เหตุใดการค้นหาพารามิเตอร์ที่ดีที่สุดของกลยุทธ์จึงเป็นเพียงครึ่งหนึ่งของงาน วิธีแยกแยะ plateau ที่เสถียรออกจากยอดแหลมที่เปราะบางทั้งในเชิงภาพและเชิงปริมาณ และเหตุใด contour plot ของ Optuna จึงเป็นขั้นตอนบังคับก่อนนำกลยุทธ์ที่ผ่านการปรับแต่งไปใช้งานจริง

Coordinate Descent กับ Bayesian Optimization: วิธีไหนหาพารามิเตอร์ที่ดีกว่ากัน

Coordinate Descent กับ Bayesian Optimization: วิธีไหนหาพารามิเตอร์ที่ดีกว่ากัน

ทำไมการค้นหาแบบครอบคลุมจึงเป็นไปไม่ได้สำหรับพารามิเตอร์ 12+ ตัว, coordinate descent พลาดปฏิสัมพันธ์ระหว่างพารามิเตอร์อย่างไร, และ Optuna พร้อม TPE sampler หาได้ใน 500 รอบสิ่งที่ OAT ไม่สามารถหาได้ใน 96 รอบ พร้อมตัวอย่างโค้ดที่ใช้งานได้จริง, การเปรียบเทียบ sampler, และการปรับแต่งแบบหลายวัตถุประสงค์

Multi-Symbol Validation: ทดสอบกลยุทธ์ของคุณกับทุกคู่เทรด

Multi-Symbol Validation: ทดสอบกลยุทธ์ของคุณกับทุกคู่เทรด

ทำไมกลยุทธ์ที่ปรับแต่งบน ETHUSDT ถึงอาจล้มเหลวกับ altcoin อื่น วิธีทดสอบอย่างถูกต้องข้ามกลุ่มคู่เทรด (blue chips, large caps, shitcoins) และระดับคะแนนความทนทานข้ามสัญลักษณ์ที่ถือว่าเพียงพอ

Funding Rate ทำลาย Leverage ของคุณ: ทำไม PnL×50x ถึงเป็นแค่ภาพลวงตา

Funding Rate ทำลาย Leverage ของคุณ: ทำไม PnL×50x ถึงเป็นแค่ภาพลวงตา

Funding rate บน Binance/Bybit เปลี่ยนผลลัพธ์ backtest leverage สูงที่สวยงามให้กลายเป็นขาดทุนแน่นอนได้อย่างไร สูตรคำนวณ การคำนวณใหม่ของกลยุทธ์จริง และ leverage สูงสุดที่ funding ไม่กัดกินกำไร

Cascade Strategies: การดำเนินการแบบมีลำดับความสำคัญพร้อม Fallback Filling

Cascade Strategies: การดำเนินการแบบมีลำดับความสำคัญพร้อม Fallback Filling

บทสรุปของซีรีส์ 'Backtests Without Illusions' วิธีสร้าง orchestrator จาก N กลยุทธ์ x M คู่เทรด, การใช้ cascade mode ที่มีลำดับความสำคัญและ fallback filling, การเลือก dual_size, และเหตุใดพอร์ตโฟลิโอกลยุทธ์จึงไม่สามารถ backtest ได้โดยการรวม PnL

Backtest-live parity: ทำไมบอทของคุณถึงเทรดต่างจาก Backtest

Backtest-live parity: ทำไมบอทของคุณถึงเทรดต่างจาก Backtest

อนุกรมวิธานฉบับสมบูรณ์ของความแตกต่างระหว่างการ Backtesting และการเทรดสด: ตั้งแต่ Slippage และการเติมคำสั่งบางส่วน ไปจนถึงการขาดประสานของ Codebase รูปแบบสถาปัตยกรรมเพื่อบรรลุ Parity ตัวอย่าง Python ของโมดูลแกนร่วม และ Checklist การตรวจสอบในโปรดักชัน

Monte Carlo Bootstrap: วิธีรับช่วงความเชื่อมั่นสำหรับ Backtest ใน 10 บรรทัดของโค้ด

Monte Carlo Bootstrap: วิธีรับช่วงความเชื่อมั่นสำหรับ Backtest ใน 10 บรรทัดของโค้ด

เหตุใดการประมาณค่าจุดเดียวจาก backtest จึงเป็นภาพลวงตาที่อันตราย Monte Carlo bootstrap ใช้เวลาคำนวณ 2 วินาที ให้ช่วงความเชื่อมั่น 95% สำหรับ PnL และ MaxDD และเหตุใดขั้นตอนนี้จึงเป็นสิ่งบังคับก่อนนำกลยุทธ์ไปใช้งานจริง

อาร์บิทราจ Funding Rate ข้ามกระดาน: วิธีทำกำไรจากความแตกต่างของอัตรา

อาร์บิทราจ Funding Rate ข้ามกระดาน: วิธีทำกำไรจากความแตกต่างของอัตรา

การทำงานของอาร์บิทราจ Funding Rate ข้ามกระดาน crypto ว่าทำไมอัตราจึงแตกต่างกันบน Binance, Bybit, OKX และ dYdX และวิธีสร้างระบบติดตามและดำเนินการเพื่อดึงกำไรจากความแตกต่างเหล่านี้

QuestDB สำหรับการซื้อขายแบบอัลกอริทึม: ส่วนขยาย SQL ที่เปลี่ยนกฎของเกม

QuestDB สำหรับการซื้อขายแบบอัลกอริทึม: ส่วนขยาย SQL ที่เปลี่ยนกฎของเกม

เจาะลึก SQL extensions ของ QuestDB สำหรับ time-series: SAMPLE BY, ASOF JOIN, HORIZON JOIN, WINDOW JOIN, LATEST ON และรูปแบบ query สำหรับการซื้อขายจริง

QuestDB สำหรับการเทรดแบบอัลกอริทึม: จาก Order Book สู่สถาปัตยกรรมระดับ Production

QuestDB สำหรับการเทรดแบบอัลกอริทึม: จาก Order Book สู่สถาปัตยกรรมระดับ Production

Materialized views, การวิเคราะห์ order book ด้วย 2D array และสถาปัตยกรรมอ้างอิงสำหรับแพลตฟอร์มการเทรดแบบอัลกอริทึมที่ขับเคลื่อนด้วย QuestDB