شما می توانید کارهای مختلفی را با داده های قیمت cryptocurrency مانند ایجاد مدل های پیش بینی ، نشان دادن قیمت های تاریخی یا انجام تجزیه و تحلیل نمودار انجام دهید. اما ابتدا باید داده ها را نگه دارید. امروزه ، چندین API دسترسی به داده های قیمت cryptocurrency را فراهم می کنند. یکی از مهمترین و قابل اعتماد ترین منابع CoinmarketCap.com است. این وب سایت چندین نقطه پایانی API را ارائه می دهد که دسترسی به داده های قیمت تاریخی برای ارزهای مختلف رمزنگاری مانند بیت کوین ، اتریوم و غیره را فراهم می کند. علاوه بر این ، Coinmarketap اطلاعات متا را در مورد سکه ها و مبادلات رمزنگاری ، از جمله لیست و تاریخ های نصف ، عرضه گردش مالی یا کلاه فعلی بازار ارائه می دهد. واداین آموزش یک مرور کلی از API CoinmarketCap ارائه می دهد و نحوه استفاده از API با پایتون را نشان می دهد. ما داده های قیمت تاریخی را درخواست خواهیم کرد و آنها را در یک پایگاه داده محلی SQLite با استفاده از چارچوب Pewee SQL ذخیره می کنیم.
بقیه این مقاله یک آموزش دستی پایتون است: اول ، ما زمینه کار با API CoinmarketCap را با ثبت نام برای یک کلید API رایگان قرار می دهیم. پس از آن ، ما این مورد را در یک فایل YAML ذخیره می کنیم و از آن برای پرس و جو از نقل قول های بیت کوین از نقطه انتهایی CoinmarketCap API استفاده می کنیم. هدف ما ذخیره داده ها با Peewee در SQLite DB است. ما ابتدا یک طرح را برای ذخیره داده ها تعریف خواهیم کرد. سرانجام ، ما یاد خواهیم گرفت که چگونه از نرخ های به دست آمده از پایگاه داده محلی خود پرس و جو کنیم و بعداً از آنها استفاده کنیم ، به عنوان مثال ، برای آموزش یک مدل پیش بینی قیمت.

CoinmarketCap یک API REST را ارائه می دهد که از طریق آن می توانیم به داده های قیمت رمزنگاری دسترسی پیدا کنیم.
API CoinmarketCap
CoinmarketCap یکی از وب سایت های ارجاع قیمت Crypto دارایی در جهان است. این وب سایت اطلاعاتی با کیفیت و دقیق را برای کاربران خصوصی و تجاری ارائه می دهد تا آنها بتوانند نتیجه گیری آگاهانه خود را به دست آورند. در آوریل 2020 ، CoinmarketCap توسط Binance - بزرگترین مبادله رمزنگاری در جهان - به دست آمد.
به طور کلی ، تمام سکه های مربوطه در CoinmarketCap ذکر شده اند - با این حال ، برخی از آنها سکه های کلاهبرداری و سکه هایی هستند که پیشرفت بیشتر آنها از مدتها قبل رها شده است. CoinmarketCap API مجموعه ای از نقاط پایانی قدرتمند JSON است. براساس این وب سایت ، این API ها برای تأمین نیازهای مهم ماموریت توسعه دهندگان برنامه ، دانشمندان داده و سیستم عامل های سازمانی طراحی شده اند.
بیایید به برخی از نقاط پایانی استراحت موجود نگاه کنیم.

