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
قرار maker-taker: مستويات الرسوم، الحسومات (rebates)، والتكلفة الحقيقية لعبور السبريد
الاختيار بين maker وtaker هو في جوهره صفقة adverse selection مرتدية جدول رسوم. حساب نقطة التعادل عبر نموذج Glosten-Milgrom، مستويات الرسوم الفعلية في الكريبتو وحسومات التوكن، تاريخ rebate mining، قيمة الحسم المرتبطة بموضع الطابور، ونمذجة الرسوم متعددة المستويات في backtest.
انزلاق التنفيذ (Implementation Shortfall) وتحليل تكلفة الصفقات الذاتي: قياس ما تكلفك عملية التنفيذ فعلًا
انزلاق التنفيذ وفق نموذج بيرولد تحول إلى خط أنابيب TCA عملي لبوتات العملات الرقمية: تفكيك سعر الوصول (arrival-price)، منحنيات markout عند t+1s/10s/60s، نحو 200 سطر من بايثون فوق تنفيذاتك الفعلية، وإعادة تغذية النتائج في نموذج التكلفة الخاص بالباكتست.
التصفيات على السلسلة: آليات Aave وCompound، وأعمال البوتات القائمة حولها
كيف تعمل تصفيات Aave v3 وCompound فعليا: رياضيات عامل الصحة، عوامل الإغلاق، مكافآت التصفية، محفزات أوراكل Chainlink، وما يلزم لتشغيل بوت تصفية بقروض فورية (flash loan) في 2026.
Uniswap v3 للكميين: السيولة المركزة ورياضيات الـ tick من المبادئ الأولى
كيف يعمل Uniswap v3 فعليا تحت الغطاء: الاحتياطيات الافتراضية، السيولة L، سعر sqrtPriceX96، رياضيات الـ tick، feeGrowthInside، ولماذا مركز LP هو عائد بيع تقلب. مع صيغ دقيقة ومثال رقمي محلول.
تشريح MEV: هجمات الساندويتش، الفرونت-رانينج، والغابة المظلمة في mempool
كل عملية swap ترسلها إلى RPC عام هي في الواقع أمر حدي مرئي للجميع وغير ملزم لأحد. تحليل تقني لكيفية عمل استخراج MEV: ترتيب mempool، رياضيات الساندويتش على Uniswap v2، مزادات PGA، Flashbots، ودفاعات المتداولين.
محاكاة التنفيذ: السلم من وهم سعر الإغلاق إلى واقع يراعي موقع الطابور
خمس درجات لدقة محاكاة التنفيذ — من التنفيذ عند سعر الإغلاق إلى نماذج احتمالية لموقع الطابور. التنفيذ الجزئي كآلة حالات، وحدود احتمال تنفيذ أوامر الحد كنطاق للربح والخسارة، وحلقة معايرة مقابل تنفيذات حية.
TWAP مقابل VWAP مقابل POV: اختيار معيار تنفيذ مرجعي (ومتى يخدعك كل منها)
TWAP وVWAP وPOV هي رهانات على توقّع حجم التداول. نشرّح الافتراضات الخفية لكل مجدول تنفيذ، ونبني منحنيات حجم داخل اليوم للعملات الرقمية، ونشغّل الخوارزميات الثلاث جنبًا إلى جنب على بيانات L2 معاد تشغيلها.
Almgren-Chriss بلا تهويل: التنفيذ الأمثل الذي يمكنك تطبيقه في فترة بعد الظهر
اشتقاق كامل لنموذج Almgren-Chriss للتنفيذ الأمثل: الأثر الخطي، مسار sinh/cosh، الحد الفعال، وكود Python عملي لمعايرة eta وgamma وsigma من بيانات دفتر الأوامر والصفقات في Binance.
النتيجة السلبية الصادقة: عشرات الآلاف من الـ Backtests، خمس عملات كبرى، ولا ميزة متينة
ذروة سلسلة البحث والـ overfitting، وتنتهي بنتيجة سلبية — وهي النتيجة الصحيحة. بحث ثنائي الإطار الزمني على رمز واحد (ETHUSDT) وجد إعدادا يساوي +16.35% خارج العينة (out-of-sample) و+2.62% على عينة محجوزة (holdout) لم تُمس؛ لكن الـ Deflated Sharpe Ratio، بعد احتساب ~37,000 محاولة، قلّصه إلى 0.00. تمريرة عبر عدة أدوات على خمس عملات كبرى (ETH/BTC/SOL/BNB/XRP، بنحو 1.18M شمعة دقيقة واحدة لكل منها)، مع الاختيار وفق الوسيط خارج العينة، تقضي عليه نهائيا: النسخة الثنائية DSR 0.24 / PBO 0.264، والثلاثية DSR 0.14 / PBO 0.327 — كلتاهما تفشلان في اجتياز البوابات. البطل مربح على رمز واحد من أصل 5 وسلبي على البقية. هذا هو الغرض من منظومة مكافحة الـ overfitting: أن تمنعك من شحن أفضل ما في الضجيج على أنه alpha.
إثبات غياب التحيز الاستباقي في اختبارات الأداء الخلفي متعددة الأطر الزمنية: عبث بالمستقبل لتثبت أن الماضي لا يستطيع رؤيته
اختبارات الأداء الخلفي متعددة الأطر الزمنية تسرّب المستقبل عبر شمعة الإطار الزمني الأعلى التي لا تزال قيد التكوين ولم يُغلق سعرها النهائي بعد. لا يمكنك أن تطمئن بمجرد مراجعة الكود — يجب أن تختبره. نعيد إنتاج قاعدة "الشمعة المغلقة" الخاصة بالبوت الحي بدقة تامة، ثم نثبت غياب التسرب عبر فحص إزاحة المستقبل: نعبث بكل شمعة مستقبلية ونتأكد أن كل إشارة وصفقة في الماضي تبقى بلا تغيير حرفي (bitwise). النتيجة: 25 من 25 فحص تطابق، والفحص فعّال حقًا.
متى تؤتي وحدة معالجة الرسوميات ثمارها: نموذج roofline لمسح المعلمات، حيث رقم العنوان 167x هو في الحقيقة 27x خوارزمية × 6.2x عتاد
تقدم وحدة معالجة الرسوميات (GPU) على المعالج المركزي ينمو مع حجم الدفعة — من 54.5x عند توليفة واحدة لكل استدعاء حتى 359.6x عند 61 على الحساب المسبق لمؤشراتنا متعددة الأطر الزمنية — لأن المسح الصغير لا يستطيع استهلاك نفقات إطلاق النواة والنقل. نُفكك رقم عنوان بقيمة 167x إلى فوز خوارزمي بمقدار 27x يفيد المعالج المركزي أيضاً وفوز عتادي بمقدار 6.2x، ونُظهر أن التقدم الحقيقي لوحدة معالجة الرسوميات على أفضل معالج مركزي هو 3.2x فقط على إطار زمني واحد و6.2x على أطر متعددة، ونقدم دليل قرار حول مدى الاتساع الذي يجب أن يبلغه المسح قبل أن يستحق شراء وحدة معالجة رسوميات.
فخ الدقة العددية لـ GPU: كيف يُعيد اختبار خلفي بصيغة fp32 على Apple Metal نتائج عشوائية بصمت
وحدة معالجة الرسومات Metal من Apple لا تدعم float64 إطلاقاً. عند نقل اختبار خلفي متجهي (vectorized) إليها بصورة ساذجة، فإن صيغة WMA المغرية القائمة على المجموع التراكمي (prefix-sum) تفيض في fp32 — بخطأ نسبي أقصى يبلغ 211× — ومع ذلك يستمر التنفيذ ويُعيد أرقاماً تبدو معقولة. الحل ليس مزيداً من الدقة، بل صيغة مختلفة: التفاف مباشر ذو نافذة (direct windowed convolution) آمن في fp32 حتى دقة 8×10⁻⁷ وأسرع بـ 55.9 مرة من numba أحادي الخيط. هذا المقال يشرح الفخ، والحساب الكامن وراءه، وكيف تُثبت أنك لم تقع فيه.