python股票分析挖掘预测技术指标知识之蜡烛图指标(6)

本人股市多年的老韭菜,各种股票分析书籍,技术指标书籍阅历无数,萌发想法,何不自己开发个股票预测分析软件,选择python因为够强大,它提供了很多高效便捷的数据分析工具包。

我们已经初步的接触与学习其中数据分析中常见的3大利器---Numpy,Pandas,Matplotlib库。

也简单介绍一下数据获取的二种方法,通过金融数据接口和爬虫获取。

同时介绍了指标之王MACD,随机指标KDJ和BOLL指标线和量价指标的用和法均线指标详细的

用法

这一章我们讲一下经典蜡烛图买卖点:

蜡烛图

(1)蜡烛图指标解释

蜡烛图就是K线图。K线是以每个交易日(或每个分析周期)的开盘价、更高价、更低价、和收盘价绘制而成,K线的结构可分为上影线、下影线及中间实体三部分。

K线是一条柱状的线条,由影线和实体组成。中间的矩形称为实体,影线在实体上方的细线叫上影线,下方的部分叫下影线。实体分阳线和阴线。一条K线的记录就是某一种股票一天的价格变动情况。

在古老的股市操作中,日本人在大米这一行业中发明了大米库券,这种大米库券是做未来大米收成的预期的,后来就成为了世界上最早的期货合约。慢慢的,在这一行业开始研究出了蜡烛图,这就是蜡烛图的由来。但是最终的推广,还是在一个叫史蒂夫·尼森(Steve Nison)的西方人手里,他在这方面写作了不少专业的书籍,然后顺利地将其推广开来。

(2)蜡烛图用法

多种蜡烛图(K线)的组合形态可以判断未来的走势,基本上78种看涨看跌图形组合,如果对股票感兴趣的,可以慢慢研究。

(3)蜡烛图绘制

简单的例子

# !/usr/bin/env python
# coding=utf-8
import pandas as pd
import matplotlib.pyplot as plt
from mpl_finance import candlestick2_ochl
plt.rcParams['font.family'] = 'Heiti TC'
plt.rcParams['font.sans-serif'] = ['SimHei']
# 从文件中读取数据
df = pd.read_csv('600271.csv',encoding='gbk',index_col=0)
# 设置图的位置
fig = plt.figure()
ax = fig.add_subplot(111)
# 调用方法绘制K线图
candlestick2_ochl(ax = ax,opens=df["open"].values, closes=df["close"].values,highs=df["high"].values, lows=df["low"].values,width=0.75, colorup='red', colordown='green')
df['close'].rolling(window=3).mean().plot(color="red",label='3日均线')
df['close'].rolling(window=5).mean().plot(color="blue",label='5日均线')
df['close'].rolling(window=10).mean().plot(color="green",label='10日均线')
plt.legend(loc='best')  # 绘制图例
# 设置x轴的标签
plt.xticks(range(len(df.index.values)),df.index.values,rotation=30 )
ax.grid(True)           # 带网格线
plt.title("K线图")
plt.rcParams['font.sans-serif']=['SimHei']
plt.show()

 图片:

(4)蜡烛图早晨之星买点 

上图是三根K线组合的底部反转上涨形态。在一段下跌趋势之后,K线组合首先出现一根大阳线,并明显地向上推进到第一根阴线实体之内

代码

import mplfinance as mpf  
import pandas as pd  
import numpy as np  # 假设你有一个DataFrame,其中包含日期、开盘价、最高价、最低价和收盘价  
data = pd.DataFrame({  'date': pd.date_range(start='1/1/2023', periods=50),  'open': np.random.randn(50).cumsum(),  'high': np.random.randn(50).cumsum() + 10,  'low': np.random.randn(50).cumsum() - 10,  'close': np.random.randn(50).cumsum()  
})  
data['volume'] = np.random.randint(100, 1000, 50)  # 随机生成交易量  # 定义早晨之星蜡烛图的条件  
def morning_star(row):  if (row['close'] > row['open']) and (row['close'] > row['high']) and (row['open'] < row['low']) and (row['close'] < row['low']):  return '早晨之星'  else:  return ''  # 在DataFrame中添加早晨之星标记列  
data['morning_star'] = data.apply(morning_star, axis=1)  # 绘制蜡烛图,标记早晨之星买点  
mpf.plot(data, type='candle', volume=True, mav=(9,12,26,9), style='yahoo', buy_up_to=data['close'].shift(1), buy_down_to=data['close'].shift(-1))

(5)蜡烛图黄昏之星卖点

黄昏之星是一种K线组合,通常出现在股价上涨后,预示着市场可能即将反转下跌。

代码

