`
gavin
  • 浏览: 82900 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

PHP分析谷歌财经数据

阅读更多
在试用开源的javascript画图项目时,发现K线图数据是PHP处理yahoo的数据,股票是外国的,想把它改成中国股票的数据,方便把画出的图和看盘软件比较。还有一个原因是现在很多开源的javascript项目里都带php例子,学一点,用着方便。PHP环境用XAMPP搞定。
中国雅虎财经用的数据和谷歌财经比一下,觉得还是谷歌财经的数据好整理。下面是PHP程序,我是初学,用的不好别学我。

原始数据:
EXCHANGE%3DSHA
MARKET_OPEN_MINUTE=570
MARKET_CLOSE_MINUTE=900
INTERVAL=86400
COLUMNS=DATE,CLOSE,HIGH,LOW,OPEN,VOLUME
DATA_SESSIONS=[MORNING,570,690],[AFTERNOON,780,900]
DATA=
TIMEZONE_OFFSET=480
a1227682800,3.91,4.06,3.71,3.77,23623847
1,4.15,4.3,4.1,4.3,64587267
2,3.95,4.17,3.89,4.17,38473877
5,3.94,3.96,3.77,3.88,20492320
6,3.96,3.99,3.78,3.84,21091223
7,4.19,4.2,3.96,3.96,38989121
。。。。。。

转换后(json):
{"ticks":[[0,"2008-11-26"],[20,"2008-12-25"],[40,"2009-02-02"],......],
"data":[[0,3.91,4.06,3.71,3.77],[1,4.15,4.3,4.1,4.3],[2,3.95,4.17,3.89,4.17],......],
"volume":[[0,23623847],[1,64587267],[2,38473877],......]
}

<?php
$handle = @fopen("http://www.google.cn/finance/getprices?q=601111&x=SHA&i=86400&p=1Y&f=d,c,v,o,h,l&df=cpct&auto=1&ts=1259212443409", "r");
if ($handle) {
	$data = array();
    $ticks = array();
	$volume = array();
    $columns = array();
    $values = array();
	$interval =1;
	$x = 0;
	$lastAbsTime=0;
    while (!feof($handle)) {
		if($x > 100) break;
        $buffer = trim(fgets($handle));
		
		if(strpos($buffer, "EXCHANGE") !== false){
			continue;
		}
		if(strpos($buffer, "INTERVAL") !== false){
			$interval = array_pop(explode("=",$buffer));
			//echo "INTERVAL=".$interval."<br>";
		}
		if(strpos($buffer, "COLUMNS") !== false){
			$columns = explode(",",array_pop(explode("=",$buffer)));
			//echo "INTERVAL=".$columns."<br>";
		}
		if(array_shift(explode("=",$buffer)) == $buffer){
			
			$values = explode(",",$buffer);
			$n=0;			
			$d = array($x);
			foreach ($values as $v) {
				//echo "v:".$columns[$n]."<br>";
			    if ($columns[$n] == "DATE"){
                    if (floatval($v)==0){
                        $lastAbsTime = floatval(substr($v,1));
						if($x%20 == 0)
						$ticks[] = array($x, date("Y-m-d",$lastAbsTime));
                    }else {
						if($x%20 == 0)
                        $ticks[] = array($x,date("Y-m-d",$lastAbsTime + floatval($v) * $interval));					
                    }// end else if                    
                }
                else if ($columns[$n] == "CLOSE")
                {
                    $d[4] = floatval($v);
                }
                else if ($columns[$n] == "OPEN")
                {
                    $d[1] = floatval($v);
                }
                else if ($columns[$n] == "LOW"){
					$d[3] = floatval($v);
				}
                else if ($columns[$n] == "HIGH"){
					$d[2] = floatval($v);
				}
                else if ($columns[$n] == "VOLUME"){
				  	$volume[] = array($x,floatval($v));
				}
				$n++;
			}
			$data[] = array_values($d);
			$x++;
		}
    }
	echo json_encode(array('ticks' => $ticks, 'data' => $data, 'volume' => $volume));
    fclose($handle);
}
?>

分钟线数据和日线差不多。谷歌财经也在不断改进,不过数据结构还是比较清晰,比较容易分析。
1
1
分享到:
评论

相关推荐

    基于PHP的食物营养数据分析.zip

    基于PHP的食物营养数据分析项目介绍 基于已知的1284种食物进行营养数据分析 感谢 ThinkPHP、Bootstrap、ECharts、PHPExcel; 使用说明 基于bootstrap table搭建数据列表页面 查看各食物营养成分梯度分布 小工具...

    数据结构和算法分析的PHP描述

    数据结构和算法分析的PHP描述,可以用来学习和参考。 有助于编写应用程序。

    PHP做大数据量实时分析

    (吕毅)PHP做大数据量实时分析(吕毅)PHP做大数据量实时分析(吕毅)PHP做大数据量实时分析(吕毅)PHP做大数据量实时分析

    php数据结构视频教程

    8. **图**:虽然PHP本身不支持图形数据结构,但通过数组和对象可以实现图的表示,这对于网络爬虫、关系分析等应用非常有用。 9. **字符串处理**:在PHP中,字符串也是一种特殊的数据结构,了解其内部工作原理和操作...

    php财经直播间源码

    PHP可以配合Google Analytics、Mixpanel等服务,或者自建数据分析系统,实现数据统计和报表生成。 通过以上分析,我们可以看出"PHP财经直播间源码"涵盖了从实时通信、视频流处理到用户管理、支付接口、安全防护等多...

    Python获取lunwen信息,包含数据爬取、数据分析、数据可视化代码

    Python获取lunwen信息,包含数据爬取、数据分析、数据可视化代码,直接输入关键词即可获取相关数据信息

    PHP数据导出成csv

    在PHP编程中,数据导出是一项常见的需求,特别是在数据分析、报表生成或用户下载服务中。CSV(Comma Separated Values)格式是一种通用的数据交换格式,因其简单性和广泛的兼容性而被广泛使用。本文将深入探讨如何...

    php-google-translate-free, PHP类用于免费使用谷歌翻译 API.zip

    php-google-translate-free, PHP类用于免费使用谷歌翻译 API PHP GoogleTranslate免费 简单的PHP库,用于免费地翻译谷歌 API 。安装通过 Composer 安装这个软件包。composer require statickidz/php-google-tran

    数据统计分析网页php

    数据统计分析网页PHP是用于处理和展示数据的一种技术,它结合了PHP编程语言与数据分析工具,为用户提供交互式的在线报表和图表。在网页环境中,PHP作为服务器端脚本语言,可以处理从数据库获取的数据,进行计算和...

    财经滚动新闻小偷程序PHP

    而`redv.php`可能是用于处理新闻数据或者实现某些特定功能的辅助文件,如数据抓取或数据解析。 总的来说,“财经滚动新闻小偷程序PHP”是一个高效、轻量级的新闻聚合平台,它利用PHP和CSS技术,实现了财经新闻的...

    php统计数据的插件

    5. **数据分析接口**:插件可以提供API接口,将收集的数据发送到第三方分析工具如Google Analytics,以获取更专业的报告。 6. **安全性**:有些统计插件还提供安全功能,如防止SQL注入、XSS攻击,保护敏感数据的...

    基于PHP的景点数据分析系统设计与实现.doc

    该技术用于将数据转换为图形化的形式,以便更好地理解和分析数据。在该系统中,可以使用各种数据可视化库和工具,例如ECharts、Highcharts、D3.js等。 数据库技术 数据库技术是基于PHP的景点数据分析系统的另一个...

    在 PHP 应用程序中集成 Google Calendar代码

    在PHP应用程序中集成Google日历是一项常见的需求,它允许开发者将用户日历事件与Google服务无缝连接,提供统一的日程管理体验。以下是一份详细的知识点解析,涵盖了集成过程的关键步骤和技术要点。 **1. Google API...

    提供国内财经门户网站股票相关数据目前有新浪和凤凰网的数据

    提供国内财经门户网站股票相关数据,目前有新浪和凤凰网的数据

    基于PHP的客流相关大数据分析系统设计与实现.pdf

    "基于PHP的客流相关大数据分析系统设计与实现" 本文主要介绍了基于PHP的客流相关大数据分析系统的设计与实现。该系统采用MVC三层架构思想,实现了客流相关基本信息的查询功能,并使用3D渐变模型输出未来人流预测...

    基于PHP的景点数据分析系统设计与实现-毕业论文

    本文主要以景点数据分析为展开点,利用 PHP 采集框架 QueryList 爬取“去哪儿?”官方网站的热门景点地理位置、门票价格、热度、销 量以及热门游记等重要数据信息,分析爬取到的景点数据的价值,通过 Highcharts 等...

    PHP 白盒分析工具,结合AST 和数据流跟踪分析代码,达到自动化白盒审计功能

    PHP 白盒分析工具,结合AST 和数据流跟踪分析代码,达到自动化白盒审计功能

    PHP文本分析统计

    5. **可视化**:将统计结果以图表或其他可视化形式展示,如使用`PHPChart`或`Google Charts`库,使得数据分析结果更直观易懂。 6. **高级分析**:除了基础的词频统计,还可以进行TF-IDF(词频-逆文档频率)计算,找...

    基于php财经论坛网站设计与实现.docx

    1. 绪论 在信息化高速发展的今天,计算机网络已经成为我们...未来,随着技术的不断进步,论坛还可以引入大数据分析,推荐个性化内容,增强用户黏性,进一步提升其在财经领域的影响力。 关键词:PHP;财经论坛;MySQL

    天气预报采集,数据为中央气象台数据,php

    在IT行业中,天气预报采集是一项常见的任务,尤其在构建智能应用程序、数据分析或提供实时信息服务时。本项目聚焦于使用PHP语言从中央气象台获取天气预报数据。PHP是一种广泛使用的服务器端脚本语言,尤其适用于Web...

Global site tag (gtag.js) - Google Analytics