رفتن به محتوا
همه راهبردها

استراتژی‌ها

تحدب روندِ اختیار معاملۀ بلند تک‌پایۀ ماهانۀ Deribit BTC (با شرط ارزان‌بودن IV، جهت‌دار در هر دو سو)

نتیجه: رهاشده

BtcDeribitMonthlyLongOptionTrendConvexityCheapIV

خلاصه نتیجه

BtcDeribitMonthlyLongOptionTrendConvexityCheapIV وارونه‌ی عمدی long-vega و directional پایپ‌لاین در برابر کتاب‌های short-vol و غیرdirectional آپشن بود؛ با خرید یک call یا put تکی OTM، یک دید trend BTC به یک ساختار convex با ریسک تعریف‌شده تبدیل می‌شد، و مانع‌های اجرای چندلپی و sandbox لایه-3 که خواهران را متوقف کرده بودند، به‌راحتی رد شدند. اما بک‌تست فقط 9 معامله تولید کرد زیرا زنجیره ماهانه Deribit BTC در کاتالوگ فقط حدود 12 سررسید از اواسط-2025 پوشش می‌دهد، و موتور معیارها را غیرقابل‌اعتماد تشخیص داد — شارپ 3.43 روی بازه اطمینانی از -13 تا +11 قرار داشت، و کل بازده خالص از یک ماه فوریه 2026 حاصل شده بود. بازبین‌کننده حکم revise_hypothesis داد و خاطرنشان کرد این دومین عبور با نتیجه 9 معامله‌ای یکسان بود و هیچ تغییر کدی نمی‌تواند دوره‌های ماهانه به یک زنجیره کم‌عمق اضافه کند. تز convexity هرگز رد نشد؛ به‌سادگی نمی‌توانست روی تاریخچه آپشن موجود آزموده شود، و استراتژی به‌جای تکرار به دیوار مشابه برای بار سوم، رها شد.

فرضیه

دید trend BTC را از طریق یک لگ SINGLE آپشن بلند به‌جای perp بیان کنید، و ساختار trend-following را به یک ساختار convex با ریسک تعریف‌شده تبدیل کنید. وقتی BTC در رژیم صعودی تأییدشده است AND vol ضمنی ارزان است، یک 5% OTM ماهانه CALL روی Deribit بخرید؛ وقتی در رژیم نزولی تأییدشده است AND IV ارزان است، یک 5% OTM ماهانه PUT بخرید. بدون لگ hedge، بدون مارجین short — حداکثر زیان همان پرمیوم پرداخت‌شده است. این وارونه‌ی عمدی نوشتن put نقدی‌تأمین‌شده short-vol و straddle بلند غیرdirectional موجود در پایپ‌لاین است: اینجا……نمایش بیشترنمایش کمتر

دید trend BTC را از طریق یک لگ SINGLE آپشن بلند به‌جای perp بیان کنید، و ساختار trend-following را به یک ساختار convex با ریسک تعریف‌شده تبدیل کنید. وقتی BTC در رژیم صعودی تأییدشده است AND vol ضمنی ارزان است، یک 5% OTM ماهانه CALL روی Deribit بخرید؛ وقتی در رژیم نزولی تأییدشده است AND IV ارزان است، یک 5% OTM ماهانه PUT بخرید. بدون لگ hedge، بدون مارجین short — حداکثر زیان همان پرمیوم پرداخت‌شده است. این وارونه‌ی عمدی نوشتن put نقدی‌تأمین‌شده short-vol و straddle بلند غیرdirectional موجود در پایپ‌لاین است: اینجا ما LONG vega + LONG direction هستیم و دم راست/چپ چاق بازده‌های BTC را برداشت می‌کنیم که trend-followerهای perp نمی‌توانند به آن دسترسی پیدا کنند زیرا کشیدن کارمزد و whip-saw استاپ آن‌ها را تخلیه می‌کند. لگ تکی آن را از مسیر اجرای آپشن چندلپی که هرگز تأیید نشده دور نگه می‌دارد (L2). Deribit BTC نقدشونده‌ترین بازار آپشن کریپتو است، greeks/IV در کاتالوگ دارد، و ساختارهای تکی Deribit BTC قبلاً sandbox لایه-3 را پاکسازی کرده‌اند (straddle بلند و CSP هر دو به backtest_review رسیدند)، بنابراین داده و اجرایی de-risk شده‌اند. همزمان دو bucket کم‌نمایندگی‌ترین را پر می‌کند: venue آپشن (~5% در مقابل 15% هدف) و direction long_short (15% در مقابل هدف)، با افق میانی‌تا‌بلند و فقط 4 پارامتر.

