1. بیت کوین چیست؟

  • 2022-08-26

بیت کوین یک ارز دیجیتال غیرمتمرکز بدون هیچ مدیر مرکزی است و می تواند به طور مستقیم از کاربر به کاربر در شبکه بیت کوین ارسال شود. گره های شبکه تراکنش ها را از طریق رمزنگاری تأیید می کنند و در یک دفتر کل توزیع شده عمومی به نام بلاک چین ثبت می شوند که همچنین مالکیت را ردیابی می کند، از دستکاری سوابق تراکنش ها جلوگیری می کند و از هزینه های مضاعف جلوگیری می کند.

بیت کوین بر اساس مشارکت جامعه ارزش پیدا می کند. یعنی تقاضا و عرضه. در حال حاضر تقاضا بیشتر از عرضه است که بر قیمت تأثیر می گذارد و نوسانات را افزایش می دهد. به عنوان مثال، در ژانویه 2017 قیمت ها حدود 1000 دلار بود که بعداً تا دسامبر 2017 به 16000 دلار افزایش یافت. سپس دوباره شاهد افزایش و کاهش بود، اما در زمان های اخیر قیمت ها به 63000 دلار افزایش یافت.

2. بیان مشکل.

یکی از مشکلات اصلی بیت کوین نوسانات قیمت است که نشان دهنده نیاز به مطالعه مدل قیمت پایه است.

این مطالعه موردی بر اساس پیش‌بینی سری زمانی قیمت بیت‌کوین است. این مقاله داده های بیت کوین را از آوریل 2013 تا دسامبر 2019 در نظر گرفت. این موضوع را هم به عنوان مشکل رگرسیون و هم به عنوان مشکل طبقه بندی مطرح کرد. برای رگرسیون مقاله پیش‌بینی قیمت‌ها و برای طبقه‌بندی بود که در آن تلاش برای پیش‌بینی افزایش/کاهش قیمت انجام شد. برای پیش بینی قیمت روز بعد، روز 30 و روز 90 انجام شد.

در این مطالعه موردی، ما سعی می‌کنیم قیمت‌های روز بعد را بر اساس ویژگی‌های روز قبل با استفاده از یادگیری ماشین و الگوریتم‌های رگرسیون یادگیری عمیق پیش‌بینی کنیم.

3. معیارهای عملکرد.

از آنجایی که متغیر هدف بسیار نوسان است، می‌خواهیم زمانی که خطا بیشتر است مدل را جریمه کنیم. ریشه میانگین مربعات خطا (RMSE) خطاها را قبل از میانگین گیری مربع می کند و بنابراین RMSE وزن نسبتاً بالایی به خطاهای بزرگ می دهد. ما همچنین میانگین خطای مطلق (MAE) را به دلیل تفسیر آسان آن در نظر گرفته ایم.

4. جمع آوری داده ها و انتساب

4. 1 خراش دادن وب با استفاده از bitinfocharts. com

Bitinfocharts 17 ویژگی خام زیر را ارائه می دهد. ویژگی ها با استفاده از یک اسکریپت پایتون سفارشی بازیابی شدند.

i) تعداد تراکنش ها در بلاک چین در روز

تراکنش های بیت کوین پیام هایی هستند که به صورت دیجیتالی با استفاده از رمزنگاری امضا شده و برای تأیید به کل شبکه بیت کوین ارسال می شوند. تعداد تراکنش های روزانه ارزش شبکه بیت کوین برای انتقال امن وجوه را برجسته می کند.

ii) اندازه بلوک متوسط (KB)

بلوک ها پرونده هایی هستند که به طور دائم اطلاعات معاملاتی جدید مربوط به شبکه بیت کوین را ثبت می کنند. پس از نوشتن قابل تغییر یا حذف نیست. هر بار که یک بلوک "به پایان رسید" ، بلوک بعدی در blockchain قرار می گیرد. حداکثر اندازه بلوک در حال حاضر در 1 مگابایت تنظیم شده است.

iii) تعداد ارسال شده توسط آدرس ها

این آدرس های مشخصی است که هر روز پرداخت ها از آنها انجام می شود.

