构建全市场涨跌家数
由deledeleboy创建,最终由deledeleboy 被浏览 10 用户
如何用可视化的方式groupby函数构建全市场涨跌家数,还有个股涨幅/申万一级行业涨跌幅的因子?
1、构建全市场涨跌家数
close / m_lag(close, 1) as return_0,
if(return_0>1,1,0) as _upper,
if(return_0<1,1,0) as _lower,
c_group_sum(date,_upper) as upper_count,-- 上涨家数
c_group_sum(date,_lower) as lower_count,-- 下跌家数
2、个股涨幅/申万一级行业涨跌幅的因子
- 使用平台加工的申万一级行业数据(cn_stock_industry_bar1d),包括根据不同计算方式(算术平均、总股本加权平均、流通股本加权平均)得出的行业昨收盘价。
- method:(1-算术平均; 2-总股本加权平均; 3-流通股本加权平均),这次采用method = 3(流通股本加权平均)
with sw2021 as (
select
-- 所属行业加权后的后复权涨跌幅
close / m_lag(close, 1) as sw2021_return,
instrument as industry_instrument,
date
from cn_stock_industry_bar1d
-- 流通股本加权平均
where method =3
)
SELECT
-- 个股涨跌幅
close / m_lag(close, 1) as return_0,
-- 个股行业证券代码
industry_instrument,
-- 所属行业加权后的后复权涨跌幅
sw2021_return,
-- 个股涨幅/申万一级行业涨跌幅
return_0/sw2021_return as ret_de_swRet,
-- 日期和股票代码
date,instrument
FROM cn_stock_prefactors
join cn_stock_industry_component using (date,instrument)
join sw2021 using (date,industry_instrument)
-- 申万2021
where industry='sw2021'
ORDER BY date, instrument
3、验证结果
4、画图
- upper_count(上涨个数)
- lower_count(下跌个数)
- down_7(下跌超7%个数)
\
5、代码
https://bigquant.com/codesharev2/811c497e-16d7-4a61-a2e0-ec5706825c0b
\