#!/usr/bin/env python import requests, json, sys def geminiPublicTicker(type, log): try: uri = "https://api.gemini.com/v1/pubticker/" + type.lower().replace('_', '') response = requests.request("GET", uri) response = json.loads(response.text) price = (float(response['last']) + float(response['ask']) + float(response['bid']))/3 price = round(price, 2) return price except KeyError as e: log("Gemini Spot Price Error: {}".format(e), 'ERR') price = 0 return price def geminiVolAskBid(type, log): try: uri = "https://api.gemini.com/v2/ticker/" + type.lower().replace('_', '') response = requests.request("GET", uri) response = json.loads(response.text) ask = round(float(response['ask']), 2) bid = round(float(response['bid']), 2) uri = "https://api.gemini.com/v1/pubticker/" + type.lower().replace('_', '') response = requests.request("GET", uri) response = json.loads(response.text) vol = round(float(response['volume']['BTC'])/24, 2) return vol, ask, bid except KeyError as e: log("Gemini Volume Ask Bid Error: {}".format(e), 'ERR') return 0, 0, 0 def geminiDailyOpenClose(type, log): try: uri = "https://api.gemini.com/v2/ticker/" + type.lower().replace('_', '') response = requests.request("GET", uri) response = json.loads(response.text) open = round(float(response['open']), 2) close = round(float(response['close']), 2) return open, close except KeyError as e: log("Gemini Open Close Error: {}".format(e), 'ERR') sys.stdout.flush() return 0, 0