IV) تعداد آدرسهای فعال

این تعداد آدرس های منحصر به فرد است که با ارسال یا دریافت بیت کوین در یک معامله شرکت می کنند.

v) مشکل معدن متوسط (هش/روز)

این نشان می دهد که اثبات محاسبه کار با توجه به مقدار دشواری تعیین شده در ابتدا چقدر دشوار است (1). یک مشکل بالاتر به این معنی است که قدرت محاسباتی بیشتری را برای معدن همان تعداد بلوک ها به همراه خواهد داشت و باعث می شود شبکه در برابر حملات ایمن تر شود. این مشکل هر بلوک های 2016 (هر 2 هفته تقریباً) تنظیم می شود به طوری که میانگین زمان بین هر بلوک 10 دقیقه باقی می ماند. اگر تعداد بیشتری از بلوک ها در یک دوره 2 هفته ایجاد شوند ، افزایش می یابد و در صورت ایجاد بلوک های کمتر کاهش می یابد.

vi) میانگین نرخ هش (هش/ثانیه)

نرخ هش اندازه گیری قدرت محاسباتی معدن در ثانیه است. اندازه گیری می شود که چه تعداد محاسبات در ثانیه می تواند انجام شود. ماشین آلات با قدرت هش بالا بسیار کارآمد هستند و می توانند داده های زیادی را در یک ثانیه پردازش کنند.

vii) سودآوری معدن (USD)

این سودآوری برای 1 هش در ثانیه است

viii) سکه ارسال شده (USD)

این مقدار کل بیت کوین های ارسال شده روزانه است.

ix) متوسط و متوسط هزینه معامله (USD)

هر معامله می تواند هزینه معامله ای را که توسط فرستنده تعیین می شود ، داشته باشد و به معدنچیانی که معامله را تأیید می کنند ، پرداخت می کند. معاملات با هزینه های بالاتر به معدنچیان بیت کوین پاداش می دهند تا آنها را زودتر از معاملات با هزینه های پایین پردازش کنند.

x) میانگین زمان بلوک (دقیقه)

زمان بلوک زمان لازم برای ایجاد بلوک بعدی در یک زنجیره است. این زمانی است که توسط یک معدنکار blockchain برای یافتن راه حلی برای هش گرفته شده است. معمولاً حدود 10 دقیقه است ، اما بسته به میزان هش شبکه می تواند نوسان داشته باشد.

xi) ارزش معامله متوسط و متوسط (USD)

میانگین و ارزش متوسط معاملات در بیت کوین

xii) توییت و روندهای گوگل به "بیت کوین" در روز

تعداد توییت ها و روندهای گوگل. این ویژگی ها نشان دهنده تأثیر رسانه های اجتماعی بر قیمت بیت کوین است.

xiii) میانگین درصد هزینه در کل پاداش بلوک

پاداش های بیت کوین بیت کوین های جدیدی هستند که به دلیل اولین کسی که یک مشکل ریاضی پیچیده و ایجاد یک بلوک جدید از معاملات تأیید شده بیت کوین را به ماینرها اعطا می کنند. پاداش در 50 BTC آغاز شد و هر 210،000 بلوک را نصف می کند. پاداش فعلی 6. 25 است. این ویژگی نسبت هزینه ارسال شده در معامله به پاداش برای تأیید آن معامله توسط سایر کاربران است.

xiv) 100 آدرس برتر برتر به کل سکه ها

این نسبت بین 100 آدرس غنی برتر به کل سکه ها است.

4. 2 با استفاده از quandl

دو ویژگی زیر با استفاده از API Quandl جمع آوری شد

من) درآمد معدنچی (USD)

ارزش کل پاداش های بلوک پایه سکه و هزینه های معامله به معدنچیان.

ب) تعداد سکه های گردش خون

این تعداد کل بیت کوین مین است که در حال حاضر در شبکه پخش می شوند. عرضه کل BTC به 21 میلیون نفر محدود می شود.

4. 2 با استفاده از Investpy

