侧边栏壁纸
博主头像
进一步,海阔天空 博主等级

进一步,海阔天空

  • 累计撰写 149 篇文章
  • 累计创建 20 个标签
  • 累计收到 7 条评论

目 录CONTENT

文章目录

量化交易从入门到财务自由(三)历史K线图绘制

海阔天空
2025-11-04 / 0 评论 / 0 点赞 / 26 阅读 / 0 字

K线图是股票、外汇、期货、数字货币等所有金融市场中最基础、也是最核心的技术分析图表工具。什么事K线图呢?同样的,我们来看看Deepseek是怎么回答的,毕竟它爸是搞量化交易的。

什么是K线图?

K线,又被称为“蜡烛线”,是源自日本的一种古老的技术分析方法,最初用于记录米市的行情与价格波动。如今,它是股票、外汇、期货、数字货币等所有金融市场中最基础、也是最核心的技术分析图表工具。

简单来说,K线就是一根能告诉你在一段特定时间内(如1分钟、1小时、1天、1周等),资产价格如何波动的“小柱子”。


一、K线的构成

一根标准的K线主要由三个部分组成:**实体、上影线和下影线**。

* 实体

* 含义:表示开盘价和收盘价之间的价格区间。

* 颜色

* 阳线(通常为红色或绿色):表示**收盘价高于开盘价**,代表这段时间内价格上涨。在中国和日本市场,阳线常用红色表示;在欧美市场,则常用绿色表示。

* 阴线(通常为绿色或红色):表示**收盘价低于开盘价**,代表这段时间内价格下跌。在中国和日本市场,阴线常用绿色表示;在欧美市场,则常用红色表示。

* 上影线

* 含义:从实体的上端向上延伸的细线。它的顶端代表该时间段内的**最高价**。

* 解读:上影线越长,表示价格一度冲高,但遭遇卖压后回落,上方阻力较大。

* 下影线

* 含义:从实体的下端向下延伸的细线。它的底端代表该时间段内的**最低价**。

* 解读:下影线越长,表示价格一度探底,但获得买盘支撑后反弹,下方支撑较强。


二、K线背后的信息

通过观察一根K线的形态,你可以快速解读出多空双方(买方 vs 卖方)在该时间段内的力量对比:

* 长阳线(大红线):开盘后买方力量强劲,持续推动价格上涨直至收盘。这是**强烈看涨**的信号。

* 长阴线(大绿线):开盘后卖方力量占优,持续打压价格直至收盘。这是**强烈看跌**的信号。

* 短实体(小阳/小阴线):表示多空双方势均力敌,价格波动不大,市场处于**犹豫或盘整**状态。

* 长上影线:无论阴阳,都意味着“冲高回落”,买方曾试图推高价格,但最终被卖方打压回去,上方有**阻力**。

* 长下影线:无论阴阳,都意味着“探底回升”,卖方曾试图打压价格,但最终被买方托起,下方有**支撑**。

* 十字星:当开盘价和收盘价非常接近时,实体几乎变成一条线,形似“十”字。这表示多空双方争夺激烈,但最终打成平手,是市场**趋势可能反转**的重要信号。


三、为什么K线如此重要?

1. 直观高效:一根K线包含了四个关键价格信息(开、高、低、收),让投资者能一目了然地看清市场情绪和价格动向。

2. 反映市场心理:每一根K线都是市场参与者买卖行为的综合结果,体现了贪婪、恐惧、犹豫等群体心理。

3. 用于预测:通过分析单根K线、多根K线的组合形态(如“早晨之星”、“乌云盖顶”等),投资者可以尝试判断未来价格的潜在走势。

4. 适用于任何时间框架:无论是做日内短线交易(看1分钟、5分钟K线),还是做长线投资(看日K线、周K线),K线都是通用的分析工具。


举个例子

假设某只股票今天的日K线是一根**带长下影线的红色阳线**:

* 红色阳线:说明今天收盘价高于开盘价,最终是上涨的。

