怎么用python计算股票

怎么用python计算股票,第1张

作为一个python新手,在学习中遇到很多问题,要善于运用各种方法。今天,在学习中,碰到了如何通过收盘价计算股票的涨跌幅。

第一种:

读取数据并建立函数:

import numpy as np

import matplotlibpyplot as plt

from scipyinterpolate import spline

from pylab import

import pandas as pd

from pandas import Series

a=pdread_csv('d:///1csv',sep=',')#文件位置

t=a['close']

def f(t):

s=[]

for i in range(1,len(t)):

if i==1:

continue

else:

sappend((t[i]-t[i-1])/t[i]100)

print s

plot(s)

pltshow()

f(t)

第二种:

利用pandas里面的方法:

import pandas as pd

a=pdread_csv('d:///1csv')

rets = a['close']pct_change() 100

print rets

第三种:

close=a['close']

rets=close/closeshift(1)-1

print rets

总结:python是一种非常好的编程语言,一般而言,我们可以运用构建相关函数来实现自己的思想,但是,众所周知,python中里面的有很多科学计算包,里面有很多方法可以快速解决计算的需要,如上面提到的pandas中的pct_change()。因此在平时的使用中应当学会寻找更好的方法,提高运算速度。

本程序使用Python 276编写,扩展了Python自带的HTMLParser,自动根据预设的股票代码列表,从Yahoo Finance抓取列表中的数据日期、股票名称、实时报价、当日变化率、当日最低价、当日最高价。

由于Yahoo Finance的股票页面中的数值都有相应id。

例如纳斯达克100指数ETF(QQQ)

其中实时报价的HTML标记为

[html] view plain copy

<span id="yfs_l84_qqq">8749</span>

而标普500指数ETF(SPY)

其中实时报价的HTML标记为

[html] view plain copy

<span id="yfs_l84_spy">18725</span>

因此本数据抓取程序根据相应的id字符串来查找数据。具体来说就是先继承HTMLParser,然后在自定义的子类中重载handle_data(self, data)方法,查找包含相应id字符串(例如实时报价的id字符串为"yfs_l84_"+股票代码)的HTML标记,并输出这个HTML标记中的数据(例如qqq的<span id="yfs_l84_qqq">8749</span>,其中的数据8749就是实时报价。)

样本输出:

数据依次是

数据日期 股票代码  股票名称 实时报价  日变化率 日最低价  日最高价

[python] view plain copy

05/05/2014  ibb iShares Nasdaq Biotechnology (IBB)  23328  185%   22534  23328

05/05/2014  socl    Global X Social Media Index ETF (SOCL)  1748   017%   1712   1753

05/05/2014  pnqi    PowerShares NASDAQ Internet (PNQI)  6261   035%   6146   6274

05/05/2014  xsd SPDR S&P Semiconductor ETF (XSD)    6715   012%   6620   6741

05/05/2014  ita iShares US Aerospace & Defense (ITA)    11034  115%   10862  11056

05/05/2014  iai iShares US Broker-Dealers (IAI) 3742   -021%  3686   3742

05/05/2014  vbk Vanguard Small Cap Growth ETF (VBK) 11997  -003%  11837  12009

05/05/2014  qqq PowerShares QQQ (QQQ)   8795   053%   8676   8797

05/05/2014  ewi iShares MSCI Italy Capped (EWI) 1786   -056%  1765   1789

05/05/2014  dfe WisdomTree Europe SmallCap Dividend (DFE)   6233   -011%  6194   6239

05/05/2014  pbd PowerShares Global Clean Energy (PBD)   1303   000%   1297   1305

05/05/2014  eirl    iShares MSCI Ireland Capped (EIRL)  3852   -016%  3839   3860

方法一前期的数据抓取和分析可能python都写好了,所以差这交易指令接口最后一步。

对于股票的散户,正规的法子是华宝,国信,兴业这样愿意给接口的券商,但貌似开户费很高才给这权利,而且只有lts,ctp这样的c++接口,没python版就需要你自己封装。方法二是wind这样的软件也有直接的接口,支持部分券商,但也贵,几万一年是要的。方法三鼠标键盘模拟法,很复杂的,就是模拟键盘鼠标去 *** 作一些软件,比如券商版交易软件和大智慧之类的。方法四就是找到这些软件的关于交易指令的底层代码并更改,不过T+1的规则下,预测准确率的重要性高于交易的及时性,花功夫做数据分析就好,交易就人工完成吧

现在几乎所有的大网站都在主要的栏目 做了防爬行的处理。 象这样的还算是简单的。 大不了你分析一下JS。 如果不想分析JS。就麻烦 些。 你安装一个pyqt,里面有一个qtbrowser, 你可以驱动这个浏览器去爬行。要几百行代码才能搞定。

首先证券公司会提供一些API给你,使用的时tushare这个库。

首先安装tushare这个库

pip install tushare

打开IDE,使用的时pycharm这个工具。

import tushare, time #导入tushare库

data = tushareget_realtime_quotes('600519') #获取股票代码为000581的股票信息

print(data)

以上就是关于怎么用python计算股票全部的内容,包括:怎么用python计算股票、怎么学python爬取财经信息、怎样用Python写一个股票自动交易的程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9874239.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存