پیشرفتهstrategy

Pairs Trading در کریپتو

15 دقیقه
Pairs Trading در کریپتو

ETH/BTC، آلت/BTC.

Pairs Trading در کریپتو: استراتژی آماری برای بازارهای پرنوسان

هدف یادگیری

در پایان این درس، قادر خواهید بود:
- رابطه هم‌انباشتگی (Cointegration) بین جفت‌ارزها را با آزمون آماری تأیید کنید
- نسبت پوشش بهینه (Hedge Ratio) را محاسبه و به‌صورت پویا به‌روز کنید
- Z-Score اسپرد را بسازید و سیگنال‌های ورود و خروج دقیق تعریف کنید
- نیم‌عمر بازگشت به میانگین را برآورد کرده و افق زمانی معامله را بر اساس آن تنظیم نمایید
- تفاوت رفتاری ETH/BTC با جفت‌های آلت/BTC را تشخیص دهید و ریسک هر کدام را مدیریت کنید

---

۱. پایه آماری: چرا Pairs Trading کار می‌کند؟

Pairs Trading یا معامله جفتی یک استراتژی market-neutral است که بر اساس رابطه آماری بلندمدت بین دو دارایی بنا شده است. ایده اصلی این است: اگر دو دارایی هم‌انباشته (Cointegrated) باشند، اسپرد آن‌ها در بلندمدت به یک میانگین پایدار بازمی‌گردد و هر انحراف از این میانگین یک فرصت معاملاتی است.

تفاوت کلیدی: Correlation در برابر Cointegration

همبستگی (Correlation) نشان می‌دهد دو سری زمانی در یک جهت حرکت می‌کنند، اما این رابطه ممکن است ناپایدار و گذرا باشد. هم‌انباشتگی (Cointegration) چیزی عمیق‌تر است: نشان می‌دهد ترکیب خطی آن دو دارایی یک سری پایدار (stationary) ایجاد می‌کند که به‌مرور زمان به میانگین خود بازمی‌گردد.

آزمون Engle-Granger (دو مرحله‌ای):

گام اول، رگرسیون خطی بین لگاریتم قیمت‌ها:

log(ETH_t) = α + β × log(BTC_t) + ε_t

گام دوم، آزمون پایایی روی پسماندها:

اگر آزمون ADF (Augmented Dickey-Fuller) روی ε_t مقدار p-value کمتر از ۰.۰۵ نشان دهد، رابطه هم‌انباشتگی با اطمینان آماری تأیید می‌شود و می‌توانیم به استراتژی ادامه دهیم.

---

۲. محاسبه Hedge Ratio و Z-Score

Hedge Ratio (β):

با استفاده از OLS (Ordinary Least Squares) روی پنجره متحرک ۶۰ تا ۹۰ روزه:

β = Cov(log(ETH), log(BTC)) / Var(log(BTC))

از پنجره متحرک استفاده می‌کنیم تا β تطبیقی (adaptive) داشته باشیم و رابطه در حال تغییر بین دو دارایی را دنبال کنیم.

اسپرد و Z-Score:

Spread_t = log(ETH_t) - β × log(BTC_t) - α

Z_t = (Spread_t - μ_spread) / σ_spread

که μ_spread و σ_spread میانگین و انحراف معیار اسپرد در پنجره نگاه به گذشته هستند.

قوانین ورود و خروج:

| سیگنال | شرط Z-Score | عملیات |
|---|---|---|
| ورود Long ETH / Short BTC | Z < −2.0 | ETH زیر ارزش نسبی است |
| ورود Short ETH / Long BTC | Z > +2.0 | ETH بالای ارزش نسبی است |
| خروج از معامله | −0.5 < Z < +0.5 | بازگشت به تعادل |
| حد ضرر اجباری | Z < −3.5 یا Z > +3.5 | رابطه احتمالاً شکسته است |

مثال عددی کامل:

فرض کنید:
- BTC = 65,000 دلار → log(BTC) = 11.082
- ETH = 3,200 دلار → log(ETH) = 8.071
- β = 1.15 و α = −4.67 (از رگرسیون OLS)

Spread = 8.071 − (1.15 × 11.082) + 4.67
= 8.071 − 12.744 + 4.67
= −0.003

اگر μ_spread = 0.00 و σ_spread = 0.08 باشد:

Z = (−0.003 − 0.00) / 0.08 = −0.04

این Z نزدیک صفر است، سیگنالی نداریم. حالا فرض کنید ETH به ۲,۸۵۰ دلار افت کند:

Spread = log(2850) − 1.15 × log(65000) + 4.67
= 7.955 − 12.744 + 4.67 = −0.119
Z = (−0.119 − 0.00) / 0.08 = −1.49

و اگر ETH به ۲,۶۵۰ دلار برسد:

Spread = 7.883 − 12.744 + 4.67 = −0.191
Z = −0.191 / 0.08 = −2.39

سیگنال ورود: Long ETH، Short BTC با اندازه متناسب با β.

---

۳. نیم‌عمر بازگشت به میانگین

یکی از مهم‌ترین پارامترها برای تعیین افق زمانی معامله، نیم‌عمر (Half-Life) است: مدت زمانی که اسپرد طول می‌کشد تا نیمی از انحراف از میانگین را جبران کند.

مدل Ornstein-Uhlenbeck:

ΔSpread_t = κ × (θ − Spread_{t−1}) + σ × ε_t

که κ سرعت بازگشت به میانگین است.

محاسبه عملی:

رگرسیون زیر را اجرا کنید:

ΔSpread_t = a + b × Spread_{t−1} + ε_t

سپس:

Half-Life = −log(2) / log(1 + b)

مثال:

اگر رگرسیون b = −0.12 بدهد:

Half-Life = −0.693 / log(0.88)
= −0.693 / (−0.128)
≈ 5.4 روز

برای جفت ETH/BTC، Half-Life معمولاً بین ۳ تا ۱۵ روز متغیر است.

کاربرد عملی:
- Half-Life کمتر از ۵ روز → تایم‌فریم روزانه یا ۴ ساعته مناسب است
- Half-Life بین ۵ تا ۱۵ روز → تایم‌فریم روزانه با صبر بیشتر
- Half-Life بالای ۲۰ روز → ریسک تغییر رژیم بالاست؛ احتیاط کنید
- قانون عملی: حداکثر ۳ برابر Half-Life در معامله بمانید؛ اگر تا آن زمان بازگشت نشد، با ضرر خارج شوید

---

۴. جفت‌های آلت/BTC: فرصت‌ها و چالش‌های واقعی

چرا آلت/BTC پیچیده‌تر از ETH/BTC است؟

در مقایسه با ETH/BTC که رابطه‌ای نسبتاً پایدار و شناخته‌شده دارد، جفت‌های آلت/BTC چند ویژگی خاص دارند که باید با احتیاط بیشتری به آن‌ها نزدیک شوید:

۱. نقدشوندگی پایین‌تر: اسپرد bid-ask بالاتر است و اسلیپیج در اجرای سفارش بیشتر می‌شود
۲. ناپایداری رابطه: بسیاری از آلت‌کوین‌ها دوره‌های decoupling دارند، به‌ویژه در آلت‌سیزون‌ها
۳. ریسک رویداد بالاتر: یک خبر پروژه‌ای می‌تواند رابطه آماری را به‌طور کامل و ناگهانی بشکند
۴. بتای ناپایدار: β در آلت‌ها نوسان بیشتری دارد و نیاز به به‌روزرسانی مکرر دارد

معیارهای انتخاب جفت آلت/BTC:

- همبستگی بالا با BTC: معمولاً r > 0.75 در ۳۶۵ روز گذشته
- Market Cap قابل توجه: ترجیحاً بالاتر از ۵ میلیارد دلار
- تأیید هم‌انباشتگی: آزمون Engle-Granger با p-value < 0.05
- سابقه کافی داده: حداقل ۲ سال تاریخچه معاملاتی پیوسته

هزینه‌ها را در محاسبات بگنجانید:

Net_Return = Gross_Return − 2 × Maker_Fee − Funding_Rate × Days_Held

مثال: اگر سیگنال با Z = −2.5 وارد شوید و اسپرد انتظاری ۸٪ باشد، اما هزینه‌های کل (کارمزد + funding) ۱.۸٪ باشد، بازده خالص انتظاری ۶.۲٪ است. اما در Z = −2.0 با اسپرد ۴٪، بازده خالص به ۲.۲٪ کاهش می‌یابد که ممکن است با توجه به ریسک، توجیه نداشته باشد.

---

۵. مدیریت ریسک و تشخیص تغییر رژیم

خطرناک‌ترین سناریو: شکستن رابطه

Pairs Trading در کریپتو با یک ریسک بنیادی روبروست: رابطه هم‌انباشتگی ممکن است در دوره‌های خاص بشکند. این پدیده به‌ویژه در موارد زیر رخ می‌دهد:
- شروع روندهای قوی bear یا bull market
- رویدادهای ساختاری مانند هاروینگ بیت‌کوین
- آپگریدهای شبکه‌ای مهم (مثل Ethereum Merge که رابطه ETH/BTC را دوباره تعریف کرد)
- بحران‌های سیستمیک مانند سقوط LUNA

Regime Detection با Kalman Filter:

یک رویکرد پیشرفته برای ردیابی پویای β استفاده از Kalman Filter است:

State equation: β_t = β_{t−1} + η_t (η ~ N(0, Q))
Obs. equation: y_t = β_t × x_t + ε_t (ε ~ N(0, R))

این روش β را در هر لحظه به‌روز می‌کند. وقتی β شروع به تغییر سریع می‌کند، یک هشدار تغییر رژیم است و باید احتیاط بیشتری داشته باشید.

