K线图是200多年前日本人发明的,后来传入了美国。K线图本来就是对当前数据的可视化显示而已,但是越来越多的人对K线图做出了痴迷的分析和解读,有众多追随者也根据K线图指导自己的具体行动,因此,K线图在实战中具有不可忽视的重要作用。K线图也越来越成为一种隐形的控制力,追随者越多,其控制力越强。R语言提供了K线图绘制工具,如果想对K线图进行分析,需要首先能够绘制K线图。这里介绍quantmod包画K线图的函数ChartSeries()。

一、k线图综述

K线是记录一段时间内价格变化情况的图表,每一根K线都由开盘价、收盘价、最高价、最低价四个价位组成。开盘价低于收盘价称为阳线,反之则称为阴线。根据周期,K线可以分为日K线、K周线、月K线、年K线,1小时K线,5分钟K线等。根据形态,K线可以分为光头阳(阴)线,光脚阳(阴)线、光头光脚阳(阴)线、十字星、(倒)T字线和一字线六种。“光头”是指完全没有上影的K线,“光脚”是指完全没有下影的K线,而T字线和倒T字线是它们的特殊形式;当开盘价正好与收盘价相等,就会形成十字星;当K线的四个价格都相等,才会形成一字线,它常常出现在股票市场的封涨停和封跌停的情况,或者是在极短期的走势图中完全没有成交量的状态下。而在实际的金价走势中,同时带有上下影的K线才是最常见的。

对于K线的阴阳,阳线表示将继续上涨,阴线表示将继续下跌,这符合技术分析理论中,价格会沿趋势波动的原理,也是技术分析中最核心的思想。对于K线实体的大小,它反映的是行情的内在动力,实体越大,上涨或下跌的趋势越是明显,反之趋势则不明显。对于K线影线长短,所代表的是行情的转折信号,向一个方向的影线越长,越不利于价格向这个方向变动,即上影线越长,越不利于股价上涨,下影线越长,越不利于价格下跌。K线的周期是可以根据使用者的需求自行设定的,最常用的是日线图,其他辅助的还有5分钟K线图,15分钟K线图,30分钟K线图,60分钟K线图,日K线图,周K线图,月K线图等等。

K线分析的三要素:阴线和阳线的数量代表行情的总体趋势;K线实体的大小代表行情的内在动力和趋势的强弱;影线的长短反映行情转折意愿。当然,上述这些只是十分基础的K线知识,在实际看盘和技术分析的过程中,投资者最重要的是能够明白K线组合形态所代表的含义,并且更够根据一些经典的看涨和看跌组合,提前对行情的转折作出预判。

二、数据准备

这里以上证指数为例绘制K线图。

library(pedquant)
library(quantmod)
library(xts)
d163<-md_stock("000001.sh",from='2019-01-01',to='2022-08-01',source="163",adjust=NULL)
data<-d163[[1]]

股票数据结构概览

str(data)
Classes ‘data.table’ and 'data.frame': 869 obs. of 15 variables:
$ symbol : chr "000001.SS" "000001.SS" "000001.SS" "000001.SS" ...
$ name : chr "上证指数" "上证指数" "上证指数" "上证指数" ...
$ date : Date, format: "2019-01-02" "2019-01-03" ...
$ open : num 2498 2462 2446 2529 2530 ...
$ high : num 2500 2488 2515 2537 2531 ...
$ low : num 2456 2456 2441 2516 2520 ...
$ close : num 2465 2464 2515 2533 2526 ...
$ close_prev: num 2494 2465 2464 2515 2533 ...
$ change_pct: num -1.147 -0.0377 2.0494 0.7245 -0.2616 ...
$ volume : num 1.10e+08 1.24e+08 1.69e+08 1.77e+08 1.58e+08 ...
$ amount : num 9.76e+10 1.07e+11 1.39e+11 1.46e+11 1.23e+11 ...
$ turnover : num NA NA NA NA NA NA NA NA NA NA ...
$ cap_market: num NA NA NA NA NA NA NA NA NA NA ...
$ cap_total : num NA NA NA NA NA NA NA NA NA NA ...
$ unit : chr "CNY" "CNY" "CNY" "CNY" ...
- attr(*, "problems")=<externalptr>
- attr(*, ".internal.selfref")=<externalptr>
- attr(*, "sorted")= chr "date"
szzs=data.frame(data[,3:7],data[,10])
date open high low close volume
1 2019-01-02 2497.881 2500.278 2456.423 2465.291 109932013
2 2019-01-03 2461.783 2488.479 2455.926 2464.363 124397497
3 2019-01-04 2446.019 2515.316 2440.907 2514.868 168877667
4 2019-01-07 2528.699 2536.977 2515.508 2533.089 177305010
5 2019-01-08 2530.300 2531.345 2520.165 2526.462 158099181
6 2019-01-09 2536.417 2574.408 2536.157 2544.345 191887930

