(supermind量化-)振幅大于1、今日均线向上发散、下午大单净流入_

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

问财量化选股策略逻辑

本选股策略选取振幅大于1、今日均线向上发散和下午大单净流入的股票,通过综合考虑技术面和资金面,筛选具有较好走势和资金活跃的个股。

选股逻辑分析

本选股策略通过振幅、均线趋势和资金流向指标来筛选股票。其中振幅大于1和今日均线向上发散可以找到走势较好的股票,而下午的大单净流入可以反应资金的活跃情况,从而尽可能地筛选出走势较好和资金活跃的个股。

有何风险?

本选股策略可能存在捕捉到噪声信号或者光环效应等人为因素的缺陷,同时还有可能被高估的股票一次性影响策略的整体表现,所以需要辅助其他指标进行筛选。

如何优化?

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

最终的选股逻辑

本选股策略选取振幅大于1、今日均线向上发散和下午大单净流入的股票作为选股指标。

同花顺指标公式代码参考

  • 振幅: AMO
  • 今日均线向上发散:C > REF(MA(C,5),1) > MA(C,5)
  • 下午大单净流入:IF
    SUM(IF(C>O, V, 0), 3) - SUM(IF(C<O, V, 0), 3)

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
        # 下午大单净流入
        vol = data["volume"]
        close = data["close"]
        if (vol[close > close.shift(1)].rolling(window=3).sum() - 
        vol[close < close.shift(1)].rolling(window=3).sum())[-1] < 0:
            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)
收益&风险
源码

评论