本文是多因子模型水平测试题最后一部分,说的不对的地方还请多指正。作者:call (知乎@李白 )
组合构建
1. 利用多因子模型进行选股,求解每期股票权重的问题本质上是一个带约束的最优化问题,请阐述优化目标和约束条件各是什么?
2. 组合优化有哪些常见方法?各要注意什么问题?
二次规划
3. 股票组合中个股权重上限的设计有什么技巧?大约应设置在什么范围?【个股权重不能太大,否则只会集中买入每个行业预期收益最高的股票;也不能太小,否则可能出现某个行业内所有股票都持仓至上限也无法达到行业中性。参考值:2%~3%,应根据实际情况调整取值】
答案如题
4. 是否要根据个股的交易量来限制个股权重的上限?
需要,在优化条件中加入这一限制
5. 如何预估市场冲击?
6. 是否可以(大概)控制每个版块的持仓个股数?如何做?【参考方法:股权重上限为它所处行业在沪深300(或其他基准)中占比除以希望持仓的个股数】
题中参考方法即可,也需要考虑板块个股数目很少的情况
7. 建立选股模型时,如何控制行业中性、市值中性(或其他条件)?
这个和策略的侧重点相关,可以选择把行业因子和市值因子中性掉,也可以选择暴露一部分
8. 建立选股模型时,如何处理交易成本、股票停牌等问题?如何计买入、卖出价?
停牌时可以以行业涨跌幅计;或者以历史回归beta计算停牌涨跌
9. 纯多头约束对组合构建的影响不止是少了一半的获利机会,这句话怎样理解
多因子模型本质上是统计套利模型,纯多头约束除了导致少了空头收益之外,也会导致你多了一份风险
10. 纯多头股票组合策略应选择怎样的指数作为基准?沪深300、中证500、中证800?各有什么利弊?
不同指数对应于不同的一篮子股票,有着不同的大小盘、行业风格;沪深300偏向大盘;选择基准需要考虑到你的策略因子的实际逻辑;实际上,这个可以通过回测结果看出来
11. 应该每日调整头寸,还是更低的频率,例如每月,抑或每次财报集中发布之后?
应该从因子逻辑和回测结果出发,选择合适的调仓频率
12. 多因子模型回测过程中,是否应对个股特别设立平仓与开仓条件(即对多因子的结果进行修正)?如何做?
设置平仓线,可以免去极端个股走势对于策略的影响;既然是回测,那么可以很容易看出来这个影响有多大,然后综合设置
实盘1. 新策略从提出到开发,再到上线的流程中,历史回测(back-test)、实时模拟(paper-trading)和实盘交易(real-money)的关键差异何在,各自的优劣何在?
历史回测是为了验证想法,可以多参数验证;实时模拟和实盘交易其实差别不大,如果你的模拟系统能够非常贴近实际交易的话;实盘交易中,可能需要长时间的跟踪才能确定你的模型是否有效。
2. 如何检测你的模型是否已经失效?模型因子是否需要定期重选?
因子是否失效取决于因子计算的逻辑;定期重选就是现在很火的多因子轮动策略
3. 实盘中一个历史回测、实时模拟业绩都很好的策略发生了异常回撤,问题可能出在什么地方?应急预案是什么?
市场风格变换,政策影响等等
4. 如何设计数据库表结构来记录实盘交易流水和每日资产明细?
记录翔实即可
5. 在实盘交易中,模型给出的交易指令常常不能被精确地执行,如何评估其影响?
最简单地,分情况做历史统计,看统计意义上对结果影响是否显著
数据1. 基本信息、行情、基本面等基础数据库的表结构应该怎样设计?出于怎样的考虑?
基于数据频度等特征设计合理数据库表结构
2. 选择Mysql、SQL及其它数据库管理系统的利弊?
是否收费和性能好坏
3. 常见的数据来源有哪些,数据提供商有哪些,各有哪些优劣?
Tushare、优矿 免费
通联数据 便宜、服务好
国泰安 财务数据质量高
Wind 数据全
4. 用网页抓取生成的数据源的利弊?
利:免费的,弊:脏数据、不稳定
5. 如何支持多数据源?
自定义数据相关api
6. 每个数据具有三个关键日期,数据日期、公告日期、录入日期。对于不同类型的数据项,上述三个关键日期之间的时滞情况不同,请对不同情况分别举例。数据库应怎样设计以全息保存三种关键日期,并使历史回测结果更加逼真?
使用公告日期
7. 行业分类数据选用哪家的好?
自己做最好,做不来用申万行业或者中证行业
8. 发现一只股票的某个财务数据异常,怎样找到真值?
读财报检查
9. 如何记录基础数据的勘误历史?
以错误类型分门别类
10. 怎么进行数据清洗?拥有哪些异常行为的股票应该列入黑名单?
不同类型的数据,需要不同的清洗方法
程序1. 分析程序用MATLAB、Python、R、C++等语言各自的利弊?哪种背景和需求的人应该选择哪种语言?
MATALAB、Python、R做为前期模型研究的语言效率足够,也方便很多。C++在高频等性能要求比较高的地方有用武之地。简单来说,一般多因子研究,不需要踩C++这个坑吧
2. 10年历史回测,数据量大约是多少,运算量大约是多少?怎样的内存不会溢出?
只是行情财报数据,大概也就几个G的量级了,要是加上算好的成百上千的因子数据,可能会多一点。内存不够可以买啊,我司作为一个公益项目满足用户的所有幻想。
3. 面向过程的架构vs面向对象架构来实现多因子模型各有什么利弊?
两种都可以做。面向过程架构比较简单粗暴,但是灵活度不够、做更新时容易牵一发动全身;面向对象则需要计划好架构,这一步可能比较难,但完成之后的写程序就相对来说方便点,调试等等也要方便不少。
综合1. 股票市场是否存在alpha,怎样验证?
存在,不然那么多韭菜,谁来割
2. 传统的基本面投资方法与多因子模型都是为了得到股票组合,他们的异同是什么?
传统基本面投资和多因子模型,在选股方面并无本质区别。基本面的选股可以对行业和股票进行非常精细地研究;多因子模型优点在广度,另外对于各类风险有很系统的展示。
3. 多因子回归模型与CAPM理论和APT理论的关系是什么?
CAPM和APT出发点不一样,多因子模型更多地来自于APT理论
4. 一般的选股模型可以达到多少年化收益率和夏普比率?
抛开风险谈收益都是耍流氓,夏普比也不是一个好的衡量选股模型的指标,个人认为信息比率可能更加合理。以MultiFactors Alpha Model为例,过去七年回测年化阿尔法达到27%,夏普比才只有0.92,但是信息比达到3.79。
5. 在多因子模型的构造过程中,最核心的一个环节是什么?【我认为是预测收益率,也许有人认为是风险(跟踪误差)控制】
最核心的是预测收益率,最重要的是基础数据质量
6. 不同交易频率的组合投资策略——日内(高频、中频、低频)、日频、中期、长期,其对应的多因子模型有哪些不同?
最重要的区别当然是速度,日内高频的策略,如果因子计算依赖不好或者计算太慢,就没法做。很少见到有用多因子模型做日内高频
7. 为什么同样的策略,不同的执行者之间会存在无法抹去的误差(为什么你无法复制另一个人的研究报告成果)?
无法复制另一个人的研究报告成果,排除基础数据不一样这种技术原因,大部分都是因为研究报告根本没告诉你细节
8. 一般来说,多因子模型对数据敏感性很强,那么它的结果还有参考意义吗?
有
9. 多因子模型作为一个如此成熟的策略,为什么还有前仆后继的研究者?
个人觉得,多因子模型更多时候不是策略,而是产生策略的一套流程框架,作为策略的多因子模型其关键在于因子的研究
10. 基于多因子模型的策略收益没有吸引力,从业者众多,是夕阳产业吗?年轻人学习多因子模型是否值得?
担一份风险,博一份收益,多因子策略的绝对收益确实没有吸引力,但是重在风险控制。风险控制的好,规模做上去,还会没有吸引力吗
11. 机器学习、人工智能的工具可以应用到多因子模型的哪些地方?
具体的没有涉猎,这些工具在做多因子轮动策略时候可能会有用武之地
多因子相关文章推荐: