(supermind量化-)振幅大于1、今日均线向上发散、昨日非涨停板_

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

问财量化选股策略逻辑

本选股策略选取振幅大于1、今日均线向上发散以及昨日不是涨停板的股票,通过技术面和市场表现综合筛选,旨在找到具有一定持续性和成长性的个股。

选股逻辑分析

本选股策略通过振幅、均线趋势和涨停板指标来筛选股票,其中振幅大于1和今日均线向上发散可以找到走势较好的股票,而昨日的非涨停板可以避免暴涨后的高估情况,从而尽可能地筛选出稳健和有潜力的个股。

有何风险?

本选股策略可能存在无法捕捉到所有市场变化和风险的缺陷,同时还有可能被高估的股票一次性影响策略的整体表现,所以需要辅助其他指标进行筛选。

如何优化?

为了进一步提升策略的有效性,可以综合考虑其他指标或数据,例如资产负债率、收益率、市盈率等,以及该公司的商业模式、盈利能力、竞争优势等基本面指标。同时,应该重新明确策略的投资目标和风险控制体系,合理控制仓位和组合风险。

最终的选股逻辑

本选股策略选取振幅大于1、今日均线向上发散和昨日非涨停板的股票作为选股指标。

同花顺指标公式代码参考

  • 振幅: AMO
  • 今日均线向上发散:C > REF(MA(C,5),1) > MA(C,5)
  • 昨日不是涨停板: REF(HIGH,1) < REF(MAX(HIGH,LOW),9)

python代码参考

import tushare as ts

def select_stock():
    stock_list = ts.get_stock_basics()
    selected_stocks = stock_list[(stock_list["pb"] > 0) & (stock_list["pb"] < 1) & (stock_list["timeToMarket"] <= 240)]

    for stock in selected_stocks.index:
        data = ts.get_hist_data(stock)
        if data is None:
            selected_stocks.drop(stock, inplace=True)
            continue
        if data["amplitude"][-1] < 1:
            selected_stocks.drop(stock, inplace=True)
            continue
        # 今日均线向上发散
        ma5 = data["close"].rolling(window=5).mean()
        if not (data["close"][-1] > ma5[-2] and ma5[-2] > ma5[-1]):
            selected_stocks.drop(stock, inplace=True)
            continue
        # 昨日非涨停板
        if data["high"][-2] >= data["high"][-10:].max():
            selected_stocks.drop(stock, inplace=True)
            continue

    return selected_stocks

print(select_stock())

以上代码仅供参考,实现方法会因投资人情况和市场环境而异。

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

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

    模板如何使用?

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


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

评论