بسته ای برای به دست آوردن داده های نقل قول از منابع مختلف و ذخیره آنها در یک پایگاه داده. نقل قول ها را می توان به سرعت استخراج و برای محاسبات و پیش بینی ها استفاده کرد. دریافت و پردازش داده ها در زمان واقعی امکان پذیر است. تعداد قابل توجهی از شاخص های آماده برای استفاده وجود دارد. یکپارچگی داده های ذخیره شده در پایگاه داده با دقت کنترل می شود.
1
сsыرین
che
метанные
лицензия: مجوز MIT
Требует: Python>= 3. 7
"
класراحی
описани شاید
live_trading_indicators
بسته ای برای به دست آوردن داده های نقل قول از منابع مختلف و ذخیره آنها در یک پایگاه داده. نقل قول ها را می توان به سرعت استخراج و برای محاسبات و پیش بینی ها استفاده کرد. دریافت و پردازش داده ها در زمان واقعی امکان پذیر است. تعداد قابل توجهی از شاخص های آماده برای استفاده وجود دارد. یکپارچگی داده های ذخیره شده در پایگاه داده با دقت کنترل می شود.
یکی از مزایای کتابخانه Live_Trading_Indicators سرعت کار است. استخراج 31 میلیون نقل قول در یک سال در بازه زمانی 1S کمتر از دو ثانیه طول می کشد: تست عملکرد.
برای محاسبه شاخص ها ، همچنین می توانید از قاب داده Pandas به عنوان منبع داده استفاده کنید.
نسخه فعلی به شما امکان می دهد داده های مبادله ای را از:
- Binance (Spot ، Futures USD-M ، Futures Coin-M).
- بسیاری از مبادلات مختلف از طریق CCXT (کتابخانه معاملاتی مبادله Cryptocurrency)
داده ها را می توان در Numpy ndarray و dataframe pandas بدست آورد ..
داده های بسته بندی از منابع آنلاین به طور پیش فرض در پوشه . lti فهرست خانه کاربر ذخیره می شود. بسته به تعداد ابزارها و بازه های زمانی آنها ، می توان مقدار قابل توجهی از داده ها را در این پوشه ایجاد کرد. فقط داده های دریافت شده از منابع آنلاین ذخیره می شوند.
نسخه 0. 7. 5
چه خبر
0. 7. 5
- شاخص جدید - لوستر
- برخی از اشکالات را برطرف کنید
0. 7. 4
- شاخص جدید - MFI
- برخی از اشکالات را برطرف کنید
- برخی از تنظیمات پیش فرض را در حین نصب جدید تغییر دهید
0. 7. 3
- پایگاه داده نقل قول بهینه شده است (تبدیل ممکن است در اولین راه اندازی مدتی طول بکشد)
- برخی از اشکالات را برطرف کنید (هنگامی که CCXT برای همزمان برای مبادلات چندگانه استفاده می شود)
- شاخص جدید - ویلیامز ٪ R
0. 7. 2
- پایگاه داده نقل قول بهینه شده است (تبدیل ممکن است در اولین راه اندازی مدتی طول بکشد)
- شاخص جدید - Ichimoku
0. 7. 1
- مهاجرت ذخیره نقل قول به SQLite3
- پشتیبانی اضافه شده برای سه الگوریتم فشرده سازی: GZIP ، BZ2 و LZ4 (نگاه کنید به)
- پارامتر عمق را برای شاخص Zigzag اضافه کنید
نصب
تمام نمونه های ذکر شده در اینجا را می توان در نمونه های نوت بوک Jupyter یافت.
دریافت نقل قول (آنلاین / حافظه پنهان)
نماد: EthusDT ، بازه زمانی: 4H تاریخ: 2022-07-01T00: 00-2022-07-01T20: 00 (طول: 6) میله های خالی: تعداد 0 (0. 00 ٪) ، حداکثر 0 ارزش متوالی: زمان ، باز ، بالا ،کم ، نزدیک ، حجم
اکنون OHLCV حاوی نقل قول هایی در Array Numpy (Ohlcv. Time ، Ohlcv. open ، Ohlcv. high ، Ohlcv. low ، Ohlcv. close ، ohlcv. volume) است.
صادرات در Pandas dataframe
نمونه دریافت داده های شاخص از Bybit از طریق CCXT (آنلاین / حافظه پنهان)
نمونه دریافت داده های شاخص از نقل قول های پاندا
نمودارهای ترسیم کننده نمودارها
نقشه برداری از Matplotlib استفاده می کند. اینها ویژگی های اختیاری هستند ، بنابراین Matplotlib باید به طور جداگانه نصب شود. دو روش برای ترسیم وجود دارد: طرح () و نمایش (). طرح () شکل ترسیم شده را برمی گرداند ، نشان می دهد () هیچ کدام را برمی گرداند. برای Notepad Jupyter بهتر است از Show () استفاده کنید ، زیرا طرح () می تواند دو بار یک شکل را ترسیم کند.
می توانید نمونه های دیگری از نمودارها را در اینجا پیدا کنید.
دریافت داده های زمان واقعی (3 دقیقه آخر در بازه زمانی 1M بدون نوار ناقص)
برای به دست آوردن داده های زمان واقعی ، لازم نیست تاریخ پایان را مشخص کنید.
دریافت داده های زمان واقعی (3 دقیقه آخر در بازه زمانی 1M و یک نوار ناقص)
برای به دست آوردن داده های حاوی یک نوار ناقص ، هنگام ایجاد شاخص ها باید با_Incomplete_Bar = درست را مشخص کنید.
جزئیات
نشانگران تجارت زنده از بازه های زمانی بعدی پشتیبانی می کنند: 1s ، 1m ، 3m ، 5m ، 10m ، 15m ، 30m ، 1H ، 2H ، 4H ، 6H ، 8H ، 12H ، 1d. بازه های زمانی خاص برای منبع به منبع بستگی دارد.
نقل قول ها
نشانگران تجارت زنده ، تمامیت نقل قول ها را هنگام بارگیری بررسی می کنند. کسری از نقل قول های گمشده نباید از max_empty_bars_fraction تجاوز کند. تعداد نقل قول های گمشده در یک ردیف نباید از MAX_EMPTY_BARS_CONSONESS فراتر رود. مقادیر MAX_EMPTY_BARS_FRACTION و MAX_EMPTY_BARS_CONSIVE به طور پیش فرض روی 0 تنظیم می شوند. یعنی اگر حداقل یک نقل قول از دست رفته وجود داشته باشد ، ltiexceptiontoomanyemptybars مطرح می شود:
live_trading_indicators. exceptions. ltiexceptiontoomanyemptybars: بسیاری از میله های خالی: کسری 0. 014076769406392695 ، 79200 در پی.
مقادیر MAX_EMPTY_BARS_FRACTION و MAX_EMPTY_BARS_CONSIVE را می توان به شرح زیر تنظیم کرد:
وارد کردن live_trading_indicators به عنوان lti lti. config (max_empty_bars_fraction = 0. 1 ، max_empty_bars_consouse = 10)
اگر به هیچ وجه به کنترل یکپارچگی احتیاج ندارید ، انجام دهید:
وارد کردن live_trading_indicators به عنوان lti lti. config (max_empty_bars_fraction = -1 ، max_empty_bars_consouse = -1)
حضور اولین و آخرین میله ها در محدوده تاریخ نیز بررسی می شود. برای اطلاعات بیشتر ، به تنظیمات مراجعه کنید.
پیام های اطلاع رسانی
به طور پیش فرض ، پیام های ورود به کنسول خروجی هستند و پیام های مشابهی را مشاهده خواهید کرد:
2022-11-04 12: 32: 31،528 دانلود با استفاده از API Symbol Btcusdt Timeframe 1M از 2022-11-04T00: 00: 00. 000.
برای غیرفعال کردن این پیام ها ، کد زیر را اجرا کرده و پایتون را مجدداً راه اندازی کنید.
هنگام دریافت مقادیر شاخص از منبع آنلاین ، دو پارامتر اول باید نماد و بازه زمانی باشند. علاوه بر این ، دوره می تواند به صورت اختیاری مشخص شود. سپس پارامترهای شاخص با نام مشخص می شوند. هنگام دریافت مقادیر نشانگر به صورت آفلاین از نماد پارامترهای پاندا PANDAS و بازه زمانی مشخص نشده است.
مثال (آنلاین)
لیست شاخص های پشتیبانی شده و پارامترهای آنها را می توان با فراخوانی lti. help () بدست آورد. نماد پارامترها ، بازه زمانی ، time_start ، time_end برای کوتاه بودن حذف شده است.
مشخص کردن دوره
سه استراتژی برای تعیین یک دوره زمانی وجود دارد:
1. دوره زمانی هنگام ایجاد شاخص ها مشخص می شود (دوره پایه)
مقادیر شاخص را می توان برای هر دوره در بازه زمانی مشخص شده برای شاخص ها بدست آورد. هنگام خروج از فاصله مشخص شده ، یک استثناء LtiexceptionOutofThePeriod مطرح می شود.
مثال
2. دوره زمانی هنگام ایجاد شاخص ها مشخص نمی شود
در این نوع ، هنگام دریافت داده های شاخص ، دوره همیشه باید مشخص شود. با افزایش فاصله ، داده ها ممکن است به روز شوند ، این ممکن است کار را کند کند.
مثال
3. حالت در زمان واقعی
در این نوع ، هنگام ایجاد شاخص ها ، فقط تاریخ شروع مشخص شده است. داده ها همیشه تا لحظه فعلی دریافت می شوند. هنگام ایجاد شاخص ها ، می توانید with_incomplete_bar = true را مشخص کنید ، سپس داده های آخرین نوار ناقص دریافت می شود. مثال بالا را ببینید.
منبع دوتایی
کدهای نماد تجارت Binance
- برای بازار نقطه ، آنها کاملاً با کد Binance (BTCUSDT ، ETHUSDT و غیره) همزمان هستند
- برای بازار آینده USD-M ، کدها با UM/(UM/BTCUSDT ، UM/ETHUSDT و غیره پیشوند هستند)
- برای Coin-M بازار آینده ، کدها با CM/(CM/BTCUSD_PERP ، CM/ETHUSD_PERP و غیره پیشوند هستند)
منبع CCXT
با استفاده از CCXT ، می توانید داده ها را از تعداد زیادی مبادله بارگیری کنید ، در حال حاضر بیش از 100 نفر وجود دارد. نمادهای موجود ، نام آنها و بازه های زمانی بستگی به منبع خاص دارد. اطلاعات بیشتر را می توان در مستندات CCXT یافت. استفاده از CCXT اختیاری است ، بنابراین باید به طور جداگانه نصب شود. می توان مانند این انجام شد:
PIP نصب CCXT
سپس می توانید با مشخص کردن آنها از طریق یک نقطه از تمام تبادلات ccxt موجود استفاده کنید. برای دانلود به عنوان مثال از binance از طریق ccxt، باید ccxt. binance را مشخص کنید. برای دانلود از okx از ccxt. okx، Bybit - ccxt. bybit و ... استفاده می کنیم.
مثال
نشانگرهای معاملات زنده با همه منابع نقل قول پشتیبانی شده توسط ccxt آزمایش نشده است. اگر مشکلی در منبع داده پیدا کردید، مشکل را از اینجا باز کنید.
گاهی اوقات منبع ccxt ممکن است نیاز به پارامترهای اضافی داشته باشد که از طریق پارامترها ارسال می شود. در این مورد، این پارامترها هنگام ایجاد Indicators از طریق exchange_params ارسال می شوند:
شاخص های معاملات زنده از انواع میانگین های متحرک زیر پشتیبانی می کنند:
- 'sma' - میانگین حرکت ساده
- 'ema' - میانگین متحرک نمایی کلاسیک با آلفا = 2 / (n + 1)، مقداردهی اولیه شده توسط SMA (مانند بایننس EMA)
- 'ema0' - میانگین متحرک نمایی کلاسیک با آلفا = 2 / (n + 1) که با مقدار اول مقداردهی اولیه شده است.
- 'mma' - میانگین متحرک اصلاح شده با آلفا = 1 / n، که توسط SMA مقداردهی شده است (مانند برخی از شاخص های باینانس)
- 'mma0' - میانگین متحرک اصلاح شده с آلفا = 1 / n که با مقدار اول مقداردهی اولیه شده است
تنظیمات کتابخانه live_trading_indicators
تنظیمات را می توان به صورت dict با استفاده از config() بدست آورد:
نتیجه:
config() نیز برای تغییر تنظیمات استفاده می شود:
هنگام ایجاد اندیکاتورها، می توانید تنظیماتی را که به جای تنظیمات ذخیره شده استفاده می شود، مشخص کنید:
دایرکتوری برای ذخیره داده های نقل قول.
log_folder
دایرکتوری فایل های لاگ.
endpoints_required
کنترل حضور اولین و آخرین نوار در محدوده تاریخ انتخاب شده. در غیاب اولین یا آخرین نوار، LTIExceptionQuotationDataNotFound بالا می رود. پیش فرض: نادرست.
max_empty_bars_fraction
از حداکثر کسر میله های از دست رفته، در صورت تجاوز، خطا رخ می دهد. پیش فرض: 1 (100% نوارهای خالی مجاز هستند).
max_empty_bars_consecutive
حداکثر تعداد نوارهای از دست رفته در یک ردیف، اگر از آن بیشتر شود، LTIExceptionTooManyEmptyBars افزایش می یابد. پیش فرض: -1 (هر تعداد نوار خالی در یک ردیف مجاز است).
restore_empty_bars
اگر True باشد، نوارهای از دست رفته را بازیابی می کند (باز = بستن = بسته قبلی، حجم = 0). کنترل تعداد نوارهای از دست رفته (max_empty_bars_fraction، max_empty_bars_consecutive) قبل از بازیابی انجام می شود. پیش فرض: درست است.
print_log
اگر True باشد، پیام های گزارش را به خروجی استاندارد خروجی می دهد. پیش فرض: درست است.
log_level
سطح ثبت ورود. پیش فرض: INFO.
request_timeout
مهلت درخواست برای دانلود نقل قول، ثانیه. پیش فرض: 30.
درخواست_تلاش می کند
تعداد تلاش برای دانلود نقل قول. پیش فرض: 3.
quotation_base
مسیری به پایگاه داده sqlite3 برای ذخیره نقل قول ها.
فشرده سازی_نوع
الگوریتم فشرده سازی نقل قول ها هنگام ذخیره در پایگاه داده. می تواند gzip، bz2، lz4 و خودکار باشد:
- bz2 - فشرده سازی خوب، کند
- gzip - فشرده سازی متوسط، سرعت متوسط
- lz4 - فشرده سازی کم، سرعت بالا
- خودکار - انتخاب خودکار
فارکس به زبان ساده...
ما را در سایت فارکس به زبان ساده دنبال می کنید
برچسب :
نویسنده : طاهره ایرانی
بازدید : <-PostHit->
تاريخ : دوشنبه
13 شهريور
1402 ساعت: 19:52