!!!ChartSeries()必须使用xts数据对象,所以需要将上面数据进行如下的转换,注意他们之间的区别。

SZZS<-xts(szzs[,-1],order.by = as.Date(szzs[,1]))
head(SZZS) #注意和上面行标的区别
open high low close volume
2019-01-02 2497.881 2500.278 2456.423 2465.291 109932013
2019-01-03 2461.783 2488.479 2455.926 2464.363 124397497
2019-01-04 2446.019 2515.316 2440.907 2514.868 168877667
2019-01-07 2528.699 2536.977 2515.508 2533.089 177305010
2019-01-08 2530.300 2531.345 2520.165 2526.462 158099181
2019-01-09 2536.417 2574.408 2536.157 2544.345 191887930

三、绘制K线图

library(quantmod)
chartSeries(SZZS)

library(quantmod)
chartSeries(SZZX, name='K线图', line.type="l", bar.type="ohcl",
theme="white", up.col='red', dn.col='green',
TA="addVo();addSMA(5);addSMA(10);addMACD();")

library(quantmod)
shangzheng<-to.weekly(SZZS)
chartSeries(shangzheng,theme = 'white',name='上证周线图',up.col = 'red',dn.col = 'green')

参考文献

1.(R语言绘制K线图)[https://blog.csdn.net/superdont/article/details/51541014]

2.(R语言 金融数据分析之quantmod)[https://www.cnblogs.com/adam012019/p/14867140.html?ivk_sa=1024320u]

3.(股票入门K线图基础知识:24种K线图图解)[https://zhuanlan.zhihu.com/p/453937837]

股票K线图概要——R语言的更多相关文章

  1. 利用JFreeChart绘制股票K线图完整解决方案

    http://blog.sina.com.cn/s/blog_4ad042e50100q7d9.html 利用JFreeChart绘制股票K线图完整解决方案 (2011-04-30 13:27:17) ...

  2. WPF中使用amCharts绘制股票K线图

    原文:WPF中使用amCharts绘制股票K线图 本想自己用GDI绘图, 通过数据直接绘制一张蜡柱图, 但觉得这样子的功能比较少, 所以到网上搜索一些能画出K线图的控件. 发现DynamicDataD ...

  3. PHP使用HighChart生成股票K线图详解

    本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加). QQ群:   281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29Lo ...

  4. python pandas 画图、显示中文、股票K线图

    目录: 1.pandas官方画图链接 2.标记图中数据点 3.画图显示中文 4.画股票K线图 5.matplotlib基本用法 6.format输出 6.format输出例子 eps_range=[0 ...

  5. 股票K线图-JfreeChart版

    http://blog.csdn.net/ami121/article/details/3953272 股票K线图-JfreeChart版 标签: jfreechartpropertiesapplet ...

  6. IOS 股票K线图、分时图

    IOS 股票K线图.分时图,网上开源项目很少,质量也是参差不齐:偶尔搜索到看似有希望的文章,点进去,还是个标题党:深受毒害.经过一段时间的探索,终于在开源基础上完成了自己的股票K线图.分时图: 先放出 ...

  7. 基于Echarts的股票K线图展示

    发布时间:2018-10-31   技术:javascript+html5+canvas   概述 基于echarts的股票K线图展示,只需引用单个插件,通过简单配置,导入数据,即可实现炫酷复杂的K线 ...

  8. Highstock生成股票K线图

    在线演示 本地下载 使用HightStock生成股票K线图例子.

  9. C#下如何用NPlot绘制期货股票K线图(2):读取数据文件让K线图自动更新

    [内容介绍]上一篇介绍了K线图的基本绘制方法,但很不完善,本篇增加了它直接读取数据的功能,这对于金融市场的数据量大且又需要动态刷新功能的实现很重要. [实现方法] 1.需要一个数据文件,这里用的是直接 ...

  10. android 股票K线图

    现在在手上的是一个证券资讯类型的app,其中有涉及到股票行情界面,行情中有K线图等,看到网上很多人在求这方面的资料,所以我特地写了一个demo在此处给大家分享一下. 下面是做出来的效果图: 这个 界面 ...

随机推荐

  1. nuxt.js的导航守卫

    一.使用router.js 重构项目时还行使用原来的router.js也是可以的,需要下载插件惊醒配置,这时候vue-cli中怎么用,nuxt中就怎么使用导航守卫,几乎一样 二.使用nuxt.js 1 ...

  2. 狐漠漠养成日记 Cp.00003 第二周

    上一周整周都在做Unity Newbies Jam,除了一些必要的比如考试或者课程,其他的都推后了. 为了赶项目进度,这一周我可以说是废寝忘食,基本上每天一顿饭,就睡仨小时那种. 以至于到最后一天,也 ...

  3. 阿里云下载ssl证书

    "request合法域名"跟上面CA证书中申请的二级域名一致. Springboot增加证书 创建Springboot项目. 解压缩后,证书文件4375838_wechat.abc ...

  4. 高并发解决方案之 mysql悲观锁:select ... for update

    select ... for update 场景:多个进程都先读后写咋办,需要的是让他们串行执行. 比如库存的减少.一般这些操作都是很长一串并且是开启事务的.如果库存刚开始读的时候是1,而立马另一个进 ...

  5. Java发送http请求携带token,使用org.nutz

    发送http请求,需要携带token数据,创建Header传输 Header header = Header.create(); header.set("Authorization" ...

  6. 鸣人的影分身【按照前i个数,最小数是不是0,建立转移方程】

    鸣人的影分身 题意 鸣人最多有n个分身,m的能量.分身的能量可以为0. 问有多少种方案数. 思路 很容易定义状态:f[i] [j]: 前i个分身,共花费能量j的方案数. 状态转移:刚开始想的枚举第i个 ...

  7. MySQL日常维护指南

    一.常用命令 1.查看数据库默认编码 show variables like 'character%'; show variables like 'collation%'; 2.启动停止数据库 /et ...

  8. 2019之VLC3.071版本Ubuntu 18-win32-64为编译经验记录

    编译环境:1.win7+vmware15+Ubuntu 18 64bit虚拟系统(16也可以)2.gcc 7.4 (大于6即可)3.mingw-w64 5.3.0,及其相关联的x86-64的tool, ...

  9. CVE-2016-2183(SSL/TLS)漏洞的办法

    运行gpedit.msc,打开"本地组策略编辑器" 启用"SSL密码套件顺序" TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256_ ...

  10. [C# 学习笔记]运用 GDI+ 的 Matrix 进行显示图形的平移和缩放

    C# 学习中,想尝试着做一个工控方面的上位机,可以读取CAD绘制的图形,然后把它显示出来,后面让运动控制器去走CAD里面的轨迹. 一.用netDXF 开源包,对DXF文件进行解析.解析后的直线.圆.圆 ...