问财量化选股策略逻辑
选取MACD强势、价格低于12元、连续5年ROE大于15%的股票作为投资标的。该策略主要关注公司的盈利能力,结合技术面指标,可以减少投资风险,同时可以提高选股的精准度。
选股逻辑分析
选股逻辑主要关注公司的盈利能力和技术面指标。其中,连续5年ROE大于15%是选股的主要条件,可以直接反映公司盈利水平,可以较为精准地筛选出优质的标的股票。MACD作为较为常用的技术面指标,可以筛选出较为强势的标的,价格低于12元可以减少风险。
有何风险?
该选股策略仍然可能会忽略了一些其他的重要因素,如行业因素、资产负债比率等。同时,ROE只是一种盈利能力的指标,缺乏全面性,需要进一步谨慎考虑。
如何优化?
可以增加行业因素、资产负债比率等因素进行综合判断,以更加全面地筛选出标的股票。同时,考虑增加其他的技术面指标和市场情绪指标进行筛选,以提高精准度。在选股时引入风险控制策略,以减少风险。
最终的选股逻辑
选取MACD强势、价格低于12元、连续5年ROE大于15%的股票作为投资标的。
同花顺指标公式代码参考
// 连续5年ROE大于15%
ROE := (ROE1 >= 15) AND (ROE2 >= 15) AND (ROE3 >= 15) AND (ROE4 >= 15) AND (ROE5 >= 15);
// MACD强势、价格低于12元
MACD(12,26,9) > 0 AND CLOSE < 12 AND ROE;
// 以上代码表示MACD强势、价格低于12元、连续5年ROE大于15%的股票符合选股要求
Python代码参考
from datetime import datetime, timedelta
end_date = datetime.now().strftime("%Y-%m-%d")
start_date = (datetime.now() - timedelta(days=1825)).strftime("%Y-%m-%d")
df = get_history_data(stock_code, start_date=start_date, end_date=end_date, ktype='D')
df['DIFF'], df['DEA'], df['MACD'] = ta.MACD(df['close'], fastperiod=12, slowperiod=26, signalperiod=9)
df['ROE_1'] = get_fundamentals(query(valuation, indicator.roe).filter(valuation.code==stock_code, indicator.date==datetime.now().date() - timedelta(days=365)))
df['ROE_2'] = get_fundamentals(query(valuation, indicator.roe).filter(valuation.code==stock_code, indicator.date==datetime.now().date() - timedelta(days=365*2)))
df['ROE_3'] = get_fundamentals(query(valuation, indicator.roe).filter(valuation.code==stock_code, indicator.date==datetime.now().date() - timedelta(days=365*3)))
df['ROE_4'] = get_fundamentals(query(valuation, indicator.roe).filter(valuation.code==stock_code, indicator.date==datetime.now().date() - timedelta(days=365*4)))
df['ROE_5'] = get_fundamentals(query(valuation, indicator.roe).filter(valuation.code==stock_code, indicator.date==datetime.now().date() - timedelta(days=365*5)))
df = df[(df['close'] < 12) & (df['MACD'] > 0) & (df['ROE_1'] >= 15) & (df['ROE_2'] >= 15) & (df['ROE_3'] >= 15) & (df['ROE_4'] >= 15) & (df['ROE_5'] >= 15)]
df = df.sort_values(by='hot', ascending=False)
print("Selected:", list(df['name']))
选股所需的MACD和价格可以参考上文公式中的设定,ROE可以通过获取公司基本面数据进行计算。在Python代码中,选出的标的股票按个股热度从大到小排序,并使用list输出选出的股票名称。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。


