问财量化选股策略逻辑
- 至少5根均线重合的股票
- 现量大于1万手
- 高开
- 换手率3%-12%
选股逻辑分析
- 该策略通过寻找至少5根均线重合的股票来筛选出具有较强趋势性的股票。
- 股票的现量大于1万手,表明该股票具有一定的成交量,有利于后续的交易。
- 高开表示股票在开盘时具有较高的价格,有可能是受到市场资金的追捧。
- 换手率3%-12%表示股票的换手率处于合理的范围内,表明市场对该股票的关注度适中。
有何风险?
- 该策略可能无法准确预测股票的趋势,因为仅仅依靠均线重合来筛选股票存在一定的局限性。
- 如果市场出现较大的波动,该策略可能会漏掉一些具有潜力的股票。
- 如果股票的成交量过低,可能会影响后续的交易。
如何优化?
- 可以结合其他技术指标,如MACD、RSI等,来更准确地预测股票的趋势。
- 可以通过调整换手率的范围来筛选出更具有潜力的股票。
- 可以通过加入其他过滤条件,如价格趋势、成交量等,来进一步优化策略。
最终的选股逻辑
- 选取至少5根均线重合的股票
- 股票的现量大于1万手
- 高开
- 换手率3%-12%
- 结合其他技术指标,如MACD、RSI等,预测股票的趋势
- 调整换手率的范围,筛选出更具有潜力的股票
- 加入其他过滤条件,如价格趋势、成交量等,进一步优化策略
python代码参考
import talib
def get_stock_data(symbol):
# 获取股票数据
data = yf.download(symbol, start='2021-01-01', end='2021-12-31')
# 计算均线
ma5 = talib.MA(data['close'], timeperiod=5)
ma10 = talib.MA(data['close'], timeperiod=10)
ma20 = talib.MA(data['close'], timeperiod=20)
ma50 = talib.MA(data['close'], timeperiod=50)
ma200 = talib.MA(data['close'], timeperiod=200)
# 统计均线重合数量
count = 0
for i in range(5, 21, 2):
if ma5[i] == ma10[i] == ma20[i] == ma50[i] == ma200[i]:
count += 1
# 获取其他数据
open_price = data['open']
volume = data['volume']
# 判断是否符合策略要求
if count >= 5 and volume > 10000 and open_price > data['close'].rolling(window=1).mean() and volume > data['volume'].rolling(window=1).mean() * 0.03 and volume < data['volume'].rolling(window=1).mean() * 0.12:
return data
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


