سابقه و هدف

  • 2022-02-3

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

"در امور مالی یک خط روند یک خط محدود برای حرکت قیمت یک اوراق بهادار است. این شکل گرفته است که یک خط مورب را می توان بین حداقل سه یا بیشتر از قیمت نقاط محوری کشیده شده . یک خط می تواند بین هر دو نقطه کشیده شده, اما به عنوان یک خط روند واجد شرایط نیست تا زمانی که تست شده. از این رو نیاز به نقطه سوم, تست.”

نیاز سه یا چند نقطه ای جایی است که تقریبا همه تلاش های بی اهمیت کوتاه می شوند. بنابراین ما در مورد جزییات فنی پشت هر جنبه از اجرای این بحث خواهیم کرد. این بیشتر می تواند مورد استفاده قرار گیرد برای شناسایی الگوی نمودار های مختلف مانند اشکال مثلثی که شامل مثلث, قاچ, پرچم و اشکال موازی مانند پرچم, دو/سه گانه تاپ/پایین, سر و شانه, مستطیل اگر چه همه از این اغلب نیاز به تنها 2 امتیاز, هنوز بدون شک نشانه تقویت اگر با پیدا شده است 3 در صورت وجود. این موضوع جالب برای بحث بعدی ذخیره خواهد شد.

برپایی

ما از پایتون 3 (اگرچه هر نسخه از 2.7 به بعد باید کافی باشد) برای این کار استفاده خواهیم کرد زیرا دارای کتابخانه های خوبی است که برای مقابله با مجموعه داده ها طراحی شده اند و بسیار ساده است. ابتدا داده های سهام باید واکشی شوند. برای این سری از مثالها از شاخص رایج اس اند پی 500 (تیکر: ^جی پی سی) استفاده خواهد شد تا ارتباط عملی داشته باشد.

کتابخانه پایتون یفینانس به راحتی می تواند کل داده های تاریخی را واکشی کند. به عنوان مثال اهداف راحت است که کمی کمتر از 4 سال داده یا 1000 امتیاز گذشته را مصرف کنید. این داده ها را به عنوان یک چارچوب داده پاندا برای نمایه سازی مناسب و سایر عملیات برمی گرداند:

برای نتایج تجدید, مجموعه داده ها از بسته شدن در اکتبر گرفته شد 7, 2019 و یک نظر فیلتر به این اثر نشان داده شده است.

نقاط محوری

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

همه قله ها و فرورفتگی ها روش ساده لوحانه

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

همه قله ها و فرورفتگی ها روش تکراری متوالی

مسلما فروپاشی مکانهایی که قیمت ثابت باقی میماند و کد قبلی با بازیابی شاخصهای متفاوت بر این کاستی غلبه کرده و همه را با یک زمان واحد در بازه مسطح فروریخته مشخص میکند. حذف تکراری متوالی قبل از محاسبه فوق به عنوان ساده به عنوان: تاریخچه.نزدیک.محل [تاریخچه.نزدیک.شیفت(-1)!= تاریخچه.نزدیک] . با این حال شاخص ها نیاز به محاسبه مجدد دارند زیرا می توانند تغییر کنند:

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

روش تمایز عددی

با این حال یک رویکرد بسیار ظریف تر به این موضوع استفاده از مشتق عددی قیمت بسته شدن برای شناسایی نقاط است. مشتق اول نرخ تغییر و یا به طور موثر حرکت یا سرعت قیمت بسته شدن است, در حالی که مشتق دوم نشان دهنده نرخ تغییر از مشتق اول و یا شتاب خود را. تمایز طبیعی در اینجا اعمال نمی شود زیرا یک سری زمانی گسسته به ابزارهای تجزیه و تحلیل عددی گسسته نیاز دارد. چندین مزیت وجود دارد از جمله اینکه مشتق عددی داده ها را با در نظر گرفتن تمام نقاط در یک محدوده معین از نقطه محاسبه نرخ تغییر صاف می کند. به عنوان مثال روش استنسیل 5 امتیازی که مقداری افزایش قبل و جلو و همچنین افزایش مضاعف قبل و جلو را همراه با خود نقطه در نظر می گیرد. کتابخانه فیندیف این محاسبات را حتی با استفاده از روش های تقریب مرتبه بالاتر ساده و دقیق می کند:

با مشتق اول و دوم محاسبه, درجه ای از صاف به طور موثر رخ داده است به ما قله برجسته و فرورفتگی. اینها مکانهایی هستند که مشتق اول 0 است زیرا هیچ حرکتی نشان دهنده تغییر جهت نیست. مشتق دوم مثبت یا منفی بودن به ترتیب یک فرورفتگی یا اوج را نشان می دهد ابیات رو به بالا شتاب رو به پایین نشان دهنده واژگونی جهت است. با این حال, مشتق اول دقیق از 0 بسیار بعید است. در عوض یک مقدار در یک طرف 0 و سپس طرف دیگر واقع بینانه است که از زمان مشتق 0 بین دو روز اتفاق می افتد. بنابراین بر این اساس, قیمت بسته شدن بالاتر یا پایین تر خواهد شد بین دو نقطه که یک انتخاب 0 متقاطع رخ داده است:

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

در حال حاضر برای ریاضی کنجکاو که نمی خواهید به ترک این محاسبات صرفا به یک کتابخانه مانند فیندیف, من پیشنهاد می کنم که چگونه برای محاسبه یک نقطه در این داده ها (2019-09-27 بسته در 2961.79, قبل بود 2977.62 و موفقیت خود را 2976.74). این ضرایب خاص خود را محاسبه می کند تا روشهای مرتبه بالاتر را فعال کند.

برای یک خط پیوسته این صرفا شیب خط است و با نقاط بعدی محاسبه با در نظر گرفتن اختلاف است بله مقادیر. اما مشتق در واقع حد △ایکس بیش از △بله به عنوان as ایکس به 0 نزدیک می شود. در نظر گرفتن چنین محدودیتی در نقاط داده گسسته نیاز به واقع گسترش مقدار از نقاط در حال نگاه.

این به این معنی است که از لحاظ فنی یک نشت داده در اینجا وجود دارد هر چند این یک بی اهمیت و غیر مربوط است زیرا مقادیر بعدی برای داده های گذشته در نظر گرفته می شود. این ظریف و به خصوص مهم نیست, هر چند اگر پیدا کردن خطوط روند با استفاده از داده های بسیار اخیر در پنجره فاصله زمانی از مشتق عددی, شاید روش های مختلف ذکر شده بهتر است. چند روز ما صحبت کردن در مورد? خب این بستگی به دقت, به طور پیش فرض تنها 1 روز در هر طرف پنجره, به جز در سمت چپ ترین و راست ترین مقادیر که نگاه 2 روز جلوتر یا پشت.

بنابراین من کد نشان دادن محاسبات دست از یک نقطه مرکزی را:

این بازده خواهد داشت:

بنابراین پیدا کردن با استفاده از ضرای ب-0.5, 0, 0.5 و اختلاف زما ن-1, 0 و 1 برای تمام نقاط مرکز. البته در سمت راست و سمت چپ از مقادیر جلو و عقب استفاده می کند. محاسبه تمام مشتقات مستقیم به جلو است. جزییات محاسبه ضرایب اختلاف محدود و اندازه پنجره در اینجا خارج از محدوده است اما جداول و روش هایی برای محاسبه راحت وجود دارد.

این بازده به عنوان تصویر نشان می دهد:

  • -0.44000000000005457=-2977.62/2+2976.74/2

برای شتاب:

و ما همچنین مقدار مورد انتظار را می بینیم:

  • 30.779999999999745=2977.62–2961.79*2+2976.74

دقت را می توان افزایش داد اگرچه به نظر می رسد پیش فرض 1 استفاده شده است بنابراین نه از شابلون 5 نقطه ای که من به شما اشاره کردم اما تکنیک خاص خود را برای تولید جبران ها و ضرایب دارد که ویکی پدیا نیز به جزییات در مورد. ضرایب استنسیل 5 نقطه ای که قبلا تقسیم شده اند را می توان با: چاپ(پیدا کردن.ضرایب (مشتق=1, حساب=3)). سپس به نظر می رسد 2 روز جلوتر و پشت به جای فقط 1 با [1/12, -2/3, 0, 2/3, -1/12] یکسان و صرفا به ترتیب معکوس همانطور که نشان داده شده است. توجه داشته باشید که اگ=3 برای دقت بیشتر می تواند به عنوان یک پارامتر اضافی به سازنده یاب منتقل شود.

روش های خط روند

