python-3.x - python : How to set ticker in krakenex for fetching historical OHLC-data?

标签 python-3.x kraken.js historical-db

我正在尝试使用 API krakenex 为我的研究项目从 Kraken 加载 OHLC 数据。但我无法弄清楚我的错误。

我正在使用 https://github.com/veox/python3-krakenex/blob/master/examples/trades-history.py 的修改版本在 python 中获取历史 OHLC 数据:

import krakenex
import datetime
import calendar
import pandas as pd
import time

# takes date and returns nix time
def date_nix(str_date):
    return calendar.timegm(str_date.timetuple())

# takes nix time and returns date
def date_str(nix_time):
    return datetime.datetime.fromtimestamp(nix_time).strftime('%m, %d, %Y')

#return formated request data
def req(start, end, ofs):
    req_data = {'type': 'all',
                'trades': 'true',
                'start': str(date_nix(start)),
                'end': str(date_nix(end)),
                'ofs': str(ofs)
                }
    return req_data

k = krakenex.API()

k.load_key('kraken.key.txt')
#k.set_connection({'pair':'GNOETH'})
#headers={"headers":'XXBTZUSD'}
#pairs = ['XETHZEUR','XXBTZEUR', 'XZECZEUR', 'XXRPZEUR']
datum_ende=[[31,28,31,30,31,30,31,31,30,31,30,31],[31,29,31,30,31,30,31,31,30,31,30,31]]
data = []
count = 0
jahre =[2015,2016,2017]
for j in jahre:
    for i in range(0,11):
        start_date = datetime.datetime(j, i+1, 1)
        if j==2016:
             end_date = datetime.datetime(2016, i+1, datum_ende[1][i])
        else: 
            end_date = datetime.datetime(j, (i+1),datum_ende[0][i])
        th = k.query_private('TradesHistory', req(start_date,end_date,1))
        time.sleep(.25)
        print(th)
        th_error = th['error']
        if int(th['result']['count'])>0:
            count += th['result']['count']
            data.append(pd.DataFrame.from_dict(th['result']

所以我现在的问题是我收到了这些行:

{'error': [], 'result': {'trades': {}, 'count': 0}

我想问题是我没有定义代码对。但我不知道我应该怎么做。

你能帮帮我吗?

最佳答案

为什么不尝试专用的 OHCL 方法?

这是一个简单的用法示例:

import krakenex
from pprint import pprint

k = krakenex.API()

pprint(k.query_public('OHLC', {'pair':'XXBTZUSD', 'interval':1440, 'since':1214011560}))

关于python-3.x - python : How to set ticker in krakenex for fetching historical OHLC-data?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45022383/

相关文章:

dust.js - 如何在 dust 中使用动态键映射属性文件中的内容

python - sqlalchemy 模型的数据和逻辑分离

python - 如果我删除 Python 字典类中不存在的键会发生什么?

python - asyncio.run_coroutine_threadsafe 的 future 永远挂起?

javascript - 在客户端编译和渲染复杂的 Dust.js 模板

node.js - 在 KrakenJS/Express 中加载 socket.io 作为模块

sql-server - 超长期数据归档的技术解决方案?

sql - 在订单中保留易变数据

python-3.x - 使用 pywinauto 检查工具中的数据