多因子选股模型是一种常见的量化投资模型,多因子选股模型构建需要获取因子数据。下面就是介绍如何获取因子数据并储存起来的。

一、获取数据方法

本文从tushare官网(tushare数据接口)获取股票数据,使用Python语言。

import tushare as ts
ts.set_token("36c4bc12e6659f16e1bd6f8b4fed981d2a09ade336bb22cec25644cc")
pro = ts.pro_api()df = pro.daily(trade_date='20200325')

二、存数据之存入MySQL数据库

1.连接MySQL数据库

连接MySQL数据库,首先需要电脑有MySQL数据库,可以自行下载并配置环境变量。

首先需要连接数据库,可以执行数据库建表,查询,添加,删除等操作。在对数据库操作完成后需要关闭数据库连接。

代码如下(示例):

# 初始化数据库连接
mydb = pymysql.connect(host='localhost',user='root',password='自己的密码',database='myDb')# 使用 cursor() 方法创建一个游标对象 cursor
cursor = mydb.cursor()#sql查询语句
sql = select * from myDb
# 使用 execute()  方法执行 SQL 语句
cursor.execute(sql)# 关闭数据库连接
mydb.close()

2.建表添加数据

#建表---股票基础信息(stock_basic_info)
sql = """CREATE TABLE STOCK_BASIC_INFO (id int , ts_code  CHAR(30) NOT NULL,symbol  CHAR(20) comment '股票代码',name CHAR(20) comment '股票名称',area CHAR(20) comment '地域',industry CHAR(20) comment '所属行业',fullname CHAR(60) comment '股票全称',enname CHAR(60) comment '英文全称',list_status CHAR(20) comment '上市状态',market CHAR(20) comment '市场类型')"""cursor.execute(sql)#根据tushare接口查询数据,并将数据添加至所建的表里
#查询当前所有正常上市交易的股票列表
data = pro.stock_basic(exchange='', list_status='L', fields='ts_code,symbol,name,area,industry,fullname,enname,list_status,market')#通过循环语句逐行添加数据
for index,row in data.iterrows():sql = "INSERT INTO STOCK_BASIC_INFO(id ,ts_code, \symbol,name,area,industry,fullname,list_status ,market) \VALUES ('%d','%s', '%s',  '%s',  '%s',  '%s','%s', '%s',  '%s')" % \(index,row['ts_code'],row['symbol'],row['name'],row['area'],row['industry'],row['fullname'],row['list_status'],row['market'])# print(index)#执行sql语句cursor.execute(sql)
# 执行sql语句
mydb.commit()

3.读入数据

代码如下(示例):

#读取数据
stock_data = pd.read_sql('SELECT * FROM stock_data.stock_basic_info',mydb)

二、存数据之存csv文件

1.存为csv文件

代码如下(示例):

import tushare as ts
pro = ts.pro_api()
# 读取交易日历
df_tradeData = pro.trade_cal(exchange='', start_date='20180101', end_date='20181231')# 保存交易日历
df_tradeData.to_csv(r'.\tradeDate.csv',index=False)

2.读入数据

代码如下(示例):

#读取.csv文件数据
df_Date = pd.read_csv(r'.\tradeDate.csv')
print(df_Date)

