问财量化选股策略逻辑
根据振幅大于1,三个技术指标同时金叉以及当日收益大于0进行选股操作。
选股逻辑分析
此选股逻辑同样基于技术指标的分析,加入了当日股票收益作为考虑因素。通过结合高振幅、技术指标交叉以及股票收益的情况,筛选出短期涨势较强、风险较小的股票。
有何风险?
此选股逻辑同样过度依赖技术指标,且忽略了个股基本面分析等因素,存在选股局限性和风险。此外,当日收益率可能对潜在涨势不足的股票进行误判。
如何优化?
在技术指标基础上,加入一些基本面分析的因素,如股息率、市盈率等,并且通过多维数据分析,综合考虑过去一段时间的价格走势、公司业绩等因素进行选股,提高选股的准确性和有效性。
最终的选股逻辑
结合振幅大于1,三个技术指标同时金叉以及当日收益大于0的条件,并通过多维数据分析和业内经验,选出具有良好前景的股票。
同花顺指标公式代码参考
三条MA金叉:CROSS(MA(CLOSE, N1), MA(CLOSE, N2)) & CROSS(MA(CLOSE, N2), MA(CLOSE, N3))
振幅大于1:AMO>1
当日收益大于0:((CLOSE - REF(CLOSE,1)) / REF(CLOSE, 1)) > 0
选股公式:CROSS(MA(CLOSE, N1), MA(CLOSE, N2)) & CROSS(MA(CLOSE, N2), MA(CLOSE, N3)) & (AMO>1) & (((CLOSE - REF(CLOSE,1)) / REF(CLOSE, 1)) > 0)
python代码参考
import tushare as ts
import talib
def get_selected_stocks(n):
data = ts.get_today_all()
ma20 = talib.MA(data['trade'], timeperiod=20)
ma120 = talib.MA(data['trade'], timeperiod=120)
amplitude = (data['high'] - data['low']) / data['low']
return_rate = (data['close'] - data['pre_close']) / data['pre_close']
condition1 = talib.CROSS(data['close'], talib.MA(data['close'], timeperiod=5)) & talib.CROSS(talib.MA(data['close'], timeperiod=5), talib.MA(data['close'], timeperiod=10)) & talib.CROSS(talib.MA(data['close'], timeperiod=10), talib.MA(data['close'], timeperiod=20))
condition2 = amplitude > 1
condition3 = return_rate > 0
selected_data = data[condition1 & condition2 & condition3]
selected_data = selected_data.sort_values(by='trade', ascending=False).iloc[:n, :]
selected_stocks = list(selected_data.loc[:, 'code'])
return selected_stocks
result = get_selected_stocks(5)
print(result)
注:以上代码仅供参考,实际选股应结合具体情况进行适度修改。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
