معرفی کامل و بک تست الگوهای شمعدانی چکش و ستاره تیراندازی.
الگوهای کندل استیک شایستگی مطالعه کامل را دارند و حتی اگر یک استراتژی که صرفاً بر آنها تکیه میکند ناپایدار و بیسود خواهد بود، اما میتواند افزودنی ارزشمند به یک سیستم معاملاتی کامل باشد که از تکنیکهای دیگر استفاده میکند. در این مقاله شاهد ارائه کامل و کد الگوی تک شمعی خواهیم بود. سپس، قبل از قضاوت درباره سودآوری و نحوه تفسیر آن، آن را با مدیریت ریسک و بدون آن مورد آزمایش مجدد قرار می دهیم.
من به تازگی کتاب جدیدی را پس از موفقیت در شاخص های فنی جدید در پایتون منتشر کرده ام. این شامل توضیحات کامل تر و افزودن استراتژی های پیچیده معاملاتی با صفحه Github است که به کد به روز شده پیوسته اختصاص داده شده است. اگر احساس میکنید که این مورد برایتان جالب است، از لینک زیر دیدن کنید، یا اگر ترجیح میدهید نسخه PDF را بخرید، میتوانید در لینکدین با من تماس بگیرید.
کتاب استراتژی های معاملاتی
Amazon. com: The Book of Trading Strategies: 9798532885707: Kaabar, Sofien: Books
نمودارهای کندل استیک
نمودارهای کندل استیک یکی از معروف ترین روش ها برای تحلیل بصری سری های زمانی است. آنها حاوی اطلاعات بیشتری نسبت به یک نمودار خطی ساده هستند و قابلیت تفسیر بصری بیشتری نسبت به نمودارهای میله ای دارند. بسیاری از کتابخانهها در پایتون توابع نموداری را ارائه میکنند، اما بهعنوان فردی که از وارد کردن نادرست کتابخانهها و توابع در کنار مهآلودگی آنها رنج میبرد، من تابع ساده خود را ایجاد کردهام که شمعدانها را به صورت دستی و بدون نیاز به کمک خارجی نمودار میکند.
داده OHLC مخفف قیمت باز، بالا، پایین و بسته است. آنها چهار عنصر اصلی برای مهر زمانی هستند. همیشه بهتر است این چهار مقدار را با هم داشته باشیم تا تحلیل ما واقعیت را بیشتر منعکس کند. در اینجا جدولی است که داده های OHLC امنیت فرضی را خلاصه می کند:
اکنون وظیفه ما ترسیم داده هاست تا بتوانیم به صورت بصری تفسیر کنیم که قیمت دنباله رو چه نوع روندی است. قبل از اینکه به رسم کندل استیک برویم، با طرح خط اصلی شروع می کنیم.
توجه داشته باشید که می توانید داده ها را به صورت دستی یا با استفاده از پایتون دانلود کنید. در صورتی که فایل اکسلی دارید که فقط داده های OHLC از سطر و ستون اول دارد، می توانید آن را با استفاده از قطعه کد زیر وارد کنید:
ترسیم خطوط اصلی در پایتون بسیار آسان است و تنها به یک خط کد نیاز دارد. ما باید مطمئن شویم که کتابخانه ای به نام matplotlib وارد کرده ایم و سپس تابعی را فراخوانی می کنیم که داده ها را برای ما ترسیم می کند.
اکنون که نحوه ایجاد نمودارهای خطی معمولی را دیدیم، زمان آن رسیده است که با نمودارهای کندل استیک به سطح بعدی برویم. راه انجام این کار بدون عارضه این است که به خطوط عمودی فکر کنید. در اینجا شهود است (به دنبال یک برنامه کاربردی از تابع زیر):
- یک دوره بازگشت را انتخاب کنید. این تعداد مقادیری است که می خواهید در نمودار نشان داده شود.
- خطوط عمودی را برای هر ردیف که نشان دهنده اوج و پایین بودن است ترسیم کنید. به عنوان مثال، در داده های OHLC، ما از یک تابع matplotlib به نام vlines استفاده خواهیم کرد که یک خط عمودی را روی نمودار با استفاده از مقدار حداقل (کم) و حداکثر (مقدار بالا) رسم می کند.
- یک شرط رنگ ایجاد کنید که بیان می کند اگر قیمت بسته شدن بیشتر از قیمت افتتاحیه است، بلوک کد انتخاب شده (که طبیعتاً حاوی رنگ سبز است) را اجرا کنید. این کار را با رنگ قرمز (شمع نزولی) و رنگ مشکی (شمع دوجی) انجام دهید.
- خطوط عمودی را با استفاده از شرایط با مقادیر حداقل و حداکثر نشان دهنده قیمت های بسته شدن و قیمت های افتتاحیه ترسیم کنید. اطمینان حاصل کنید که عرض خط را بسیار بزرگ کنید تا بدنه شمع به اندازه کافی ظاهر شود که نمودار به عنوان نمودار شمعی در نظر گرفته شود.
الگوی چکش
الگوی همر یک پیکربندی شمعدانی صعودی است که شبیه حرف T است. شهود اصلی این است که فشار نزولی یک پایینترین حد جدید ایجاد کرده است اما در پایان نتوانست آن را حفظ کند زیرا بازار به اوج روز بسته شده است.
ویژگی الگوی چکش یک فتیله بلند و کم است که برابر با باز یا زیاد است. از این رو، در این مطالعه، چکش می تواند یک کندل صعودی یا نزولی باشد اما پیش بینی عمل قیمت پس از آن صعودی باشد.
الگوی ستاره تیرانداز
الگوی Shooting Star یک پیکربندی کندل نزولی است که شبیه یک T معکوس است. شهود اصلی این است که فشار صعودی یک اوج جدید ایجاد کرده است اما در پایان نتوانست آن را حفظ کند زیرا بازار به پایین ترین سطح روز بسته شده است.
ویژگی الگوی Shooting Star یک فتیله بلند بلند و یک کم است که برابر با باز یا بالا است. از این رو، در این مطالعه، Shooting Star می تواند یک کندل صعودی یا نزولی باشد اما پیش بینی عمل قیمت پس از آن نزولی باشد.
ایجاد یک الگوریتم اسکن
هدف ما ایجاد الگوریتمی است که این الگو را شناسایی کرده و سفارشات خرید و فروش نظری را قرار دهد تا استراتژی را مجدداً آزمایش کنیم و در صورت امکان آن را بهینه کنیم. اما ابتدا باید شهود الگوها را کدگذاری کنیم. اجازه دهید آنچه را که برای چکش نیاز داریم مرور کنیم:
- حداقل باید حداقل دو برابر طول بدن باشد.
- بالا باید برابر با قیمت بسته شدن یا قیمت افتتاح باشد.
به همین ترتیب ، برای ستاره تیراندازی ، ما به شرایط زیر نیاز داریم:
- بالا باید حداقل دو برابر طول بدن باشد.
- پایین باید برابر با قیمت بسته شدن یا قیمت افتتاح باشد.
عملکرد فوق یک آرایه داده OHLC با چندین ستون خالی را برای جمع آوری و جمع کردن ستون های 6 (خرید) و 7 (فروش) با شرایطی که قبلاً در مورد آنها صحبت کردیم ، می گیرد.
ما می خواهیم 1 را در ستونی که "خرید" و-1 می نامیم در ستونی که "فروش" می نامیم وارد کنیم. این بعداً به شما امکان می دهد تابعی را ایجاد کنید که سود و زیان را با حلقه در اطراف این دو ستون محاسبه می کند و در قیمت بازار اختلاف می کند تا سود و ضرر یک استراتژی نزدیک به نزدیک را پیدا کنید. سپس می توانید از یک عملکرد مدیریت ریسک استفاده کنید که از توقف ها و سفارشات سود استفاده می کند.
برای افزودن چند ستون به یک آرایه ، می توانید از کد زیر استفاده کنید:
اگر به شاخص های فنی تر نیز علاقه مند هستید و از پایتون برای ایجاد استراتژی استفاده می کنید ، پس کتاب پرفروش من در مورد شاخص های فنی ممکن است شما را مورد علاقه قرار دهد:
شاخص های فنی جدید در پایتون
Amazon. com: شاخص های فنی جدید در پایتون: 9798711128861: Kaabar ، آقای Sofien: کتاب
تست پشت استراتژی
مانند هر روش تحقیق مناسب ، هدف این است که نشانگر را پشت سر بگذاریم و بتوانیم خودمان را ببینیم که آیا ارزش آن را به عنوان یک افزودنی به چارچوب معاملاتی از قبل موجود ما دارد یا خیر. توجه داشته باشید که فقط تست های پشتی فقط در 10 سال گذشته فقط 10 جفت ارز را در یک بازه زمانی قرار دهید. این امکان وجود دارد که این یک بازه زمانی بهینه برای استراتژی نباشد ، اما ما فقط سعی می کنیم یک استراتژی یک کفش با اندازه یک کفش پیدا کنیم.
شرایط استراتژی اول مواردی است که به عنوان یک تکنیک دنبال کننده روند منظور می شود:
- هر زمان که الگوی صعودی با خرید در نزدیکی شمع تأیید شود ، طولانی بروید (خرید). در انتظار معکوس یا حداقل تصحیح ، این موقعیت را تا زمانی که سیگنال دیگری دریافت کنید یا توسط سیستم مدیریت ریسک متوقف شوید ، نگه دارید.
- هر زمان که الگوی نزولی با فروش در نزدیکی شمع تأیید شود ، کوتاه بروید (بفروشید). در انتظار معکوس یا حداقل تصحیح ، این موقعیت را تا زمانی که سیگنال دیگری دریافت کنید یا توسط سیستم مدیریت ریسک متوقف شوید ، نگه دارید.
هنگامی که ما یک نسبت پاداش ریسک 1: 5 را که توسط یک شاخص متوسط دامنه واقعی اجباری است اضافه می کنیم ، نتایج زیر را می یابیم که تفسیر زیادی را تغییر نمی دهد:
همانطور که انتظار می رود، استفاده از استراتژی به تنهایی هیچ ارزشی را ارائه نمی دهد، حتی با نسبت های برتری که توسط منحنی های ارزش ویژه بالا مشهود است. اگر علاقه مند به دیدن اندیکاتورهای فنی بیشتر و تست های برگشتی هستید، می توانید مقاله زیر را بررسی کنید:
تجارت الگوی شمعدان ستاره صبح و عصر - راهنمای کامل.
معرفی کامل و آزمون برگشتی در مورد الگوی ستاره صبح و عصر.
سخنی در مورد مدیریت ریسک
وقتی میگویم از سیستم مدیریت ریسک مبتنی بر ATR استفاده میکنم (متوسط محدوده واقعی)، به این معنی است که الگوریتم با توجه به موقعیتی که میگیرد مراحل زیر را انجام میدهد.
موقعیت طولانی (خرید):
- این الگوریتم پس از ایجاد یک سیگنال به دنبال یک استراتژی خاص، سفارش خرید را آغاز می کند.
- سپس، الگوریتم تیکها را بررسی میکند و هر گاه مقدار اوج برابر یک ثابت معین ضرب در مقدار ATR در زمان شروع معامله باشد، دستور خروج (در سود) آغاز میشود. به طور همزمان، اگر مقدار کم برابر با یک ثابت معین ضرب در مقدار ATR در زمان شروع تجارت باشد، خروج (با ضرر) آغاز می شود. خروجی که ابتدا با آن مواجه میشوید، طبیعتاً رویداد گرفته شده است.
موقعیت کوتاه (فروش):
- این الگوریتم یک سفارش فروش کوتاه را پس از تولید سیگنال به دنبال یک استراتژی خاص آغاز می کند.
- سپس، الگوریتم تیکها را بررسی میکند و هر زمان که مقدار پایین برابر یک ثابت معین ضرب در مقدار ATR در زمان شروع معامله باشد، دستور خروج (در سود) آغاز میشود. به طور همزمان، اگر مقدار زیاد برابر یک ثابت معین ضرب در مقدار ATR در زمان شروع معامله باشد، یک خروج (با ضرر) آغاز می شود. خروجی که ابتدا با آن مواجه میشوید، طبیعتاً رویداد گرفته شده است.
نمودار بالا میانگین محدوده واقعی را نشان می دهد که من معمولاً از آن استفاده می کنم. بر خلاف میانگین متحرک هموار اصلی، بر اساس میانگین متحرک نمایی است.
به آخرین ارزش ATR نگاهی بیندازید. حدود 0. 0014 (14 پیپ) است. اگر یک سفارش خرید را بر اساس یک نسبت ریسک به پاداش ساده 2. 00 آغاز کنیم (به خطر انداختن نیمی از آنچه انتظار داریم به دست آوریم)، می توانیم سفارش را به این ترتیب انجام دهیم:
- با قیمت فعلی بازار خرید کنید.
- با قیمت فعلی بازار + (2 × 14 پیپ) سود بگیرید.
- موقعیت را با قیمت فعلی بازار متوقف کنید - (1 × 14 پیپ).
کدی که من برای نشانگر میانگین محدوده واقعی استفاده می کنم به شرح زیر است:
نتیجه
اگر به طور مرتب مقالات من را دنبال کنید ، خواهید فهمید که بسیاری از شاخص هایی که من توسعه می دهم یا بهینه سازی می کنم نسبت ضربه بالایی دارند و به طور متوسط سودآور هستند. این بیشتر به دلیل روش مدیریت ریسک است که من استفاده می کنم. اما در مورد تصادفی بودن بازار و این واقعیت که بسیاری از افراد زیرپرست تجزیه و تحلیل فنی را به دلیل عدم موفقیت خود سرزنش می کنند؟
اول از همه ، من دائماً قبل از شروع و بعد از شروع ، گزارش های تجاری خود را در توییتر منتشر می کنم تا نتایج را نشان دهم. این شفافیت را تضمین می کند. من همچنین هر 1-3 ماه یک رکورد آهنگ را در توییتر منتشر می کنم. با این حال ، من هرگز به هر کاری که داشته باشم و مهارت برتر را تضمین نمی کنم. در مورد شاخص هایی که من توسعه می دهم ، دائماً از آنها در تجارت شخصی خود استفاده می کنم. از این رو ، من هیچ انگیزه ای برای انتشار تحقیقات مغرضانه ندارم. هدف من این است که آنچه را که از جامعه آنلاین آموخته ام به اشتراک بگذارم.
به یاد داشته باشید که همیشه آزمونهای پشتی خود را انجام دهید. حتی اگر من عملکرد نشانگر را ارائه می دهم (برخلاف اینکه فقط در مورد آن لاف می زنند و می گویم این مقدس مقدس است و عملکرد آن یک راز است) ، همیشه باید باور کنید که افراد دیگر اشتباه می کنند. شاخص ها و سبک تجارت من برای من کار می کند اما شاید برای همه نباشد. من به این قانون اعتماد می کنم:
قیمت بازار را نمی توان پیش بینی کرد یا پیش بینی بیش از 50 ٪ از زمان بسیار سخت است. اما واکنش های بازار را می توان پیش بینی کرد.
آنچه که نقل قول فوق به معنای این است که ما می توانیم یک منطقه کوچک را در اطراف یک منطقه تشکیل دهیم و با اطمینان از این اطمینان بگوییم که قیمت بازار واکنشی در اطراف آن منطقه نشان می دهد. اما ما واقعاً نمی توانیم بگوییم که از آنجا 4 ٪ کاهش می یابد ، سپس دوباره آن را آزمایش می کند و در سومین تلاش برای رفتن به 103. 85 دلار. اصطلاح خطا از نظر نمایی بیشتر می شود زیرا ما در مورد پیش بینی ها پیش بینی می کنیم.
در حالی که ما در مورد این موضوع بحث می کنیم ، باید به چند مورد در مورد آزمونهای پشتی و مقالات خود اشاره کنم:
- گسترش من استفاده می کنم بر اساس نقل قول های نهادی از یک بخش PIP کوچک است. به طور کلی ، به معامله گران خرده فروشی از 1-2 پیپ در هر تجارت گسترش می یابد. این برای آنها عظیم و ناعادلانه است. من از 0. 2-0. 5 گسترش استفاده می کنم. با این حال ، بسیاری از استراتژی هایی که از بازه زمانی ساعتی استفاده می کنند هنوز با گسترش 1 پیپ کار می کنند. برای آنهایی که از فریم های زمانی M15 یا M5 استفاده می کنند ، با گسترش 1 پیپ نمی توانند سودآور باشند.
- محاسبه دوره برگزاری که من استفاده می کنم در صورت عدم وجود فرآیند مدیریت ریسک ، نزدیک به نزدیک است.
- اگرچه من تجارت را بر اساس فقط یک نشانگر دلسرد می کنم ، اما تعداد آنها دروغ نمی گویند. آنچه من ارائه می دهم همان چیزی است که می تواند هنگام در نظر گرفتن گسترش کم اتفاق بیفتد.
- برخی از آزمونهای برگشتی که ارائه میدهم بازنده هستند و یا برای ابهام زدایی از یک افسانه معاملاتی یا ارائه عملکردهای جالب برای کدگذاری توسط خوانندگان منتشر میشوند.
- در نهایت، من معتقدم که به زبان آموزان با قاشق غذا ندهم. من با انجام دادن یاد گرفته ام نه با کپی کردن. شما باید ایده، کارکرد، شهود، شرایط استراتژی را بدست آورید، و سپس خودتان یکی (حتی بهتر) را بسط دهید تا قبل از اینکه تصمیم بگیرید آن را زنده یا حذف کنید، دوباره آن را آزمایش کنید و آن را بهبود بخشید.
به طور خلاصه، آیا استراتژی هایی که ارائه می کنم واقع بینانه هستند؟بله، اما تنها با بهینه سازی محیط (الگوریتم قوی، هزینه کم، کارگزار صادق، مدیریت ریسک مناسب و مدیریت سفارش). آیا استراتژی ها فقط برای استفاده انحصاری از معاملات ارائه شده است؟نه، این برای تحریک طوفان فکری و دریافت ایده های معاملاتی بیشتر است، زیرا همه ما از شنیدن یک RSI بیش از حد به عنوان دلیلی برای کوتاه آمدن یا پیشی گرفتن مقاومت به عنوان دلیلی برای طولانی شدن خسته شده ایم. من سعی می کنم زمینه جدیدی به نام تحلیل تکنیکال عینی را معرفی کنم که در آن از داده های سخت برای قضاوت در مورد تکنیک های خود به جای تکیه بر روش های کلاسیک قدیمی استفاده می کنیم.