import mplfinance as mpf  
import pandas as pd  
import numpy as np  # 假设你有一个DataFrame,其中包含日期、开盘价、最高价、最低价和收盘价  
data = pd.DataFrame({  'date': pd.date_range(start='1/1/2020', periods=50),  'open': np.random.randn(50).cumsum(),  'high': np.random.randn(50).cumsum() + 10,  'low': np.random.randn(50).cumsum() - 10,  'close': np.random.randn(50).cumsum()  
})  
data['volume'] = np.random.randint(100, 1000, 50)  # 随机生成交易量  # 定义黄昏之星蜡烛图的条件  
def evening_star(row):  if (row['close'] < row['open']) and (row['close'] < row['high']) and (row['open'] > row['low']) and (row['close'] > row['low']):  return '黄昏之星'  else:  return ''  # 在DataFrame中添加黄昏之星标记列  
data['evening_star'] = data.apply(evening_star, axis=1)  # 绘制蜡烛图,标记黄昏之星卖点  
mpf.plot(data, type='candle', volume=True, mav=(9,12,26,9), style='yahoo', sell_up_to=data['close'].shift(1), sell_down_to=data['close'].shift(-1))

蜡烛图的买卖点有几十种,这里只简单介绍二种,蜡烛图指标性线最好跟其他指标一起来判断。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/607487.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【华为OD机试真题2023CD卷 JAVAJS】根据IP查找城市

华为OD2023(C&D卷)机试题库全覆盖,刷题指南点这里 根据IP查找城市 时间限制:3s 空间限制:256MB 限定语言:不限 题目描述: 某业务需要根据终端的IP地址获取该终端归属的城市,可以根据公开的IP地址池信息查询归属城市。地址池格式如下城市名=起始IP,结束IP,起始和结…

利用格式工厂,做视频的剪辑

接到一个工作&#xff0c;一段视频中&#xff0c;需要抠除其中某一段 其实 剪映、苹果手机的视频编辑功能&#xff0c;都可以轻松搞定 只是清晰度会有损伤 而且对于太大的视频&#xff0c;苹果手机就没法处理了。 很多软件在导出高清视频时&#xff0c;需要会员收费&#xff0…

【PHP】判断字符串是否是有效的base64编码

目录 1.检测长度&#xff1a; 2.检查字符集&#xff1a; 在PHP中&#xff0c;判断一个字符串是否是有效的Base64编码&#xff0c;可以通过以下几种方法&#xff1a; 1.检测长度&#xff1a; Base64编码的字符串长度必须是4的倍数&#xff08;对于标准的Base64编码&#xff…

什么是.jks(.keystore)文件

.jks 文件就是Java KeyStore (JKS)文件。它的用于存储加密密钥和证书。这个jks可以用在SSL加密&#xff0c;Android应用签名&#xff0c;Java应用等上面。 其实&#xff0c;我们还见过.keystore文件&#xff0c;它和.jks文件是一样的。 .jks 文件是.keystore 文件的其中一种。…

Java学习笔记-day02-在IDEA中使用git忽略提交.idea下的文件

1.在根目录.gitignore文件排除.idea目录 ### IntelliJ IDEA ### .idea2.使用重置Head还原已经add过的文件 创建项目时&#xff0c;可能会有.idea中的文件先add到git后再创建的.gitignore文件&#xff0c;导致文件commit时无法排除&#xff0c;如下所示。 使用重置Head将文件…

Python从入门到网络爬虫(JSON详解)

前言 JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级的数据交换格式。和XML相比&#xff0c;JSON更加简洁和易于读写&#xff0c;同时也更加易于解析和生成。JSON的基本数据类型包括字符串、数字、布尔、null以及数组和对象两种复合类型。各种编程语言都…

深度学习 常考简答题--[HBU]期末复习

目录 1.为什么要引用非线性激活函数&#xff1f; 2.什么是超参数&#xff1f;如何优化超参数&#xff1f; 3.线性回归通常使用平方损失函数&#xff0c;能否使用交叉熵损失函数&#xff1f; 4.平方损失函数为何不适用于解决分类问题&#xff1f;(和第3题一块复习) ​编辑 …

新年新风貌 苏州金龙蔚蓝公交护航高贸区“效率巴士”!

1月4日&#xff0c;由苏州市公交集团园区公司与园区高贸区管委会联合推出的4条“高贸区效率巴士”正式开行&#xff0c;这四条线路惠及包括苏州群策科技有限公司、荣旗工业科技有限公司等在内的20余家高贸区重点企业。线路开行5天来&#xff0c;效率巴士让不少企业员工感受到了…

开发者与下雨天:一种独特的情感联结

在科技行业中&#xff0c;开发者是一个独特的群体&#xff0c;他们以逻辑严密的思维和对技术的执着追求为世界编织出无数精彩的数字画卷。而在日常生活中&#xff0c;一个常被提起的现象是许多开发者似乎对下雨天有着特别的喜爱。本文旨在探讨这种现象背后可能存在的心理、生理…