اصلاح تکرار 3 برای پایان مهلت ساعت دیواری Layer-3 (بیش از 300 ثانیه). همۀ منطق سیگنال پیش‌تر لایه‌های 1 و 2 را گذرانده بود، بنابراین اصلاح صرفاً به هزینۀ هر میله‌ای محدود است که بازخورد به آن اشاره کرد. علت ریشه‌ای: _realized_vol_cheap() انحراف معیار غلتان را با حلقۀ for پایتون روی کل تاریخچۀ قیمت پایانی (`for i in range(n): rolls[i] = rets[i:i+w].std()`) محاسبه می‌کرد — O(n·w) در هر فراخوانی؛ این کار در هر میله‌ای که تاریخچۀ DVOL کم‌عمق است به‌عنوان جایگزین ارزانِ IV اجرا می‌شود (یعنی تمام بخش ابتدایی/دارای شکاف……نمایش بیشترنمایش کمتر

اصلاح تکرار 3 برای پایان مهلت ساعت دیواری Layer-3 (بیش از 300 ثانیه). همۀ منطق سیگنال پیش‌تر لایه‌های 1 و 2 را گذرانده بود، بنابراین اصلاح صرفاً به هزینۀ هر میله‌ای محدود است که بازخورد به آن اشاره کرد. علت ریشه‌ای: _realized_vol_cheap() انحراف معیار غلتان را با حلقۀ for پایتون روی کل تاریخچۀ قیمت پایانی (`for i in range(n): rolls[i] = rets[i:i+w].std()`) محاسبه می‌کرد — O(n·w) در هر فراخوانی؛ این کار در هر میله‌ای که تاریخچۀ DVOL کم‌عمق است به‌عنوان جایگزین ارزانِ IV اجرا می‌شود (یعنی تمام بخش ابتدایی/دارای شکاف بک‌تست)، دقیقاً همان الگوی «ساخت دوبارۀ فهرست درون on_bar در هر میله» که تشخیص توصیف می‌کند. اصلاح: (1) آن حلقه را با انحراف معیار غلتانِ مجموع تجمعیِ کاملاً برداری‌شده جایگزین کنید (انحراف معیار جامعه، ddof=0 — همان مقدار پیش‌فرض np.std)، تا محاسبۀ جایگزین O(n) و بدون حلقۀ پایتون باشد؛ (2) حکم ارزانِ IV را برای هر مُهر زمانی میله ذخیره کنید (_iv_cheap_ts/_iv_cheap_val) تا فراخوانی‌های تکراری در اسکن دوره/پایهٔ همان میله O(1) باشند؛ مسیر DVOL از قبل با np.searchsorted برابر O(log n) بود و دست‌نخورده می‌ماند. هیچ تغییری در importها، ساختار کلاس، منطق رژیم، منطق رول یا شرط‌های ورود/خروج ایجاد نشد — بنابراین لایه‌های 1 و 2 پسرفت نمی‌کنند. برای اطمینان بیشتر در برابر حجم میله‌های پایه (همان حالت خرابی‌ای که به راهبردهای اختیار غلتان برخورد کرد)، پیکربندی، پایۀ اصلی perp یعنی AND، پایۀ rolling_options یعنی `timeframe` را روی 1-DAY ثابت می‌کند (گسترش‌دهنده پایه‌ها را به‌طور پیش‌فرض روی 1-HOUR می‌گذارد که باعث انفجار تعداد میله‌های پایۀ 6-24x می‌شود) و lookback_days را به 365 (حدود 12 دورۀ ماهانه) محدود می‌کند.

پیاده‌سازی

راهبرد BTC تک‌پایۀ اختیار معاملۀ بلندِ روند-تحدب روی Deribit MONTHLY، با شرط ارزان‌بودن IV و جهت‌دار در هر دو سو. پایۀ اصلی BTC-PERPETUAL.DERIBIT (1-DAY) زمان‌بندی رول را تعیین می‌کند و سری قیمت پایانی روزانه را فراهم می‌آورد؛ پایه‌های قابل‌معامله، قراردادهای اختیار خرید و فروش ماهانۀ حل‌شده با قیمت حدود 5% OTM هستند. وقتی BTC در رژیم صعودیِ تأییدشده است (قیمت بالاتر از 50 SMAروزهٔ رو به بالا) و نوسان ضمنی AND ارزان است (صدک DVOL <= 0.40، با جایگزین صدک نوسان تحقق‌یافته)، یک اختیار OTM ماهانۀ CALL می‌خرد؛ در رژیم نزولیِ تأییدشده AND و با ارزان‌بودن IV، یک اختیار OTM ماهانۀ PUT می‌خرد. حداکثر یک پایۀ بلند برای هر سررسید ماهانه، با رول به سررسید بعدی 5 DTE پیش از سررسید و خروج زودهنگام در صورت تغییر رژیم برخلاف پایه یا فعال‌شدن حد توقف فاجعۀ پریمیوم -70%. وگای بلند + جهت‌گیری بلند، حداکثر زیان = پریمیوم پرداخت‌شده، بدون پایۀ فروش استقراضی/پوشش ریسک.

نتایج تأیید

راستی‌آزمایی ناموفق بود (Layer 3 — بک‌تست سندباکس): آزمون دود بیش از محدودۀ زمانی 300 ثانیه طول کشید. تقریباً همیشه علت، کاری در هر میله است که با تاریخچه مقیاس می‌گیرد — برای مثال، اسکن دوبارۀ کل سری تأمین مالی/تکمیلی، یا ساخت دوبارۀ فهرست و فراخوانی min()/sorted() درون calculate_signal()/on_bar() در هر میله. آرایه‌های مُهر زمانیِ مرتب‌شده را در __init__ از پیش محاسبه کنید (ONCE) و از bisect استفاده کنید، یا جست‌وجوها را با کلید مُهر زمانی ذخیره کنید تا هزینۀ هر میله O(log n) باشد، نه O(n).

تحلیل‌گر: total_trades را در کل بازۀ زمانی تأیید کنید؛ برنامۀ اختیار معاملۀ بلند ماهانه با دو شرط ممکن است برای صدور حکمی قابل‌اتکا معاملات بسیار کمی ایجاد کند. برای انباشت سررسیدهای بیشتر، گسترش lookback_days به بیش از 365 را در نظر بگیرید.

تعداد معاملات پایین / توان آماری کم. سررسید ماهانه (dte 30) روی بازه نگاه‌به‌عقب زنجیره آپشن 365 روزه (~12 سررسید)، با فیلتر بیشتر توسط BOTH گیت رژیم trend تأییدشده AND گیت ارزانی IV، بنابراین در واقعیت بسیار کمتر از 10 لگ بلند در پنجره باز می‌شود (sandbox 9 مجموع تولید کرد). این بسیار پایین‌تر از آستانه ~100 معامله‌ای برای جداسازی تمیز edge از نویز است، و شارپ CI (-13.1، 11.1]، PSR 0.77) تأیید می‌کند که تخمین اطمینان پایینی دارد. ذاتی یک برنامه آپشن ماهانه دوگیته است، بنابراین این یک ملاحظه برای تحلیل‌گر است نه یک نقص کد، اما هیچ شارپ/PF از این استراتژی بدون پنجره بسیار بلندتر قابل‌اعتماد نیست.

