기존의 이더리움 가격 - Coinbase API
조회수 1101회
파이썬 coinbase API를 사용해서 -- get_buy_price
, get_sell_price
, get_spot_price
, get_historical_data
등의 함수는 비트 코인 가격만을 반환하는 것 같습니다. Ethereum 가격을 알 수 있는 방법이 있을까요?
currency_pair = 'BTC-USD'
가 유사하게 currency_pair = 'ETH-USD'
같이 변경될 수 있는 것처럼 보여도 효과는 없습니다.
공식적으로 문서가 지원하는
Get the total price to buy one bitcoin or ether
를 제외하고는 API가 단순히 이것을 지원하지 않을 것으로 기대합니다.
구매 / 판매 요청에 quote='true'
플래그를 사용하여 이 문제를 해결할 수는 있지만 이것은 단지 앞으로만 나아갈 뿐이므로 기존의 데이터를 원합니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
3 답변
-
소스 코드는 항상 당신의 친구가 될 거에요.
def get_spot_price(self, **params): """https://developers.coinbase.com/api/v2#get-spot-price""" if 'currency_pair' in params: currency_pair = params['currency_pair'] else: currency_pair = 'BTC-USD' response = self._get('v2', 'prices', currency_pair, 'spot', data=params) return self._make_api_object(response, APIObject) def get_historic_prices(self, **params): """https://developers.coinbase.com/api/v2#get-historic-prices""" response = self._get('v2', 'prices', 'historic', data=params) return self._make_api_object(response, APIObject)
두 함수가 동일한 API 마지막 지점을 호출한다는 것을 알 수 있습니다.
get_spot_price
가currency_pair
를 지원하고 API 호출의 일부로 전달하지만get_historic_prices
는 그렇지 않은 것을 알 수 있습니다.만약 그것이 가능하다고 하면 어떤 일이 일어날까요:
from coinbase.wallet.client import Client from coinbase.wallet.model import APIObject client = Client(api_key, api_secret) client._make_api_object(client._get('v2', 'prices', 'ETH-USD', 'historic'), APIObject) <APIObject @ 0x10dd04938> { "currency": "USD", "prices": [ { "price": "52.60", "time": "2017-03-30T17:03:48Z" }, { "price": "52.60", "time": "2017-03-30T17:03:38Z" }, { "price": "52.54", "time": "2017-03-30T17:03:28Z" }, { "price": "52.54", "time": "2017-03-30T17:03:18Z" }, { "price": "52.54", "time": "2017-03-30T17:03:08Z" }, { "price": "52.53", "time": "2017-03-30T17:02:58Z" }, { "price": "52.53", "time": "2017-03-30T17:02:48Z" }, { "price": "52.53", "time": "2017-03-30T17:02:38Z" }, { "price": "52.53", "time": "2017-03-30T17:02:28Z" }, .....
성공입니다 제가 홍보를 위해 보내기 전에 지금은 제 코드 snippet 을 사용할 수 있습니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
-
지난 며칠 동안 저는 이것을 시도했을 때 '예전의' 매개 변수와 함께 'currency_pair' 매개 변수를 사용하면 1 초의 세분화 기록을 생성한다는 문제점이 있었습니다.
그래서 대신에 GDAX 파이썬 클라이언트와 함께 GDAX 클라이언트 API를 사용해서 이 문제를 해결했습니다.
GDAX Python 클라이언트 설치 :
pip install gdax
그런 다음 GDAX 계정 없이 공개 API 일부를 사용할 수 있습니다.
import gdax client = gdax.PublicClient() client.get_product_historic_rates('ETH-USD', granularity=60*60*24)
사용 가능한 목록 (cryptocurrency 혹은 FIAT currency 쌍)을 얻으려면
client.get_products()
을 사용하고 id 개체를 검색하세요.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
-
저도 환율 문제로 비슷한 문제가 생겨서 도움이 되었습니다.
coinbase\wallet\client.py
에서
response = self._get('v2', 'prices', 'spot', data=params) 을
response = self._get('v2', 'prices', 'spot', params=params)
으로 params를 바꿔보세요.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력