python量化
data_amateur
执着于理想,纯粹于当下
展开
-
如何查看支付宝旗下的天弘基金一共有多少只?分别是什么?
如何查看支付宝旗下的天弘基金一共有多少只?分别是什么?2020年,股市风格突变,相对股市个股的跌宕起伏,基金的收益可谓一枝独秀,下面我们将对基金进行研究,看看我们可以获取数据能否到什么程度?利用tushare的数据接口就可以获取基金的名称,代码如下:import tushare as tsimport pandas as pdtoken='******'pro = ts.pro_api(token)# 交易市场: E场内 O场外(默认E), # 存续状态 D摘牌 I发行 L上市中原创 2021-03-04 20:01:14 · 1398 阅读 · 1 评论 -
利用股票数据进行数据分析、机器学习-P1数据描述-基础介绍
1.dataframe对象,是我们常用的一个变量类型2.我们读取股市数据的时候,数据经常以csv文件格式进行存放。csv是一个纯数据的格式,csv的意思是:comma seperate value。使用逗号分割的数据。3.我们获取一下贵州茅台的日线行情,从2020-01-01~2020-12-01期间的数据,用来进行分析。这里使用tushare接口获取股票数据。获取内容如下:4.我们获取的是一个dataframe类型的数据。假如我想获取返回的数据集中,第10~20行的数据,该如何操作呢?..原创 2020-12-13 22:57:08 · 1508 阅读 · 2 评论 -
股票数据尤其是从雅虎财经yahoo finance或者google finance中获取的股票数据中Adj close是什么意思?
我们通过雅虎财经的接口获取股票日线数据的时候,经常获取的数据集内容,如下:Date日期,Open开盘价,High最高价,Low最低价,Close收盘价,Adj Close调整后的收盘价, Volume为成交量。这几列都比较清晰,只有Adj Close是调整后的收盘价。哪调整后的收盘价是什么意思?和收盘价有什么区别呢?调整后的收盘价意味着什么?股票的收盘价即该股票收盘时的价格。而调整后的收盘价呢?已修改为包括在第二天开盘前任何时间发生的任何分配和公司行为。调整后的收盘价通常在检查历史收益或原创 2020-12-13 11:20:31 · 19766 阅读 · 0 评论 -
python中如何给turtle库设置颜色?
python中如何给turtle库设置颜色?当使用 turtle.pencolor(100, 100, 100)设置颜色时,将会有turtle.TurtleGraphicsError: bad color sequence: (100, 100, 100)告警提示。导致程序无法运行下去。解决方案有:1.turtle有两种色彩模式,缺省1.0,即RGB范围在0-1。如果我们想设定在(red,green, blue)的三色设定模式,需要首先模式切换: 模式切换:参数填1.0或255turt..原创 2020-10-06 06:59:29 · 14681 阅读 · 0 评论 -
python量化分析库 Backtrader入门之五
python量化分析库 Backtrader入门之五 好的,到现在为止,我们有了现金(通过broker设置);有了数据,通过bt.feed,然后给大脑添加数据。下一步就到了最激动人心的时刻了:冒险的生意就在眼前。让我们在等式中加入一个策略,并打印出每天的“收盘价”(bar)。 让我们开始,backtrader中添加策略是通过添加一个backtrader.f类来实现的。 我们继承Strategy类,创建一个新的类。# Create a Strateyclass TestStrateg...原创 2020-09-13 08:29:54 · 1035 阅读 · 0 评论 -
python量化分析库 Backtrader入门之四
python量化分析库 Backtrader入门之四 在入门之三中,我们学到了如何设定初始的本金。拥有现金是很有趣的,但这所做一切的目的是设定一种自动化的策略,通过操作我们视为数据馈送的资产,在不动手指的情况下就能成倍的获得现金。本次课就来和大家分享一下,如何给backtrader提供数据。from __future__ import (absolute_import, division, print_function, unicode_li..原创 2020-09-03 22:56:23 · 821 阅读 · 1 评论 -
python量化分析库 Backtrader入门之三
上个系列课我们了解到,如何让一个回测的核心对象cerebro运行起来,这次我们更近一步,看看如何设置更多的游戏规则。投资最重要的当然是有钱,有钱后我们才能去玩资本的游戏。上次我们说过cerebro有一些系列后台的设定,其中一个设定就是默认资本设置为10K。这点钱当然不够我们玩耍的,这点钱1手茅台都买不到,OK? 我们如果觉得不过瘾,想用拥有更多的初始资本该如何去做呢?import backtrader as btif __name__ == '__main__': cerebro =原创 2020-08-26 07:40:38 · 492 阅读 · 0 评论 -
python量化分析库 Backtrader入门之二
python量化分析库 Backtrader入门之二这个系列的目的是一步步的从无到有的了解方式,了解bactrader的使用方式。通过这个系列课,就如何使用backtrader比较清楚。1.Backtrader的hello world。import backtrader as btif __name__ == '__main__': cerebro = bt.Cerebro() print('Starting Portfolio Value: %.2f' % cerebr原创 2020-08-26 07:05:33 · 711 阅读 · 0 评论 -
python pandas dataframe 写入csv文件时,打开csv文件出现乱码的解决方案?
python pandas dataframe对象使用to_csv()写入csv文件时,windows中使用excel打开csv文件出现乱码的解决方案?1.pandas的 dataframe对象使用df.to_csv('abc.csv')方法存储文件,然后使用excel打开时,可能出现乱码,如下图:2.该如何解决呢?答案是写入csv文件时,指定编码格式‘gbk’ 即使用:df.to_csv('abc.csv', encoding='gbk')3.使用后打开文件结果如下:4...原创 2020-08-08 20:42:26 · 1507 阅读 · 0 评论 -
python编程将url请求到的bytes数据,如何转换为string对象?出现‘utf-8‘ codec can‘t decode byte对象是如何解决?
1.使用r= requests.get(url="http://hq.sinajs.cn/list=sz123033").content读取网页内容2.使用str(r,'utf-8'),将bytes类型的r变量转为string对象3.可能报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 21: invalid start bytestr(r_string,'utf-8')4.解决方式:改变编码为‘gbk’原创 2020-08-02 18:02:24 · 1063 阅读 · 0 评论 -
如何使用python编程获取中国股市股价最高的几只股票?(以获取股价最好的前10股票为例)
如何使用python编程获取中国股市股价最高的几只股票?(以获取股价最好的前10股票为例)1.使用tushare获取最近交易日的所有股票数据 1)首先, 使用前我们在tushare pro上注册一下,获取一个token,用来访问接口。 2)使用daily()接口获取交易日股票信息 然后,开始编写代码,代码如下:daily()token='c09cI8888*******ee8c'pro = ts.pro_api(token)df1 = pro.daily()d...原创 2020-08-01 18:02:49 · 1518 阅读 · 0 评论 -
从贵州茅台上市的第一天起,每天买一手茅台能够盈利多少?-利用python进行茅台股票数据分析
从贵州茅台上市的第一天起,每天买一手茅台能够盈利多少?-利用python进行茅台股票数据分析(未统计分红和配股数据)1.使用tushare获取2000至今的股票数据 1)首先, 使用前我们在tushare pro上注册一下,获取一个token,用来访问接口。 2)其次,查询到贵州茅台对应的股票代码为600519 然后,开始编写代码,代码如下:import tushare as tsimport pandas as pdtoken='c09c*****8c'p...原创 2020-07-24 15:51:50 · 2281 阅读 · 0 评论 -
获取贵州茅台2010年1月1号至今的股票交易数据,计算该股票历史数据的5日均线和30日均线
获取贵州茅台2010年1月1号至今的股票交易数据,计算该股票历史数据的5日均线和30日均线原创 2020-07-24 14:02:38 · 1905 阅读 · 0 评论 -
python量化分析库 Backtrader入门之一
Bactrader是python中用来做单机量化分析的一个库,使用该库不用借助量化平台就可以进行股市的量化分析和回测。框架的使用首先理解使用backtrader的过程中大致一下解释2个基本概念。一、 Line价格数据(Data Feeds)、技术指标(Indicators)和策略(Strategies)都是Line。“Line” 是由一系列的点组成的。典型的价格数据,通常由以下类别的数据组成:Open, High, Low, Close, Volume, OpenInterest.原创 2020-06-30 18:24:52 · 1423 阅读 · 1 评论 -
python的dataframe变量中,如何使用列上的上一个值或者下一个值,填充列的缺省值?
现在有一个dataframe变量,现在某一列的值有缺失,如果想将该变量某一列缺失值用上一个非空值进行填充,该如何操作?使用fillna操作,'ffill'表示使用前一个非空值填充。df.fillna(axis=1,method='ffill')...原创 2020-06-12 21:48:58 · 4826 阅读 · 0 评论 -
使用python逐行读取文件内容的几个方法?
使用python逐行读取文件内容的几个方法?方法一:使用readline读取:f = open("fix.txt") line = f.readline() while line: print line line = f.readline() f.close()方法二:for line in open("fix.txt"): print line方法三:f = open("c:\\fix.txt","r")...原创 2020-05-23 22:04:25 · 262 阅读 · 0 评论 -
如何在python pandas的dataframe对象筛选出包含特定字符串的行?
如何在python pandas的dataframe对象筛选出包含特定字符串的行?以数据集df为例,df包含有name的行。如何筛选出name行中,包含‘酒’字符的行?df = df[df['name'].str.contains('酒')]是不是超级简单,试起来吧!这里可以用来股票量化分析中,对行业股票分析,筛选出行业分类中包含酒的行业。...原创 2020-05-08 22:29:30 · 11832 阅读 · 14 评论 -
如何将dataframe的行号排序,转为dataframe的某一列?
如何将dataframe的行号排序,转为dataframe的某一列?第一种实现方式:这个实现方式比较繁琐: 1)df = df.reset_index()。将df的序号进行重置 2)重置后,index按照从0、1、2....的顺序开始递增。 3)新增一列rank,表示df中行的排名。排名类似1、2、3,逐渐递增。df['rank'] = d...原创 2020-05-06 17:33:37 · 1390 阅读 · 0 评论 -
彼得林奇选股策略的原理以及python选股实现的框架
彼得林奇选股策略的原理以及python选股实现的框架彼得林奇选股的核心策略是:市盈率/收益增长率,即 PE/G 为正,并且越小越好其中:PE(市盈率)=股价(P)/EPS(每股收益)G(收益增长率)=( - EPS)/EPS...原创 2020-05-01 19:48:37 · 1938 阅读 · 0 评论 -
使用量化平台的一个感受-计算技术指标时,需要每日重复获取历史数据,效率较低,运行较慢
由于量化平台是基于每天(固定间隔)执行一遍的方式来驱动的,因此无法像线下一样获取到所有的历史数据进行统一计算。这样就带来一个问题,就是如果我需要计算一个技术指标,如MACD的时候,我需要每天都去获取数据计算这个指标。而不能像线下分析一样,个人可以获取所有的历史数据集,可以对数据集进行统一的计算,算出所有的技术指标,然后自己逐行进行筛选。也就是线上我必须每天获取历史数据进行计算,会有大量的重...原创 2020-05-01 06:22:57 · 677 阅读 · 0 评论 -
python中pandas中的dataframe对象时间序列分析相关操作
本文用实例来分析,dataframe的时间序列在股票分析中的应用,包括日期转化,,https://download.csdn.net/download/lost0910/123770371.将字符串日期转为日期类型apple.Date = pd.to_datetime(apple.Date)2.apple = apple.set_index('Date')3.appl...原创 2020-04-30 18:46:54 · 938 阅读 · 0 评论 -
如何利用python对股票的走势进行一个判断?
如何利用python对股票的走势进行一个判断?一、问题当我们拿到沪深股票的所有股票的数据的时候,如何对所有股票的走势,做一个模糊的判断? 当然可以通过画出一个股票的走势图来进行判断。但是问题是,我们不可能画出所有的股票的走势图,然后一一查看。那又有没有方法可以做到我们的需求呢?就是通过某个算法,可以判定某只股票的走势,比如上涨,下跌,或者横盘?现在只有一个思路,在这里记录一下,具体的代...原创 2020-04-26 11:37:31 · 3922 阅读 · 0 评论 -
详解如何使用python计算一只股票的最大回撤率?
详解如何使用python计算一只股票的最大回撤率?一、什么是最大回撤率?最大回撤率:在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值。最大回撤用来描述买入产品后可能出现的最糟糕的情况。最大回撤是一个重要的风险指标,对于对冲基金和数量化策略交易,该指标比波动率还重要。看了还有点懵,我们来划重点:1)比较的是某一个时刻以及往后推的任意时刻,不是两个任意时刻相...原创 2020-04-20 19:00:28 · 4732 阅读 · 0 评论 -
Python pandas中 datetime日期类型与字符串日期的一些操作汇总
rint datetime.datetime.now().strftime("%Y-%m-%d %H:%M")datetime.datetime.now()+datetime.timedelta(days=1)).strftime("%Y-%m-%d %H:%M:%S"原创 2020-04-08 20:51:44 · 488 阅读 · 0 评论 -
Python pandas 的DataFrame对象在使用to_csv()方法时,如何实现数据追加写入文本的功能?
Python pandas 的DataFrame对象在使用to_csv()方法时,如何实现数据追加写入文本的功能?有些时候,我们会定期的采集一些股票数据,来保持我们的数据文件的更新。最近简单的方式是,每次都全部采集,然后重新写入。这样有个问题,就是当数据量比较大的时候,会消耗很多的时间。这时,我们可以只采集最新的股票数据,然后追加写入。dataframe当然可以做到这个事情,只要使用to_...原创 2020-04-05 08:31:14 · 7519 阅读 · 0 评论 -
Python量化编程如何判断均线数据是金叉还是死叉?-股市数据均线策略编程分析
Python量化编程如何均线是金叉还是死叉?-股市数据均线策略编程分析原创 2020-04-04 12:03:06 · 2709 阅读 · 0 评论 -
python量化:如何利用时间序列索引找到股票日线行情中的每个月的第一个交易日?每年的最后一个交易日?
python量化:如何利用时间序列索引找到股票日线行情中的每个月的第一个交易日?每年的最后一个交易日?大家都知道,交易所遇到周末、节假日的时候,是要休市的。当碰到休市的情况,股票日线数据就是缺失的,此时不能用每个月的1号作为当月交易的第一天。那该如何确定呢?答案是使用重采样函数resample,以dataframe对象df为例,df内容如下:这个时候,如何获取当月交易的第一天呢?使用...原创 2020-03-24 22:37:58 · 4275 阅读 · 2 评论 -
如何计算一只股票收盘价比开盘价上涨多少?并筛选出上升上涨超过5%的股票
如何计算一只股票收盘价比开盘价上升多少?并筛选出上升上涨超过5%的股票1.第一步:使用tushare获取股票数据TOKEN = 'c*****c'pro = ts.pro_api(TOKEN)df = pro.daily(ts_code = '600519.SH',start='19900101')输出内容如下:只保留有用的列,将日期、开盘、收盘价留下:df = d...原创 2020-03-23 12:19:29 · 1832 阅读 · 0 评论 -
如何获取股市中北向资金的流向--通过Python、Tushare编程获取沪股通、深股通资金流量
港股通过沪股通、深股通进入的资金,简称北向资金。港股通的数据简称南向资金。从统计结果上来看,北向资金已经成为中国股市涨跌的重要参考。哪我们能从哪些渠道获取北向资金,或者南向资金的流向,以及具体的金额呢,从而给我们在股市中的操作提供一些参考呢?今天我们使用tushare的编程接口,获取北向资金,具体到沪股通、深股通的流向及资金量,实现方法非常简单。具体代码如下:import tushare...原创 2020-03-15 13:37:06 · 6834 阅读 · 3 评论 -
免费获取证券股票交易数据的几种方法--使用python编程免费获取股票交易数据的几个方法及代码实现
免费获取股票交易数据的几种方法--使用python免费获取股票市场交易数据的几个方法,及代码实现。不会编程的韭菜,不是好韭菜 (> -<)。作为一个会编程的韭菜股民,可能会考虑:现在炒股软件提供的数据太少,统计数据不是我想要的,股票指标不合理,自己可以再修改一下。又比如我想这个股票已经大涨了三天了,我能不能继续跟进呢?我想统计一下历史上连续涨了三天的股票,第4天继续涨的概率。...原创 2020-03-07 12:49:04 · 4494 阅读 · 5 评论 -
使用python读取tushare股市数据后,如何将float类型的日期,转化为日期类型,并且设定为索引
使用python读取tushare股市数据后,如何将float类型的日期,转化为日期类型,并且设定为索引直接代码如下:import pandas as pdimport tushare as tsTOKEN = 'c0**********8c'pro = ts.pro_api(token=TOKEN)#使用token获取600519.SH的日行情数据daily = pro.da...原创 2020-03-03 22:41:56 · 1942 阅读 · 0 评论 -
python使用matplotlib画蜡烛图时,找不到matplotlib.finance时的解决方案
画蜡烛图时,找不到matplotlib.finance时的解决方案从matplotlib 2.2.0开始,matplotlib已经不包含finance模块。可以使用mpl_finance进行替代。这个库需要手动安装。安装方法: 在命令行使用:pip installmpl_finance 安装就好。使用anaconda的用户,在Anaconda Prot中输入:pip installmp...原创 2020-03-01 21:50:51 · 3121 阅读 · 0 评论 -
使用Python对股票数据进行数据分析(二)-使用ta-lib库获取日线行情、5日均线、10日均线行情并显示
使用Python对股票数据进行数据分析(二)-使用ta-lib库获取日线行情、5日均线、10日均线行情并显示这个文章其实和我的上一篇文章,https://blog.csdn.net/lost0910/article/details/104572950有点类似,只是数据处理部分有点不一样。一、获取数据这里需要获取的数据是股票的日线行情,这里使用tushare进行获取,以‘贵州茅台’股票进...原创 2020-02-29 17:45:18 · 2057 阅读 · 1 评论 -
使用Python对股票数据进行数据分析(一)-计算日线行情、5日均线、10日均线行情并显示
使用Python对股票数据进行数据分析(一)-计算日线行情、5日均线、10日均线行情并显示各种炒股软件上可以显示各种技术指标,可以帮助投资者进行技术分析。这些股市中的这些指标都是怎么计算出来的呢?这里使用python的pandas库来进行计算。后期可能使用一些专门金融分析的库,比如talib库等进行分析。一、获取数据这里需要获取的数据是股票的日线行情,这里使用tushare进行获取,以...原创 2020-02-29 17:02:35 · 13354 阅读 · 2 评论 -
如何判断某只股票的资金流向?如何判断资金的流入量?-利用Python和Tushare做股票的量化分析
经常看到股市分析中看到:“某只股票资金净流入多少多少元”。笔者一度比较疑惑:当买和卖发生的时候,买入的金额和卖出的金额不是相同的吗?为什么有资金流入或者资金流出的说法?资金流向在国际上是一个成熟的技术指标,其计算方法比较清晰。举例说明:在10:01这一分钟里,某一股票较前一分钟是上涨的,则将10:01这一分钟的成交额计作资金流入,反之则计作资金流出,若指数与前一分钟相比没有发生变化,则不计入。...原创 2020-02-29 09:05:45 · 6381 阅读 · 1 评论 -
Python中如何给DataFrame对象设置索引或者说增加索引?设定索引后有什么变化?如何删除索引?
如何给DataFrame设定索引,设定索引后,又有还什么变化呢?看一个例子:import pandas as pdimport numpy as npdf_test = pd.DataFrame({'key1': ['K0', 'K0', 'K1', 'K2'], 'key2': ['J0', 'J1', 'K0', 'K1'], ...原创 2020-02-26 23:04:45 · 10730 阅读 · 0 评论 -
怎么计算中国股市分红最高的股票?什么是股息率?--使用python和tushare获取分红最高的股票
虽说中国股市太靠谱,都是炒概念、炒预期的,但是有一个事情却确确实实是股民的福利。这就是分红。哪如何计算获取一个股票的分红最高呢?本文就讲述一下如何获取股票的分红情况,如何编程获取股市中分红最高的股票。这里首先讨论一个问题:是不是每股分红最高的股票,我们就可以认为获取的分红就是最高的呢?例如贵州茅台2019年每10股分红145.39元。万科2019年每10股分红10.45102元。可以看到贵州茅...原创 2020-02-26 19:04:24 · 3541 阅读 · 2 评论 -
编程获取中国股市行业分类并作图--使用python、tushare、pyecharts实现
中国股市的股票好像是不缺的,林林总总的股票数目已经接近4000只了。4000只股票对一个人来说无疑太多了,我们认识这些股票总要采用分类的方式,选择我们熟悉的行业。哪如何统计获取股市中每个行业的的具体数量呢?今天我们就看一下如何获取股市的行业分类以及每个行业的股票数量,最后将行业和行业对应的股票数量用玫瑰图的形式展现出来。1.获取行业分类import pandas as pdimport...原创 2020-02-24 22:44:57 · 3728 阅读 · 1 评论 -
如何找到股市某一行业中最优质的股票--通过Python和Tushare编程实现
本文的主要目的是通过Python和Tushare编程,发掘出股市某一行业中最优质的股票。评价一只股票是否优质的标准有很多,本文以演示为目的,就以市盈率作为评价标准进行演示。在股市中摸爬滚打的朋友肯定知道最近IT行业比较热,本文就以IT产业中的“印制电路板”行业作为选取行业,看看在“印制电路板”这个行业中,那些股票是最优质的,也就是哪只股票的市盈率是最低的。步骤如下:一、获取行业指数代码...原创 2020-02-24 00:04:36 · 4308 阅读 · 5 评论 -
利用python和tushare,统计股市每天上涨的概率
作为股市资深的老韭菜,经常担心的一个事情就是股市的涨跌。早上一睁眼,今天开盘,掐指一算行情上涨当然心情好,行情不好就比较糟糕了。那作为一个股市晴雨表的上证综合指数来说,在2019年全年,该指数上涨的概率到底有多少呢?下面就使用python+tushare,获取上证综合指数,并计算2019全年每天上涨的天数,占总天数的比率。1.获取上证综合指数的代码import pandas as p...原创 2020-02-20 13:30:11 · 2334 阅读 · 1 评论