بررسی کنید BacktestRunner._apply_fees ابزارهای اختیار معاملۀ DERIBIT را پوشش می‌دهد؛ پیش از اعتماد به avg_trade_return_pct، وجود کمیسیون غیرصفر را در کل بک‌تست تأیید کنید.

سندباکس در 9 معاملۀ اختیار معامله، total_commission=0.0001 (تقریباً صفر) گزارش می‌کند. کارمزد اختیار معاملۀ Deribit (‏0.03% از دارایی پایه برای هر قرارداد، با سقف 12.5% از پریمیوم) برای اختیارهای LONG که پریمیوم می‌پردازند و هنگام بازکردن و بستن موقعیت کارمزد دارند، قابل‌توجه است. نتیجۀ کمیسیون نزدیک به صفر نشان می‌دهد ممکن است کارمزد اختیار معامله برای پایه‌های تزریق‌شدۀ ابزار مدل‌سازی نشده باشد؛ این موضوع بازده خالص دفتر اختیار معاملۀ بلندِ پریمیوم‌پرداز را بیش از واقع نشان می‌دهد. نگرانی مربوط به موتور بک‌تست/کارمزد است، نه نقص کد راهبرد.

وقتی نه DVOL و نه RV قابل‌اندازه‌گیری نیست، مقدار پیش‌فرض را False (رد ورود) بگذارید تا هر ورود واقعاً شرط ارزان‌بودن IV را برآورده کند؛ یا با گزارش‌ها تأیید کنید که تحت جایگزین سهل‌گیرانه هیچ ورودی انجام نشده است.