انتخاب 2 نقطه بسیار ساده خواهد بود زیرا هر جفت نقطه حداقل یا حداکثر یک خط برای کل خطوط ن(ن-1) کل خطوط مناسب هستند زیرا هندسه اساسی نشان می دهد که 2 نقطه منحصر به فرد یک توصیف از یک خط است. با این حال 3 امتیاز را می توان به روش های ن(ن-1)(ن-2) انتخاب کرد و چنین شمارش از پیچیدگی الگوریتمی است ای(ن3). این نقاط همیشه روی یک خط مستقیم نخواهند بود بنابراین درجاتی از خطا نیز وجود خواهد داشت. درجه خطا مهم خواهد بود زیرا ما باید مجموعه های نادرست را فیلتر کنیم و شامل موارد صحیح باشیم.

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

برای 3 امتیاز, اگر ما متناسب با خط به 2 نقاط, ما می توانیم مقدار فاصله از این خط به نقطه 3 در امتداد محور بله محاسبه. این فاصله به عنوان یک اندازه گیری خطا کاملا دلخواه است اما چون این امر می تواند متفاوت باشد بسته به این که 2 امتیاز ما را انتخاب کنید از 3 گزینه های ممکن, 2 بودن اضافی: اول و دوم و سوم. همه از این فرمول و نمونه های خود را به صورت بصری داده:

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

دو خطای استاندارد وجود دارد که یکی خطای شیب و دیگری خطای رهگیری است. برای شیب خطا بر اساس مجموع باقیمانده های مربع است که تا حدی با تقسیم بر تعداد نقاط منهای 2 محاسبه می شود جایی که تعداد نقاط در این حالت 3 است و باعث می شود این اصطلاح ناپدید شود بنابراین فقط ریشه مربع مجموع مربع های بله اختلاف بیش از مجموع مربع های ایکس تفاوت. خطای رهگیری خطای شیب تنظیم شده توسط است ایکس مقادیر. خطای شیب کافی است نشانگر خطا بنابراین این اعمال خواهد شد. لازم به ذکر است خطای شیب و رهگیری اتحاد جماهیر شوروی فرض بر این است که واریانس نقاط ثابت است که ممکن است چنین نباشد. با فرض اینکه خطاهای شیب و رهگیری استاندارد به طور معمول توزیع می شوند که احتمالا درست نیست, این نشان می دهد که 68% درصد نقاط در مقدار مثبت یا منفی این خطا هستند, جایی که خطای دو برابر 95% و خطای سه برابر 99.7% طبق منحنی زنگ انحراف استاندارد است. بنابراین از واریانس تضمین شده نیست و نه یک توزیع نرمال است, چرا حتی استفاده از هر چیزی مشتق شده از اتحاد جماهیر شوروی? زیرا ما در مورد توزیع فرض نمی کنیم بلکه صرفا مقایسه مقادیر خطا با یک خطای درصد ثابت است, مورد استفاده ما خطای شیب را برای انتخاب کافی می کند. اتحاد جماهیر شوروی هنوز هم می تواند حفظ شود زیرا می تواند برای همان هدف سازگار باشد اگرچه نتایج بسیار مشابهی دارد. با این حال, انجام یک میانگین مستقیم ساده از مقادیر مورد انتظار شعر مقادیر واقعی ساده ترین و هنوز هم قابل قبول است.

در پایتون تنوع 3 نقطه را می توان به صورت موثر کدگذاری کرد:

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

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

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

این خطا نمی تواند به طور مداوم برای همه اوراق بهادار اعمال شود اما به عنوان مقادیر مطلق خطا نسبت به دوره زمانی و محدوده قیمت در این بازه زمانی است. بنابراین ابتدا باید مقیاس مناسب محاسبه شود: مقیاس = (تاریخچه.نزدیک.حداکثر () - تاریخچه.نزدیک.حداقل ()) / لن (تاریخچه). (اگر صرفا گرفتن ریشه مربع از خطای باقی مانده و تقسیم بر (نفر-2) سپس تقسیم توسط لن (تاریخچه) در اینجا لازم نیست.) سپس یک خطای پارامتر به تابع خطوط روند یک خطای درصد ساده مانند 0.5%=0.005 خواهد بود . سایر تفاوت های ظریف باید مانند این واقعیت که شیب 0 به عنوان ضریب بازگردانده نمی شود و باید به صورت دستی پر شود.

روش ساده لوحانه

