资源简介
nulindai.py
代码片段和文件信息
import pandas as pd
import numpy as np
import talib as ta
import tushare as ts
import re
import urllib.request
import matplotlib.pyplot as plt
import pickle
from matplotlib.pyplot import savefig
import heapq
def GetStockcode(): # 获取股票代码
url = ‘http://biz.finance.sina.com.cn/suggest/lookup_n.php?country=stock&q=%D2%F8%D0%D0‘
headers = {“User-Agent“: “Mozilla/5.0 (Windows NT 10.0; WOW64)“}
request = urllib.request.Request(url=url headers=headers)
response = urllib.request.urlopen(request)
content = response.read().decode(‘gbk‘)
pattern = re.compile(‘s[hz]\d{6}‘)
item = re.findall(pattern content)
item = item[::2] # 取偶
item = item[0:24]
stockcode = []
for i in item: # 去除sz/h
stockcode.append(i[2:])
return stockcode
‘‘‘def GetData(stk):
pkl_file=open(‘%s.pkl‘%stk‘rb‘)
data=pickle.load(pkl_file)
pkl_file.close()
return data‘‘‘
def GetDataTus(stk start end): # 获取交易数据
data = ts.get_k_data(stk start=start end=end)
return data
def GetBand(data timeperiod=20 nbdevup=2 nbdevdn=2 matype=0):
band = pd.Dataframe(index=data.index)
band[‘date‘] = data[‘date‘]
band[‘close‘] = data[‘close‘]
band[‘upper‘] band[‘middle‘] band[‘lower‘] = ta.BBANDS(data.close.values timeperiod=timeperiod nbdevup=nbdevup
nbdevdn=nbdevdn matype=matype)
band[‘MA20‘] = data[‘close‘].rolling(window=20).mean()
band[‘dev‘] = data[‘close‘].rolling(window=20).std()
band[‘index‘] = data.index
band = band.dropna(axis=0 how=‘any‘) # 清除为空的行
band = band.reset_index() # 索引重新排序并生成新的列,level_0
del band[‘level_0‘]
band[‘devchange‘] = band[‘dev‘] - band[‘dev‘].shift(-1) # i+1-i
band = band.dropna()
band = band.reset_index()
del band[‘level_0‘]
code = data.iloc[1 -1]
df2 = ts.get_k_data(code start=‘2011-01-01‘ end=‘2012-01-01‘)
df3 = ts.get_k_data(code start=‘2012-01-01‘ end=‘2013-01-01‘)
df4 = ts.get_k_data(code start=‘2013-01-01‘ end=‘2014-01-01‘)
df5 = ts.get_k_data(code start=‘2014-01-01‘ end=‘2015-01-01‘)
df6 = ts.get_k_data(code start=‘2015-01-01‘ end=‘2016-01-01‘)
d2 = df2.close.rolling(window=20).std()
d3 = df3.close.rolling(window=20).std()
d4 = df4.close.rolling(window=20).std()
d5 = df5.close.rolling(window=20).std()
d6 = df6.close.rolling(window=20).std()
c2 = []
c3 = []
c4 = []
c5 = []
c6 = []
for i in range(20 len(d2) - 20):
c2.append(d2[i] - d2[i - 1])
data2 = heapq.nlargest(50 c2)
for i in range(20 len(d3) - 20):
c3.append(d3[i] - d3[i - 1])
data3 = heapq.nlargest(50 c3)
for i in range(20 len(d4) - 20):
c4.append(d4[i] - d4[i - 1])
data4 = heapq.nlargest(50 c4)
for i in range(20 len(d5) - 20):
c5.append(d5[i] - d5[i - 1])
data5 = heapq.nl
相关资源
- python+ selenium教程
- 英文原版-Scientific Computing with Python
- CpuMemSets在Linux操作系统中的实现
- Python学习全系列教程永久可用
- 蓝奏云批量上传工具.zip
- python书籍 PDF
- 老男孩python项目实战
- Python.rar99111
- decision_tree_v2.py
- Python绝技运用Python成为顶级黑客.pdf
- python小波包文档及论文.zip
- Python黑帽子(黑客与渗透测试编程之
- FlaskWeb开发:基于Python的Web应用开发实
- Python基础教程第3版中英文源码.rar
- python数据结构与算法中文版.zip
- Python-冲顶大会芝士超人西瓜视频头脑
- time_series_forecasting_with_python.zip
- Python基础教程第三版PDF高清可复制.
- python编程从入门到实践.zip237878
- FlaskWeb开发:Python基于Web应用开发实战
- pythonBCRMDSJ.mobi
- 量化交易之路用Python做股票量化分析
- PYTHON自然语言处理中文版.pdf
- Python基础教程(第3版).rar
- GRAYHATPYTHON高清.英文.书签版.pdf
- Python简明教程第四版.rar
- Python编程:从入门到实践带书签完整
- Python基础教程(第3版).pdf109608
- vamei-从Python开始学编程.pdf
- 利用Python进行数据分析.pdf
评论
共有 条评论