گیت ارزانی IV زمانی PERMISSIVE است که هیچ‌کدام از معیارهای vol در دسترس نیستند: اگر تاریخچه DVOL کم‌عمق باشد (< min_iv_samples) AND جایگزین realized-vol قابل‌محاسبه نیست، _iv_cheap مقدار True برمی‌گرداند، بنابراین ورود می‌تواند بدون WITHOUT شرط ارزانی IV تأییدشده انجام شود. فرضیه ارزانی IV را یک conjunct الزامی می‌داند ('رژیم تأییدشده AND IV ارزان است'). برای BTC Deribit DVOL این پنجره به‌سرعت پر می‌شود بنابراین تأثیر به بخش اولیه/گپی بک‌تست محدود است، اما هر معامله‌ای که در آن ناحیه گرفته شود فقط رژیمی است، نه رژیم-AND-ارزانی-IV طبق مشخصات.

تحلیل‌گر: پرداخت پرمیوم هر معامله به‌عنوان کسری از ارزش‌ویژه را تأیید کنید معقول است (آپشن‌های بلند با ریسک تعریف‌شده باید درصد کمی در هر معامله ریسک کنند)؛ اگر قرارداد 1 نسبت به ارزش‌ویژه بزرگ است، به سایزینگ بودجه پرمیوم (risk_frac) تغییر دهید.

avg_position_pct=93.6% در sandbox. سایزینگ یک قرارداد ثابت 1 در هر ورود از طریق _leg_size به‌ارث‌رسیده (contracts=1.0) است. برای آپشن بلند ریسک واقعی پرمیوم پرداخت‌شده است (ریسک تعریف‌شده، و استاپ -70% آن را محدودتر می‌کند)، بنابراین position_pct گزارش‌شده بالا احتمالاً منعکس‌کننده ارزش‌گذاری آپشن NOTIONAL توسط موتور (contracts × دارایی پایه) به‌جای پرمیوم در ریسک است. ارزش تأیید دارد که سایز ثابت 1 قراردادی باعث تمرکز بیش‌ازحد دفتر در ارزش‌ویژه پایین یا پرداخت پرمیوم غیرمحتمل بزرگ نسبت به ارزش‌ویژه در بک‌تست کامل نشود.

بررسی بک‌تست

شارپ
3٫43
بازده کل
10٫15%
حداکثر افت سرمایه
9٫79%
کل معاملات
9
نرخ برد
44٫4%
ضریب سود
1٫86

سازوکار درست است و راستی‌آزمایی را می‌گذراند: یک پایۀ اختیار معاملۀ بلند، بیانی محدب و دارای ریسک مشخص از دیدگاه روند است و مسیر اجرای چندپایه‌ای ندارد.

دو دستۀ کم‌نماینده‌تر را پوشش می‌دهد (محل معاملۀ اختیار + جهت‌گیری long_short).

در جاهایی که معامله می‌کند، تحدب هر معامله مطلوب به نظر می‌رسد (PF 1.86، چولگی مثبت 1.55، فقط max_dd 9.8%).

در کل تاریخچۀ موجود اختیار معامله فقط 9 معامله انجام شده است؛ موتور metrics_reliable=false را اعلام می‌کند.

تمام بازده خالص حاصل یک ماه پرت است (2026-02 +14.3%)؛ سایر ماه‌های 8 تقریباً یکدیگر را خنثی می‌کنند.

sharpe_ci_low = -13.1 — شارپ CI اطراف 0 نوسان می‌کند؛ deflated_sharpe قابل‌محاسبه نیست. معیارها آماراً بی‌معنی هستند.

زنجیرۀ اختیار معاملۀ ماهانۀ Deribit BTC در کاتالوگ فقط حدود 12 سررسید را پوشش می‌دهد (2025-07 به بعد)؛ lookback_days=365 از قبل آن را پوشش می‌دهد — هیچ تغییری از سوی توسعه‌دهنده نمی‌تواند دوره‌های ماهانه اضافه کند.