متغیر ویژگی های OHLC و متغیر هدف با استفاده از API Investpy ، که داده ها را از Investing. com بازیابی می کند ، استخراج می شود. از مقادیر روز گذشته برای پیش بینی قیمت بسته شدن روز بعد استفاده می شود.

من) قیمت باز

ii) بالاترین قیمت

iii) کمترین قیمت

IV) قیمت بسته شدن

مجموعه داده نهایی از 1 آوریل 2013 تا 18 سپتامبر 2021 با داشتن 3093 ردیف ، 23 ویژگی ، تاریخ و متغیر هدف در نظر گرفته شد. ما مقادیر گمشده را با استفاده از یک میانگین متحرک ساده منتقل کردیم. اندازه پنجره برای SMA بر اساس ویژگی انتخاب شد.

5- تجزیه و تحلیل داده های اکتشافی.

5. 1 تجزیه و تحلیل تک متغیره متغیر هدف

ما می توانیم نوسانات قیمت را از نمودار توزیع KDE و خط خط مشاهده کنیم. دو سنبله بزرگ در توزیع وجود دارد. از آوریل 2013 تا آوریل 2017 ، قیمت ها بین 100 تا 1000 دلار پایدار بود. از ماه مه سال 2017 ، این روند در حال افزایش است و تا دسامبر 2017 به سال 19345 USD رسید. از آن زمان تا سپتامبر 2020 ، قیمت ها پایدار بودند ، اما داشتن برخی از روندهای فزاینده/کاهش یافته اما سنبله های بزرگی نیست. در اکتبر سال 2020. قیمت ها به شدت افزایش یافته و تا آوریل 2021 به 63500 دلار رسیدند. این روند افزایش/کاهش داشت ، اما تا ژوئیه 2021 به شدت به 30000 دلار کاهش یافت. پس از ژوئیه تا سپتامبر 2021 ، قیمت ها در حال افزایش هستند و در حال حاضر هستنددر محدوده ، از 40000 دلار تا 50000 دلار.

5. 2 وکتور همبستگی پیرسون متغیر هدف و تجزیه و تحلیل دو متغیره از ویژگی های همبسته بالا

همبستگی بسیار خوبی با ویژگی های OHLC نشان می دهد و نمودار پراکندگی نیز یک رابطه خطی می دهد. این ویژگی ها برای پیش بینی بسیار مفید خواهند بود. سایر ویژگی های مرتبط با هم درآمد ماینر، میانگین ارزش تراکنش است. آنها همبستگی مثبت خوبی نشان می دهند، اما فاقد یک رابطه خطی خوب هستند.

5. 3 ماتریس همبستگی پیرسون از ویژگی ها

می‌توان مشاهده کرد که همبستگی بسیار خوبی بین ویژگی‌های OHLC وجود دارد، زیرا توزیع نزدیک به یکدیگر خواهد بود.

با افزایش سختی قدرت پردازش بیشتر، یعنی نرخ هش مورد نیاز است، بنابراین همبستگی بالایی با نرخ هش نشان می‌دهد.

میانگین کارمزد و کارمزد متوسط از توزیع بسیار مشابهی پیروی می‌کنند، که به این معنی است که در یک روز، نه کارمزدها زیاد پرداخت می‌شود و نه خیلی کمتر.

ارتباط خوبی بین آدرس ارسال و آدرس های فعال وجود دارد، زیرا آدرس ارسال شده زیرمجموعه ای از آدرس های فعال است.

درآمد ماینر، بیت کوین های جدیدی را به عنوان پاداش تولید می کند، بنابراین عرضه بیت کوین را افزایش می دهد، که در نهایت بر قیمت تأثیر می گذارد.

6. ویژگی های مهندسی- شاخص های فنی.

معامله گران فنی یا سرمایه گذاران از شاخص های فنی برای پیش بینی روند قیمت در آینده و تصمیم گیری در مورد معاملات استفاده می کنند. شاخص‌های فنی از داده‌های تاریخی محاسبه می‌شوند که بینش‌هایی درباره الگوی داده‌ها ارائه می‌دهد. شاخص های مختلفی وجود دارد که روند، حرکت، نوسانات، حجم را نشان می دهد. به عنوان مثال، میانگین متحرک، نرخ تغییر، باندهای بولینگر، واگرایی میانگین متحرک، انحراف استاندارد و غیره.