* 长下影线:说明在今天交易过程中,股价曾一度大跌(远低于开盘价),但后来被强大的买盘力量拉了起来,最终收红。

这通常可以被解读为:**尽管盘中遭遇抛售,但下方支撑非常强劲,多头(买方)力量最终取得胜利,是一个可能止跌企稳的积极信号。**

总结

K线就像市场的“语言”,是记录和解读价格波动最基本、最有效的工具。 它是技术分析的基石,任何想要分析金融市场的人都必须首先学会看懂K线。不过,需要注意的是,K线形态提供的是一种概率性的信号,并非百分百准确,在实际应用中通常需要结合其他技术指标(如均线、成交量等)和基本面分析来综合判断。

最简单的K线图

上一章节中我们已经通过baostock把历史K线数据下载下来并保存到csv文件中,这里我们把数据读取出来,并绘制一个最简单的K线图。绘制K线图可以使用mplfinance库,mplfinance的使用可以查看其官网,也可以参考这个博文。代码如下:

'''
最简单的K线图
'''

import mplfinance as mpf
import pandas as pd

data=pd.read_csv('D:\\history_k_data.csv')
code=data['code'][0]
title='Stock Chart(Code:'+code+")"

#print(data)
#data['date']=pd.to_datetime(data['date'],format='%Y-%m-%d')

data.index = pd.DatetimeIndex(data['date'])
data.shape
data.head(3)
data.tail(3)

print(data)
mpf.plot(data,type='candle',volume=True,title=title)
mpf.show()

运行效果如图

最简单的K线图-显示中文

上一个K线图有点简陋,如果显示中文,还会出现乱码,优化一下:

'''
实现中文显示
'''

import mplfinance as mpf
import pandas as pd

# 解决mplfinance绘制输出中文乱码
s = mpf.make_mpf_style(base_mpf_style='yahoo', rc={'font.family': 'SimHei', 'axes.unicode_minus': 'False'})


data=pd.read_csv('D:\\history_k_data_sh600000_2024.csv')
code=data['code'][0]
title='历史K线图(股票代码:'+code+")"

#print(data)
#data['date']=pd.to_datetime(data['date'],format='%Y-%m-%d')

data.index = pd.DatetimeIndex(data['date'])
data.shape
data.head(3)
data.tail(3)

print(data)
mpf.plot(data,type='candle',volume=True,style=s,title=title,ylabel='价格',ylabel_lower='成交量')
mpf.show()

运行效果如图

最简单的K线图-自定义样式

上面的K线图是可以显示中文了,但是股价上涨竟然用绿色,下跌反而是红色,这太不符合咱中国人的思维习惯了,一路飙红当然是红色才对嘛!改一下样式即可。

'''
实现中文显示
'''

import mplfinance as mpf
import pandas as pd

# 定义市场颜色
market_colors = mpf.make_marketcolors(
up='red', # 上涨K线颜色
down='green', # 下跌K线颜色
edge='black', # 蜡烛边框颜色
wick='black', # 蜡烛影线颜色
volume=dict(up='red',down='green')
)
# 创建自定义样式
custom_style = mpf.make_mpf_style(
marketcolors=market_colors,
gridaxis='both', # 网格线方向:水平和垂直
gridstyle='-.', # 网格线样式:点划线
figcolor='lightgrey', # 图表背景色
facecolor='white', # 坐标系背景色
y_on_right=True, # Y轴显示在右侧
rc={'font.family': 'SimHei', 'axes.unicode_minus': 'False'}
)


data=pd.read_csv('D:\\history_k_data_sh600000_2024.csv')
code=data['code'][0]
title='历史K线图(股票代码:'+code+")"

#print(data)
#data['date']=pd.to_datetime(data['date'],format='%Y-%m-%d')

data.index = pd.DatetimeIndex(data['date'])
data.shape
data.head(3)
data.tail(3)

print(data)
mpf.plot(data,type='candle',volume=True,style=custom_style,title=title,ylabel='价格',ylabel_lower='成交量')
mpf.show()

运行效果如图

0

评论区