(iwencai量化)底部抬高_、昨天3连板、振幅大于1

用户头像神盾局量子研究部
2023-08-31 发布

问财量化选股策略逻辑

该选股逻辑共包含三个条件:

  • 振幅大于1
  • 昨天3连板
  • 底部抬高

选股逻辑分析

振幅大于1是希望能找到波动较大的股票,昨天3连板则是希望找到昨天刚刚热度开始增加的股票,底部抬高则是希望寻找可能即将反转或反弹的股票。

有何风险?

该策略依旧只关注了股票的波动和短期热度,而没有考虑到股票的基本面信息,选股结果可能存在较大的偏差和风险。而且底部抬高的定义不够明确,容易出现歧义。

如何优化?

针对上述风险,可以引入更多的基本面变量和指标,例如PE、PB、市值等指标,并结合技术指标进行多维度的综合考虑,对于选股结果进行更合理的判断和选择;同时要明确底部抬高的定义,可以引入趋势线或其他相关指标进行判断。

最终的选股逻辑

经过优化和改进,最终的选股逻辑如下:

  • 振幅大于1,市场对波动较大的股票更感兴趣。
  • 昨天3连板,寻找当前热门概念的热门个股。
  • 底部抬高,定义为股价在近期底部开始呈现上升趋势的股票。

同花顺指标公式代码参考

HHV:=(REF(HIGH,1)<HIGH)*HIGH+(REF(HIGH,1)>=HIGH)*REF(HIGH,1);  
LLV:=(REF(LOW,1)>LOW)*LOW+(REF(LOW,1)<=LOW)*REF(LOW,1);  
AA:=ABS(HHV-REF(LLV,1));  
BB:=ABS(LLV-REF(HHV,1));  
CC:=ABS(HHV-REF(CLOSE,1));  
DD:=ABS(LLV-REF(CLOSE,1));  
max1:=MAX(AA,BB);  
max2:=MAX(CC,DD);  
RSV:=SMA(IF(max1>max2,RSV1,RSV2),N1,1);  
K:=SMA(RSV,M1,1);  
D:=SMA(K,M2,1);  

python代码参考

high1 = df['high'].shift(1)
low1 = df['low'].shift(1)
hhv = df['high'].where(high1 < df['high'], high1)
llv = df['low'].where(low1 > df['low'], low1)
aa = abs(hhv - llv)
bb = abs(llv - high1)
cc = abs(hhv - df['close'].shift(1))
dd = abs(llv - df['close'].shift(1))
max1 = aa.combine(bb, func=max)
max2 = cc.combine(dd, func=max)
rsv = pd.Series(index=hhv.index)
rsv[max1 > max2] = ((df['close'] - llv) / (hhv - llv)) * 100
rsv[max1 <= max2] = ((df['close'] - df['close'].shift(N1)) / df['close'].shift(N1)) * 100
k = rsv.rolling(window=M1).mean()
d = k.rolling(window=M2).mean()
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

    select_sentence = '市值小于100亿' #选股语句。

    模板如何使用?

    点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


    ## 如果有任何问题请添加 下方的二维码进群提问。
    ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论