CoinmarketCap یک مستندات API جامد ارائه می دهد
نقاط پایانی
CoinmarketCap چندین نقطه پایانی API را برای داده های مختلف مربوط به رمزنگاری از جمله قیمت ها ، مبادلات و سایر اطلاعات ارائه می دهد.
در زیر مجموعه ای از نقاط پایانی API قرار دارد:
| نقطه پایانی | چه موقع باید استفاده کرد؟ |
| /cryptocurrency/* | برای بازیابی داده های قیمت و حجم (جمع شده در تمام صرافی ها) یا داده های مربوط به قیمت مربوط به رمزنگاری. |
| /تبادل/* | برای بازگشت داده های خاص مبادله مانند لیست مبادلات سفارش داده شده و داده های جفت بازار. |
| /-متری جهانی/* | برای بازگشت ، آمار کل مانند کلاه بازار جهانی و تسلط BTC را بدست آورید. |
| /blockchain/* | برای به دست آوردن داده های تجزیه و تحلیل blockchain ، به عنوان مثال ، حجم معامله و غیره. |
| /کلید/* | برای مدیریت و نظارت بر استفاده از کلید API. |
برخی از نقاط پایانی API موجود از طریق CoinmarketCap
یک مزیت بزرگ از API CoinmarketCap این است که داده ها به عقب برگردند. به عنوان مثال ، داده های قیمت تاریخی برای بیت کوین به سال 2013 باز می گردد.
دستیابی به یک کلید API از پورتال توسعه دهنده
کلیه درخواست های مربوط به API CoinmarketCap نیاز به احراز هویت با کلید API دارد. احراز هویت از دو طریق قابل دستیابی است:
- کلید API را در عنوان سفارشی درخواست HTTP با ویژگی "X-CMC_PRO_API_KEY" (ترجیح داده شده) ارسال کنید.
- کلید را در مسیر URL ارائه دهید.
قبل از درخواست داده از CoinmarketCap API ، باید با ثبت نام در پورتال توسعه دهنده CoinmarketCap API ، کلید API خود را بدست آورید. شما از بین یکی از چندین برنامه قیمت گذاری در طی مراحل ثبت نام انتخاب خواهید کرد.
برنامه اولیه رایگان دسترسی به اکثر داده ها را فراهم می کند و برای این آموزش کافی است. با این حال ، محدودیت های شدیدی دارد ، مانند تعداد محدودی از درخواست هایی که می توانید روزانه و ماهانه انجام دهید. پس از ثبت نام ، می توانید به حساب خود وارد شوید و کلید API را در بخش "نمای کلی" نمایش دهید.
هر تماس با API CoinmarketCap اعتبار API را مصرف می کند. تعداد تماس ها و داده هایی که می توانیم از طریق API بازیابی کنیم ، برای برنامه رایگان به 100 اعتبار محدود می شود. می توانید ببینید که چه تعداد از اعتبار روزانه و ماهانه شما هنوز در صفحه نمای کلی موجود است.
برنامه های مختلف قیمت گذاری از صفحه نمای کلی CoinmarketCap API از API CoinmarketCap
ذخیره کلید API
بهتر است هرگز به دلایل امنیتی یک کلید API را مستقیماً در کد ذخیره نکنید. یک عمل بهتر وارد کردن و دسترسی به کلید API از یک پرونده جداگانه YAML است. پرونده را با نام "API_CONFIG_COINMARKETCAP. YML" ایجاد کنید و کلید API خود را در این پرونده وارد کنید: به شرح زیر:
API_ KEY: "کلید API CoinmarketCap شما"
به دست آوردن قیمت بیت کوین از طریق API CoinmarketCap
در ادامه ، ما برخی از کد های پایتون را برای ارسال درخواست به API CoinmarketCap در فواصل منظم می نویسیم. درخواست های API ما قیمت های cryptocurrency را برای شماره یک در رتبه بندی سرمایه بازار بدست می آورد. هر درخواست به API CoinmarketCap اعتبار مصرف می کند. بنابراین ، هدف ما این است که داده های قیمت را در یک پایگاه داده محلی SQLITE ذخیره کنیم. بعداً می توانیم بدون مصرف اعتبار ، آن را از آنجا بازیابی کنیم. برای مدیریت SQLite DB ، از چارچوب Pewee استفاده می کنیم.
کد در مخزن GitHub موجود است.
پیش نیازها
قبل از شروع بخش برنامه نویسی ، لطفاً اطمینان حاصل کنید که محیط Python 3 و بسته های مورد نیاز خود را تنظیم کرده اید. اگر هنوز محیط پایتون در دسترس ندارید ، می توانید مراحل موجود در این مقاله را برای تنظیم محیط آناکوندا پایتون دنبال کنید.
همچنین ، مطمئن شوید که بسته های مورد نیاز را نصب کرده اید. در این آموزش ، ما با بسته های استاندارد زیر کار خواهیم کرد:
علاوه بر این ، ما از Peewee ، یک چارچوب سبک وزن-همبستگی (ORM) استفاده خواهیم کرد که به ما امکان می دهد با SQLITE به روشی با شیء گرا و راحت تر ارتباط برقرار کنیم.
می توانید بسته ها را با استفاده از دستورات کنسول نصب کنید:
- نصب PIP
- نصب Conda (اگر از Anaconda Packet Manager استفاده می کنید)
مرحله شماره 1 یک مدل رابطه ای در SQLite ایجاد کنید
ما با تعریف یک مدل داده رابطه ای در SQLite با استفاده از Pewee شروع می کنیم. سپس از این مدل برای ادامه داده های قیمت رمزنگاری از API استفاده خواهیم کرد و آنها را برای استفاده مجدد بعدی در دسترس قرار خواهیم داد. مدل ما حاوی دو جدول خواهد بود:
- RUN: یک جدول که در آن شناسه را ذخیره می کنیم و یک جدول زمانی باعث می شود که شناسایی های گذشته را آسانتر کند. ما شروع به جستجوی داده ها از API می کنیم ، یک RunID جدید را به این جدول اضافه خواهیم کرد.
- جدول دوم قیمت نامیده می شود و حاوی قیمت قیمت برای یک بازه از پیش تعیین شده است. ما نقل قول های قیمت را در این جدول ذخیره خواهیم کرد و از طریق یک کلید خارجی به RUNID اشاره خواهیم کرد.
اجرای کد زیر میزهای خالی ایجاد می کند.
اگر می خواهید دوباره جداول را رها کنید ، می توانید با عملکرد DROP_TABLES سفارشی ما تماس بگیرید.
مرحله شماره 2 نقل قول قیمت جریان
اکنون که مدل داده رابطه ای را ایجاد کرده ایم ، می توانیم درخواست API CoinmarketCap را تعریف کنیم و جریان داده های قیمت را آغاز کنیم. برای این منظور ، ما با عنوان "Cryptocurrency/لیست/آخرین" به نقطه انتهایی CoinmarketCap می نامیم. این نقطه پایانی پاسخ JSON را باز می گرداند که شامل آخرین داده های قیمت برای تعداد مشخصی از ارزهای رمزنگاری شده بر اساس رتبه سرمایه گذاری در بازار آنها است. پاسخ حاوی اطلاعات زیر برای هر رمزنگاری شامل موارد زیر است:
- ارزش قیمت
- جدول زمانی
- حجم معاملات
- هزینه درخواست به صورت اعتبار
قبل از پرس و جو از API، باید پارامترهای اصلی API را تعریف کنیم:
- Conversion_Currency: ارزی که API با آن قیمت ها را برمی گرداند.
- شروع: موقعیتی در رتبه بندی ارزش بازار که از آن API ارزهای دیجیتال را در نتیجه شامل می شود.
- Limit: تعداد ارزهای رمزنگاری شده که API بر اساس موقعیت شروع در رتبه بندی بازار فعلی، قیمت ها را برمی گرداند.
USD را به عنوان «conversion_currency» انتخاب می کنیم، حد را تعیین می کنیم و روی «یک» شروع می کنیم. در نتیجه، API فقط قیمت بیت کوین را برمی گرداند. ما از فاصله پرس و جو 10 ثانیه استفاده می کنیم. شما می توانید فاصله زمانی را تغییر دهید، اما توجه داشته باشید که اگر در ثانیه درخواست داده باشید، اعتبار رایگان خود را به سرعت تمام می کنید. بنابراین ما درخواست ها را به 200 محدود می کنیم. می توانید بازه زمانی را برای بازیابی قیمت ها برای دوره های طولانی تر افزایش دهید.
ما کلید API خود را از یک فایل YAML ذخیره و بارگذاری می کنیم. مطمئن شوید که api_key_path در کد زیر را با مسیری که فایل api_config_coinmarketcap. yml را در آن قرار داده اید جایگزین کنید. هنگامی که این تنظیم را انجام دادید، می توانید درخواست های API را با اجرای کد زیر شروع کنید.
مرحله 3 جستجوی داده ها از جدول SQL ما
ما اکنون داده های قیمت را در SQLite DB محلی خود داریم. از آنجا، ما می توانیم داده ها را با استفاده از دستور peewee "select" SQL پرس و جو کنیم. به عنوان مثال، جدول اجرا را پرس و جو می کنیم و تعداد درخواست های انجام شده به API coinmarketcap را بازیابی می کنیم.
در مرحله بعد، قیمت ها را برای این run-id خاص انتخاب کنید و آنها را در یک نمودار خطی نمایش دهید.

و voila، نمودار خط آخرین داده های دریافت شده از API را نشان می دهد. ما اکنون این داده ها را در پایگاه داده SQLite خود ذخیره کرده ایم.
خلاصه
این مقاله مروری اجمالی از Coinmarketcap API - یکی از APIهای مورد اشاره در فضای کریپتو دارد. شما یاد گرفته اید که با پایتون، داده های قیمت تاریخی را از نقطه پایانی Coinmarketcap API درخواست کنید. ما یک اسکریپت پایتون کوتاه نوشتیم که یکی از چندین نقطه پایانی REST (ارز رمزنگاری/فهرست/آخرین) را در فواصل زمانی منظم جستجو می کند. برای اطمینان از اینکه بعداً می توانیم از داده های درخواستی مجدد استفاده کنیم، پاسخ API را با استفاده از چارچوب Pewee در پایگاه داده SQLite ذخیره کردیم.
من همیشه خوشحالم که از خوانندگانم بازخورد دریافت می کنم. بنابراین اگر آموزش به شما کمک کرد یا اگر نظری دارید در نظرات بنویسید.
منابع و مطالعه بیشتر
پیوندهای بالا به آمازون پیوندهای وابسته هستند. با خرید از طریق این لینک ها از وبلاگ Relataly.com حمایت می کنید و به پوشش هزینه های هاست کمک می کنید. استفاده از لینک ها تاثیری در قیمت ندارد.
اگر هنوز مطمئن نیستید ، اگر API CoinmarketCap برای شما مناسب است ، این روش های دیگر برای به دست آوردن داده های قیمت cryptocurrency را در نظر بگیرید:
برای بیشتر آموزش های پایتون در مورد پیش بینی بازار سهام ، مقالات زیر را بررسی کنید:
نویسنده
سلام ، من فلورین هستم ، یک مشاور مستقر در زوریخ برای هوش مصنوعی و داده ها. از زمان اتمام دکتری مندر سال 2017 ، من در زمینه طراحی و اجرای موارد استفاده ML در بخش مالی سوئیس کار کرده ام. من این وبلاگ را در سال 2020 با هدف در نظر گرفتن تجربیات خود شروع کردم و مکانی را ایجاد کردم که می توانید مفاهیم کلیدی یادگیری ماشین و مواد را پیدا کنید که به شما امکان می دهد پروژه های پایتون خود را شروع کنید.< Span> اگر هنوز مطمئن نیستید ، اگر API CoinmarketCap برای شما مناسب است ، این روش های دیگر برای به دست آوردن داده های قیمت cryptocurrency را در نظر بگیرید:
نرم افزار مفید تریدر...
ما را در سایت نرم افزار مفید تریدر دنبال می کنید
برچسب :
نویسنده : احمد شاملو
بازدید : 53
تاريخ : چهارشنبه
23 فروردين
1402 ساعت: 13:40