📜  使用python获取tradingview历史数据(1)

📅  最后修改于: 2023-12-03 15:06:54.014000             🧑  作者: Mango

使用Python获取TradingView历史数据

TradingView是一款非常受欢迎的股票和数字货币图表分析工具,提供了大量历史数据和技术指标。本文介绍如何使用Python获取TradingView的历史数据,并进行一些简单的分析。

步骤 1:安装Python和必要的库

首先,您需要安装Python和必要的库,包括pandas、mplfinance和ccxt。您可以使用pip命令在命令行中进行安装:

pip install pandas mplfinance ccxt
步骤 2:连接交易所并获取数据

在获取数据之前,您需要连接到一个支持的交易所。CCXT是一个流行的Python库,可以方便地与多个交易所进行连接。以下是连接到Binance并获取BTC/USDT交易对的历史数据的示例代码:

import ccxt
import pandas as pd

exchange = ccxt.binance()
symbol = 'BTC/USDT'
candles = exchange.fetch_ohlcv(symbol, '1d')
df = pd.DataFrame(candles, columns=['timestamp', 'open', 'high', 'low', 'close', 'volume'])
df['timestamp'] = pd.to_datetime(df['timestamp'], unit='ms')
df.set_index('timestamp', inplace=True)

上面的代码将获取BTC/USDT交易对的历史日K线数据,并将它们转换为一个pandas DataFrame对象。您可以通过更改交易对和时间间隔来获取不同的历史数据。

步骤 3:绘制图表

现在您已经获取了历史数据,可以使用mplfinance库绘制具有技术指标的图表。以下是绘制简单蜡烛图的代码:

import mplfinance as mpf

mpf.plot(df, type='candle', volume=True)

如果您想添加一些技术指标,例如移动平均线和相对强弱指数,可以使用以下代码:

import mplfinance as mpf

add_plots = [
    mpf.make_addplot(df['close'].rolling(window=20).mean(), color='orange'),
    mpf.make_addplot(df['close'].rolling(window=50).mean(), color='blue'),
    mpf.make_addplot(mpf.relative_strength_index(df['close']), panel=1)
]

mpf.plot(df, type='candle', addplot=add_plots, volume=True, panel_ratios=(2,1))

上面的代码将添加20天和50天的移动平均线,以及相对强弱指数(RSI)的面板。您还可以通过修改panel_ratios参数来调整图表的面板布局。

步骤 4:数据分析

获取历史数据后,您可以使用pandas库进行一些简单的数据分析。以下是计算BTC/USDT价格涨跌幅的代码:

returns = df['close'].pct_change()

上面的代码将计算BTC/USDT每日收盘价的百分比变化。您可以使用此数据计算其他指标并进行更多分析。

总结

本文介绍了如何使用Python连接到TradingView支持的交易所并获取历史数据。然后,您可以使用mplfinance和pandas等库进行图表绘制和数据分析。通过掌握这些技能,您可以更轻松地制定交易策略和进行决策。