量化中的“赛道论”:用Baostock免费进行行业分类与轮动

用户头像sh_****065rs2
2025-12-18 发布

量化中的“赛道论”:用Baostock免费进行行业分类与轮动研究

量化行业分类及轮动是量化投资中的核心策略之一,旨在通过分析宏观经济周期、市场情绪和行业特性,动态调整行业配置以获取超额收益。以下是关键要点:

一、行业分类标准

周期性行业‌:如汽车、房地产、钢铁等,经济扩张期表现优异,衰退期表现较差‌。

成长性行业‌:如科技、医药,通胀下降时受益于贴现率降低,表现突出‌。

利率敏感性行业‌:如银行、消费,在货币政策宽松的复苏阶段表现较好。

资产类行业‌:如采矿业(对金属价格敏感)、能源业(对油价敏感),与特定资产价格强相关。

二、轮动策略逻辑

1、宏观经济驱动‌:

货币供应量(如M2增速)是重要指标,扩张期配置周期性行业,紧缩期转向非周期性行业(如公用事业、消费)。

经济周期中,行业轮动遵循“先导行业→跟随行业”的链条,例如基建投资带动钢铁、机械,进而传导至消费、文化等。

2、市场情绪与技术指标‌:

通过量价因子(动量、资金流、波动率等)捕捉短期趋势,例如2025年国金模型通过双周频率轮动,优选传媒、有色等板块。

3、量化模型应用‌:

马尔可夫链可量化状态转移概率,预测行业轮动规律。

下面以Baostock为例,进行行业分类及轮动研究:

import baostock as bs

import pandas as pd

登陆系统

lg = bs.login()

显示登陆返回信息

print('login respond error_code:'+lg.error_code)

print('login respond error_msg:'+lg.error_msg)

获取行业分类数据

rs = bs.query_stock_industry(code="sh.600000", date="")

print('query_stock_industry error_code:'+rs.error_code)

print('query_stock_industry respond error_msg:'+rs.error_msg)

打印结果集

industry_list = []

while (rs.error_code == '0') & rs.next():

获取一条记录,将记录合并在一起

industry_list.append(rs.get_row_data())
result = pd.DataFrame(industry_list, columns=rs.fields)

结果集输出到csv文件

result.to_csv("D:/stock_industry.csv", encoding="gbk", index=False)

print(result)

登出系统

bs.logout()

评论