ما در حال بررسی شاخص های فنی هر ویژگی برای یک دوره 7 روز، 30 روز و 90 روز گذشته هستیم. کتابخانه پایتون Pandas-ta برای محاسبه همه ویژگی ها استفاده شد.

6. 1 میانگین متحرک ساده

SMA میانگین یک محدوده انتخاب شده از مقادیر ویژگی را برای تعدادی از دوره های آن محدوده محاسبه می کند. تعیین می کند که آیا قیمت از روند صعودی یا خرسی پیروی می کند.

6. 2 میانگین متحرک موزون

WMA وزن بیشتری را به آخرین نقاط داده و وزن کمتری را به نقاط داده در گذشته های دور اختصاص می دهد. مجموع وزن دهی باید تا 1 (یا 100 درصد) جمع شود.

6. 3 میانگین متحرک نمایی

EMA همچنین وزن بیشتری را روی آخرین نقاط داده مانند WMA قرار می دهد، اما نرخ کاهش بین یک قیمت و قیمت قبلی آن سازگار نیست. تفاوت در کاهش نمایی است.

6. 4 میانگین متحرک نمایی دو برابری

DEMA سریعتر از میانگین متحرک نمایی معمولی (EMA) به تغییرات قیمت کوتاه مدت پاسخ می دهد. به فیلتر کردن نویز کمک می کند.

6. 5 میانگین متحرک سه گانه

از چندین محاسبات EMA استفاده می کند و تاخیر را برای ایجاد یک روند زیر که به سرعت در برابر تغییرات قیمت واکنش نشان می دهد ، کم می کند.

6. 6 انحراف استاندارد

انحراف استاندارد اندازه گیری آماری نوسانات بازار است و اندازه گیری می کند که چگونه مقادیر ویژگی های گسترده از مقادیر میانگین ویژگی پراکنده می شوند. اگر ارزش های ویژگی در یک محدوده معاملاتی باریک تجارت کند ، انحراف استاندارد مقدار کم را باز می گرداند که نشانگر نوسانات پایین است. برعکس ، اگر مقادیر ویژگی به شدت به بالا و پایین می چرخند ، انحراف استاندارد مقدار بالاتری را برمی گرداند که نشانگر نوسانات بالایی است.

6. 7 واریانس

واریانس یکی دیگر از معیارهای آماری نوسانات بازار است و اندازه گیری می کند که چگونه مقادیر ویژه از مقادیر میانگین ویژگی پراکنده می شوند. این به طور مشابه با انحراف استاندارد تفسیر می شود ، واریانس مربع انحراف استاندارد است.

6. 8 شاخص قدرت نسبی

هنگامی که RSI زیر 30 فرو می رود ، دارایی بیش از حد یا کم ارزش در نظر گرفته می شود. از طرف دیگر ، اگر RSI بالاتر از 70 باشد ، بیش از حد تصور می شود.

6. 9 نرخ تغییر

اندازه گیری درصد تغییر قیمت بین مقدار ویژگی فعلی و ویژگی تعداد مشخصی از دوره ها را اندازه گیری می کند. افزایش ROC بالاتر از صفر به طور معمول یک صعود را تأیید می کند ، در حالی که یک ROC در حال سقوط زیر صفر نشانگر نزولی است.

6. 10 باند بولینگر

نوارهای بولینگر پاکت نامه (سطح بالایی و پایین) هستند که در یک سطح انحراف استاندارد بالاتر و زیر یک میانگین متحرک ساده از قیمت ترسیم شده اند. از آنجا که فاصله باندها مبتنی بر انحراف استاندارد است ، آنها با نوسانات نوسانات با قیمت زیرین تنظیم می شوند. باندهای بولینگر به تعیین اینکه آیا مقادیر زیاد یا کم است ، کمک می کند. آنها به صورت جفت ، هر دو باندهای فوقانی و تحتانی و همراه با میانگین متحرک استفاده می شوند.

6. 11 در حال حرکت میانگین واگرایی همگرایی

MACD یک روند زیر را نشان می دهد که نشان می دهد که آیا حرکت قیمت کوتاه مدت در همان جهت حرکت قیمت بلند مدت حرکت می کند ، و در مواردی که اینگونه نباشد ، از آن استفاده می شود تا تعیین کند که آیا تغییر روند نزدیک است یا خیر. MACD از چهار مؤلفه تشکیل شده است.

MACD LINE- تغییر بین میانگین آهسته و میانگین سریع حرکت را نشان می دهد

نوسانات سیگنالینگ خط سیگنال در حرکت قیمت

هیستوگرام- تفاوت بین خط سیگنال و خط MACD را نشان می دهد.

پس از مهندسی ویژگی ، تعداد کل ویژگی ها به 851 افزایش یافت.

7. مقیاس بندی ویژگی

برای مقیاس‌بندی ویژگی‌ها، از اسکالر قوی و به دنبال آن اسکالر حداقل حداکثر استفاده شد. اسکالر قوی شبیه اسکالر حداقل حداکثر است، اما از محدوده بین چارکی استفاده می کند، به طوری که نسبت به نقاط پرت مقاوم است.

8. انتخاب ویژگی

در تمام ویژگی‌ها، برای انتخاب ویژگی‌های مهم باید انتخاب ویژگی انجام شود. برای انتخاب 10 ویژگی مهم برتر از رگرسیون جنگل تصادفی استفاده شد.

9. روش شناسی آموزش

متغیر هدف در جایی که قیمت ها از 100 تا 63500 دلار متغیر است، بسیار نوسان است. در ابتدا، ما با اعتبار سنجی تقسیم متقابل سری های زمانی، اعتبار سنجی تقسیم تصادفی متقاطع امتحان کردیم، اما نتایج عمدتاً بیش از حد برازش بودند.

بنابراین، ما تصمیم گرفتیم برای هر تقسیم به طور جداگانه چندین تقسیم و مدل قطار ایجاد کنیم. هر تقسیم قطار شامل 500 نقطه داده است و 100 نقطه داده بعدی برای آزمایش استفاده خواهد شد. به عنوان مثال، اگر 10 تقسیم وجود داشته باشد، 10 مدل آموزش داده می شود و هر مدل 100 نقطه داده را پیش بینی می کند. به طور خلاصه، پیش بینی 100 روز آینده بر اساس داده های در نظر گرفته شده از 500 روز گذشته خواهد بود. متریک نهایی میانگین بیش از متریک گزارش شده توسط هر تقسیم خواهد بود.

10. آموزش مدل

10. 1 مدل پایه

به عنوان پایه، برای هر تقسیم، پیش‌بینی‌ها با استفاده از صدک 90 انجام شد.

10. 2 رگرسیون بردار پشتیبانی

برخلاف مدل‌های رگرسیون خطی که سعی می‌کنند خطای بین مقدار واقعی و پیش‌بینی‌شده را به حداقل برسانند، SVR سعی می‌کند بهترین خط را در یک مقدار آستانه قرار دهد. مقدار آستانه فاصله بین ابر صفحه و خط مرزی است. SVR روی مجموعه داده های کوچک عملکرد خوبی دارد.

در اینجا ما از SVR با پارامتر Regularization C = 10000 با هسته RBF با گامای ضریب هسته روی auto = 1 / n_features استفاده کرده ایم.

SVR قادر است نتایج خوبی را پیش‌بینی کند و روند را ثبت کند، حتی زمانی که قیمت‌ها جهش ناگهانی وجود دارد.

10. 3 رگرسیون افزایش گرادیان شدید

این یک مدل مجموعه تقویت کننده است که از مدل های درخت تصمیم ساخته شده است. درختان به صورت متوالی به مجموعه اضافه می شوند و برای تصحیح خطاهای پیش بینی ساخته شده توسط مدل های قبلی مناسب هستند.

در اینجا ما از 500 درخت استفاده کرده ایم که سعی می کند خطاهای مربعی را به حداقل برساند.

XGBoost بسیار زیاد است. می‌توان مشاهده کرد که وقتی یک جهش ناگهانی در قیمت‌ها وجود دارد، نتایج نامناسبی را پیش‌بینی می‌کند.

