व्यापारियों को आकर्षित करने के लिए प्रत्येक एक्सचेंज में विशेष विशेषताएं हैं । कॉइनबेस प्रो में एक विशेष कोड है जो ट्रेडिंग को स्वचालित और सरल बनाने में मदद करता है । यह कोड कॉइनबेस प्रो एपीआई है ।
खाता बनाना बिल्कुल मुफ्त है, साथ ही कॉइनबेस प्रो एपीआई को सक्षम करना भी है ।
दो प्लेटफार्मों में कुछ समान है । कम से कम कॉइनबेस ग्लोबल इंक दोनों का मालिक है और यूआई एक दूसरे से मिलते जुलते हैं ।
फिर भी, यह स्पष्ट है कि कॉइनबेस और कॉइनबेस प्रो काफी अंतर साझा करते हैं । 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 प्रो 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% के बराबर या उससे अधिक है, तो व्यापार निष्पादित होगा ।
उपलब्धि के बाद कुछ सेकंड तक प्रतीक्षा करें, और फिर से व्यापार की जांच करें ।
जबकि सच है:
कोशिश करो:
(बीटीसी-यूएसडी)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
नींद(300)
कोशिश करो:
(बीटीसी-यूएसडी)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
प्रतिशत = ((फ्लोट(टिकर_न्यू['मूल्य']) - फ्लोट(टिकर_ओल्ड['मूल्य'])*100)/फ्लोट (टिकर_ओल्ड ['मूल्य'])
यदि प्रतिशत >= 5:
कोशिश करो:
सीमा = सी.get_product_ticker(product_id='ETH-USDT')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर टिकर डेटा प्राप्त करना: {ई}')
कोशिश करो:
आदेश=ऑथ_ क्लाइंट।place_limit_order(product_id='ETH-USDT',
पक्ष='खरीदें',
मूल्य = फ्लोट (सीमा['मूल्य']) + 2,
आकार= '0.007')
ई के रूप में अपवाद को छोड़कर:
प्रिंट (एफ ' एरर प्लेसिंग ऑर्डर: {ई}')
नींद(2)
कोशिश करो:
चेक = ऑर्डर ['आईडी']
चेक_ऑर्डर = ऑथ_ क्लाइंट।प्राप्त करें_ऑर्डर(ऑर्डर_आईडी=चेक)
ई के रूप में अपवाद को छोड़कर:
प्रिंट (आदेश की जांच करने में सक्षम । इसे खारिज किया जाए । {ई}')
अगर check_order['स्थिति'] == 'किया':
प्रिंट ('ऑर्डर सफलतापूर्वक रखा गया')
प्रिंट (चेक_ऑर्डर)
तोड़
अन्य:
प्रिंट ('आदेश का मिलान नहीं हुआ')
तोड़
अन्य:
प्रिंट (एफ ' आवश्यकता पूरी नहीं हुई है । प्रतिशत परिवर्तन {प्रतिशत}'पर है)
किसी ऑर्डर को रद्द करना बहुत सरल है । के पास जाओ रद्द करना_ऑर्डर
एपीआई एंडपॉइंट और पैरामीटर के रूप में ऑर्डर आईडी दर्ज करें:
ग्राहक।रद्द करें_ऑर्डर (ऑर्डर_आईडी = "ऑर्डर-आईडी-यहां")
इस लेख में, हमने कॉइनबेस प्रो एपीआई पर करीब से नज़र डाली और कुछ पायथन कोड उदाहरण दिए । पूरा कोड प्लेटफ़ॉर्म पर मिल सकता है GitHub पृष्ठ।
यहाँ अभी तक कोई टिप्पणी नहीं है। पहले रहो!