ممکن است شخصی علاقه مند به استفاده از الگوهای شمعی در استراتژی های معاملاتی خود باشد. به لطف کتابخانه هایی مانند TA-lib، ما می توانیم به طور خودکار همه الگوهای رایج را شناسایی کنیم و از این رو تست های برگشتی خود را خودکار کنیم تا بتوانیم استراتژی های بیشتری را بدون نیاز به برچسب زدن دستی شمع ها آزمایش کنیم.
در حال آماده سازی اطلاعات قیمت ما
اگر منبع داده خود را دارید می توانید مستقیماً به بخش بعدی بروید. فقط مطمئن شوید که داده های OHLC کامل دارید، در غیر این صورت TA-lib نمی تواند شمع ها را بسازد یا الگوهایی را تشخیص دهد.
من از yfinance در اینجا استفاده خواهم کرد تا به سرعت برخی از داده های قیمت کریپتو را پاک کنم
این باید برای شما یک دیتافریم پاندا پر از داده های OHLCV بگذارد. می توانید مقدار timedelta را تغییر دهید تا مقدار متفاوتی از داده به دست آورید. هرچه بازه زمانی کمتری را انتخاب کنید، تاریخچه قیمت کمتری می توانید درخواست کنید. برای داده های ساعتی می توانید اطلاعات یک ماهه را درخواست کنید.
اگر می خواهید مقدار قابل توجهی از داده های تاریخی را خراش دهید، می توانید مقاله من در مورد خراش دادن از Bitstamp را بررسی کنید.
تشخیص الگوهای کندل استیک
هنگامی که داده های OHLC خود را به دست آوردیم، تشخیص الگوهای رایج یک خط در TA-lib است
در این مورد ما به دنبال الگوی چکش هستیم. همانطور که در پایین ترین شمع سبز روی تصویر کوچک این مقاله می بینید، این (ظاهرا) نشان دهنده یک برگشت صعودی است. شما می توانید لیست بزرگی از تمام الگوهای کندل استیک و عملکردهای TA-lib مربوطه آنها را در صفحه TA-lib github پیدا کنید.
نصب TA-lib می تواند بسیار دردسرساز باشد. قبل از نصب با pip، باید مطمئن شوید که کتابخانه های زیرین C نصب شده اند. می توانید دستورالعمل ها را در صفحه TA-lib تحت وابستگی ها بیابید
اگر چکش را چاپ کنید، یک سری پاندا خواهید داشت که نشان می دهد آیا الگو شناسایی شده است یا خیر
اگر می خواهید طیف وسیعی از مقادیری را پیدا کنید که می توانند توسط یک عملکرد TA-Lib و همچنین ورودی های آن برگردانده شوند ، می توانید یک پوسته پایتون معمولی را باز کنید و موارد زیر را امتحان کنید:
1پایتون 3. 8. 10 (پیش فرض ، 22 ژوئن 2022 ، 20:18:18)2[GCC 9. 4. 0] در لینوکس3برای اطلاعات بیشتر "کمک" ، "کپی رایت" ، "اعتبار" یا "مجوز" را تایپ کنید.4>>>واردات پالیب5>>>راهنما (talib. cdlhammer)
1کمک به عملکرد CDLHAMMER در ماژول talib. _ta_lib:23cdlhammer (.)4cdlhammer (باز ، بالا ، پایین ، نزدیک)56چکش (تشخیص الگوی)78ورودی ها:9قیمت ها: ['Open' ، 'High' ، 'Low' ، 'Close']10خروجی ها:11عدد صحیح (مقادی ر-100 ، 0 یا 100)
از آزمایش ، فهمیدم که مقدار 100 نشان دهنده یک سیگنال صعودی ، -100 یک سیگنال نزولی و 0 خنثی است.
بازگشت به استراتژی
من همچنین می خواهم تمام نمونه های الگوی مرد حلق آویز را به عنوان سیگنال فروش خود استفاده کنم. این بسیار شبیه به چکش است و معادل نزولی است.
نحو ممکن است در آنجا کمی عجیب به نظر برسد اما ما فقط می خواهیم مقدار عددی خود را از سری خود به مقادیر واقعی/غلط تبدیل کنیم که VectorBT می تواند بپذیرد. حتماً VectorBT را به عنوان VBT وارد کنید.
در این مرحله می توانید با چاپ pf. stats () ، برخی از آمارها را از پشتی دریافت کنید ، یا می توانید آنچه را که تاکنون با pf. plot () بدست آورده ایم ترسیم کنید.
همچنین می توانید سوابق تجاری را با فرمت آسان برای خواندن چاپ کنید
1trade_records=pf.معاملات.رکورد_ قابل خواندن2چاپ(trade_records.طبقه بندی_("Timestamp ورود").to_string())
این برای بررسی اینکه اجرای سفارش همانطور که انتظار دارید بسیار عالی است. بنابراین این همه چیزهایی است که شما باید بدانید تا راهبردهای مبتنی بر الگوی شمعدانی را شروع کنید. همه چیز از اینجا فقط آهنگسازی آنچه را که ما در اینجا آموخته ایم با برخی از دانش اساسی پاندا است.
آموزش ویدئویی
اگر یک آموزش ویدیویی را ترجیح می دهید ، کانال YouTube من را بررسی کنید: