首页 > 编程笔记 > Python笔记 阅读:33

Python绘制K线图(附带实例)

K 线图是一种用于展示金融市场价格走势的图表,主要用于股票、期货、外汇等金融市场。它由一系列矩形盒子(称为“K线”)组成,每个矩形盒子代表一段时间内的价格变动情况,通常包括开盘价、收盘价、最高价和最低价。

K 线图的构成部分有:
K 线图能够提供关于价格走势、市场情绪和交易活动的重要信息,包括支撑阻力位、趋势方向、买卖信号等。在金融分析中,K线图是一种常见的技术分析工具,被广泛应用于制定交易策略和预测价格走势。

Python 中,使用 Plotly 可以绘制 K 线图,此时需要创建一个 go.Candlestick 对象,并将其添加到图表中。

【实例】 K 线图绘制示例 1。输入如下代码
import plotly.graph_objects as go
import pandas as pd

# 使用 Pandas 的 read_csv() 函数从 CSV 文件中读取数据,并存储在 DataFrame 对象 df 中
df = pd.read_csv('D:/DingJB/PyData/finance-charts-apple.csv')

# 使用 Plotly 的 Candlestick 对象 go.Candlestick 创建 K 线图
fig = go.Figure(data=[go.Candlestick(x=df['Date'],
                                     open=df['AAPL.Open'],
                                     high=df['AAPL.High'],
                                     low=df['AAPL.Low'],
                                     close=df['AAPL.Close'])])
fig.show()
上述代码指定 X 轴为日期(Date列),开盘价(AAPL.Open列)、最高价(AAPL.High列)、最低价(AAPL.Low列)、收盘价(AAPL.Close列)分别对应 K 线图的open、high、low、close参数。输出的结果如下图所示。


图 1 K线图1

# 隐藏 X 轴上的滚动窗口
fig.update_layout(xaxis_rangeslider_visible=False)
fig.show()
输出的结果如下图所示:


图 2 K线图2

# 更新布局,并添加图标题、Y轴标签、注释
fig.update_layout(title='The Great Recession', yaxis_title='AAPL Stock',
                shapes=[dict(
                    x0='2016-12-09', x1='2016-12-09', y0=0, y1=1,
                    xref='x', yref='paper', line_width=2)],
                annotations=[dict(  # 添加注释,说明某个时间点
                    x='2016-12-09', y=0.05, xref='x', yref='paper',
                    showarrow=False, xanchor='left', text='Increase Period Begins'))])

fig.show()
输出的结果如下图所示:


图 3 K线图3

相关文章