电口模块SFP-GE-T:实现光口与电口之间的转换

电口模块是一种用于实现光口转电口功能的设备&#xff0c;在网络通信中起到重要作用。电口模块没有光电转换的过程&#xff0c;只是传输电信号。本文介绍电口模块的作用、分类、以及使用方法。 一、什么是电口模块 电口模块又被称为光转电模块&#xff0c;它是一种支持热插拔…

LeetCode——447. 回旋镖的数量

大佬&#xff0c;牛&#xff01;&#xff01;&#xff01; 题目&#xff1a;给你一个n*2的数组&#xff0c;表示n个点。然后让你从中选择三个点i,j,k&#xff0c;使得i到j和i到k的欧氏距离相等。问一共有多少种情况。需要注意的是&#xff0c;假设i,j,k是满足条件的&#xff0…

学校服务器安装anaconda并配置pytorch环境

学校服务器安装anaconda并配置pytorch环境 1.下载Anaconda2.传到xftp中3.在终端运行脚本命令4.安装pytorch4.1 查看cuda版本4.2 创建自己的环境4.3 下载pytorch4.4 验证pytorch是否安装成功 参考视频&#xff1a;远程服务器安装anaconda并配置pytorch环境 使用服务器运行项目&a…

软件测试大作业||测试计划+测试用例+性能用例+自动化用例+测试报告

xxx学院 2023—2024 学年度第二学期期末考试 《软件测试》&#xff08;A&#xff09;试题&#xff08;开卷&#xff09; 题目&#xff1a;以某一 web 系统为测试对象&#xff0c;完成以下文档的编写&#xff1a; &#xff08;满分 100 分&#xff09; &#xff08;1&am…

简单易懂的理解 PyTorch 中 Transformer 组件

目录 torch.nn子模块transformer详解 nn.Transformer Transformer 类描述 Transformer 类的功能和作用 Transformer 类的参数 forward 方法 参数 输出 示例代码 注意事项 nn.TransformerEncoder TransformerEncoder 类描述 TransformerEncoder 类的功能和作用 Tr…

普中STM32-PZ6806L开发板(有点悲伤的故事)

简介 关于我使用 普中STM32-PZ6806L做了做了一些实验, 不小心输入12V&#xff0c;导致核心板等被烧坏, 为了利用电路和资源, 搭建了STM32F103CBT6并使用普中STM32-PZ6806L上面没有烧坏的模块的故事。 普中STM32-PZ6806L开发板 这块的STM32F103ZET6部分算是Closed了, 不准备换核…

docker compose 搭建ES集群的详细步骤,并去掉验证,使用http访问

要使用 Docker Compose 搭建一个 Elasticsearch 集群&#xff0c;并配置为不使用验证&#xff0c;同时使用 HTTP 访问&#xff0c;你可以遵循以下步骤&#xff1a; 步骤 1: 安装 Docker 和 Docker Compose 确保你的系统上已安装 Docker 和 Docker Compose。如果尚未安装&…

freertos——任务通知知识总结与任务通知模拟及信号量实验、消息邮箱实验、事件标志组实验

1.任务通知概念 任务通知&#xff1a;用来通知任务的&#xff0c;任务控制块中的结构体成员变量 ulNotifiedValue就是这个通知值&#xff0c;不需要另外创建一个结构体可以直接接受别人发过来的通知 2.任务通知的优势及劣势 任务通知的优势&#xff1a; 效率更高 &#xff…

Hive基础知识(四):Hive 元数据配置到 MySQL

1. 拷贝驱动 将 MySQL 的 JDBC 驱动拷贝到 Hive 的 lib 目录下 [zzdqhadoop100 software]$ cp /home/atguigu/mysql-connector-java-5.1.37.jar $HIVE_HOME/lib 2. 配置 Metastore 到 MySQL 1&#xff09;在$HIVE_HOME/conf 目录下新建 hive-site.xml 文件 [zzdqhadoop100 s…

DevExpress历史安装文件包集合

Components - DevExpress.NET组件安装包此安装程序包括所有 .NET Framework、.NET Core 3 和 .NET 5、ASP.NET Core 和 HTML/JavaScript 组件和库&#xff08;Web和桌面应用程序开发只需要安装此文件即可&#xff09;。 注意&#xff1a;自DevExpress21.1版本之后&#xff0c;该…

Python 动态变量名称的使用

Python 动态变量名称的使用 引言正文 引言 今天遇到了一个问题&#xff0c;那就是如何在 Python 中使用动态变量名称。那么为什么会想要使用动态变量名称呢&#xff1f;比如&#xff0c;我们有五个对象&#xff0c;分别为: rectangle1 rectangle2 rectangle3 rectangle4 rect…