قوانین مدیریت ریسک:

۱. حد ضرر سخت: اگر Z از ±۳.۵ تجاوز کرد، فوری خروج کنید
۲. حداکثر نگهداری: بیشتر از ۳ برابر Half-Life در معامله نمانید
۳. سایزبندی موقعیت با Half-Kelly:

f* = (μ / σ²) × factor

در عمل، معامله‌گران حرفه‌ای ۰.۵ تا ۰.۷ برابر Kelly Criterion را توصیه می‌کنند تا ریسک کاهش یابد.

۴. همبستگی بین جفت‌ها: اگر چند جفت همزمان معامله می‌کنید، همبستگی بین آن‌ها را بررسی کنید. جفت‌های BNB/BTC و ETH/BTC در یک جهت معامله شده، ریسک واقعی شما را دو برابر می‌کنند نه متنوع.

---

۶. پیاده‌سازی: از ایده تا Backtest قابل اعتماد

چارچوب کاری گام‌به‌گام:

۱. جمع‌آوری داده OHLCV روزانه (حداقل ۲ سال)
۲. محاسبه log قیمت‌ها
۳. اجرای آزمون Engle-Granger → p-value < 0.05 لازم است
۴. محاسبه β با rolling OLS (پنجره ۶۰ روزه)
۵. ساخت اسپرد و Z-Score
۶. محاسبه Half-Life برای تعیین افق زمانی
۷. تعریف قوانین ورود، خروج و حد ضرر
۸. Backtest با کارمزد و اسلیپیج واقعی

اشتباهات رایج در Backtest:

- Look-ahead bias: تمام محاسبات باید فقط از داده‌های گذشته استفاده کنند. β امروز را نمی‌توان برای سیگنال دیروز استفاده کرد.
- Survivorship bias: فقط ارزهایی که امروز وجود دارند را بررسی نکنید؛ ارزهای از بین رفته را هم لحاظ کنید.
- هزینه‌های ناقص: funding rate در پوزیشن‌های لانگ مدت می‌تواند بخش قابل توجهی از سود را از بین ببرد.
- Overfitting پارامترها: آستانه‌های Z-Score را روی داده train بهینه نکنید و نتیجه را به‌عنوان موفقیت اعلام کنید؛ همیشه out-of-sample test داشته باشید.

شاخص‌های ارزیابی:

| شاخص | هدف در out-of-sample |
|---|---|
| Sharpe Ratio | بالاتر از ۱.۵ |
| Max Drawdown | کمتر از ۲۰٪ |
| Calmar Ratio | بالاتر از ۰.۸ |
| میانگین مدت نگهداری | نزدیک به Half-Life محاسبه‌شده |

---

نتیجه‌گیری

Pairs Trading در کریپتو یک استراتژی قدرتمند اما مطالبه‌گر است که بر پایه ریاضیات آماری بنا شده، نه شهود یا الگوهای چشمی. ETH/BTC به دلیل نقدشوندگی بالا، رابطه نسبتاً پایدار و داده‌های فراوان، بهترین نقطه شروع برای این استراتژی است. جفت‌های آلت/BTC فرصت‌های بیشتری ارائه می‌دهند اما ریسک بالاتری هم دارند و نیاز به نظارت مستمر دارند. موفقیت در این حوزه به سه رکن وابسته است: انتخاب آماری درست جفت، محاسبه دقیق پارامترها، و مدیریت ریسک منضبط بدون استثنا.

---

خلاصه نقطه‌ای

- هم‌انباشتگی، نه همبستگی: پیش از هر چیز، رابطه آماری را با آزمون Engle-Granger تأیید کنید
- Hedge Ratio پویا: از rolling OLS یا Kalman Filter برای بتای تطبیقی استفاده کنید
- Z-Score = ابزار ورود: Z کمتر از −2 سیگنال Long ارز اول و Short ارز دوم است؛ Z بالاتر از +2 برعکس
- Half-Life = ساعت معامله: افق زمانی خود را بر اساس نیم‌عمر بازگشت به میانگین تنظیم کنید
- ETH/BTC پایدارتر از آلت/BTC: نقدشوندگی بهتر، رابطه مستحکم‌تر و کارمزد واقعی پایین‌تر
- هزینه‌ها تعیین‌کننده‌اند: در آلت‌ها، کارمزد + اسلیپیج + funding می‌تواند بازده خالص را به‌شدت کاهش دهد
- حد ضرر اجباری: Z خارج از ±۳.۵ به معنای شکسته شدن احتمالی رابطه است؛ فوری خروج کنید
- Backtest واقع‌بینانه: out-of-sample + هزینه واقعی + بدون look-ahead bias؛ نتایج درون داده‌های train اعتبار ندارند

Pairs Trading در کریپتو | آکادمی تریدیار | تریدیار