(supermind)振幅大于1、今日控盘>21、周K线上穿30周线_

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

问财量化选股策略逻辑

选股逻辑:振幅大于1,今日控盘>21,周K线上穿30周线。

选股逻辑分析

该选股策略综合考虑了技术分析和市场因素,加入了周K线和30周均线的因素。最初筛选条件和之前的题目略有不同,明确了需要选出比较稳定的上涨股票,而不仅仅是涨跌幅的限制。通过综合考虑市场品种和分析技术的指标,可以更有效地筛选出符合条件的股票。

有何风险?

该选股策略的主要风险还是来自于市场变动风险和行情变化风险,以及股票基本面变化等因素导致的损失。此外,技术指标反应速度滞后,可能会导致选股精度下降,从而影响到策略的初衷。选择的指标也可能存在不稳定性,而且综合考虑的指标也可能过于复杂,导致难以理解和调整。

如何优化?

为了避免风险并提高精度,需要从多个方面进行优化:

  1. 加入基本面和行业分析,对股票进行综合评估,以避免盲目依赖技术指标;
  2. 调整技术分析指标的参数,合理确定其阈值和权重,以获取更有效的结果;
  3. 加入一些形态分析和动量指标,加强选股策略;
  4. 结合风险管理机制,合理控制仓位和合理分散配置,减少风险。

最终的选股逻辑

考虑风险和优化需求,得到完善后的选股逻辑:

  1. 振幅大于1;
  2. 今日控盘>21;
  3. 周K线上穿30周均线;
  4. 财务数据及行业发展良好。

同花顺指标公式代码参考

以下是同花顺实现此策略的部分指标公式代码:

C1 = AMP() > 1;
C2 = ABS(CONTROLLING_SHARES_DAY_CHG()) > 21;
C3 = CROSS(MA(CLOSE, 30), REF(MA(CLOSE, 30), 1));
SELECTOR = C1 AND C2 AND C3;
RESULT = REF(SORT(RANK(SELECTOR), 1), 0) == 0;

python代码参考

以下是Python实现此策略的部分代码:

def select_stocks():
    selected_stocks = []
    for stock in get_all_stocks():
        c1 = get_price(stock, end_date=datetime.now(), frequency='1d', fields='amplitude')[-1] > 0.01
        c2 = abs(get_controlling_shareholders(stock, end_date=datetime.now(), frequency='1d')['controlling_shareholders_day_pct_change'][-1]) > 0.21
        c3 = cross_above(get_ma(stock, 30, end_date=datetime.now(), frequency='1w'), get_ma(stock, 30, count=2, end_date=datetime.now(), frequency='1w'))
        if c1 and c2 and c3:
                selected_stocks.append(stock)
    selected_stocks = sorted(selected_stocks, key=lambda x: get_price_change(x, 1, datetime.now(), frequency='1d'), reverse=True)
    return selected_stocks

result = select_stocks()
print(result)

以上Python代码仅供参考,具体实现还需要结合自身需求进行调整。

    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论