این روش به سادگی از طریق تمام ترکیبات 3 امتیاز برای یافتن خطای مرتبط و فیلتر کردن موارد با مقدار خطای بسیار زیاد برشمرده می شود. 3-اگر داده ها به اندازه کافی بزرگ بودند حتی عملا امکان پذیر نبود. اما مجموع حداقل و حداکثر امتیاز در عمل چندان زیاد نخواهد بود که امکان پذیر نباشد. به عنوان مثال 100 نقطه محوری خواهد بود 100*100*100=1,000,000 یا یک میلیون محاسبات. بدیهی است که برای تقویت این با 4 یا 5 امتیاز را شروع به تبدیل شدن به غیر عملی به عنوان منظور از پیچیدگی به ای(نیویورک) یا ای(نانومتر) رفت. بنابراین یک استراتژی متفاوت مورد نیاز است.

روش شیب مرتب شده

خوشبختانه خصوصیات خاصی از نقاط وجود دارد که می توانند با هم ارتباط داشته باشند مانند شیب خط (یا زاویه از مبدا). با انجام یک ای(ن2) پیمایش تمام ترکیبات 2 نقطه ای و محاسبه شیب خطی که تشکیل می دهند می توان لیستی از شیب ها را برای هر نقطه ایجاد کرد. اکنون مرتب سازی یک لیست بدترین حالت برای الگوریتم مرتب سازی کارا مانند مرتب سازی ادغام است و ما باید این کار را در تمام لیست های ن برای انجام دهیم ای(ن2 ورود به سیستم) که پیچیدگی الگوریتم خواهد بود. نقاط همسایه در لیست شیب مرتب شده را می توان به طور پیوسته از 3 تا در نظر گرفت با این حال بسیاری از نقاط همچنان با معیار فیلتر مطابقت دارند. پس از تطبیق گروه حذف می شود و جستجو ادامه می یابد. این قسمت از الگوریتم نیز هست ای (ن2). (بزرگترین عامل پیچیدگی معمولا تنها عاملی است که برای ساده نگه داشتن فرمول در نظر گرفته می شود تا 2 درجه(ن2) دیگر اضافه نشوند.)

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

در واقع بسیاری از مسابقات با 3 امتیاز بلافاصله توسط جایگزین 4 و یا امتیاز و حتی بیشتر به عنوان جای تعجب نیست روند در امنیت واقعی و یا شاخص داده رخ می دهد.

روش تبدیل خط هاف

روشهای جایگزینی برای تلاش برای حل الگوریتم یافتن خط وجود دارد و یکی از پردازش تصویر است که یافتن خطوط در تصاویر یک کار رایج و مهم در بینایی رایانه است. یکی از این روش های انجام این کار یک است تبدیل خط هاف که به دنبال نقاط در سراسر خطوط در زوایای خاص است در حالی که امتیازات را برای چند امتیاز پیدا می کند. این الگوریتم محدودیت هایی نیز دارد. متاسفانه, با استفاده از مقدار زیادی از حافظه برای پیگیری تمام هیستوگرام و دقت خود را بر چگونه بسیاری از زوایای محاکمه بر اساس. هرچه زوایای بیشتری تلاش شود کندتر می شود. حافظه بر اساس اندازه مورب تصویر (با عرض به ابعاد ارتفاع) و تعداد زاویه ها ( اعداد ) یا سقف(مربع(عرض*عرض+ارتفاع*ارتفاع)) * اعداد است . مقیاس بندی تصویر برای دستیابی به نتایج خوب ضروری است. در واقع کوچکتر از ارکتان(2/عرض) و ارکتان(2/ارتفاع) حداقل زاویه جستجو برای یافتن همه احتمالات 3 نقطه ای است زیرا کوچکترین افزایشی بین یک خط عمودی یا افقی است. با تثبیت الگوریتم با یک عدد مانند 360 * 5 زاویه ممکن بین 90 و-90 درجه, ما می توانیم اعضای هیات استفاده(ان پی.سقف (2 / نپ.قهوهای مایل به زرد (ان پی.پی / (360 * 5)))) برای پیدا کردن حداکثر اندازه تصویر و صرفا با این مقدار مقیاس در صورتی که تصویر بیش از مرزهای.

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

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

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

این منجر به الف ای (نانومتر) الگوریتم جایی که متر است تعداد زوایا در حالی که استفاده از حافظه نیاز دارد متر طول مورب فضای نقطه 2 بعدی:

