این یک بسته بندی پایتون برای TA-Lib است که بر اساس Cython به جای Swig است. از صفحه اصلی:
- شامل 150+ شاخص مانند ADX ، MACD ، RSI ، تصادفی ، گروههای بولینگر و غیره است.
- شناخت الگوی شمعدان
- API منبع باز برای C/C ++ ، Java ، Perl ، Python و 100 ٪ مدیریت . NET
اتصالات اصلی پایتون موجود در استفاده از TA-Lib Swig که متأسفانه نصب آن دشوار است و به اندازه ممکن کارآمد نیست. بنابراین این پروژه از Cython و Numpy برای اتصال کارآمد و تمیز به TA-LIB استفاده می کند-نتایج 2-4 برابر سریعتر از رابط SWIG.
علاوه بر این ، این پروژه همچنین از استفاده از کتابخانه های Polars و Pandas پشتیبانی می کند.
نصب و راه اندازی
می توانید از PYPI نصب کنید:
یا منابع را پرداخت کنید و Setup. py را اجرا کنید:
همچنین به نظر می رسد نصب از طریق Conda Forge امکان پذیر است:
وابستگی
برای استفاده از TA-Lib برای پایتون ، باید TA-Lib را از قبل نصب کنید. احتمالاً باید دستورالعمل های نصب آنها را برای پلتفرم خود دنبال کنید ، اما برخی از پیشنهادات در زیر برای مرجع درج شده است.
MAC OS X
شما به سادگی می توانید با استفاده از Homebrew نصب کنید:
اگر از Silicon Apple مانند پردازنده های M1 و ساخت پروژه های معماری خانگی استفاده می کنید ، ممکن است بخواهید مطمئن شوید که برای معماری شما ساخته شده است:
و شاید شما می توانید این موارد را قبل از نصب با PIP تنظیم کنید:
شما همچنین ممکن است این مفید را پیدا کنید ، به خصوص اگر چندین نصب مختلف را بدون موفقیت امتحان کرده اید:
پنجره ها
بارگیری TA-lib-0. 4. 0-msvc. zip و unzip to c: ta-lib.
- دانلود و از حالت فشرده Unzip ta-lib-0. 4. 0-msvc. zip
- پوشه بدون لیب را به C: منتقل کنید
- Visual Studio Community 2015 را بارگیری و نصب کنید
- به یاد داشته باشید ویژگی [ویژوال C ++] را انتخاب کنید
- ساخت کتابخانه Ta-Lib
- از منوی Windows Start ، شروع [VS2015 X64 Native Tools Prompt]
- حرکت به C: ta-lib c make cdr win32 msvc
- کتابخانه را بسازید
شما همچنین ممکن است این باینری های ویندوز غیر رسمی را برای هر دو 32 بیتی و 64 بیتی امتحان کنید:
لینوکس
اگر T a-Lib را با استفاده از mak e-jx بسازید ، شکست خواهد خورد اما اشکالی ندارد! به سادگی دوباره ساخ ت-جکس را دنبال کنید و [sudo] نصب کنید.
توجه: اگر مسیر دایرکتوری شما شامل فضاهایی باشد ، نصب احتمالاً بدون چنین خطای پرونده یا دایرکتوری انجام نمی شود.
عیب یابی
اگر هشدار دهنده ای دارید که به نظر می رسد:
این به طور معمول به معنای Setup. py نمی تواند کتابخانه زیربنایی TA-Lib را پیدا کند ، وابستگی که باید نصب شود.
اگر کتابخانه زیرین TA-Lib را با پیشوند سفارشی (به عنوان مثال ، با ./configure-prefix = $ پیشوند) نصب کرده اید ، پس وقتی می خواهید این بسته بندی پایتون را نصب کنید می توانید مسیرهای جستجوی اضافی را برای یافتن کتابخانه و شامل پرونده ها مشخص کنید. برای کتابخانه زیربنایی TA-Lib با استفاده از متغیرهای محیط TA_LIBRARY_PATH و TA_INCLUDE_PATH:
گاهی اوقات نصب خطاهای ساختمانی مانند این را ایجاد می کند:
این به طور معمول بدان معنی است که نمی تواند کتابخانه زیربنایی TA-Lib را پیدا کند ، وابستگی که باید نصب شود. در ویندوز ، این می تواند با نصب توزیع باینری 32 بیتی کتابخانه زیربنایی TA-Lib ایجاد شود ، اما تلاش برای استفاده از آن با پایتون 64 بیتی.
گاهی اوقات نصب با خطاهایی مانند این شکست می خورد:
این به طور معمول به این معنی است که شما به هدرهای پایتون احتیاج دارید و باید چیزی مانند:
گاهی اوقات ساختن کتابخانه زیربنایی TA-Lib خطاهایی در حال اجرا است که این امر به این شکل به نظر می رسد:
این ممکن است بدان معنی باشد که مسیر دایرکتوری به کتابخانه زیربنایی TA-Lib دارای فضاهایی در نام دایرکتوری است. سعی کنید آن را در مسیری قرار دهید که هیچ فضایی نداشته باشد و دوباره سعی کنید.
بعضی اوقات ممکن است این خطا را در حال اجرا در حال تنظیم تنظیم کنید.
این احتمالاً در تلاش برای تهیه برای سکوی 32 بیتی اما بدون هدرهای مناسب مسئله ای است. ممکن است با دیدن اولین پاسخ این سوال موفقیتی پیدا کنید.
اگر تعجب می کنید که چرا Stochrsi نتایج متفاوتی از آنچه انتظار دارید به شما می دهد ، احتمالاً می خواهید Stoch برای RSI اعمال شود ، که کمی متفاوت از Stochrsi است که Stochf برای RSI اعمال می شود:
اگر ساخت آن آویزان است ، ممکن است با حافظه کافی در VM اجرا کنید - 1 گیگابایت یا 2 گیگابایت را امتحان کنید.
API تابع
مشابه TA-LIB ، API عملکرد یک بسته بندی سبک از شاخص های TA-Lib در معرض قرار می دهد.
هر تابع یک آرایه خروجی را برمی گرداند و مقادیر پیش فرض برای پارامترهای خود دارد ، مگر اینکه به عنوان آرگومان کلمات کلیدی مشخص شود. به طور معمول ، این توابع یک دوره اولیه "نگاه" (تعداد مورد نیاز مشاهدات قبل از تولید خروجی) را در NAN تنظیم می کنند.
برای راحتی ، API عملکرد از ورودی های numpy. ndarray و pandas. series و قطبی ها پشتیبانی می کند.
همه نمونه های زیر از API عملکرد استفاده می کنند:
یک میانگین متحرک ساده از قیمت های نزدیک را محاسبه کنید:
محاسبه باندهای بولینگر ، با میانگین حرکت سه گانه:
محاسبه حرکت از قیمت های نزدیک ، با مدت زمانی 5:
کتابخانه زیربنایی Ta-Lib C با انتشار معمولی NAN به انتهای خروجی ، NAN را به صورت گاه غافلگیرکننده اداره می کند: به عنوان مثال:
می توانید آن را با میانگین چرخشی پانداها مقایسه کنید، جایی که رویکرد آن ها خروجی NaN است تا زمانی که مقادیر «بازگشت» کافی برای تولید خروجی های جدید مشاهده شود:
Abstract API
اگر قبلاً با استفاده از تابع API آشنا هستید، باید با استفاده از Abstract API احساس راحتی کنید.
هر تابع مجموعه ای از ورودی های نام گذاری شده را می گیرد، یا یک دستور numpy. ndarray یا pandas. Series یا polars. Series، یا pandas. DataFrame یا polars. DataFrame. اگر pandas. DataFrame یا polars. DataFrame ارائه شود، خروجی به همان نوع با ستون های خروجی نامگذاری شده برگردانده می شود.
به عنوان مثال، ورودی ها می توانند برای داده های معمولی "OHLCV" ارائه شوند:
توابع می توانند مستقیماً وارد شوند یا با نام نمونه سازی شوند:
از آنجا، فراخوانی توابع اساساً مشابه تابع API است:
Streaming API
یک Streaming API آزمایشی اضافه شد که به کاربران امکان می دهد آخرین مقدار یک نشانگر را محاسبه کنند. این می تواند سریع تر از استفاده از Function API باشد، برای مثال در برنامه ای که داده های جریانی را دریافت می کند و می خواهد فقط آخرین مقدار نشانگر به روزرسانی شده را بداند.
شاخص ها و توابع پشتیبانی شده
ما می توانیم تمام توابع TA را که توسط TA-Lib پشتیبانی می شوند، به صورت فهرست یا به عنوان یک دستور مرتب شده بر اساس گروه نشان دهیم (مانند «مطالعات همپوشانی»، «شاخص های حرکت» و غیره):
مقالات آموزش فارکس...
ما را در سایت مقالات آموزش فارکس دنبال می کنید
برچسب :
نویسنده : بهزاد فراهانی
بازدید : <-PostHit->
تاريخ : شنبه
12 فروردين
1402 ساعت: 12:48