❶ 学python能做什么
Python第三方模块众多,下面我介绍一些比较实用而又有趣的模块,主要分为爬虫、数据处理、可视化、机器学习、神经网络、股票财经、游戏这7个方面,主要内容如下:
1.爬虫:
相信大部分人都用Python爬过数据,目前来说,比较流行的框架是scrapy,对爬取数据来说,简单方便了不少,只需要自己添加少量的代码,框架便可启动开始爬取,当然,还有简单地爬虫包,像requests+BeautifulSoup,对于爬取简单网页来说,也足够了:
如果你想要学好Python最好加入一个好的学习环境,可以来这个Q群,首先是629,中间是440,最后是234,这样大家学习的话就比较方便,还能够共同交流和分享资料
2.数据处理:
numpy,scipy,pandas这些包对于处理数据来说非常方便,线性代数、科学计算等,利用numpy处理起来非常方便,pandas提供的DataFrame类可以方便的处理各种类型的文件,像excel,csv等,是分析数据的利器:
3.可视化:
这里的包其实也挺多的,除了我们常用的matplotlib外,还有seaborn,pyecharts等,可以绘制出各种各样类型的图形,除了常见的线图、饼图和柱状图外,还可以绘制出地图、词云图、地理坐标系图等,美观大方,所需的代码量还少,更容易上手:
4.机器学习:
说起python机器学习,大部分人都应该scikit-learn这个包,常见的机器学习算法,像回归、分类、聚类、降维、模型选择等,这里都有现成的代码可供利用,对于这机器学习方面感兴趣的人来说,这是一个入门机器学习的好包:
5.神经网络:
说起神经网络,大部分人都应该会想起深度学习,对应的就会想到谷歌目前非常流行的深度学习框架—tensorflow,tesndorflow可被用于语音识别和图像识别等众多领域,其发展前景光明,对于这方面感兴趣的科研人员来说,是一个很不错的工具,当然,还有基于tensorflow的theano,keras等,都是学习神经网络的不错选择:
6.股票财经:
对于股票和财经比较感兴趣的朋友来说,python也提供了现成的库来获取和分析股票财经数据—tushare,tushare是一个免费、开源的python财经数据接口包,可以快速的获取到国内大部分股票数据,对于金融分析人员来说,可以说是一个利器,降低了许多任务量:
7.游戏:
Python专门为游戏开发提供了一个平台—Pygame,对于想快速开发小型游戏的用户来说,是一个很不错的选择,简单易学、容易上手,脱离了低级语言的束缚,使用起来也挺方便的:
❷ 股票历史数据接口
股票排行榜 里有个股诊断功能里面有效的分析了大年夜盘及个股压力位支撑位及消息面分析一切都是免费的。
❸ 新人发帖求助,python使用tushare股票分析包方法报错
我是一名大学生,刚刚上手python,成功安装了tushare包,但是调用的官方文档的示例方法(get_hist_data)的时报错:
AttributeError: 'mole' object has no attribute 'get_hist_data'
代码是
[import tushare as ts
ts.get_hist_data('600848')][/code]
因为是示例,所以包应该下面有这个方法,我用print dir(ts) 看到下面只有
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'ts' ] 这几个方法(显然不是全部的方法)
希望各位能够帮助下新人解答一下。
刚刚实际运行了一下,没有报错,你检查一下是否安装正确,tushare包的安装直接用 pip install tushare 安装即可,没必要访问官网,当然,你需要先安装pip ,
❹ 股票池如何用python构建
股票池用python构建的方法是:使用第三方平台,目前可以使用的是聚宽,对比一下聚宽、优矿、大宽网(已经倒闭了),都大同小异,选哪个都一样。
虽然这些平台都大同小异,但是代码可不能简单复制粘贴,因为底层函数库是不一样的,有可能在别的平台根本用不了某个函数,并且简单复制到自己电脑中的python的话百分之百用不了。
代码的思路是,每个月底进行调仓,选出市值最小的股票交易,去掉ST/*ST/停牌/涨停的股票,然后选择最小市值的10只,基准是创业板综指,看看结果。
python构建数据获取方法是:
这里使用为了接下来的操作需要将一定历史范围的股票数据下载下来,这里下载起始时间为20160101,截至时间为运行代码的时间范围的历史日线数据。
这里以tushare为例, tushare获取历史数据有两种方式。
第一种是以迭代历史交易日的方式获取所有历史数据,假设获取三年的历史数据,一年一般220个交易日左右,那么3年需要请求660多次左右,如果以这种方式的话,就下载数据的时间只需要1分钟多点的样子。
第二种是以迭代所有股票代码的方式获取所有历史数据,股票数量有大概3800多个,需要请求3800多次,但是在积分有限的情况下一分钟最多请求500次,也就意味着仅下载数据的时间至少需要大概8分钟时间。
理论上,你获取的历史范围超过17.3年,那么使用第一种方式才比第二种方式快。
❺ 100银子求助如何遍历读取TuShare的分笔股票数据
import tushare as ts
import time
while True:
df = ts.get_realtime_quotes('000581') #Single stock symbol
print df[['code','name','price','bid','ask','volume','amount','time']]
time.sleep(2)
根据 http://tushare.org/trading.html#id6 提供的例子,你可以包装成函数,传入你要获取的股票代码,df包含30个列的内容,你可以输出你想要的列,也可以保存到数据库里。
tushare.org上都写得很清楚了。
遍历读取无非就是
import tushare as ts
df = ts.get_tick_data('600848',date='2014-01-09')
for i in df.index:
print df.loc[i]
print df.loc[i]['price']
其中i就是序号,以i为基础你可以获取所有row的数据,包括具体某一行某一列。python根据坐标读取数据有多重方法,你学明白python后,tushare用起来就方便了。
❻ tushare的接口怎么样使用
Tushare简介
Tushare金融大数据开放社区,免费提供各类金融数据和区块链数据,助力智能投资与创新型投资。网址:https://tushare.pro/register?reg=527754
注:推广一下分享链接,帮我攒点积分,你好我也好 ^_^ 。
python环境安装
强烈建议使用Anaconda,Anaconda的安装见:https://tushare.pro/document/1?doc_id=29
python的IDE我使用vscode,在Anaconda主界面中直接打开vscode,它会帮你设置好环境,简单方便。
tushare库安装
打开vscode的[查看]->[终端],输入 pip install tushare 即可安装tushare。输入 pip install tushare --upgrade 即可更新tushare。缺少或者更新其他python库,参照这个方法即可。
环境安装好后,就可以开工了。直接上代码,这份代码从Tushare下载股票列表数据,保存为csv文件,同时保存在mssql数据库中。
注意:在to_sql中的schema参数为数据库名,需要带上该数据库的角色,我使用sa登录,数据库隶属于dbo。使用to_sql不需要创建表,pandas会自动帮你创建好,也不需要自己写插入数据的代码,还是很方便的。如果你在表中增加了主键或者唯一索引,有重复数据时批量入库会失败。tushare本身是有少量重复数据的。采用逐行入库的方式速度会比较慢,需要根据业务自己衡量选择。
#!/usr/bin/python3
# coding:utf-8
# -*- coding: utf-8 -*-
import time
import datetime
import random
import tushare
import pandas
import pymssql
import sqlalchemy
#需修改的参数
stock_list_file = 'stock_list.csv' #股票列表文件csv
#tushare token
tushare_token='你自己的token'
#数据库参数
db_host = '127.0.0.1'
db_user = 'sa'
db_password = 'pwd'
db_db = 'quantum'
db_charset = 'utf8'
db_url = 'mssql+pymssql://sa:[email protected]:1433/quantum'
#股票列表
def get_stock_basic() :
print('开始下载股票列表数据')
#获取tushare
pro = tushare.pro_api()
#下载
data = pro.stock_basic(fields='ts_code,symbol,name,fullname,list_status,list_date,delist_date')
#保存到csv文件
data.to_csv(stock_list_file)
#入库
engine = sqlalchemy.create_engine(db_url)
try:
#先一次性入库,异常后逐条入库
pandas.io.sql.to_sql(data, 'stock_basic', engine, schema='quantum.dbo', if_exists='append', index=False)
except :
#逐行入库
print('批量入库异常,开始逐条入库.')
for indexs in data.index :
line = data.iloc[indexs:indexs+1, :]
try:
pandas.io.sql.to_sql(line, 'stock_basic', engine, schema='quantum.dbo', if_exists='append', index=False, chunksize=1)
except:
print('股票列表数据入库异常:')
print(line)
finally:
pass
finally:
pass
print('完成下载股票列表数据')
return 1
#全量下载所有股票列表数据
if __name__ == '__main__':
print('开始...')
#初始化tushare
tushare.set_token(tushare_token)
print('获取股票列表')
get_stock_basic()
print('结束')
❼ python tushare炒股好用吗
[python] view plain
#!/usr/bin/python
# coding: UTF-8
"""This script parse stock info"""
import tushare as ts
def get_all_price(code_list):
'''''process all stock'''
df = ts.get_realtime_quotes(STOCK)
print df
if __name__ == '__main__':
STOCK = ['600219', ##南山铝业
'000002', ##万 科A
'000623', ##吉林敖东
'000725', ##京东方A
'600036', ##招商银行
'601166', ##兴业银行
'600298', ##安琪酵母
'600881', ##亚泰集团
'002582', ##好想你
'600750', ##江中药业
'601088', ##中国神华
'000338', ##潍柴动力
'000895', ##双汇发展
'000792'] ##盐湖股份
get_all_price(STOCK)
上述的代码就是调用 ts 的 get_realtime_quotes 这个接口,获取并打印对应的股票数据。
保存成tushare-example.py这个文件后,执行结果如下:
[python] view plain
# python tushare-example.py
name open pre_close price high low bid ask \
0 南山铝业 6.090 6.040 6.020 6.240 6.000 6.010 6.030
1 万 科A 0.00 24.43 0.00 0.00 0 0.00 0.00
2 吉林敖东 23.80 23.89 23.42 23.81 23.39 23.41 23.42
3 京东方A 2.30 2.31 2.30 2.31 2.29 2.29 2.30
4 招商银行 14.900 14.880 14.860 14.930 14.780 14.870 14.880
5 兴业银行 14.380 14.380 14.420 14.500 14.350 14.420 14.430
6 安琪酵母 32.570 32.610 32.270 33.500 32.010 32.260 32.290
7 亚泰集团 5.020 5.040 4.920 5.030 4.910 4.910 4.920
8 好想你 0.00 15.62 0.00 0.00 0 0.00 0.00
9 江中药业 25.910 26.050 25.510 26.100 25.500 25.500 25.510
10 中国神华 13.150 13.130 13.100 13.220 13.090 13.090 13.100
11 潍柴动力 7.26 7.24 7.18 7.28 7.16 7.17 7.18
12 双汇发展 18.15 18.17 18.20 18.25 18.10 18.20 18.21
13 盐湖股份 18.21 18.37 17.84 18.36 17.80 17.83 17.84
volume amount ... a2_p a3_v a3_p a4_v a4_p \
0 57575165 351584271.000 ... 6.040 649 6.050 764 6.060
1 0 0.00 ... 0.00 0.00 0.00
2 11613023 274208845.93 ... 23.43 260 23.44 3 23.45
3 200290823 460365710.26 ... 2.31 121698 2.32 65422 2.33
4 16885368 250744421.000 ... 14.890 2746 14.900 1060 14.910
5 44311362 639044453.000 ... 14.440 2299 14.450 1971 14.460
6 6430819 211088364.000 ... 32.300 50 32.390 3 32.400
7 11602430 57638953.000 ... 4.930 1358 4.940 1207 4.950
8 0 0.00 ... 0.00 0.00 0.00
9 8142359 209824301.000 ... 25.520 37 25.530 48 25.540
10 11113228 146177929.000 ... 13.110 176 13.120 92 13.130
11 13815858 99641720.65 ... 7.19 1783 7.20 540 7.21
12 3251027 59110247.93 ... 18.22 235 18.23 248 18.24
13 14408288 259983524.09 ... 17.85 118 17.86 22 17.87
a5_v a5_p date time code
0 575 6.070 2016-02-05 15:00:00 600219
1 0.00 2016-02-05 15:05:56 000002
2 19 23.46 2016-02-05 15:05:56 000623
3 55669 2.34 2016-02-05 15:05:56 000725
4 790 14.920 2016-02-05 15:00:00 600036
5 3526 14.470 2016-02-05 15:00:00 601166
6 8 32.470 2016-02-05 15:00:00 600298
7 893 4.960 2016-02-05 15:00:00 600881
8 0.00 2016-02-05 15:05:56 002582
9 78 25.550 2016-02-05 15:00:00 600750
10 206 13.140 2016-02-05 15:00:00 601088
11 668 7.22 2016-02-05 15:05:56 000338
12 506 18.25 2016-02-05 15:05:56 000895
13 28 17.88 2016-02-05 15:05:56 000792
bingo!
❽ 用Python 进行股票分析 有什么好的入门书籍或者课程吗
概率炒股法:
用python获取股票价格,如tushare,如果发现股票当天涨幅在大盘之上(2点30到2点50判断),买入持有一天,下跌当天就别买,你可以用概率论方法,根据资金同时持有5支,10支或20支,这样不怕停盘影响,理论上可以跑赢大盘。
还有一种是操作etf,如大盘50 etf,300 etf,中小板etf,创业板etf,当天2.30分判断那个etf上涨就买入那支,不上涨什么都不买,持有一天,第二天如是。
❾ 如何从tushare中调取十大股东数据
0. 简介
TuShare是一个免费、开源的Python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。考虑到Python pandas包在金融量化分析中体现出的优势,TuShare返回的绝大部分的数据格式都是pandas DataFrame类型。
1. 历史行情
获取个股历史交易数据(包括均线数据),可以通过参数设置获取日k线、周k线、月k线,以及5分钟、15分钟、30分钟和60分钟k线数据。本接口只能获取近3年的日线数据,适合搭配均线数据进行选股和分析。
参数说明:
code:股票代码,即6位数字代码,或者指数代码(sh=上证指数 sz=深圳成指 hs300=沪深300指数 sz50=上证50 zxb=中小板 cyb=创业板)
start:开始日期,格式YYYY-MM-DD
end:结束日期,格式YYYY-MM-DD
ktype:数据类型,D=日k线 W=周 M=月 5=5分钟 15=15分钟 30=30分钟 60=60分钟,默认为D
retry_count:当网络异常后重试次数,默认为3
pause:重试时停顿秒数,默认为0
返回值说明:
date:日期
open:开盘价
high:最高价
close:收盘价
low:最低价
volume:成交量
price_change:价格变动
p_change:涨跌幅
ma5:5日均价
ma10:10日均价
ma20:20日均价
v_ma5:5日均量
v_ma10:10日均量
v_ma20:20日均量
turnover:换手率[注:指数无此项]
(1) #获取全部日k线数据(查看前11行)
❿ 怎样使用tushare的提供的数据与库talib计算macd
安装TuShare
方式1:pip install tushare
方式2:访问https://pypi.python.org/pypi/tushare/下载安装
方式3:将源代码下载到本地python setup.py install
升级TuShare
1、先查看本地与线上的版本版本号:
pip search tushare
2、升级TuShare:
pip install tushare --upgrade
确认安装成功
import tushare as ts
print ts.__version__
获取历史交易数据
import tushare as ts
df = ts.get_hist_data('600848')
ts.get_hist_data('600848',ktype='W') #获取周k线数据
ts.get_hist_data('600848',ktype='M') #获取月k线数据
ts.get_hist_data('600848',ktype='5') #获取5分钟k线数据
ts.get_hist_data('600848',ktype='15') #获取15分钟k线数据
ts.get_hist_data('600848',ktype='30') #获取30分钟k线数据
ts.get_hist_data('600848',ktype='60') #获取60分钟k线数据
ts.get_hist_data('sh')#获取上证指数k线数据,其它参数与个股一致,下同
ts.get_hist_data('sz')#获取深圳成指k线数据 ts.get_hist_data('hs300')#获取沪深300指数k线数据
ts.get_hist_data('sz50')#获取上证50指数k线数据
ts.get_hist_data('zxb')#获取中小板指数k线数据
ts.get_hist_data('cyb')#获取创业板指数k线数据
Python财经数据接口包TuShare的使用
获取历史分笔数据
df = ts.get_tick_data('000756','2015-03-27')
df.head(10)
Python财经数据接口包TuShare的使用
获取实时分笔数据
df = ts.get_realtime_quotes('000581')
print df[['code','name','price','bid','ask','volume','amount','time']]
返回值说明:
0:name,股票名字
1:open,今日开盘价
2:pre_close,昨日收盘价
3:price,当前价格
4:high,今日最高价
5:low,今日最低价
6:bid,竞买价,即“买一”报价
7:ask,竞卖价,即“卖一”报价
8:volumn,成交量 maybe you need do volumn/100
9:amount,成交金额(元 CNY)
10:b1_v,委买一(笔数 bid volume)
11:b1_p,委买一(价格 bid price)
12:b2_v,“买二”
13:b2_p,“买二”
14:b3_v,“买三”
15:b3_p,“买三”
16:b4_v,“买四”
17:b4_p,“买四”
18:b5_v,“买五”
19:b5_p,“买五”
20:a1_v,委卖一(笔数 ask volume)
21:a1_p,委卖一(价格 ask price)
...
30:date,日期
31:time,时间