多因子选股之tushare数据获取相关推荐

  1. python量化交易--因子选股策略

    Fama-French三因子选股策略,三因子分别为  市场因子(股指).市值因子.账面市值比因子 三因子模型的具体步骤: 1.对股票按照市值和账面市值比分组,共计六组,市值按大小市值各50%分,账面市 ...

  2. 量化投资之多因子选股(一):数据准备与单因子检验

    文章目录 前言 系列文章 矢量化选股回测概述 要点1:数据格式 要点2:股票池 要点3:剔除ST股.停盘股.涨跌停 要点4: 仓位构建 要点5:回测 数据准备 单因子检测 样例 前言 本菜狗现在是哈工 ...

  3. 机器学习量化多因子选股策略

    一.前言 多因子选股策略是一种应用十分广泛的选股策略,其基本思构想就是找到某些和收益率最相关的指标,找出股票收益率与各种指标之间的"关系",借此"关系"建立股票 ...

  4. 20190919:多因子选股模型-打分法技术路线梳理

    一.数据预处理 1. 因子分类,按因子类别提取基础数据(多因子选股模型的因子梳理(t默认取1)) (1)估值因子:行情数据-每日指标 市盈率: 市盈率(TTM):pe_ttm 市盈率(总市值/净利润) ...

  5. python多因子量化选股模型_量化新兵第十步:多因子选股模型

     前 言 APT套利定价理论是在资本资产定价理论的基础上进行延申,假定因素模型能描述证券收益,当市场不存在无风险套利时,可以构建多因子线性模型给股票定价,若结果与实际股价发生偏差,我们可以对低估值的股 ...

  6. 量化选股之经典的因子选股

    沪深两市挂牌公司已有3157家,现在还有若干企业在IPO排队中. 以后,股票只会越来越多-- 再加上去年量化业绩干得还不错,现在市场延续震荡行情,都说今年也挺适合: 他们说的保守估计的收益率听起来一点 ...

  7. python数据分析及可视化(十七)聚宽(双均线分析、因子选股策略、多因子选股策略、均值回归理论、布林带策略、PEG策略、权重收益策略)

    聚宽 聚宽是一个做金融量化的网站,https://www.joinquant.com,登录注册,如果你写的文章.策略被别人采纳,增加积分,积分用于免费的回测时长.在我的策略,进入策略列表,里面有做好的 ...

  8. 【量化金融】多因子选股策略

    金融是我最头疼的科目,监督自己坚持学下去! 多因子选股策略 理论 多因子模型是应用最广泛的一种选股模型,基本原理是采用一系列的因子作为选股标准,满足这些因子的股票被买入,不满足的股票被卖出. 例如,当 ...

  9. 基于组合权重优化的风格中性多因子选股策略_数量化专题之五十七

    国泰君安_刘富兵_2015-04-26 基于组合权重优化的风格中性多因子选股策略_数量化专题之五十七 一. 内容摘要 基于股票组合的权重优化方法,构建市值中性.行业中性.风格中性的最优投资组合,可获得 ...

最新文章

  1. 图说子图同构算法——VF2算法(一)
  2. 百练-16年9月推免-B题-字符串判等
  3. 新建文件夹html文件,JS实现新建文件夹功能
  4. python猜拳游戏三局两胜制_python石头剪刀布小游戏(三局两胜制)
  5. JavaFX学习之道:JavaFX之TableView
  6. 【数据分析】年轻人逃离大城市之后的下一站选哪儿?用数据来为你揭晓
  7. oracle 实现ID自增
  8. 大量的数据做字符串匹配_Python Flashtext 实现大数据集下高效的关键词查找和替换...
  9. ECS 数据保护——数据备份新特性与最佳实践
  10. 刷新了dns后无法访问到mysql_高效刷新DNS缓存 解决网页无法访问
  11. 收据模板_使用智能收据简化支出报告
  12. 物联网云平台的远程管理
  13. 目标检测经典论文详解
  14. Android 智能机顶盒之蓝牙遥控器开机自动配对
  15. Android 4.1.2微信版本,ttkefu在线客服系统
  16. 2. 表的操作:创建表、修改表、列约束和表约束、数据操作、删除表
  17. WordPress 5文章编辑真难用 换回老版经典编辑器教程
  18. java 百万数据查询_JAVA技巧:Java中的大量数据查询
  19. onvif 修改摄像头参数
  20. iOS设备管理器有人推荐iTunes,有人推荐iMazing,到底如何选择

热门文章

  1. dubbo(4) Dubbo源码解析之服务引入过程
  2. 1.无线通信:传播和衰落
  3. 逻辑与() 逻辑或(||)
  4. google::protobuf::Closure::Run
  5. 差分隐私 python_差分隐私
  6. vue2.0_实现图片上传前进行压缩(约10倍)
  7. Integer a=1与Integer a=new Integer(1)的区别
  8. 批处理(batch)教程
  9. MySQL修改表的字段
  10. 如何用快慢指针在链表找到中间点