混合型股票基金有什么办法可以实时查看涨跌情况?比如指数基金。

下面我主要以股票代码为例,也有可能改成基金代码。实时关注!

Ref = = = & gt图沙雷

系统:Ubuntu 15.04 Python:2.7环境包:Anaconda,仅供娱乐。...

最近在学Python语言,就想学学怎么炒股。所以在学习了一些基础知识之后,打算做一些股票相关的演示练习。首先要解决的问题当然是数据收集。

我上网搜了一下,看了一些朋友的代码片段,知道API请求数据的格式是这样的:',' ifeng': 'ifeng.com'}

URL_ERROR_MSG = '获取失败,请检查网络状态,或者API端口URL不匹配!'

获取_历史_数据. py

# -*-编码:utf-8 -*-

"""

创建于2007年7月23日星期四09:15:40 2015

@作者:jet

"""

将常数作为联系类型导入

进口熊猫作为pd

导入json

从urllib2导入urlopen,请求

def get_hist_data(code = None,start = None,end = None,ktype = 'D '):

"""

功能:

获取个股历史交易数据

-

输入:

-

代码:字符串

股票代码,例如:601989。

开始:字符串

开始日期格式:当YYYY-MM-DD为空时,取API提供的最早日期数据。

结束:字符串

结束日期格式:当YYYY-MM-DD为空时,取最近一个交易日的数据。

Ktype:string(默认=D,函数自动统一为大写)

数据类型D=日k线,W=周k线,M=月k线,5=5分钟,15=15分钟。

30=30分钟,60=60分钟?

输出:

-

数据帧

日期日期

开盘价

最高价

收盘价格

最低价格

Chg涨跌?

P_chg涨跌

Ma5五天平均价格

Ma10 10日平均价格

Ma20 20天平均价格

VMA5的5天平均值

Vma10日平均

Vma20 20日平均

周转率(该指数没有这一项)

"""?

code = code _ to _ API code(code . upper())

ktype = ktype.upper()

url =“”?

url = get_url(ktype,code)?

打印(url)

js = json.loads(ping_API(url))

cols = []

if len(js[' record '][0])= = 14:

cols = ct。指数_日_价格_列

否则:

cols = ct。日价格栏

df = pd。DataFrame(js['record'],columns=cols)

如果ct中的ktype。K_TYPE_KEY:

df = df . apply map(lambda x:x . replace(u ',',u ' '))

对于列中的列[1:]:

df[col]=df[col]。astype(浮点型)

如果开始不是无:

df = df[df . date & gt;=开始]

如果end不是None:

df = df[df . date & lt;=结束]

df = df.set_index('date ')

还df?

def code_to_APIcode(代码):

"""

功能:

验证输入的股票代码是否正确,如果正确,返回API使用的股票代码。

"""

打印(代码)

ct中的if代码。INDEX_KEY:

返回ct。INDEX _ LIST[代码]

否则:

if len(代码)!= 6:

引发IOError('代码输入错误!')

否则:

如果代码[:1]在['5 ',' 6'] else 'sz%s'%code中,则返回' sh%s'%code

def get_url(ktype,code):

"""

功能:

验证输入的k线类型是否正确,如果正确则返回url。

"""?

如果ct中的ktype。K_TYPE_KEY:

url = ct。日价格网址%。PAGE_TYPE['http'],ct。PAGE_DOMAIN['ifeng'],

ct。K_TYPE[ktype],代码)

返回url

联系类型中的elif ktype。K_TYPE_MIN_KEY:

url = ct。最低价格URL %。PAGE_TYPE['http'],ct。PAGE_DOMAIN['ifeng'],

代码,ktype)

返回url

否则:

引发IOError('ktype输入错误!')

定义ping_API(url):

"""

功能:

向API发送数据请求,如果链接正常则返回数据。

"""

text = ' '

尝试:

req =请求(url)

text = urlopen(req,timeout=10)。read()?

if len(text)& lt;15:

引发IOError('无数据!')?

例外情况为e:

打印(e)

否则:

返回文本

#测试门户

print(get _ hist _ data(' 601989 ',' 2015-07-11 ',' 2015-07-22 '))