import pandas as pd
import time
import os
import datetime
import ccxt
import talib as ta
def crawl_exchanges_dates(exchange_name, symbol, timeframe, aver1, aver2, aver3, aver4, aver5, aver6, aver7, aver8,
manymin):
"""
从指定交易所获取指定交易对的K线数据,并计算移动平均线指标。
:param exchange_name: 交易所名称
:param symbol: 交易对
:param timeframe: 时间框架
:param aver1 - aver8: 移动平均线的周期
:param manymin: 时间计算参数
:return: 计算得到的移动平均线指标和K线数据
"""
exchange_class = getattr(ccxt, exchange_name)
exchange = exchange_class()
print(exchange)
last = time.time() - (aver8 + 5) * 60 * manymin
start = time.localtime(last)
start_time = time.strftime("%Y-%m-%d %H-%M-%S", start)
start_time = datetime.datetime.strptime(start_time, '%Y-%m-%d %H-%M-%S')
start_time_stamp = int(time.mktime(start_time.timetuple())) * 1000
print(start_time)
date = exchange.fetch_ohlcv(symbol, timeframe=timeframe, since=start_time_stamp, limit=1000)
df = pd.DataFrame(date)
df.rename(columns={
0: 'open_time', 1: 'open', 2: 'high', 3: 'low', 4: 'close', 5: 'volume'}, inplace=True)
df['open_time'] = df['open_time'].apply(lambda x: (x // 60) * 60)
df['Datetime'] = pd.to_datetime(df['open_time'], unit='ms') + pd.Timedelta(hours=8)
df['Datetime'] = df
python代码实现了从币安(Binance)交易所获取以`USDT`为交易对的1月时间框架的K线数据
最新推荐文章于 2025-02-15 19:44:35 发布