获取历史K线数据的几个方法
1、通过已有的股票交易软件下载数据,如果他们是开源结构的,就可以解析他们的K线数据。
2、在互联网上抓取数据
int iStockCode;
CString strUrl;
通过OpenUrl、Read读取网页数据
1)从163下载K线数据
//fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP
if (iStockCode >= 600000)
{
strUrl.Format(L"http://quotes.money.163.com/service/chddata.html?code=0%06d&start=%d&end=%d&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;VOTURNOVER;VATURNOVER", iStockCode, iCurStart, iCurEnd);
}
else
{
strUrl.Format(L"http://quotes.money.163.com/service/chddata.html?code=1%06d&start=%d&end=%d&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;VOTURNOVER;VATURNOVER", iStockCode, iCurStart, iCurEnd);
}
数据内容:获取的是一个csv文件,直接读取到buffer里面即可
日期,股票代码,名称,收盘价,最高价,最低价,开盘价,前收盘,成交量,成交金额
2014-03-28,'600000,浦发银行,9.67,9.92,9.6,9.64,9.69,235609623,2299182855.0
2014-03-27,'600000,浦发银行,9.69,9.94,9.48,9.53,9.58,310183453,3020967368.0
用boost库进行字符串分割,分割string为\n,分割后对每个Item进行逗号分割,然后依次处理即可。
163下载的数据,包含非交易日的Item(Amount = 0),过滤掉。
2)从和讯网下载数据
if (iStockCode >= 600000)
{
strUrl.Format(L"http://flashquote.stock.hexun.com/Quotejs/DA/1_%06d_DA.html",iStockCode);
}
else
{
strUrl.Format(L"http://flashquote.stock.hexun.com/Quotejs/DA/2_%06d_DA.html",iStockCode);
}
数据内容:
refreshDataStr('600000','1','DA','[[19991110,10.00,29.50,29.80,27.00,27.75,174085055,4859102435],[19991111,27.75,27.58,28.38,27.53,27.71,29403491,821582199],[19991112,27.71,27.86,28.30,27.77,28.05,15007963,421591623],
...
[20140326,9.75,9.78,9.83,9.51,9.58,188654730,1813592755],[20140327,9.58,9.53,9.94,9.48,9.69,310183453,3020967368],[20140328,9.69,9.64,9.92,9.60,9.67,235609623,2299182855]]');
取 '[[ 和 ]]' 之间的string,进行],[的字符串分割,形成VecString,对每个Item String进行逗号分割,获取【交易日期、昨收盘、开盘、最高、最低、最新价、成交量、成交额】等数据,自己去存储吧。
获取历史K线数据的几个方法的更多相关文章
- TuShare获取K线数据
Tushare是一个免费.开源的python财经数据接口包.主要实现对股票等金融数据从数据采集.清洗加工 到 数据存储的过程,能够为金融分析人员提供快速.整洁.和多样的便于分析的数据,为他们在数据获取 ...
- android 股票数据通过日K获取周K的数据 算法 源码
目前的数据是从新浪接口获取的, http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?symbol=sh600000&end ...
- php获取数组中重复数据的两种方法
分享下php获取数组中重复数据的两种方法. 1,利用php提供的函数,array_unique和array_diff_assoc来实现 <?php function FetchRepeatMem ...
- python调用tushare获取股票月线数据
接口:monthly 描述:获取A股月线数据 限量:单次最大3700,总量不限制 积分:用户需要至少300积分才可以调取,具体请参阅本文最下方积分获取办法 注:tushare库下载和初始化教程,请查阅 ...
- 如何获取codeforces的完整数据?(玄学方法)
做cf题总是wa,wa了以后还没发看完整数据,好气哦! 怎么办? 这其实非常简单 首先看一下wa的那个数据有什么特点 比如说n = 1111,m = 1111 那么就if(n == 1111 & ...
- Vue中引入TradingView制作K线图
**前言: 本文使用的是1.10版本 , 可通过TradingView.version()查看当前版本. 附上开发文档地址:https://zlq4863947.gitbooks.i...** 一.修 ...
- C#下如何用NPlot绘制期货股票K线图(2):读取数据文件让K线图自动更新
[内容介绍]上一篇介绍了K线图的基本绘制方法,但很不完善,本篇增加了它直接读取数据的功能,这对于金融市场的数据量大且又需要动态刷新功能的实现很重要. [实现方法] 1.需要一个数据文件,这里用的是直接 ...
- 利用JFreeChart绘制股票K线图完整解决方案
http://blog.sina.com.cn/s/blog_4ad042e50100q7d9.html 利用JFreeChart绘制股票K线图完整解决方案 (2011-04-30 13:27:17) ...
- BotVS开发基础—2.1 账户、行情、K线、深度
代码 import json def main(): Log("账号信息:", exchange.GetAccount()); # Log("K 线数据:", ...
随机推荐
- [bzoj4240]有趣的家庭菜园_树状数组
有趣的家庭菜园 题目链接:https://lydsy.com/JudgeOnline/problem.php?id=4240 数据范围:略. 题解: 第一步比较简单,只需要排序之后,每个数不是在左边就 ...
- TensorSpace:超酷炫3D神经网络可视化框架
TensorSpace:超酷炫3D神经网络可视化框架 TensorSpace - 一款 3D 模型可视化框架,支持多种模型,帮助你可视化层间输出,更直观地展示模型的输入输出,帮助理解模型结构和输出方法 ...
- ajax后台跳转无效的原因
Ajax只是利用脚本访问对应url获取数据而已,不能做除了获取返回数据以外的其它动作了.所以浏览器端是不会发起重定向的. 1)正常的http url请求,只有浏览器和服务器两个参与者.浏览器端发起一个 ...
- 【程序人生】程序员真会玩,工作996,生病ICU
昨天Github上一个项目彻底爆红了网络,短短一天star数突破一万,Issues已破1800,大家纷纷说出有关企业的不合理加班行为,句句吐露程序员的心声,掀起了一波抵制加班潮,抵制996. 该项目里 ...
- 15-16 ICPC europe J Saint John Festival (graham扫描法+旋转卡壳)
题意:给n个大点,m个小点$(n<=1e5,m<=5e5),问有多少个小点,存在3个大点,使小点在三个大点组成的三角形内. 解题思路: 首先,易证,若该小点在某三大点行成的三角形内,则该小 ...
- shell从简单到脱坑
1.计算1-100的和(seq 1 100 使用反引号括起来的比较坑) #!/bin/bash ` do sum=$[$i+$sum] done echo $sum 2.编写shell脚本,要求输入一 ...
- mysql优化limit
limit 1.当只需要一条数据的时候,用limit1: 2.当需要提高分页效率的时候: 如果用上面的语句分页少量数据还是可以用的,但是随着数据量越来越大,直接用limit语句查询速度就会越来越慢,降 ...
- pyrhon 第一个小购物车例子
product_list=[[],[],[],[]] shopping_list=[] salary = input("请输入你的工资:") if salary.isdigit() ...
- Rubost PCA 优化
Rubost PCA 优化 2017-09-03 13:08:08 YongqiangGao 阅读数 2284更多 分类专栏: 背景建模 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA ...
- Netty服务端创建流程及组件职责
public class NettyServer { public static void main(String[] args) throws InterruptedException { NioE ...