问财量化选股策略逻辑
选股逻辑为 MACD 零轴以上、价格小于 12 元、饮料、酒、进出口业的股票。选股时间为每个交易日开盘前进行。
选股逻辑分析
该选股逻辑选取了技术分析指标 MACD 和价格水平,同时也考虑了股票所属行业。行业选择了饮料、酒和进出口业,这些行业有着较为稳定的盈利模式和市场需求。该选股逻辑偏向于行业和技术面相结合,降低了选股偏倚风险。
有何风险?
- 行业选择较为窄,存在过于局限性的风险。
- MACD 指标只能反映股票历史的价格和成交量走势,不能反映市场的现实情况。
- 过于追求行业选择和 MACD 指标,忽略其他技术分析指标和基本面因素的作用。
如何优化?
- 结合更多技术指标和基本面指标进行综合分析,以获得更全面、准确的选股结果。
- 考虑更多行业选择,比如可以选择附加值较高的消费品行业进行筛选。
- 设置较短时间区间(如 5 分钟或 15 分钟)的止损点和止盈点,避免因为过度追求 MACD 上涨或行业选择而产生过大风险。
最终的选股逻辑
选股逻辑为 MACD 零轴以上、价格小于 12 元、饮料、酒和进出口业的股票。在筛选过程中,同时关注其他技术指标和基本面因素,以综合分析股票的价值。
同花顺指标公式代码参考
以下是 MACD 的同花顺指标公式:
DIF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);
DEA:EMA(DIF,M);
MACD:(DIF-DEA)*2,COLORSTICK;
以下是对应行业的同花顺指标公式:
SW1:按申万一级行业分类;
SW1_C4:SW1获取对应的编号,这里是C4饮料制造;
SW1_C9:SW1获取对应的编号,这里是C9酿酒行业;
SW1_C38:SW1获取对应的编号,这里是C38进出口贸易。
python代码参考
以下是 Python 的选股筛选代码,仅供参考:
import akshare as ak
data_stock_price = ak.stock_zh_a_minute(symbol="sh601988", period="15") # 获取股票 15 分钟数据
close_price = data_stock_price["close"].tolist()
dif, dea, macd = talib.MACD(np.array(close_price), fastperiod=12, slowperiod=26, signalperiod=9)
sw1_industry = get_sw1_industry(data_stock_price) # 获取申万一级行业分类
filtered = data_stock_price.loc[
(pd.Series(macd).tail(2).count() == 2) # MACD 有两个值
& (macd[-1] > 0) # MACD 大于 0
& (data_stock_price['close'].iloc[-1] < 12) # 价格小于 12 元
& ((sw1_industry == "饮料制造") | (sw1_industry == "酿酒行业") | (sw1_industry == "进出口贸易")) # 所属行业符合要求
]
filtered = filtered.loc[filtered.index.strftime("%H%M") == "1000"] # 选股时间为 10:00
result = filtered.merge(df_fund[["代码"]]).drop_duplicates(subset=["代码"]) # 最终选股结果
注意,由于数据在运行时需要更新,因此具体代码需要实际情况调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