10. 4 رگرسیون خطی با استفاده از نزول گرادیان تصادفی

رگرسیون خطی تلاش می کند تا با به حداقل رساندن حداقل مربعات، یک رابطه خطی بین متغیرهای ورودی و متغیر هدف ایجاد کند. به مقداری منظم‌سازی نیاز دارد، زیرا وزن‌ها می‌توانند به صورت تصاعدی رشد کنند تا خطاها را به حداقل برسانند.

ما می توانیم از گرادیان نزول برای به حداقل رساندن تکراری خطای مدل استفاده کنیم. با شروع با مقادیر تصادفی برای هر ضریب کار می کند. نرخ یادگیری به عنوان یک عامل مقیاس استفاده می شود و ضرایب در جهت به حداقل رساندن خطا به روز می شوند. این فرآیند تا زمانی تکرار می‌شود که حداقل مجموع مجذور خطا به دست آید، یا امکان بهبود بیشتر وجود نداشته باشد.

ما از epsilon مربع غیر حساس به عنوان تابع از دست دادن استفاده می کنیم که مربع فراتر از ε-منطقه ای است که اپسیلون روی 0. 01 تنظیم شده است. برای منظم سازی از توری الاستیک استفاده شد. نرخ یادگیری اولیه روی 01/0 تنظیم شد و به صورت تطبیقی در هر دوره کاهش یافت. داده‌های ورودی در هر دوره به هم ریخته شدند تا داده‌های بیشتری را برای مدل‌سازی نشان دهند.

این مدل به طور قابل توجهی بهتر از SVR و XGBoost عمل می کند. همانطور که قبلا در همبستگی مشاهده شد، رابطه خطی بسیار خوبی بین برخی ویژگی ها و متغیر هدف وجود داشت. این در نهایت باعث شده است که مدل‌های خطی مانند SVR و رگرسیون خطی با یک ابر صفحه خوب بر روی داده‌ها سازگار شوند.

10. 5 حافظه کوتاه مدت (LSTM)

شبکه‌های حافظه کوتاه‌مدت بلندمدت نوعی شبکه عصبی بازگشتی هستند که قادر به یادگیری وابستگی ترتیب در مسائل پیش‌بینی توالی هستند. این توانایی حذف یا اضافه کردن اطلاعات به حالت سلولی را دارد که به دقت توسط ساختارهایی به نام دروازه تنظیم می شود. گیت ها راهی هستند که به صورت اختیاری اطلاعات را از خود عبور می دهند. آنها از یک لایه شبکه عصبی سیگموئید و یک عملیات ضرب نقطه ای تشکیل شده اند.

ما ورودی را به یک لایه دو طرفه از 400 سلول و به دنبال آن 25 درصد حذف می کنیم. این خروجی به یک لایه دو طرفه از 500 سلول تغذیه می شود که پس از آن 30 درصد افت می کند. تابع فعال سازی RELU برای جلوگیری از ناپدید شدن یا انفجار مشکل گرادیان استفاده شد. برای به روز رسانی وزن ها از بهینه ساز Adam استفاده شد.

تابع ضرر استفاده شده، لگاریتم کسینوس هذلولی خطای پیش‌بینی است. log(cosh(x)) تقریبا برابر با (x ** 2)/2 برای x کوچک و abs(x)-log(2) برای x بزرگ است. بیشتر مانند میانگین مربعات خطا کار می‌کند، اما پیش‌بینی‌های نادرست گاه به گاه به شدت تحت تأثیر قرار نخواهد گرفت.

برچسب ها

ثبت دیدگاه

مجموع دیدگاهها : 0در انتظار بررسی : 0انتشار یافته : ۰
قوانین ارسال دیدگاه
  • دیدگاه های ارسال شده توسط شما، پس از تایید توسط تیم مدیریت در وب منتشر خواهد شد.
  • پیام هایی که حاوی تهمت یا افترا باشد منتشر نخواهد شد.
  • پیام هایی که به غیر از زبان فارسی یا غیر مرتبط باشد منتشر نخواهد شد.