هاف تبدیل برای حفظ حافظه هیچ اطلاعات نقطه خاص نمی گرداند, که برای اهداف تجسم می تواند بسیار مفید. بنابراین ما می توانیم فاصله برای تمام نقاط به خط محاسبه, مرتب کردن بر اساس, و به عنوان بسیاری از نقاط که ممکن است که در تحمل خطا مناسب. فاصله یک نقطه تا یک خط برای تعیین باتری صحیح برای افزایش استفاده می شود. به یاد داشته باشید که شیب شیب عمود متقابل منفی شیب است به طوری که ضرب برابر ب ا-1 است. یک خط عمود بر نقطه نسبت به نقطه جدید ساخته می شود و تقاطع محاسبه می شود. باقیمانده اثبات با استفاده از فاصله بین نقطه و نقطه تقاطع مشتق شده است. توجه داشته باشید که عدد صرفا تفاوت بین است بله و مورد انتظار بله, در حالی که مخرج ثابت نگه داشته می شود زیرا ما فقط یک شیب خط را در نظر می گیریم. شکل نشان دهنده تبدیل هاف نیز فرمول صریح را نشان می دهد.

ما همچنین می توانیم از تابع تبدیل خط هاف از کتابخانه تصویر اسکیکیت به نام استفاده کنیم هاف_لاین. لازم به ذکر است که کتابخانه اوپنسیوی (بینایی رایانه) که در پایتون نیز موجود است نیز همین عملکردها را دارد. این نیز می تواند دست در یک مقدار کوتاه از کد اجرا شود از الگوریتم است به خصوص پیچیده نیست اما کتابخانه بهینه سازی شده و سریع تر. توجه داشته باشید که فقط 2 امتیاز در باتری برای بازگرداندن الگوریتم کافی است بنابراین ما برای 3 یا چند نقطه مرتبط فیلتر می کنیم. جزییات مفید این است که محورها را معکوس می کند و دارای پارامتر مرزی است که بیشتر است اما برابر نیست. برخی از تفاوت های دقیق کوچک در نحوه عملکرد داخلی به خصوص با توجه به انتخاب حداکثر محلی در باتری وجود دارد بنابراین نتایج دقیقا یکسان نخواهد بود. این منجر به دو روش مختلف برای انجام محاسبه می شود (یک نقطه-بهینه سازی شده و نقطه دیگر تبدیل به تصویر برای کتابخانه):

روش تبدیل خط احتمالی هاف

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

هنوز هم تنها وجود دارد 2 نقاط خط بازگشت در اینجا, اما حد ساخته شده است و برای ما انجام. متاسفانه نتایج هر بار که اجرا می شود به دلیل ماهیت یک الگوریتم احتمالی که تصادفی است متفاوت خواهد بود. این به طور کلی باعث می شود این روش به خصوص به خوبی برای پیدا کردن تمام خطوط روند مناسب نیست. این کار می تواند تا زمانی انجام شود که تعداد مشخصی از دویدن ها اتفاق بیفتد یا تعداد مشخصی از خطوط احتمال یافتن همه خطوط را تا حد زیادی افزایش دهد. بنابراین پارامتر هاف_پروب_ایتر تعداد تکرارهای اجرا شده مانند 10 تکرار را مشخص می کند تا احتمال تعداد کافی خط افزایش یابد.

توجه داشته باشید که بهتر از سخت برنامه نویسی 100 برای یک مقیاس از سکه یا 1/0.01 از دلار در حال استفاده هستند, این امر می تواند بهتر به یک پارامتر در مقیاس هاف_.

اکنون 5 روش مختلف برای تلاش برای یافتن خطوط روند داریم.

پیدا کردن بهترین خطوط روند

متاسفانه, فقط به این دلیل که نقاط حداقل یا حداکثر محلی در یک خط قرار دارند, ممکن است همیشه بهترین خط روند را نداشته باشند. این به این دلیل است که بهترین چیزی که در نظر گرفته می شود اغلب ذهنی است. با این حال راه هایی وجود دارد که می تواند به یک تعریف عینی تبدیل شود. یکی از این راه ها این است که ببینیم قیمت هر چند وقت یکبار از خط روند یا منطقه ساخته شده توسط خط روند و داده های قیمت در اولین و جدیدترین نقطه خود عبور می کند. درصد خطا فقط برای تعیین اینکه چه چیزی ممکن است خط روند باشد یا نباشد استفاده می شود اما چقدر مفید نیست که خط روند ممکن است باشد یا نباشد. با داده های کافی می توان خطوطی را با فاصله چند سال پیدا کرد که بعید به نظر می رسد تصادفی باشند یا نباشند. به طور معمول خطوط روند کشیده می شوند که حاوی سیگنال در یک طرف و یا دیگر, بنابراین رویکرد مبتنی بر منطقه به نظر می رسد حداقل معقول. مجموع ریمان یک روش یکپارچه سازی است که می تواند مورد استفاده قرار گیرد برای محاسبه این منطقه را فراهم می کند. در حقیقت, نرم افزار بی اهمیت است به عنوان صرفا کم کردن این دو و جمع تمام مقادیر کمتر یا بیشتر از 0. به طور خاص این خواهد بود که حق مجموع ریمان که با استفاده از مقدار تابع در هر نقطه زمانی به عنوان یک نقطه میانی یا قبل مخالف, حداکثر یا حداقل یکی. سرانجام تقسیم بر تعداد روزها باعث می شود که طرف اشتباه روند در روز اندازه گیری شود و بهترین خطوط روند را می توان انتخاب کرد.