این دومین اجرا با نتیجۀ یکسانِ 9 معامله است؛ تکرار دوباره روی همان دیوار داده یعنی دست‌وپا زدن بی‌حاصل.

تحلیل

روی NOT معامله بهینه‌سازی 9 نکنید (موتور metrics_reliable=false پرچم‌گذاری کرد، و کل بازده +100% یک outlier تکی فوریه-2026 است). عامل اصلی پوشش داده است، نه منطق: rolling_options.lookback_days برابر 365 است، بنابراین گسترش زنجیره ماهانه فقط ~12 دوره (2025-07 به بعد) یافت. خواهر promoted از CSP با lookback_days=1100 استفاده کرد و زنجیره 36 دوره‌ای تا 2023 بدست آورد. FIX: rolling_options.lookback_days را به ~1100 افزایش دهید تا زنجیره ماهانه Deribit BTC پوشش 2023-2026 داشته باشد و ~36 فرصت ورود (~3x معاملات) و نمونه آزمون‌پذیر آماری که هر دو بازار گاوی 2024 و افت 2025-26 را پوشش دهد، حاصل شود. مجدداً بک‌تست بزنید و تأیید کنید edge در ~30+ معامله دوام می‌آورد (انتظار مثبت NOT وابسته به یک ماه، win_rate و profit_factor پایدار) قبل از صرف محاسبه بهینه‌سازی. بقیه موارد را بدون تغییر نگه دارید.

خلاصه نتیجه

حتی راهبرد اختیار معاملۀ خوش‌ساختی که راستی‌آزمایی را گذرانده باشد، اگر کاتالوگ فقط حدود 12 سررسید ماهانه داشته باشد، همچنان قابل‌اعتبارسنجی نیست — 9 معامله با شارپ CI، از -13 تا +11 و کل بازده از یک ماه، برای پشتیبانی از بهینه‌سازی کافی نیست؛ پس پیش از تکرار مداوم، عمق زنجیرۀ اختیار معامله را تأیید کنید.

بازبین‌کننده بک‌تست در گیت پیش‌از‌بهینه‌سازی 'revise_hypothesis' برگرداند: مکانیزم sound بود و تأیید را پاکسازی کرد، اما زنجیره آپشن ماهانه Deribit BTC در کاتالوگ فقط حدود 12 سررسید (2025-07 به بعد) پوشش می‌دهد، بنابراین lookback_days=365 از قبل آن را پوشش می‌دهد و هیچ تغییر توسعه‌دهنده‌ای نمی‌تواند دوره اضافه کند — و این دومین عبور با نتیجه 9 معامله‌ای یکسان بود که تکرار بیشتر را thrashing روی دیوار داده می‌کند. مرحله نهایی رها شد.

راهبرد اختیار معاملۀ بلندِ تک‌پایه روی سررسیدهای ماهانۀ BTC در Deribit که دیدگاه روند جهت‌دار را به‌شکل محدب بیان می‌کرد: در رژیم صعودی تأییدشده با ارزان‌بودن IV، اختیار خرید 5% OTM می‌خرید؛ در رژیم نزولی تأییدشده با ارزان‌بودن IV، اختیار فروش 5% OTM می‌خرید؛ حداکثر یک پایۀ دارای ریسک مشخص نگه می‌داشت (حداکثر زیان = پریمیوم) و ماهانه رول می‌کرد.

بک‌تست فقط 9 بار در تاریخچه آپشن موجود معامله کرد (6 call، 3 put، میانگین ورود IV 0.323، vega خالص ورود +751، ~24 DTE) با metrics_reliable=false: شارپ اسمی 3.43 و فاکتور سود 1.86 با skew مثبت و حداکثر افت 9.8%، اما sharpe_ci_low از -13.1 (CI نزدیک صفر) و کل بازده خالص توسط یک ماه outlier تکی حمل شده (2026-02، +14.3%). هیچ مرحله بهینه‌سازی اجرا نشد.

Stratmill ابزاری برای پژوهش و معامله آزمایشی است، نه مشاوره مالی یا کارگزار. نتایج بک‌تست و معامله آزمایشی فرضی هستند. معامله‌گری با ریسک زیان همراه است.