金 融 量 化 分 析 • 外 篇 • 绘 制 行 情 数 据 数 据 图

本文详细介绍了金融量化分析中K线图、双均线策略和通道突破策略,包括K线图的结构、双均线的金叉与死叉、唐奇安通道和布林带策略。并阐述了绘制K线图的步骤,涵盖了数据处理和代码实现,展示了不同策略的效果。
摘要由CSDN通过智能技术生成

在这里插入图片描述


前言

`利用数据绘制K线图


一、k 线 图 是 什 么 ?

K线图又称蜡烛图,起源于十八世纪德川幕府时代的米市交易市场,用来计算米价每天的涨跌走势,由开盘价、收盘价、最高价、最低价绘制而成的一条柱状的线条,它由影线和实体组成,基本用途是寻找买卖点

K线图由股票的最高价,最低价,收盘价,开盘价组成。红色代表阳线:收盘价高于开盘价,俗称看多。绿色代表阴线:收盘价低于开盘价,俗称看空。
注意⚠️:在欧美股市则是相反的,即红色代表阴线,绿色代表阳线。

二、K 线 图 结 构

(1) 影 线 和 实 体

在这里插入图片描述

(2) 十 字 线

⚠️:反映买卖双方的博弈
在这里插入图片描述

四、 双 均 线 策 略

双均线策略,就是同时考虑短周期和长周期的趋势,它由一个短周期趋势和长周期趋势构成。长周期均线 捕捉股票行情趋势,而短周期均线起到的是择时的作用。
在考虑长周期趋势的同时,兼顾比较敏感的小周期趋势,是解决简单移动平均线滞后性弱点的一项有效方法。

(一)、金叉

在这里插入图片描述

(二)、死叉

在这里插入图片描述

(三)、均 线 策 略 的 特 点

双均线策略虽然可以弥补一些滞后性,但均线策略都是基于:“利用固定长度的价格均线作为交易趋势的判断”
均线随着时间的变化是相对连续的,即使是价格发生猛涨或者急跌也很难直接造成均线方向的变化。因此使用均线侧率作为交易信号,会有滞后性

五、通 道 突 破 策 略

通道策略就是选定价格区间,当价格突破选定价格区间时就进行交易,因此没有滞后性

(一)唐 奇 安 通 道 策 略

唐奇安通道策略由三条线组成,分别是上阻力线下支撑线中心线。一般来说,唐奇安通道的宽度越宽,市场波动越大,而唐奇安通道越窄,市场波动性就越小

(1)上阻力线、中心线、下支撑线

⚠️ 上阻力线: 是由过去N天最高价的最大值组成的

⚠️ 中心线: 是由过去最高价与最低价的平均值组成的,即(最大值**+**最小值)÷2

⚠️ 下支撑线: ** 是由过去N天最低价的最小值组成的
在这里插入图片描述

(2)唐 奇 安 通 道 买 入 策 略

买入:当价格跌破下支撑线,则执行买入的操作

(2)唐 奇 安 通 道 卖 出 策 略

卖出:当价格突破上阻力线,则执行卖出的操作

(二)、布 林 带 策 略

布林带策略,也是由3条轨道线组成:其中上下两条线分别可以看成是价格的压力线支撑线,在两条线之间是一条价格平均线,一般情况价格线在上下轨道组成的带状区间游走,而且随价格的变化而自动调整轨道的位置。布林带通道宽度有4个标准差,因此95%的价格都将包含在内,可以展示大部分价格的波动情况。

(1) 压 力 线 、 价 格 平 均 线 、 支 撑 线

⚠️ 压力线: 就是20日均线加上N倍标准差,N为可调参数,一般设置为2。【压力线 = ma20 + n * std

⚠️ 价格平均线: 就是20日均线

⚠️ 支撑线: 20日均线减去N倍标准差,N为可调参数,一般设置为2。【压力线 = ma20 - n * std
在这里插入图片描述

(三)、布 林 带 策 略 与 唐 奇 安 通 道 策 略 的 关 系

联系:
外观上两个策略的线图相似
.
区别:
布林带的波动比较灵敏
唐奇安通道则相对迟缓,直上直下。
在这里插入图片描述

三、绘 图 步 骤

(1)导入相关模块

代 码 如 下 :

# 数据分析辅助模块
import numpy as np
# 读取数据模块
import pandas as pd
# 绘图基本模块
import matplotlib.pyplot as plt
# 日期转换模块
from matplotlib.dates import date2num
# 绘制蜡烛图模块
from mplfinance import original_flavor as mpf
print('<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<')

(2)处理数据

1)读取交易时间、开盘价、收盘价、最高价、最低价,并把交易时间设定位字符串
2)交易时间转换时间数据形式
2)设置时间戳:在数据时间中提取
3)设置特定蜡烛图绘图数据
4)设置移动平均线数据
5)设置金叉死叉位
6)回测金叉死叉策略收益

(3)绘制k线图

1)设置文字与符号识别
2)设置画布,添加子图,并把子图x轴设为时间轴
3)绘制K线图
4)绘制5,、10、20移动平均线
5)标记金叉死叉点位

(4)代码

代 码 如 下 :

# 数据分析辅助模块
import numpy as np
# 读取数据模块
import pandas as pd
# 绘图基本模块
import matplotlib.pyplot as plt
# 日期转换模块
from matplotlib.dates import date2num
# 绘制蜡烛图模块
from mplfinance import original_flavor as mpf
print('<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<')
"""======================== 设置数据 ========================"""
# # 数据处理
# 读取特定数据数据,设定交易时间为字符数按
path = r'F:\\601398.SH.xlsx'
data = pd.read_excel(path,usecols=['trade_date','open','close','high','low'],dtype={
   'trade_date':object})
# 数据时间处理
data['trade_date'] = pd.to_datetime(data['trade_date'])
# 设置时间戳:在数据时间中提取
data['time'] = date2num(data['trade_date'])
# 数据排序整理
data.sort_values(by = 'trade_date',ascending = True,inplace=True )
# 重置行索引
data.reset_index(inplace = True)
# 删除旧行索引
data.drop(columns = 'index',inplace = True)


# # 设置蜡烛图数据
# 提取时间戳、开盘价、收盘价、最高价、最低价数据
k = data[['time','open','close','high','low']
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Thomas_CC

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值