问财量化选股策略逻辑
选股逻辑为MACD零轴以上、PE大于0、昨天有连续上涨三个交易日的股票。选股时间为每个交易日收盘后。
选股逻辑分析
MACD是一种趋势追踪指标,红柱代表上涨趋势,当MACD在零轴以上时,说明当前股票处于强势状态,有较大的上涨空间。同时,通过PE大于0可以筛选出当前股票的估值较合理。连续上涨三个交易日,说明该股票有一定的人气和热度,也有较大的上涨潜力。综合三个指标可以筛选出潜在上涨股票。
有何风险?
- 过于依赖技术指标,忽略了基本面数据带来的投资风险;
- 仅仅以昨天的连板数据为依据太过单一,可能会忽略更为重要的细节信息导致筛选的股票并不合适;
- 选股时间短,对于长期持有者可能会存在曝露风险。
如何优化?
- 引入其他技术指标和基本面数据来拓宽选股预判条件,提高精准度和投资成功率;
- 加入量能的分析,帮助更好地过滤出股票的持续性和实质性;
- 对选股时段进行适当的调整,以避免短期波动带来的不良影响。
最终的选股逻辑
选股逻辑为MACD零轴以上、PE大于0、昨天有连续上涨三个交易日的股票。选股时间为每个交易日收盘后。
同花顺指标公式代码参考
MACD指标:
DIF: EMA(CLOSE, 12) - EMA(CLOSE, 26);
DEA: EMA(DIF, 9);
MACD: (DIF - DEA) * 2;
PE指标:
PE: FIELD('pe_ttm', 0);
昨日连板指标:
REF_CLOSE_1: REF(CLOSE, 1);
REF_CLOSE_2: REF(CLOSE, 2);
REF_CLOSE_3: REF(CLOSE, 3);
CONDITION: CLOSE > REF_CLOSE_1 AND REF_CLOSE_1 > REF_CLOSE_2 AND REF_CLOSE_2 > REF_CLOSE_3;
选股筛选公式:
MACD > 0 AND PE > 0 AND CONDITION;
排序公式:
默认按照个股市值排序,这里不做展示。
Python代码参考
以下为python的选股筛选代码、排序代码,仅供参考:
import akshare as ak
# 获取股票列表并计算选股筛选条件
data = ak.stock_zh_a_daily(symbol="", adjust="qfq").reset_index()
condition = (data['macd'] > 0) & (data['pe_ttm'] > 0)
close_ref_1 = data.groupby('ts_code')['close'].apply(lambda x: x.shift(1))
close_ref_2 = data.groupby('ts_code')['close'].apply(lambda x: x.shift(2))
close_ref_3 = data.groupby('ts_code')['close'].apply(lambda x: x.shift(3))
condition &= (data['close'] > close_ref_1) & (close_ref_1 > close_ref_2) & (close_ref_2 > close_ref_3)
result = data[condition]
# 按照市值排序
result_sorted = result.sort_values(by=['circ_mv'], ascending=False).head(5)
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


