分类
超短线交易秘诀

股票 K线图 蜡烛图

06-01 3643

用matplotlib高仿同花顺的K线,成交量,MACD,KDJ(一)

peakgao 于 2020-04-20 14:34:52 发布 5755 收藏 71

开发环境:python v3.8.2, matplotlib v3.2.1, VSCode

开发环境:python v3.8.2, matplotlib v3.股票 K线图 蜡烛图 2.1, VSCode 开始学量化2,3周了,python也还是新手,这2天才开始看一下matplotlib的用法,网上搜了一些K线图的绘制,大多采用mpl_finance绘制的K线图,效果都一般般,昨天心血来潮,一边学习matplotlib,一边自己高仿了一个同花顺的效果,鼠标交互还没做(下次有时间再做),怕代码太长。.

10-08 1597

1 引言 做量化分析难免要将自己某些指标等绘制在K线图上或者对某些指标进行改造观察K线图和指标对应走势关系。那么Python如何绘制和炒股软件类似效果呢。 2 准备工具 1数据源:Tushare Tushare大数据社区Tushare为金融数据分析提供便捷、快速接口与投研和量化策略无缝对接https://tushare.pro/register?reg=130071 2指标计算:Ta-lib Windowshttps://www.lfd.uci.edu/~gohlke

11-26 392

02-08 8021

06-22 4万+

matplotlib提供了些金融图表主要可视化历史股票价格,或者类似金融时间序列数据matplotlib.finance子库中也提供了获取历史数据函数 版本matplotlib 2.2中finance会被替换成mpl_finance,但是在2.0版本中 import matplotlib.finance as mpf仍可以使 data = mpf.quotes_historica

05-20 3304

01-06 229

04-09 6904

06-29 582

股票量化研究基础——借助Tushare库制作自己MACD数据库 Tushare使 首先去Tushare社区注册自己账号并获取token 平台支持包和http协议获取但本文中使接口pro_bar是集成接口SDK层面有逻辑判断暂时无法使HTTP调。 在python环境下安装tushare pip 股票 K线图 蜡烛图 install tushare 调Api接口例子: import tushare as ts ts.set_token('your token') # 只需要在第次或者token失效后调

利用CNN对股票“图片”进行涨跌分类——一次尝试【附源码】

BigQuant 于 2018-08-16 20:37:48 发布 3911 收藏 12

首先解释一下标题:
CNN:卷积神经网络(Convolutional Neural Network), 在图像处理方面有出色表现,不是被川普怒怼的那个新闻网站;
股票涨跌:大家都懂的,呵呵;
股票图片:既然使用CNN,那么如果输入数据是股票某个周期的K线图片就太好了。当然,本文中使用的图片并不是在看盘软件上一张一张截下来的,而是利用OHLC数据“画”出来的;
尝试:这个词委婉一点说就是“一个很好的想法 _ ",比较直白的说法是“没啥效果T_T”。

  1. 对每个样本,将32time_steps×4features(OHLC)数据归一化处理,即所有取值均在[0,1]之间;
  2. 构建一个128×128像素的全0数组,将[0,1]区间等分为128份,分到每列的128个像素点上;
  3. 股票 K线图 蜡烛图
  4. 然后使用每四列构建一根K线(前三列画柱状线,第四列作为间隔行):第一列描绘开盘价,开盘价与该列的哪个像素点最近,那么这个像素点取值就由0变为1;第二列描绘高低价区间,将 最高价至 最低价 范围内的像素点取值由0变为1;第三列描绘收盘价,收盘价与该列的哪个像素点最近,那么这个像素点取值就由0变为1。

这里写图片描述

这样每个样本就构建了一张由32根K线组成,类似柱线图的“图片”,下面是一个样本画的一张图(为了便于观看,将0替换成空格,将1替换成圆点):

其实还蛮像柱线图的。

测试阶段:
原始数据:最终选择的数据是100只2005年以前上市的股票。1只股票数据太少,全部股票数据又太多,所以 股票三千,我只取一百;“上市时间前于2005年”这个条件 主要考虑在每只股票上取样数量不会太少。

生成样本:每只股票每32根K线生成一个样本,每隔8根K线取一次样。然后按照上述作图方法将其变成图片。标签:若未来五日收益为正,标签为[1,0],否则,标签为[0,1]。15年1月1日之前数据用作train和evaluate,之后数据用作test。

这里写图片描述

构建模型:本文所用模型共5层,先后顺序为 卷积层-池化层-卷积层-池化层-全连接层,中间还夹杂了两个Dropout和一个Flatten,用来防止过拟合和一维化数据,不过由于他们是无权重的,所以没将他们算作一层。

这里写图片描述

预测效果
在train和evaluate阶段,看起来还是不错的:

这里写图片描述


第一个值是loss,第二个值是准确率,不要看反。。。呵呵

这里写图片描述


有(mei)所(sha)改(xiao)善(guo)!

这里写图片描述

问题分析
目前发现的一个问题:一幅图中被标记的像素点太少了。下面两张图为train-evaluate样本和test样本中值为1的像素点占总像素点(128×128=16384)比重的分布。

C# mschart 做了一个简单的股票K线

为防老年痴呆而编程 于 2020-03-08 16:53:27 发布 2612 收藏 8

// 创建图像
public void CreateChart()
<
//设置类型
//chart1.Series["Series1"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Candlestick;

