Coinbase प्रो एपीआई | गाइड द्वारा Cryptogeek
व्यापारियों को आकर्षित करने के लिए प्रत्येक एक्सचेंज में विशेष विशेषताएं हैं । कॉइनबेस प्रो में एक विशेष कोड है जो ट्रेडिंग को स्वचालित और सरल बनाने में मदद करता है । यह कोड कॉइनबेस प्रो एपीआई है ।
खाता बनाना बिल्कुल मुफ्त है, साथ ही कॉइनबेस प्रो एपीआई को सक्षम करना भी है ।
Coinbase और Coinbase प्रो मतभेद
दो प्लेटफार्मों में कुछ समान है । कम से कम कॉइनबेस ग्लोबल इंक दोनों का मालिक है और यूआई एक दूसरे से मिलते जुलते हैं ।
फिर भी, यह स्पष्ट है कि कॉइनबेस और कॉइनबेस प्रो काफी अंतर साझा करते हैं । Coinbase बल्कि एक क्रिप्टोक्यूरेंसी मार्केटप्लेस है, जबकि कॉइनबेस प्रो एक पूर्ण क्रिप्टो एक्सचेंज है । Coinbase एक क्रिप्टोक्यूरेंसी वॉलेट जैसा दिखता है, जबकि कॉइनबेस प्रो एक ट्रेडिंग प्लेटफॉर्म की अधिक संभावना है ।
इनोवेटिव एट्रिब्यूट्स और एंडपॉइंट्स कॉइनबेस प्रो एपीआई पर ट्रेडिंग को कॉइनबेस की तुलना में बहुत तेज और बेहतर बनाते हैं ।
अब कॉइनबेस प्रो एपीआई से अधिक के लिए उपलब्ध है 100 देशों.
कॉइनबेस प्रो एपीआई का उपयोग करने के पेशेवरों और विपक्ष
यहाँ पेशेवरों की एक छोटी सूची है और विपक्ष व्यापारियों को ध्यान में रखना चाहिए.
पेशेवरों:
सरल
सहज ज्ञान युक्त
अमेरिका में पूरी तरह से विनियमित
उच्च तरलता
● का समर्थन करता है फिएट (USD, EUR, GBP)
120 से अधिक क्रिप्टोकरेंसी का समर्थन करता है
विपक्ष:
उच्च शुल्क
धीमी ग्राहक सहायता
● बहुत जटिल newbies के लिए
संक्षेप में, कॉइनबेस प्रो एपीआई में विपक्ष के बजाय दोगुने पेशेवर हैं ।
क्या कॉइनबेस प्रो फीस लेता है?
हाँ, यह करता है । कॉइनबेस प्रो अपने उपयोगकर्ताओं से सामान्य ट्रेडिंग शुल्क लेता है । यह 30-दिन की अवधि के बाद होता है जब अंतिम मूल्य की गणना की जाती है । व्यापारी की सुविधा के लिए, राशि यूएसडी में ली जाती है ।
आमतौर पर, फीस को "निर्माता" और "लेने वाले"में विभाजित किया जाता है:
1. एक उपयोगकर्ता एक लेने वाला बन जाता है जब एक रखा बाजार आदेश तुरंत भर जाता है । शुल्क: 0.04% से 0.50% तक ।
2. एएसईआर एक निर्माता बन जाता है जब एक रखा आदेश एक बार में नहीं भरा जाता है और ऑर्डर बुक पर चला जाता है । इसलिए किसी अन्य व्यापारी द्वारा मिलान किए जाने तक प्रतीक्षा करने की आवश्यकता है । शुल्क: 0.00% 0.50% तक ।
3. और जब आदेश केवल आंशिक रूप से भरा जाता है, तो दोनों शुल्क का भुगतान किया जाता है । सबसे पहले, भरे हुए हिस्से से मेल खाने वाले शुल्क का भुगतान किया जाता है, जबकि बाकी ऑर्डर ऑर्डर बुक पर बाद तक चलता है । और जब इसका मिलान किया जाता है, तो एक निर्माता शुल्क का भुगतान किया जाता है ।
यह तालिका दोनों शुल्क के लिए वर्तमान ट्रेडिंग वॉल्यूम दिखाती है:
क्या अन्य एक्सचेंजों में एपीआई है?
कई अन्य एक्सचेंजों में एक एपीआई है। इसलिए कॉइनबेस प्रो एपीआई व्यापारियों के लिए एकमात्र विकल्प नहीं हो सकता है । यहाँ एपीआई के साथ सिर्फ कई एक्सचेंज हैं:
● Binance
● BitMex
● HitBTC
● Kraken
● मिथुन राशि
● KuCoin
● Bittrex
● Bitfinex
उचित शोध पूरा करने के बाद, व्यापारी प्रदान किए गए एक्सचेंजों में से चुन सकते हैं या कुछ अन्य प्लेटफॉर्म ढूंढ सकते हैं जो उनकी जरूरतों को पूरा करेंगे । हालाँकि, चलो कॉइनबेस प्रो पर वापस आते हैं ।
कॉइनबेस प्रो पर एक खाता बनाना
व्यापारियों के पास इस प्लेटफ़ॉर्म पर खाता बनाने के केवल दो तरीके हैं:
1. यदि किसी व्यापारी के पास पहले से ही कॉइनबेस खाता है, तो केवल एक चीज बची है, इसे कॉइनबेस प्रो से जोड़ना है । तब खातों के बीच फंड ट्रांसफर संभव होगा ।
2. या बस यात्रा Coinbase प्रो प्रारंभ पृष्ठ और वहीं एक खाता लॉन्च करें ।
"आरंभ करें" बटन पर क्लिक करने के बाद, नए लोगों को अपना मूल खाता विवरण भरना होगा, एक ईमेल पता सत्यापित करना होगा और दो-कारक प्रमाणीकरण सक्षम करना होगा । पंजीकरण पूरा करने के लिए, उपयोगकर्ताओं को कुछ व्यक्तिगत जानकारी प्रदान करनी होगी: नाम, जन्म तिथि, पता, इरादा, धन का स्रोत, व्यवसाय, जिसमें एक आईडी फोटो और बैंक खाते का लिंक शामिल है ।
कॉइनबेस एपीआई कुंजी क्या है?
कॉइनबेस प्रो एपीआई से निपटने के लिए, व्यापारियों को कॉइनबेस एपीआई कुंजी की आवश्यकता होती है । सबसे पहले, "एपीआई" और फिर "+ नई एपीआई कुंजी" बटन पर क्लिक करें । फिर उपयोगकर्ताओं को एपीआई कुंजी के लिए अनुमतियां चुननी होंगी, उपनाम और पासफ़्रेज़ सेट करना होगा, प्रमाणीकरण का एक अतिरिक्त स्तर और कॉइनबेस द्वारा महसूस की गई सुरक्षा सुविधा ।
एपीआई कुंजी काम करना शुरू करने से पहले, व्यापारियों को एक और चरण पूरा करने की आवश्यकता है: एक गुप्त कुंजी प्राप्त करने के लिए एक सत्यापन कोड दर्ज करें । इसके अलावा, उपयोगकर्ताओं को उस गुप्त कुंजी को सुरक्षित स्थान पर रखना चाहिए ताकि इसे खोना न पड़े ।
अंत में, कॉइनबेस प्रो एपीआई बनाया गया है । आइए आगे बढ़ें और इसकी क्षमताओं के बारे में बात करें ।
उपयोगी पायथन कॉइनबेस प्रो एपीआई कमांड
प्रत्येक व्यापारी अपने पसंदीदा ग्राहक को पांच समर्थित में से चुन सकता है:
सिक्काबेस प्रो एपीआई पर कमांड लिखने के लिए पायथन सबसे लोकप्रिय क्लाइंट है । इसलिए उदाहरणों में केवल यह शामिल होगा ।
चलो शुरू करते हैं:
रंज स्थापित cbpro
पायथन कॉइनबेस एपीआई के साथ ट्रेडिंग जोड़े की जानकारी
कॉइनबेस प्रो एपीआई पायथन लाइब्रेरी में उपयोग करता है प्राप्त करें_उत्पाद
ट्रेडिंग जोड़े पर जानकारी प्राप्त करने के लिए एंडपॉइंट । अगला चरण लाइब्रेरी आयात कर रहा है, क्लाइंट को इनिशियलाइज़ कर रहा है, उत्पाद डेटा प्राप्त कर रहा है:
आयात cbpro
पीडी के रूप में आयात पांडा
c = cbpro.PublicClient()
डेटा = पीडी । DataFrame(सी.get_products())
डेटा।पूंछ () ।
पायथन कॉइनबेस एपीआई के साथ मूल्य डेटा
मूल्य डेटा पर जानकारी प्राप्त करने के लिए, उपयोग करें प्राप्त करें_उत्पाद_टिकर
समापन बिंदु और टिकर पैरामीटर निर्दिष्ट करें । कार्डानो के लिए यह होगा:
टिकर = सी.get_product_ticker(product_id='ADA-अमरीकी डालर')
टिकर
तिथि प्राप्त करने का दूसरा तरीका निम्न की सहायता से है Coinbase प्रो बाकी एपीआई समापन बिंदु:
आयात अनुरोध टिकर = अनुरोध । https://api.pro.coinbase.com/products/ADA-USD/ticker').जेसन()
टिकर
पायथन कॉइनबेस एपीआई के साथ ऐतिहासिक डेटा
ऐतिहासिक डेटा पर जानकारी प्राप्त करने के लिए, उपयोग करें प्राप्त करें_उत्पाद_हिस्टरिक_रेट्स
समापन बिंदु। ग्रैन्युलैरिटी, प्रारंभ और समाप्ति तिथि निर्दिष्ट करना संभव है ।
देखें कि डिफ़ॉल्ट मापदंडों के साथ ईटीएच-यूएसडी ऐतिहासिक डेटा प्राप्त करना कितना सरल है और इसे एक व्यवस्थित डेटा फ्रेम में व्यवस्थित करना है:
ऐतिहासिक = पीडी।DataFrame(सी.get_product_historic_rates(product_id='ETH-अमरीकी डालर')) ऐतिहासिक है.कॉलम= ["दिनांक","ओपन","हाई","लो", "क्लोज","वॉल्यूम"]
ऐतिहासिक ['तिथि'] = पीडी.टू_डेटटाइम(ऐतिहासिक ['तिथि'], इकाई= 'एस')
ऐतिहासिक।set_index('तारीख', inplace=सच)
ऐतिहासिक।sort_values(द्वारा='तारीख', आरोही=सच, inplace=सच)
ऐतिहासिक
यदि आवश्यक हो, तो बाद में इस डेटा का उपयोग एक साधारण संकेतक बनाने और एक कैंडलस्टिक चार्ट बनाने के लिए किया जा सकता था ।
पायथन कॉइनबेस एपीआई के साथ तकनीकी संकेतकों तक पहुंचना
दुर्भाग्य से, कॉइनबेस प्रो एपीआई किसी भी पूर्व निर्धारित संकेतक की पेशकश नहीं करता है । हालांकि, इन-बिल्ट पांडा सुविधाओं का उपयोग करके या केवल बीटीएएलआईबी लाइब्रेरी पर भरोसा करना संभव है ।
पांडा के साथ एक साधारण 20 एसएमए संकेतक बनाने का तरीका है:
ऐतिहासिक ['20 एसएमए'] = ऐतिहासिक।बंद करे । रोलिंग(20) । मतलब()
ऐतिहासिक।पूंछ()
और इन सभी आंकड़ों के साथ, एक इंटरैक्टिव चार्ट बनाना संभव है:
आयात plotly.ग्राफ_ऑब्जेक्ट्स गो के रूप में
अंजीर = जाओ । चित्रा (डेटा=[जाओ । मोमबत्ती(x = ऐतिहासिक है.सूचकांक,
खुला = ऐतिहासिक ['खुला'],
उच्च = ऐतिहासिक ['उच्च'],
कम = ऐतिहासिक ['कम'],
बंद = ऐतिहासिक ['बंद'], ),
जा।.तितर बितर(x=ऐतिहासिक है.सूचकांक, वाई = ऐतिहासिक ['20 एसएमए'], रेखा=तानाशाही (रंग='बैंगनी', चौड़ाई=1))])
अंजीर।दिखाएँ()
ऑर्डर बुक डेटा
ऑर्डर बुक डेटा तक पहुंचने के लिए, का उपयोग करें प्राप्त करें_उत्पाद_ऑर्डर_बुक
Coinbase प्रो एपीआई समापन बिंदु. यहां बीटीसी-यूएसडी के लिए डेटा प्राप्त करने और बोलियों और पूछता है की व्यवस्था करने का एक उदाहरण है ।
प्राप्त करें_उत्पाद_ऑर्डर_बुक ('बीटीसी-यूएसडी')
ऑर्डर_बुक
अगला चरण दो डेटा फ़्रेम बना रहा है:
बोलियां = पीडी । DataFrame(order_book['बोलियों'])
पूछता है = पीडी । DataFrame(order_book['पूछता'])
बोलियां।सिर()
अब उन्हें मर्ज करना और अधिक जानकारीपूर्ण होने के लिए कॉलम का नाम बदलना:
df = पीडी.मर्ज(बोलियां, पूछता है, वाम_इंडेक्स=सत्य, राइट_इंडेक्स=सत्य)
df = df.नाम बदलें({"0_एक्स":"बोली मूल्य","1_एक्स":"बोली आकार", "2_एक्स": "बोली राशि",
"0_वाई":"मूल्य पूछें","1_वाई":" आकार पूछें","2_वाई":" राशि पूछें"}, अक्ष='कॉलम')
df.सिर()
ट्रेड डेटा
ट्रेडों डेटा प्राप्त करने के लिए, का उपयोग करें प्राप्त करें_उत्पाद_ट्रेड्स
समापन बिंदु। इस उदाहरण में डेटा प्राप्त करने वाली संपत्ति दर्ज करना न भूलें; ईटीएच-यूएसडी ।
ट्रेड्स = पीडी । डेटाफ्रेम (अनुरोध । https://api.pro.coinbase.com/products/ETH-USD/trades'). जेसन())
ट्रेड्स.पूंछ()
पायथन लाइब्रेरी को अटकने के लिए नहीं, आरईएसटी एपीआई का उपयोग करें ।
कैसे उपयोग करने के लिए Coinbase प्रो WebSocket एपीआई?
का उपयोग करने के लिए Coinbase प्रो WebSockets का उपयोग करें WebscoketClient
समापन बिंदु। इसके लिए धन्यवाद, व्यापारी आसानी से दिलचस्प डेटा पर अपडेट रह सकते हैं ।
आयात cbpro
wsc = cbpro.WebsocketClient(यूआरएल="wss://ws-फ़ीड.प्रो.coinbase.com", उत्पादों="ADA-अमरीकी डालर",
चैनल=["टिकर"])
वेबसॉकेट को बंद करने के लिए, बस एक साधारण कमांड का उपयोग करें:
wsc.बंद करे()
अगला कमांड टिकर मूल्य डेटा को एक निश्चित संख्या में वेबसोकेट संदेशों तक एकत्र करने और उन्हें प्रिंट करने में मदद करता है:
आयात समय, cbpro
वर्ग myWebsocketClient(cbpro.WebsocketClient):
डेफ ऑन_ओपन(स्वयं):
स्व.यूआरएल = "wss://ws-फ़ीड.प्रो.coinbase.कॉम/"
स्व.उत्पादों = ["ETH-USDT"]
स्व.चैनल=["टिकर"]
स्व.संदेश_काउंट = 0
डेफ on_message(आत्म, msg):
स्व.संदेश_काउंट += 1
यदि एमएसजी में' मूल्य 'और एमएसजी में 'प्रकार' :
प्रिंट ("संदेश प्रकार:", संदेश ["प्रकार"],
"\t@ {:.3f}".प्रारूप(फ्लोट(msg["मूल्य"])))
डेफ ऑन_क्लोज(स्वयं):
प्रिंट ("समापन")
wsClient = myWebsocketClient()
wsClient.प्रारंभ()
प्रिंट(wsClient.यूआरएल, wsClient.उत्पादों, wsClient.चैनल)
जबकि (wsClient.संदेश_काउंट < 50):
प्रिंट ("\nmessage_count =", "{} \n".प्रारूप(wsClient.संदेश_काउंट))
समय।नींद (1)
wsClient.बंद करे()
कॉइनबेस प्रो एपीआई पर ट्रेडों को निष्पादित करना
पायथन कॉइनबेस एपीआई कमांड के साथ, ट्रेडों को निष्पादित करना काफी सरल है । आइए दो उदाहरणों पर एक नज़र डालें: ईटीएच पर एक व्यापार निष्पादित करना जब बीटीसी एक निश्चित मूल्य को हिट करता है और ईटीएच व्यापार निष्पादित करता है जब बीटीसी अंतिम 5 मिनट में 5% चलता है ।
जब बीटीसी एक निश्चित मूल्य को हिट करता है तो ईटीएच पर व्यापार कैसे निष्पादित करें?
अब आइए जानें कि निर्दिष्ट आवश्यकताओं के साथ ऑर्डर को ठीक से कैसे लॉन्च किया जाए: ईटीएच पर एक व्यापार शुरू करें जब बीटीसी एक निश्चित मूल्य (जैसे $38500) हिट करता है ।
1. एक ऑर्डर फाउंडेशन सेट करें;
2. एक लूप बनाएं जो जांच करेगा कि मूल्य स्तर हिट है या नहीं;
3. एक बार कीमत हिट हो जाने के बाद, एक मार्केट ऑर्डर निष्पादित किया जाएगा;
4. कुछ सेकंड तक प्रतीक्षा करें और जांचें कि क्या आदेश वास्तव में भरा गया है ।
तर्क सेट करने के बाद, यह प्रासंगिक पुस्तकालयों को आयात करने और एपीआई स्थापित करने का समय है:
आयात cbpro
आयात base64
आयात json से समय
नींद आयात करें
कुंजी = "
गुप्त = "
पासफ़्रेज़ = "
इनकोडिंग = json.डंप (गुप्त) । सांकेतिक शब्दों में बदलना()
b64secret = base64.b64encode(इनकोडिंग)
auth_client = cbpro.प्रमाणित क्लाइंट(कुंजी=कुंजी, बी 64 गुप्त=गुप्त, पासफ़्रेज़=पासफ़्रेज़)
c = cbpro.PublicClient()
मुख्य व्यापारिक तर्क के लिए, ऑर्डर को सुरक्षित बनाने के लिए यहां एक महत्वपूर्ण सूचना है । ऐसा करने के लिए, वर्तमान ईटीएच-यूएसडी मूल्य लेकर और शीर्ष पर कुछ डॉलर जोड़कर एक सीमा आदेश दें ।
जबकि सच है:
कोशिश करो:
टिकर = सी. गेट_प्रोडक्ट_टिकर (उत्पाद_आईडी= 'बीटीसी-यूएसडी')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
यदि फ्लोट (टिकर['मूल्य']) > = 38500.00:
कोशिश करो:
सीमा = सी.get_product_ticker(product_id='ETH-अमरीकी डालर')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
कोशिश करो:
आदेश=ऑथ_ क्लाइंट।place_limit_order(product_id='ETH-USDT',
पक्ष='खरीदें',
मूल्य = फ्लोट (सीमा['मूल्य']) + 2,
आकार= '0.007')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर प्लेसिंग ऑर्डर: {ई}')
नींद(2)
कोशिश करो:
चेक = ऑर्डर ['आईडी']
चेक_ऑर्डर = ऑथ_ क्लाइंट।प्राप्त करें_ऑर्डर(ऑर्डर_आईडी=चेक)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (आदेश की जांच करने में सक्षम । इसे खारिज किया जाए । {ई}')
अगर check_order['स्थिति'] == 'किया':
प्रिंट ('ऑर्डर सफलतापूर्वक रखा गया')
प्रिंट (चेक_ऑर्डर)
तोड़
अन्य:
प्रिंट ('आदेश का मिलान नहीं हुआ')
तोड़
अन्य:
प्रिंट (एफ ' आवश्यकता पूरी नहीं हुई है । टिकर मूल्य {टिकर ["मूल्य"]}') पर है
नींद(10)
जब बीटीसी अंतिम 5 मिनट में 5% चलता है तो ईटीएच व्यापार कैसे निष्पादित करें?
कार्य थोड़ा जटिल हो जाता है । नए लूप को दो क्रिप्टोकरेंसी की कीमतें प्राप्त करनी होंगी और बीच में प्रतिशत परिवर्तन की गणना करनी होगी:
यदि प्रतिशत परिवर्तन 5% से कम है, तो कार्यक्रम 5 मिनट और सोएगा;
यदि प्रतिशत परिवर्तन 5% के बराबर या उससे अधिक है, तो व्यापार निष्पादित होगा ।
उपलब्धि के बाद कुछ सेकंड तक प्रतीक्षा करें, और फिर से व्यापार की जांच करें ।
जबकि सच है:
कोशिश करो:
(बीटीसी-यूएसडी)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
नींद(300)
कोशिश करो:
(बीटीसी-यूएसडी)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
प्रतिशत = ((फ्लोट(टिकर_न्यू['मूल्य']) - फ्लोट(टिकर_ओल्ड['मूल्य'])*100)/फ्लोट (टिकर_ओल्ड ['मूल्य'])
यदि प्रतिशत >= 5:
कोशिश करो:
सीमा = सी.get_product_ticker(product_id='ETH-USDT')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
कोशिश करो:
आदेश=ऑथ_ क्लाइंट।place_limit_order(product_id='ETH-USDT',
पक्ष='खरीदें',
मूल्य = फ्लोट (सीमा['मूल्य']) + 2,
आकार= '0.007')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर प्लेसिंग ऑर्डर: {ई}')
नींद(2)
कोशिश करो:
चेक = ऑर्डर ['आईडी']
चेक_ऑर्डर = ऑथ_ क्लाइंट।प्राप्त करें_ऑर्डर(ऑर्डर_आईडी=चेक)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (आदेश की जांच करने में सक्षम । इसे खारिज किया जाए । {ई}')
अगर check_order['स्थिति'] == 'किया':
प्रिंट ('ऑर्डर सफलतापूर्वक रखा गया')
प्रिंट (चेक_ऑर्डर)
तोड़
अन्य:
प्रिंट ('आदेश का मिलान नहीं हुआ')
तोड़
अन्य:
प्रिंट (एफ ' आवश्यकता पूरी नहीं हुई है । प्रतिशत परिवर्तन {प्रतिशत}'पर है)
कॉइनबेस प्रो एपीआई के साथ ऑर्डर कैसे रद्द करें?
किसी ऑर्डर को रद्द करना बहुत सरल है । के पास जाओ रद्द करना_ऑर्डर
एपीआई एंडपॉइंट और पैरामीटर के रूप में ऑर्डर आईडी दर्ज करें:
ग्राहक।रद्द करें_ऑर्डर (ऑर्डर_आईडी = "ऑर्डर-आईडी-यहां")
निष्कर्ष
इस लेख में, हमने कॉइनबेस प्रो एपीआई पर करीब से नज़र डाली और कुछ पायथन कोड उदाहरण दिए । पूरा कोड प्लेटफ़ॉर्म पर मिल सकता है GitHub पृष्ठ।