CryptoBot/api/kraken.py

36 lines
1.5 KiB
Python
Raw Normal View History

2021-01-31 03:15:56 -05:00
from pykrakenapi import KrakenAPI
import pandas
import krakenex
import time
class Kraken:
def __init__(self):
self.krakenAPI = krakenex.API()
self.krakenAPI.load_key("kraken.key")
self.krakenWrapper = KrakenAPI(self.krakenAPI)
# Updates the current wallet prices from the internet
def updateBalances(self):
__newBalances = self.krakenWrapper.get_account_balance()
2021-01-31 16:17:25 -05:00
#print(self.balances.loc["XXBT","vol"]-__newBalances.loc["XXBT","vol"])
#print(self.balances.loc["XXDG","vol"]-__newBalances.loc["XXDG","vol"])
#print(self.balances.loc["ZUSD","vol"]-__newBalances.loc["ZUSD","vol"])
2021-01-31 03:15:56 -05:00
self.balances = __newBalances
2021-01-31 16:17:25 -05:00
# Gets a table of the price history of the pair since time at intervals of interval minutes
def getPrices(self, pair, time=round(time.time())-(30*24*3600), interval=60):
self.prices = self.krakenWrapper.get_ohlc_data(pair, interval=interval, since=time)[0].close.iloc[::-1]
2021-01-31 03:15:56 -05:00
2021-01-31 16:17:25 -05:00
# Calculates the exponential moving average by grabbing data from Kraken on the conversion rate every interval minutes.
2021-01-31 03:15:56 -05:00
def calculateEMA(self, shortTime=round(time.time())-(7*24*3600), longTime=round(time.time())-(30*24*3600), interval=60):
2021-01-31 16:17:25 -05:00
#self.prices = self.krakenWrapper.get_ohlc_data("XXBTZUSD", interval=interval, since=longTime)[0].close.iloc[::-1]
2021-01-31 03:15:56 -05:00
2021-01-31 16:17:25 -05:00
self.longEMA = self.prices.ewm(span=1*24).mean()
self.shortEMA = self.prices.ewm(span=6).mean()
2021-01-31 03:15:56 -05:00