akshare做因子分析

68 篇文章 14 订阅
28 篇文章 24 订阅
import pandas as pd
import akshare as ak

df = ak.stock_zh_a_daily(symbol='sh600309')
print(df)
df['code']='600309'
df1 = ak.stock_zh_a_daily(symbol='sz000001')
print(df)
df1['code']='000001'
df=df.append(df1)
df=df.sort_values(by='date')
#df = pro.daily(ts_code='000001.SZ,600000.SH', start_date='20200101', end_date='20201231')
df.index = pd.to_datetime(df['date'])
df.index.name = None
df.sort_index(inplace=True)
# MultiIndex,level0为日期,level1为股票代码,assets为get_clean_factor_and_forward_returns所需的因子数据格式
assets = df.set_index([df.index, df['code']], drop=True)
# column为股票代码,index为日期,值为股票收盘价
close = df.pivot_table(index='date',columns='code',values='close')
close.index = pd.to_datetime(close.index)
#接下来使用alphalens工具对数据进行分析,这里我们使用股票涨跌幅(字段名为pct_chg)作为因子数据
from alphalens.utils import get_clean_factor_and_forward_returns
from alphalens.tears import create_full_tear_sheet
# 需要将pct_chg做shift处理,否则将使用未来数据
ret = get_clean_factor_and_forward_returns(assets[['volume']].shift(2),close)
create_full_tear_sheet(ret, long_short=False)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神出鬼没,指的就是我!

必须花钱,数据超好

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值