برچسب: blur
دستکاری تصاویر (۶) – فیتلرها در Open CV و حذف نویز تصاویر
در قسمت قبلی با کرنلها و نحوه کارکرد آنها و استفاده از آنها برای ایجاد فیلتر روی تصاویر آشنا شدیم؛ حال با اعمال فیلتر روی تصاویر با استفاده از کتابخانه Open CV و توابع مربوطه آشنا میشویم.
اعمال فیلترهای دو بعدی رو تصویر
با استفاده از Open CV اعمال فیلترهای دو بعدی توسط کرنل بر روی تصاویر توسط تابع زیر انجام میشود:
این تابع یک تصویر را به عنوان اولین و یک ماتریس کرنل را به عنوان سومین ورودی خود گرفته و تصویر حاصل از اعمال کرنل بر روی تصویر داده شده را به عنوان خروجی برمیگرداند.
فیلتر محوی (Blur Filter)
همانطور که در پست قبل دیدیم برای محو کردن تصویر میتوانیم یک کرنل Moving Average را بر روی تصویر اعمال کنیم. این کرنل یک ماتریس با مجموع جملات ۱ است و هرچه کرنل بزرگتر باشد میزان تاری تصویر بیشتر خواهد شد.
کرنلی که در دفعه قسمت اول برای تاری استفاده شده است یک ماتریس ۳*۳ با عناصر ۱ است که از آنجا که مجموع عناصر ماتریس باید ۱ باشد تقسیم بر ۹ شده است. همچنین برای قسمت دوم از ماتریس بزرگتر ۵*۵ استفاده شده و تقسیم بر ۲۵ شده است.
برای اعمال فیلتر Blur میتواند از تابع اختصاصی زیر نیز استفاده کرد:
این تابع یک تصویر را به همراه سایز ماتریس کرنل مورد نظر گرفته و تصویر محو شده را با عنوان خروجی برمیگرداند.
دیگر فیلترهای Blur
در Open CV علاوه بر کرنل Box (کرنل Moving Average مورد استفاده تا الان) برای محو کردن تصویر لکرنلهای گوسین (Gaussian)، مدین (Median) و دوجانبه (Bilateral) نیز پشتیبانی میشوند.
فیلتر Gaussian Blur
این فیلتر محو کردن را به گونهای انجام میدهد که پیکسلهای نزدیکتر سهم بیشتری در نتیجه عملیات کراسکرولیشن و در نتیجه تصویر تار شده نهایی داشته باشند.
فیلتر Median Blur
این فیلتر متوسط مقدار پیکسلهایی که درون کرنل قرار میگیرند را به عنوان نحوه اجرای فیلتر Moving Average مقدار نهایی پیکسل قرار میدهد.
فیلتر Bilateral Blur
این فیلتر سعی میکند درحالی که تصویر را محو میکند لبههای تصویر را تیز و دست نخورده نگاه دارد. به دلیل همین ویژگی این فیلتر در حذف نویز کاربرد زیادی دارد.
حذف نویز تصویر
برای حذف نویز تصویر میتوان از تابع زیر که از روش میانگین گیری استفاده میکند کمک گرفت:
fastNlMeansDenoisingColored ( InputArray src , OutputArray dst , float h = 3 , float hColor = 3 , int templateWindowSize = 7 , int searchWindowSize = 21 )
پارامترهای تابع عبارتاند از:
- src : عکس مورد نظر برای حذف نویز
- dst : متغیری برای ذخیره کردن عکس خروجی – با دادن none به این پارامتر، خروجی تابع عکس خروجی خواهد بود.
- h : این پارامتر قدرت فیلتر را برای میزان شدت نور تنظیم میکند. هرچه مقدار این پارامتر بزرگتر باشد علاوع بر حذف نویز ممکن است از جزئیات تصویر نیز بکاهد و هرچه کوچکتر باشد جزئیات تصویر را نمیکاهد اما ممکن است نویزها را به درستی کاهش ندهد (بازه ۵ تا ۱۰ برای این پارامتر مناسب است).
- hcolor : همانند h برای مولفههای رنگی
- templateWindowSize : سایز گیره محاسبه کننده وزنها (باید عددی فرد باشد).
- searchWindowSize : سایز کرنل محاسبه کننده میانگین وزندار برای هر پیکسل (باید عددی فرد باشد).
بر اساس نوع تصویر چهار نحوه اجرای فیلتر Moving Average تابع محتلف برای کاهش نویز توسط روش میانگین گیری وجود دارد
- ()cv2.fastNlMeansDenoising : یا یک تصویر Grayscale کار میکند.
- ()cv2.fastNlMeansDenoisingColored : با یک تصویر رنگی کار میکند.
- ()cv2.fastNlMeansDenoisingMulti : با رشتهای از عکسهای Grayscale که با فاصله زمانی کم گرفته شدهاند کار میکند.
- ()cv2.fastNlMeansDenoisingColoredMulti : مانند قبلی برای عکسهای رنگی.
دستکاری تصاویر (۵) – فیلترها و کرنلها
در قسمت قبل با عملیاتهای ریاضی ماتریسها آشنا شدیم. در این قسمت میخواهیم به نحوه اعمال فیلترهای مختلف روی تصاویر با استفاده از عملیاتهای ریاضی روی ماتریس تصاویر بپردازیم.
برای شروع به چند تعریف نیاز داریم:
تصویر
همانطور که میدانید تصویر یک ماتریس است که در هر خانه مقادیر رنگ آن خانه (با توجه به نحوه اجرای فیلتر Moving Average سیستم رنگی مورد استفاده) قرارگرفته اند.
کانولوشن (Convolution)
کانولوشن درواقع یک عملگر ریاضی است که بر روی دو تابع اعمال شده و تابع سومی را به صورت انتگرال حاصلضرب دو تابع که یکی از آنها برعکس شده و روی یکدیگر میلغزند تعریف میکند.
کراسکرولیشن (Cross-correlation)
کراسکرولیشن میزان شباهت و ارتباط دو دسته اطلاعات را میسنجد. این عملگر همانند عملیات کانولوشن بوده با این تفاوت که در این عملیات تابع عبوری برعکس نمیشود.
در پردازش تصاویر، توابع ما درواقع ماتریسهای تصاویر هستند. به ماتریس عبوری (اعمال شده) به تصویر کرنل میگوییم. همچنین در پردازش تصاویر (در عموم کتابخانههای مطرح و همینطور Open CV) از عملیات کراسکرولیشین استفاده میشود.
کرنل، ماتریس عموما کوچکی است که روی تصویر اعمال میشود. از کاربردهای آن میتوان در پردازش تصویر برای اعمال فیلترهای مختلف برروی عکس و در یادگیری ماشین برای ویژگییابی اشاره کرد.
حال که با تعاریف اولیه مورد نیاز آشنا شدیم به نحوه استفاده و نتیجه آن روی تصاویر میپردازیم:
اعمال کرنل روی تصویر
در اعمال کرنل روی تصویر نیاز داریم تا با عبور کرنل بر روی تصویر و انجام عملیات کراسکرولیشن نتیجه عملیات در خانهای از خانههای کرنل (که روی تصویر قرارگرفته اند) نگاشته شود. برای اینکار عموما خانه وسط ماتریس کرنل را در نظر میگیرند؛ درنتیجه عموم کرنلهای مورد استفاده ماتریسهایی فرد-فرد هستند.
برای عبور کرنل بر روی تصویر میتوان دو رویه داشت:
- کانولوشن بدون حاشیهگذاری (Valid Padding Convolution)
عبور کرنل به صورتی که خانه اول ماتریس کرنل (خانه [۰.۰]) بر روی خانه اول ماتریس تصویر بیافتد و کرنل از تصویر خارج نشود.
این روش باعث از دست رفتن قسمتهایی از حاشیه تصویر میشود.
- کانولوشن با حاشیهگذاری (Same Padding Convolution)
عبور کرنل به صورتی که خانه مرکز کرنل (خانهای که برای نوشتن مقادیر عملیات در هر مرحله انتخاب شده) بر روی خانه اول ماتریس تصویر بیافتد.
در این حالت کرنل میتواند از تصویر خارج شود که مقادیر خارج از تصویر عموما صفر در نظر گرفته میشوند.
توجه کنید که در تصویر بالا حرکت کرنل بیشتر از یک پیکسل است؛ برای همین تصویر خروجی از ورودی کوچکتر شده است.
به جز دو روش فوق برای جلوگیری از کوچک شدن تصویر میتوان از روشهای تکرار حاشیه تصویر (Edge Value Replication) و یا گسترش آینهوار (Mirror Extension) نیز استفاده کرد:
از راست به چپ: گسترش آینهوار، تکرار حاشیه تصویر و حاشیهگذاری
استفاده از کرنلها
چند مثال از کرنلها با فرض اینکه خانه وسط هر کرنل برای نوشتن مقادیر استفاده شود و همچنین خانه وسط بر روی هر پیکسل قرارگیرد و کرنل در هر مرحله یک پیکسل جابهجا شود :
کرنل تطابق
با توجه به کرنل با جابهجا شدن روی تصویر تغییری روی تصویر اعمال نمیکند چرا که با قرارگیری روی هر پیکسل تنها مقدار همان پیکسل بدون تغییر روی خودش نوشته میشود.
کرنل انتقال به چپ
با توجه به کرنل با جابهجا شدن روی تصویرو قرار گیری روی هر پیکسل مقدار پیکسل سمت راستش را جایگزین آن میکند. درنتیجه تصویر ۱ پیکسل به سمت چپ میرود.
حال که با نحوه اعمال کرنلها و نتیجه حاصل از آن آشنا شدیم، به بررسی استفاده از کرنلها برای ایجاد فیلتر روی تصاویر میپردازیم:
استفاده از کرنلها برای ایجاد فیلتر روی تصاویر
فیلتر محوی (Blur Filter)
با عبور یک کرنل Moving Average (کرنل تصویر پایین) که کرنلی با مجموع مقادیر ۱ است و مقدار هر خانه را با میانگین مقدار خانههای همسایهاش جایگذین میکند، میتوان تصویر را محو کرد.
این کرنل تغییرات ناگهانی در رنگ تصویر را ملایمتر میکند. به تصویر زیر که عبور کرنل بالا بر روی یک ماتریس است دقت کنید:
همچنین با افزایش سایز کرنل میتوان میزان تاری تصویر را افزایش داد:
فیلتر تیزی (Sharpen Filter)
کرنل زیر را در نظر بگیرید:
میتوان این کرنل را به صورت زیر باز کرد:
ماتریس سمت راست همان کرنل مربوط به فیلتر محوی (Blur) است که تصویر را بدون جزئیات تولید میکند؛ با تفریق این ماتریس از خود تصویر (ماتریس وسط) جزئیات تصویر اصلی حاصل میشود؛ حال با اضافه کردن این ماتریس به خود تصویر میتوان جزئیات تصویر را به آن افزود و تصویری با جزئیات نمایانتر شده تولید کرد.
نتیجه حاصل از جدا کردن جزئیات و اضافه کردن آن به عکس را میتوان به ترتیب در سطرهای تصویر زیر مشاهده کرد:
بخش سوم: فیلترهای هموار در سیستمهای پردازش سیگنال – DAC :
در اکثر DAC های تجاری از نگهدار مرتبهی صفر (zero-order-hold) استفاده میشود. این نوع نگهدار بدین صورت عمل میکند که عدد باینری ورودی را به سطح ولتاژ متناظر تبدیل میکند و آن مقدار به اندازهی T ثانیه نگه میدارد. بنابراین شکل موج تولید شده به وسیلهی DAC به شکل پلکانی است. همانطور که در شکل پایین مشخص است، یک شکل موج پلکانی به دلیل وجود لبههای تیز در گوشههای مستطیلها دارای فرکانسهای بالایی میباشد. چنانچه که در اولین شکل بخش اول نیز نشان داده شده است، برای بازسازی موج خروجی باید خروجی DAC از یک فیلتر هموار موسوم به فیلتر بازسازی بگذرد. این فیلتر پایینگذر باعث صاف شدن لبههای تیز مستطیلها میشود.
خروجی هموار شده به صورت نقطهچین در شکل فوق نمایش داده شده است. نکتهی کاربردی بسیار مهم در طراحی این فیلتر پایینگذر مشخصهی فرکانس قطع آن میباشد که دقیقاً مشابه با فیلتر antialiasing ورودی دارای فرکانس قطع ِ$_>\le _>/2$ میباشد.
در این ارتباط توجه به چند نکته بسیار مهم است:
۱-فیلترهای پایین گذر که به اختصار به آنها LPF میگوییم تنها برای ساخت سیگنالهای هموار از روی خروجی پلهپلهای DACها مورد استفاده قرار نمیگیرند و کاربردهای عامتری را شامل میشوند.
۲-اصطلاح فیلترهای هموار، Smoothing Filter تنها در مورد دستیابی به خروجی هموار از روی سیگنال حاصل از یک DAC تجاری با نگهدار مرتبهی صفر، به کار نمیرود. این اصطلاح معانی کاربردی عامتری دارد که یکی دیگر از مفاهیم کاربردیای که این اصطلاح به آن اطلاق میشود، فیلترهای حذف نویز است.
به طور مثال در این ارتبط میتوان به فیلترهای زیر اشاره کرد:
- Median Filter
- Moving Average Filter
- Savitzky-Golay Filter
- Gaussian Filter
در تکمیل فیلترهای هموار (کننده) با کاربرد کاهش نویز، در آینده چند مقالهی جداگانه به اضافهی تکنیکهای عملی پیادهسازی و نکات کاربردی مربوط به پیچیدگیهای محاسباتی هر یک و مقایسهی عملی بین چند مورد ارائه خواهد شد. برای اشارهی گذرا به یکی از دستهبندیهای رایج بین این فیلترها میتوان به خطی یا غیرخطی بودن هر یک از این فیلترها اشاره کرد. به طور مثال فیلتر گاوسین یکی از فیلترهای خطی میباشد، بنابراین میتوان با کانوالو کردن پاسخ ضربهی تابع آن با مقادیر ورودی، خروجی فیلتر شده را به دست آورد.
در پستهای جداگانه در ارتباط با پیادهسازی عملی و سختافزاری عملیات اعمال چنین فیلترهای صحبت خواهیم کرد.۳-فیلترهای همواری که از آنها با عبارت فیلترهای بازسازی، Reconstruction Filter هم یاد میشود، به همان فیلترهایی اطلاق میشود که در هموار سازی خروجی آیسیهای مبدل دیجیتال به آنالوگ DAC با نگهدار مرتبهی صفرم، مورد استفاده قرار میگیرند. اگرچه این فیلترها نیز در دستهی فیلترهای پایینگذر قرار میگیرند،
اما عمدتاً برای پیادهسازی کاربردی آنها سراغ فیلترهایی مانند:
- Butterworth Filter
- Chebyshev Filter
- Bessel Filter
- Elliptic Filter
۴-همانطور که اشاره شد،فرکانس قطع هر دو فیلتر Antialiasing-Filter در ورودی و قبل از مرحلهی نمونه برداری توسط آیسی ADC و Reconstruction Filter در مرحلهی خروجی و بعد از تبدیل نمونههای دیجیتال پردازش شده به سیگنال آنالوگ پلهپلهای پس از عبور از آیسی DAC، دقیقاً نصف فرکانس نمونهبرداری میباشد.
۵-نکتهی بسیار مهم دیگری که باید همینجا به آن اشاره کرد، این است که فیلتر هموار سازی که در خروجی قرار میگیرد در دستهی فیلترهای آنالوگ جای دارد. این یک مفهوم کاربردی بسیار مهم برای یک مهندس به عنوان طراح یک سیستم پردازش سیگنال DSP میباشد.
همین جاست که نیاز به وجود دانش آنالوگ مناسب در اکثر سیستمهای واقعی پردازش سیگنال DSP احساس میشود.
در تمام طراحیهای عملی و محصولات تجاری و پروژههایی که به یک تیم طراح سفارش داده میشود، در عمل نیاز به دانش آنالوگ برای طراحی فیلترهای آنالوگ وجود دارد. البته غالب این فیترهای آنالوگ بر اساس اپ-امپها پیادهسازی میشود. در آینده سعی خواهیم کرد در صورت درخواست دوستان همراه یک بخش مجزا در ارتباط با طراحی عملی فیلترهای آنالوگی که در پروژههای کابردی خود از آنها استفاده میکنیم، اضافه کنیم و مثالهایی از انواع فیلترهای باترورث، چپیشف، بسل و تامپسون ارائه کنیم. یک نکتهي کاربردی دیگری که در پروژههای عملی وجود دارد به ارتباط بین DAC با اپ-امپ مورد نحوه اجرای فیلتر Moving Average استفاده برمیگردد. به طور مثال برای DACهای که برای کارهای صوت استفاده میشود، یک خانوادهی به خصوص از اپ-امپها باید مورد استفاده قرار گیرد.
این موارد اگرچه در مبنای تئوری حود به مطالعه و بررسی کتابهای مرتبط وابسته است، اما در عمل نیاز به تجربه و مطالعهی دیتاشیتها و User Manualها دارد. در بخش بعد اشارهای به بحث مهم مبدلهای داده و معرفی AICها و CODECها خواهیم داشت.
فیلترمکدی
فیلترمکدی از فیلتر های بسیار کاربردی به حساب میآید و استفاده بسیاری در میان معاملهگران دارد در این مقاله هدف ما معرفی انواع فیلترمکدی و استفادههای آنها است اما قبل از اون بریم ببینیم اصلا مکدی چی هست؟
آنچه در این قسمت به آن می پردازیم
فیلترمکدی
فیلترمکدی از فیلتر های بسیار کاربردی به حساب میآید و استفاده بسیاری در میان معاملهگران دارد در این مقاله هدف ما معرفی انواع فیلترمکدی و استفادههای آنها است اما قبل از اون بریم ببینیم اصلا مکدی چی هست؟
اندیکاتور مکدی
خود اسم MACD مخفف Moving Average Convergence Divergence همانطور که میبینید اسم آن از 2 قسمت moving average که همان میانگین متحرک است و convergence و divergence که به معنای همگرایی و واگرایی است تشکیل شده است که به صورت کلی به معنای همگرایی و واگرایی میانگین متحرک است.
این اندیکاتور در دسته اسیلاتورها قرار میگیرد.
نکتهای که باید به یاد داشته باشید این است که این اندیکاتور برای پیش بینی نیست و بیشتر مواردی مثل مشخص کردن قدرت روند یا امکان شکست یک سطح را نشان میدهد.
معمولا شیوه نمایش مکدی به 2 صورت هست که البته کاربرد متفاوتی ندارند و تفاوت آن ها در نحوه نمایش است.
عکس اول مکدی کلاسیک و عکس دوم مکدی جدید را نشان میدهد.
یکی از استفادههای بارز این اندیکاتور برای مخش کردن واگرایی و همگرایی است البته علاوه بر آن ها ما فیلترمکدی نیز میتوانیم داشته باشیم که در آن ها خود اندیکاتور به تنهایی سیگنالهای متفاوتی را میدهد.
در ادامه فیلترها را نیز توزیع میدهیم.
اما قبل از آن یک آشنایی با یکی از کاربردهای میشه گفت عمومی مکدی داشته باشیم.
واگرایی در مکدی
بیشتر استفاده از واگراییها از دو دسته regular divergence یا واگرایی معمولی و hidden divergence یا واگرایی پنهان است.
دو مدل RD داریم:
به صورت کلی RD تغییر دهنده روند است.
این مدل در انتهای روند نزولی رخ میدهد و به اینصورت است که در چارت کف جدید پایین تر از کف قبلی است اما در مکدی برعکس است و همین قضیه موید بازگشت روند است.
این مدل برعکس مدل قبلی است و در انتهای یک روند صعودی قرار میگیرد به اینصورت که سقف جدید از سقف فبلی بالاتر است اما در مکدی عکس این قضیه اتفاق افتاده است و بازهم این مسئله میتواند نشان دهنده بازگشت روند باشد.
از HD نیز دو مدل داریم:
به صورت کلی این واگرایی نشاندهنده ادامه روند است
در این حالت در روند صعودی ما کف ها را به هم وصل میکنیم و کف جدید بالاتر از کف قبلی است و در مکدی برعکس است.
در این بخش شما باید در روند نزولی باید سقفها را به هم وصل کنید و سقف جدید از سقف قبلی پایین تر است و در مکدی برعکس است.
بعد از واگرایی میرسیم به فیلترمکدی که میشه گفت شامل سیگنالهایی میشه که از خود مکدی فقط در آن ها استفاده میشود.
اول از همه باید اجزای مکدی را بشناسیم.
مکدی از 2 خط سیگنال و خط مکدی و قسمتهای میله مانندی به هیستوگرام تشکیل شده است
انواع فیلتر مکدی
یکی از سیگنالهایی که طبق فیلترهای مکدی میشود پیدا کرد تقاطع خط سیگنال و مکدی است که اگر
به بالا باشد سیگنالی مثبت است و اگر رو به پاین باشد سیگنالی منفی است.
سیگنال دیگری که از فیلترمکدی میتوان گرفت بین هیستوگرام و خط مکدی مثبت و منفی است که اگر
هیستوگرام پایین تر از خط مکدی مثبت باشد سیگنال فروش و اگر پایین تر از خط مکدی منفی باشد سیگنال مثبت و خرید است.
یکی دیگر از انواع فیلترمکدی که میتواند تایدیه برای انواع دیگر سیگنالها باشد تغییر مکدی از مثبت به منفی و برعکس آن است برای این فیلتر بهتر است از نوع جدید مکدی استفاده کنید که تغییر از منفی به مثبت میتواند سیگنالی برای خرید باشد و تغییر از مثبت به منفی نوعی سیگنال فروش است.
موج سوم و فیلتر مکدی
شما می توانید به وسیله موج سوم از مکدی انواع استفادهها را داشته باشید( هم انواع واگرایی و هم انواع فیلترها و سیگنال ها)
کافی است بعد از ورود به سایت به یکی از قسمتهای تکنیکال نحوه اجرای فیلتر Moving Average پیشرفته و ساخت استراتژی بروید.
در تکنیکال پیشرفته می توانید سیگنال ها را به تنهایی انتخاب کنید و در استراتژی می تونید اون رو با سایر سیگنال ها ترکیب کنید.
بعد از ورود به قسمت های گفته شده برای سیگنال های مکدی باید به قسمت های بالا مراجعه کنید.
نحوه استفاده از میانگین متحرک
یک راه شیرین برای استفاده از میانگین های متحرک به شما کمک می کند که روند را تعیین کنید. ساده ترین راه این است که فقط یک میانگین متحرک را در نمودار نشان دهیم. وقتی عملکرد قیمت تمایل دارد که بالاتر از میانگین متحرک بماند، این نشان می دهد که قیمت دریک روند صعودی عمومی است.
اگر عملکرد قیمت تمایل دارد که کمتر از میانگین متحرک بماند، این نشان می دهد که قیمت در یک روند نزولی است. مشکل این امر این است که این خیلی ساده است. بیایید بگوییم که دلار/ین در روند نزولی بوده است. اما یک گزارش خبری بیرون آمد که باعث شد روند افزایش یابد.
می بینید که قیمت در حال حاضر بالاتر از میانگین متحرک است. بنابراین شما فقط آن را انجام می دهید. شما یک بیلیون واحد را خریداری می کنید. زیرا مطمئن هستید که دلار/ین بالا می رود. ای وای! شما فریب خوردید!
همانطور که معلوم شد، معامله گران فقط به اخبار واکنش نشان می دهند اما روند ادامه یافت و قیمت همچنان به سمت پایین میرود! کاری که برخی از معامله گران انجام می دهند – و آنچه ما پیشنهاد می کنیم که شما نیز انجام دهید – این است که دو مقیاس متحرک در نمودار را به جای فقط یکی نشان دهید.
این به آنها یک سیگنال واضح تر نشان می دهد که آیا جفت به سمت بالا یا پایین می رود بسته به ترتیب میانگین های متحرک. بیایید توضیح دهیم. در روند صعودی، میانگین متحرک ”سریعتر” بالاتر از میانگین متحرک “کندتر” است و برعکس.
به عنوان مثال، بگذارید بگوییم ما دو MA داریم، یکی 10 دوره ای و یکی 20 دوره نحوه اجرای فیلتر Moving Average ای. در نمودار شما، اینگونه به نظر می رسد: در بالا نمودار روزانه دلار/ین است. در طول روند صعودی، 10 SMA بالاتر از 20 SMA است.
همانطور که می بینید، می توانید از میانگین های متحرک کمک بگیرید که نشان دهید که آیا یک جفت روند بالا یا پایین دارد. ترکیب این با دانش خود در مورد خطوط روند، به شما کمک کند تا تصمیم بگیرید که آیا یک ارز باید بخرید یا بفروشید.
شما همچنین می توانید بیش از دو میانگین متحرک را در نمودار خود امتحان کنید. فقط تا زمانی که خطوط به ترتیب هستند.
(از تندترین به کندترین در روند صعودی یا کندترین به تندترین در روند نزولی). سپس می توانید بگویید که آیا این جفت در روند صعودی قرار دارد یا در روند نزولی.
آموزش کامل moving averages (مووینگ اوریج ها)
قبل از اینکه وارد مبحث مووینگ اوریج ها (moving average) ها شویم لازم است مختصری در مورد اندیکاتورها بگوییم.
اندیکاتورها کلا در سه گروه طبقه بندی می شوند:
۱-Trend (روند نماها یا تعقیب کننده های قیمت):
این نوع اندیکاتور ها معمولا روی چارت قیمت نمایان می شوند مانند مووینگ اوریجها، بولینگر باند، ایچی موکو، سار و …..
۲-Oscillator (نوسان نماها):
این نوع اندیکاتور در زیر نمودار قیمت بصورت هیستوگرام و نوسانگر نمایان می شوند مانند: مک دی، RSI، استوکاستیک و ….
۳-Volumes (حجمی):
اندیکاتور های حجمی نیز در زیر گراف قیمت نمایان می شوند و اگر چه دقیق نیستند ولی در بیانگر حجم معاملات هستند مانند: MFI ، OBV و ….
توضیحات کامل تر درباره اندیکاتورها و تفاوت آن ها با اسیلاتور را در این مطلب می توانید بخوانید.
مووینگ اوریج ها (MA) جزو اندیکاتورهای تعقیب کننده قیمت هستند و به علت اینکه در فرمول داخلی اکثر اندیکاتورها به نوعی و با تقدم و تاخر خاصی از فرمول مووینگ اوریج ها استفاده شده به مووینگ اوریج ها مادر اندیکاتور ها را نیز اطلاق می شود.
فرمول تهیه مووینگ اوریج ها از ساده ترین تا پیچیده ترین آنها بر یک مبنای کلی استوار است و آن میانگین گیری و معدل گیری از قیمت است به این صورت که اگر یک مووینگ اوریج را بر روی چارت بیندازید یک گراف و یک نموداری را در کنار قیمت مشاهده می کنید که تا حد زیادی نوسانات قیمت را فیلتر کرده و دنبال قیمت در حرکت است.
میانگین متحرک، میانگینی از داده های بازار در بازه زمانی خاص می باشد. میانگین متحرک عموما به عنوان یک اندیکاتور تکنیکال برای یکدست کردن داده های بازار برای تشخیص روند شناخته می شود.
نمونه ای از یک مووینگ اوریج
در حالت ساده فرمول ساخت یک مووینگ اوریج از این فرمول است SUM(CLOSE, N)/N که SUM به معنای مجموع و N به معنای تعداد دوره و Close قیمت پایانی قیمت در آن دوره است. به جدول زیر نگاه کنید تا موضوع برایتان بهتر جا بیافتد.
نکته : وقتی ما یک مووینگ اوریج با پریود زمانی ۱۰۰ را روی تایم فریم روزانه قرار می دهیم به معنای این است که یک مووینگ اوریج ۱۰۰ روزه روی چارت داریم و هنگامی که همین مووینگ اوریج را در تایم پنج دقیقه قرار می دهیم به این معناست که ما یک مووینگ اوریج صد تا پنج دقیقه روی چارت انداختیم. پس در کل مووینگ اوریجی که در چارت استفاده می شود با تایم فریم آن نسبت مستقیم دارد.
انواع مووینگ اوریج ها بر اساس فرمول داخلی آنها :
شماره | نام کامل | نام مخفف |
۱ | Simple Moving Average | SMA |
۲ | Exponential Moving Average | EMA |
۳ | Smoothed Moving Average | SMMA |
۴ | Linear Weighted Moving Average | LWMA or WMA |
تفاوت این مووینگ اوریج ها به دو نکته اساسی بر میگردد، اول اینکه در EMA و WMA به قیمت های جدید و لحاظ کردن دوره در فرمول خود بها و وزن بیشتری می دهند و EMA حساس تر عمل می کند.
کاربردهای مووینگ اوریج ها:
به عنوان حمایت و مقاومت داینامیک (پویا):
این به این صورت است که شما یک مووینگ اوریج با پریود زمانی خاص را روی چارت می اندازید و به واکنش قیمت در گذشته توجه می کنید مثلا یک سهم به موونیگ ۵۵ در تایم روزانه حساس است. هر سهامی یک مووینگ دارد که به آن حساس است و وظیفه شما این است که آن را پیدا کنید.
سطوح مقاومت در قیمت دقیقا بر روی مووینگ تشکیل شده است.
سطوح حمایت در قیمت دقیقا بر روی مووینگ تشکیل شده است.
از کراس و برخورد مووینگ با هم می توان سیگنال خرید و فروش گرفت:
در این روش به حداقل دو مووینگ اوریج نیاز است، یکی با پریود زمانی بالا یعنی کند تر و دیگری با پریود زمانی کوچک یعنی تند تر. هر زمان مووینگ تند تر به زیر مووینگ کندتر آمدف سیگنال فروش صادر می شود و هر وقت مووینگ تند تر بر روی مووینگ کند تر قرار گرفت، سیگنال خرید صادر می شود که البته ضعف این روش در بازارهای رنج است که دائم مووینگ ها در هم پیچیده و تنیده می شوند ولی در بازارهای روند دار عالی عمل می کنند.
عملکرد ضعیف مووینگ اوریج ها در بازار رنج
استفاده از خاصیت دافعه و جاذیه در میان مووینگ اوریج ها:
در این روش شما به حدودا ۱۰ عدد مووینگ اوریج با پریودهای زمانی مناسب نیاز دارید. مبحثی که در اینجا وجود دارد یک اصل جالب است و آن این است که وقتی همه ی این ده مووینگ اوریج به هم فشرده می شوند به مانند یک فنر فشرده شده عمل می کنند و قدرت زیادی در آنها ذخیره می شود که این انرژِی می تواند در جهتی خاص آزاد شده و منجر به افرایش یا کاهش شدید قیمت شود. که در این حالت مووینگ ها به تدریج از هم دور می شوند (دفع می شوند).
ما برای راحتی کار شما برای این قسمت یک تمپلیت برای متاتریدر قرار می دهیم که تنظیمات این مووینگ ها در آن انجام شده است. (لینک دانلود)
قانون فشردگی قیمت را به بالا پرتاب کرده است.
قانون فشردگی قیمت را به پایین پرتاب کرده است.
قانون فشردگی باعث رشد شدید قیمت شده است.
امیدواریم این مطلب آموزشی برای شما مفید بوده باشد. از اینکه فیماچارت را دنبال می کنید سپاسگزاریم.
دیدگاه شما