首页 > 编程知识 正文

新浪股票api,爬虫python代码

时间:2023-05-06 02:17:21 阅读:53904 作者:3939

#100行代码,实现财富自由,一起努力

导入urllib

导入pandas as PD

导入JSON

#爬行动物获得股票金融------------数据爬行动物

efda (代码,编号) :

URL=' http://VIP.stock.finance.Sina.com.cn/quotes _ service/API/JSON _ v2.PHP/money flow.sl _ qsfx _ VX

是打印(URL )

data=urllib.request.urlopen (URL ).read ).decode('gbk ',' ignore ' ) ) )。

DATA=data.replace('opendate ',''日期') )

DATA=data.replace('trade ','收盘价') )

data=data.replace('changeratio ','涨幅'') )

数据=data.replace (' turn over ',''交换率'') ) ) ) ) ) )。

DATA=data.replace('Ratioamount ',''净流入率'') )

DATA=data.replace('netamount ',''净流入万')净流入万,重复数据

DATA=data.replace('R0_net ',''网超大型单'') )

DATA=data.replace('R1_net ',''网大单'') )

DATA=data.replace('R2_net ',''网表'')

DATA=data.replace('R3_net ',''网店'')

DATA=data.replace('R0 ','超大单个') )

DATA=data.replace('R1 ','大单') )

DATA=data.replace('R2 ','小单') )

DATA=data.replace('R3 ',''个别'')

hi=PD.read_JSON(JSON.dumps ) JSON.loads (data ) )

hi[ '日期' ]=PD.to_datetime(hi[ '日期' ],格式=' % y-% m-% d ' ) )

hi=hi.sort_values (日期)、ascending=True ) ) ) )。

hi=hi[hi .收盘价1]

hi[ '成交量' ]=hi[ '散单' ] hi[ '小单' ] hi[ '超大单' ] hi[ '大单' ]

hi[ '纯主力' ]=hi[ '纯超大简单' ] hi[ '纯大简单' ]

hi[ '网络散户' ]=hi[ '网络小单' ] hi[ '网络散户' ]

返回hi

#爬虫获取股票金融----------- -输入代码,直接获取可视化--------#

code=input ((请输入股票代码: ' ) ) ) )。

代码=代码. z文件(6) )。

if code[0]=='6':

代码=' sh '代码

else:

代码=' SZ '代码

数据=数据(代码,400 ) ) ) ) ) ) )。

#量化股票金融投资=------------计算各自的平均线

ind=[“换手率”、“成交量”、“收盘价”、“净流入万”、“纯主力”、“涨幅”、“纯散户”]

ma _ list=[ 5,10,20,30,60,120 ]

for k in ind:

for i in ma_list:

DATA[k'_'str(I ) ]=PD.rolling_mean(data[k],I ) ) ) ) )

DATA.to_CSV(400.CSV ) )。

#股票数据可视化---------画画,计算可视化------------

import matplotlib.pyplot as plt

frommatplotlib.font _ managerimportfontproperties

font=font properties (fname=r ' c : (windows (fonts (simsun.TTC ),size=12 ) ) ) ) ) ) )

f1=PLT.figure (fig size=(20,15 ) ) #创建画布

ax1=F1.add_subplot(211 ) )。

ax2=F1.add_subplot(212 ) )

#股票数据可视化------------绘制收盘价k线图---------#

xd=data[ '日期' ] #图的x值

打印收盘价k线图

这是PLT.SCA(ax1 )

PLT.plot(XD,data[ )“收盘价”) #绘制折线图

PLT.plot(XD,data[ )收盘价_5) ) #绘制折线图

PLT.plot(XD,data[ )“收盘价_20”) #绘制折线图

#PLT.plot(xd,data[ )“收盘价_30”)绘制折线图

#PLT.plot(xd,data[ )“收盘价_60”) )绘制折线图

PLT.xlabel('date ) )。

PLT.ylabel('price ) ) )。

PLT.title (代码) )。

PLT.legend(loc='best ',prop=font ) )。

#股票数据可视化---------计算和显示交易策略--------#

res=data.loc[

(data[[“收盘价”(data )“收盘价_20”)

(data[ '收盘价' ] 0.9*data[ '收盘价_120'] )

(data[[ )“成交量”(data )“成交量_30 )”

(data[ '交换率_10'] data[ '交换率_30'] )

]

#打印策略,购买的显示器

傅里叶变换(len ) RES ) :

xp=res.iloc[i,11]

yp=res.iloc[i,9]

PLT.annotate(u'buy ),xy=) XP,yp ),xytext=) XP,yp 0.5 ),

arrowprops=dict(color='red ',头长度=2,头宽度=6,宽度=1.5 ) )

--------------印刷成交量k线图-----------------

good='净流入万'

这是PLT.SCA(ax2 )

#PLT.plot(xd,data[good] )绘制折线图

绘制PLT.plot(xd,data[good '_5'] )折线图

绘制PLT.plot(xd,data[good '_10'] )折线图

绘制PLT.plot(xd,data[good '_30'] )折线图

绘制PLT.plot(xd,data[good '_60'] )折线图

PLT.xlabel('date ) )。

PLT.ylabel(good ) )。

PLT.title(k_line ) )

PLT.legend(loc='best ',prop=font ) )。

plt.show () )

#输入(press ) )。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。