موضوع دیگر این است که این الگوریتم ها حتی در صورت اجرای موثر به دلایل مختلف می توانند کند باشند. بهینهسازی بیشتر اغلب بهویژه با حذف پانداها و حرکت به سمت فهرستها و نرمافزارهایی که پیادهسازیهای سریعی دارند امکانپذیر است.

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

ایده اول این است که یک پنجره بگو یک چهارم یا یک سال به عنوان بیش از حد کوتاه از یک پنجره نمی خواهد عملکرد به اندازه کافی محوری امتیاز مفید باشد. سپس پنجره باید از طریق تمام داده ها نورد, با این حال, نه به گونه ای که کارایی خود را و یا تکثیر کار, و نه از دست رفته خطوط روند ممکن. هنگامی که اندازه پنجره بر تصمیم, کار می توانید شروع به جستجو با دو برابر اندازه پنجره. دو برابر شدن اندازه پنجره تضمین می کند که خطوط روند در سراسر مرزهای پنجره یافت می شود. سپس اندازه پنجره دوگانه در تمام داده ها در افزایش اندازه پنجره جستجو می شود. بنابراین اگر پنجره خود را یک سال است, شما جستجو در دو سال گذشته, سپس جستجو از 3 سال قبل از سال گذشته, سپس از 4 سال قبل از 2 سال قبل, و غیره. در نهایت یک قسمت از پنجره دو بار جستجو می شود و بسیاری از روندهای یکسان یا پسوندهای یکسان ظاهر می شوند. این امر می تواند بسیار بصری خشنود و همچنین, از این امر می تواند بیش از حد مخل به طرح به خطوط روند کشیده شده بیش از حد دور.

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

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

تجسم نتایج

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

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

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

در نهایت, به جای نشان دادن 2 بهترین خطوط پشتیبانی/مقاومت برای کل دوره, نتیجه نهایی را می توان دوباره پنجره برای نمایش و برون یابی اهداف و بهترین 2 از هر پنجره می تواند مورد استفاده قرار گیرد.

استفاده به عنوان ویژگی های یادگیری ماشین

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

با این حال برای جلوگیری از نشت داده ها از هر خط روند یافت شده فقط می توان برای پیش بینی نقاط بعد از نقطه نهایی در خط روند استفاده کرد. هر زمان در یا قبل از نقطه نهایی یک نمونه کلاسیک از نشت داده ها است که مقادیر بعدی برای نشت مقادیر به گذشته استفاده می شود. حتی انتخاب بهترین خطوط روند باید با دقت تنها با استفاده از داده قبل از نقطه نهایی انجام, اگر چه تجسم چنین محدودیت ندارد. احتیاط همیشه باید مراقب باشید در اینجا به عنوان اشکالات برنامه نویسی حتی معمولی مانند بودن توسط 1 در محاسبات اشتباهات مهلک در هنگام برخورد با یک کار دقیق مانند پیش بینی سری زمانی هستند. به یاد داشته باشید جزییات از تمایز عددی که نگاه به جلو و همچنین در هنگام برخورد با روز اول یا دو بسته به دقت, پس از یک روند رخ داده است. این می تواند بهتر به فرض روند شروع می شود یک یا دو روز پس از حداقل گذشته و یا نقطه حداکثر برای جلوگیری از این نوع از نشت بسته به اینکه چگونه روند استفاده می شود.

همه را کنار هم قرار دهید

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

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

نتیجه گیری

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

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

اگر شما این مقاله لذت می برد لطفا اجازه دهید من می دانم و احساس رایگان به سوال بپرسید. در ارتباط باشید برای تکنیک های شناسایی شکل به عنوان اشاره شد. r

ثبت دیدگاه

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