//设置Y轴最大值,其中数值需要动态调整
//chart1.ChartAreas[0].AxisY.Maximum = System.Convert.ToDouble(20);
//设置Y轴最小值
//chart1.ChartAreas[0].AxisY.Minimum = System.Convert.ToDouble(5);
//网格线颜色Major为大刻度,Minor为小刻
chart1.ChartAreas[0].AxisX.MajorGrid.LineColor = System.Drawing.Color.LightGray;
chart1.ChartAreas[0].AxisY.MajorGrid.LineColor = System.Drawing.Color.LightGray;
chart1.ChartAreas[0].AxisX.MinorGrid.LineColor = System.Drawing.Color.LightGray;
chart1.ChartAreas[0].AxisX.MajorGrid.Enabled = false; //不显示X轴网格
chart1.ChartAreas[0].AxisY.MajorGrid.Enabled = false; //不显示Y轴网格
//刻度数值角度
//chart1.ChartAreas[0].AxisX.LabelStyle.Angle = 45;

//加载数据
for(int i=0;i <300;i++)
<
//int currentIndex = chart1.Series["Candle"].Points.Count;
//Console.WriteLine(currentIndex);

chart1.Series["Candle"].Points.AddXY(pdate[i], phigh[i]);
//chart1.Series["Candle"].Points[currentIndex].YValues[0] = System.Convert.ToDouble(phigh[i]);
chart1.Series["Candle"].Points[i].YValues[1] = System.Convert.ToDouble(plow[i]);
chart1.Series["Candle"].Points[i].YValues[2] = System.Convert.ToDouble(股票 K线图 蜡烛图 股票 K线图 蜡烛图 popen[i]);
chart1.Series["Candle"].Points[i].YValues[3] = System.Convert.ToDouble(pclose[i]);
//设置上下小线的颜色
if (pclose[i] < popen[i])
<
chart1.Series["Candle"].Points[i].Color = Color.Cyan;
>
else <
chart1.Series["Candle"].Points[i].Color = Color.Red;
>
//chart1.Series["Candle"].Points[currentIndex].AxisLabel = pdate[i];
//chart1.Series["Candle"].Points[currentIndex].Color = Color.Black;
>

//for (int i = 0; i < records.Count; i++)
// <
// s.Points.AddXY(records[i].CurrentDate, records[i].HighValue);
// s.Points[i].YValues[1] = records[i].LowValue;
// s.Points[i].YValues[2] = records[i].OpenValue;
// s.Points[i].YValues[3] = records[i].CloseValue;
// >

//chart1.ChartAreas[0].AxisX.IntervalType = DateTimeIntervalType.NotSet;
//chart1.ChartAreas[0].AxisX.Interval = 1;
chart1.Series["Candle"].CustomProperties = "PriceDownColor=Cyan,PriceUpColor=Red";
chart1.ChartAreas[0].CursorX.IsUserEnabled = true;
chart1.ChartAreas[0].CursorX.IsUserSelectionEnabled = true;
chart1.ChartAreas[0].AxisX.ScaleView.Zoomable = true;//允许X轴方向缩放
chart1.ChartAreas[0].AxisY.IsStartedFromZero = false; //此为解决Y轴自适应,用这句不用设置最大最小值
// 设置自动放大与缩小的最小量
chart1.ChartAreas[0].AxisX.ScaleView.SmallScrollSize = double.NaN;
chart1.ChartAreas[0].AxisX.ScaleView.SmallScrollMinSize = 1;


private void label1_Click(object sender, EventArgs e)
<
chart1.ChartAreas[0].AxisX.ScaleView.ZoomReset();//X方向恢复原样
//chart1.ChartAreas[0].AxisY.ScaleView.ZoomReset();
>

private void label2_Click(object sender, EventArgs e)
<
chart1.ChartAreas[0].AxisX.ScaleView.Size -= 4;
>

R语言绘制K线图

superdont 于 2016-05-30 21:06:06 发布 26345 收藏 13




11-27 125

06-07 6756

12-24 96

08-26 2466

读取方式: 本文使用传统的read.table来读取文件内容,这里文件后缀是csv还是txt其实一点区别都没有。 绘制方式: 直接将读取的对象交给quantmod中的chartSeries来图 代码: library(quantmod) FDGF2

07-12 1131

R语言坐标轴设置 xaxs和yaxs 用来设置x轴和y轴的范围,默认值取“r”,表示坐标轴比给定作图范围(参数xlim和ylim给出的范围)稍微大一点儿,取”i”时表示坐标轴范围与给定作图范围完全相同,另外还可取”s”、”e”、”d”; xaxt和yaxt 取”n”时,坐标轴、刻度线以及刻度值将不会出。 股票 K线图 蜡烛图 原文链接:https://blog.csdn.net/weixin_40628687/article/details/79254791 type线型 原文链接: https://blog.csdn.n

06-01 3643

#install.packages("quantmod") # http://www.quantmod.com/ python tushare 读取股票数据并存盘 运行 python stock1.py 600030 生成 600030.txt 表头:date,open,high,close,low,volume,price_change,p_change,ma5,ma10.

12-22 1173

在R中进行基本线性回归的例子 A Hand’s on . >y > DiscountChart log. (shown in time series) 20000000 18000000 16000000. (R chart) 1.0 0.9 0.8 0.7 Range 0.6 0.5 . Xbar-R_chart(Cpk) 没有什么好说的没有什么好说的隐藏>&g.

02-11 186

描述性统计量第一部分:使用R语言基本函数进行统计描述R语言是为统计分析而生的,它提供了大量灵活而使用的统计功能,其中最基础的就是一些描述性统计量,下面我们将在R中将这些基本统计量逐一回顾一下:# 基本统计量示例##创建相关变量a b c mydata ##基本统计量计算mean(a) #由于有NA值,直接计算平均值返回的是NA# [1] NAmean(a,na.rm = T) #去除NA值后再计算.