تجزیه و تحلیل ارز با مجموعه های سری زمانی شماره 3 - محاسبه MACD و RSI

ساخت وبلاگ

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

نشانگر MACD

MACD (میانگین واگرایی همگرایی در حال حرکت) یکی دیگر از شاخص های معاملاتی است و دید روند و حرکت ارز/سهام را فراهم می کند. محاسبه MACD اساساً از محاسبات EMA متعدد با پارامترهای مختلف استفاده می کند.

همانطور که در نمودار زیر نشان داده شده است ، نشانگر MACD دارای سه مؤلفه اصلی است: خط MACD ، سیگنال MACD و هیستوگرام.(خط آبی خط MACD را نشان می دهد ، خط قرمز نشان دهنده سیگنال MACD است ، و میله های سبز و قرمز نشان دهنده هیستوگرام است):

خط MACD با کم کردن 26 دوره (بیشتر روزها برای دوره استفاده می شود) محاسبه می شود. میانگین حرکت نمایی از میانگین متحرک نمایی 12 دوره.

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

در پست های وبلاگ قبلی ، ما یاد گرفتیم که چگونه می توانیم داده های RAW سطح دوم را به فواصل پنج دقیقه ای از طریق مرحله گروه $ و $ dateTrunc اپراتور گروه بندی کنیم:

بعد از اینکه دو میانگین متحرک نمایی جداگانه را محاسبه کردیم ، باید عملیات تفریحی $ را در مرحله بعدی خط لوله جمع بندی اعمال کنیم:

پس از به دست آوردن قسمت MacDline ، می توانیم میانگین متحرک نمایی دیگر را در این قسمت تازه تولید شده (MacDline) برای به دست آوردن مقدار سیگنال MACD اعمال کنیم:

بنابراین ، ما دو زمینه دیگر خواهیم داشت: MacDline و MacDsignal. ما می توانیم زمینه دیگری را به عنوان MacDhistogram ایجاد کنیم که با کم کردن MacDsignal از مقدار MacDline محاسبه می شود:

اکنون ما سه قسمت مشتق شده داریم: MacDline ، MacDsignal و MacDhistogram. در زیر ، می توانید ببینید که چگونه MACD همراه با شمعدان تجسم می شود:

نشانگر RSI

RSI (شاخص قدرت نسبیت) یکی دیگر از شاخص های فنی مالی است که نشان می دهد که آیا دارایی بیش از حد مورد استفاده قرار گرفته است یا از بین رفته است. معمولاً از یک پنجره قاب زمانی 14 دوره استفاده می کند و مقدار RSI در مقیاس 0 تا 100 اندازه گیری می شود. اگر مقدار نزدیک به 100 باشد ، نشان می دهد که دارایی در این دوره زمانی بیش از حد بوده است. و اگر مقدار به 0 نزدیکتر باشد ، نشان می دهد که دارایی در این دوره زمانی از بین رفته است. بیشتر از 70 و 30 برای آستانه های فوقانی و تحتانی استفاده می شود.

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

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

محاسبه سود و از دست دادن

مقدار سود و ضرر با کم کردن اطلاعات قیمت قبلی از اطلاعات قیمت فعلی محاسبه می شود:

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

اگر تفاوت منفی باشد ، به این معنی است که کاهش قیمت وجود دارد و ارزش ضرر تفاوت بین قیمت قبلی و قیمت فعلی خواهد بود. مقدار سود 0 خواهد بود.

اما در خط لوله تجمع MongoDB ، چگونه می توانیم از سند قبلی به سند قبلی مراجعه کنیم؟چگونه می توانیم زمینه جدید ($ قبلی) را از سند قبلی در پنجره مرتب شده استخراج کنیم؟

MongoDB 5. 0 اپراتور $ Shift را معرفی کرد که شامل داده های مربوط به یک سند دیگر در همان پارتیشن در محل داده شده است ، به عنوان مثال ، می توانید به سندی که سه سند قبل از سند فعلی یا دو سند پس از سند فعلی در پنجره مرتب شده است ، مراجعه کنید.

با مشخص کردن محل سندی که ما در آن قرار خواهیم داد. از آنجا که ما می خواهیم سند قبلی را درج کنیم ، سپس آن را رو ی-1 تنظیم کردیم. اگر می خواستیم یک سند بعدی را درج کنیم ، آن را به 1 تنظیم می کردیم.

بعد از اینکه اطلاعات قبلی $ را برای سند فعلی تنظیم کردیم ، باید مقدار قبلی را از مقدار فعلی تفریق کنیم. ما یک زمینه مشتق شده دیگر "تفاوت" خواهیم داشت که نشان دهنده مقدار تفاوت بین مقدار فعلی و مقدار قبلی است:

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

بعد از اینکه داده های نماد را با اطلاعات افزایش و از دست دادن برای هر سند غنی کردیم ، می توانیم با در نظر گرفتن 14 نقطه داده قبلی ، پارتیشن بندی بیشتری را برای بدست آوردن میانگین حرکت در زمینه های سود و از دست دادن اعمال کنیم:

در اینجا ما همچنین از یک اپراتور تازه معرفی شده دیگر با نام $ documentnumber استفاده کردیم. در حالی که ما محاسبات را روی پنجره انجام می دهیم ، برای هر سند یک شماره پی در پی ارائه می دهیم ، زیرا اسنادی را که شماره سند کمتر از یا برابر با 14 است ، فیلتر خواهیم کرد (RSI پس از رسیدن حداقل 14 نقطه داده محاسبه می شود.) ما در مراحل بعدی فیلتر خواهیم کرد. در اینجا ، ما فقط تعداد سند را تنظیم می کنیم.

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

مقدار قدرت نسبی محاسبه شده است و اکنون زمان آن رسیده است که مقدار قدرت نسبی را برای عادی سازی داده ها بین 0 تا 100 صاف کنیم:

در زیر ، می توانید نمودار شمعدانی یک دقیقه ای و نمودار RSI را مشاهده کنید. پس از 14 نقطه داده ، RSI شروع به محاسبه می کند. برای هر بازه ، ما RSI را از طریق نمایش داده های تجمع با پردازش داده های قبلی آن نماد محاسبه کردیم:

نتیجه

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

در این پست ما به اپراتورهای Shift $ Shift و $ DocumentNumber که با MongoDB 5. 0 معرفی شده اند ، نگاه کرده ایم. اپراتور $ shift شامل یک سند دیگر در همان پنجره به سند فعلی برای پردازش داده های موقعیتی به همراه داده های فعلی است. در یک محاسبه شاخص فنی RSI ، معمولاً برای مقایسه نقطه داده فعلی با نقاط داده قبلی استفاده می شود و تغییر $ مراجعه به اسناد موقعیتی در یک پنجره آسانتر می شود. به عنوان مثال ، تفاوت قیمت بین نقطه داده فعلی و نقطه داده قبلی.

یکی دیگر از اپراتور تازه معرفی شده $ DocumentNumber است.$ DocumentNumber تعداد پی در پی برای اسناد مرتب شده را که بعداً در مراحل جمع آوری بعدی پردازش می شوند ، می دهد. در یک محاسبه RSI ، ما باید از محاسبه مقدار RSI برای 14 دوره اول داده استفاده کنیم و $ DocumentNumber به ما کمک می کند تا این اسناد را در مراحل بعدی در خط لوله جمع بندی شناسایی و فیلتر کنیم.

پلتفرم های تجاری...
ما را در سایت پلتفرم های تجاری دنبال می کنید

برچسب : نویسنده : مریم کاویانی بازدید : <-PostHit-> تاريخ : شنبه 6 خرداد 1402 ساعت: 13:58