问财量化选股策略逻辑
选股条件为:振幅大于1、按今日竞价金额排序前5、非ST(10点之前选股票)、五部涨停战法。
选股逻辑分析
该选股逻辑结合了技术面和基本面因素,选取振幅大、竞价金额高的非ST股票,同时考虑短期涨势,通过五部涨停来筛选成长性好的股票。
有何风险?
该选股逻辑可能会忽略公司的财务状况等因素,同时,短期涨幅过大容易造成套牢。
如何优化?
除了以上考虑因素外,可以加入其他基本面因素,如公司盈利情况、估值水平等,进一步筛选出质量更好的股票。
最终的选股逻辑
选取振幅大、竞价金额高的非ST股票,并结合多种基本面因素进行筛选,最终在满足五部涨停战法的条件下,选出短期涨势强劲的成长性好的股票。
同花顺指标公式代码参考
振幅大于1:AMO > 1
今日竞价金额排名前5:REF(SORT_AMOUNT, 0) <= 5
非ST:(MARKETTYPE <> 2) AND (EXCLUDE_ST <> 1) AND (ST <> 1)
五部涨停战法:
UPPER_SHADOW > REF(UPPER_SHADOW, 1) AND
REF(UPPER_SHADOW, 1) > REF(UPPER_SHADOW, 2) AND
REF(UPPER_SHADOW, 2) > REF(UPPER_SHADOW, 3) AND
REF(UPPER_SHADOW, 3) > REF(UPPER_SHADOW, 4) AND
REF(UPPER_SHADOW, 4) > REF(UPPER_SHADOW, 5)
以上条件取AND即可。
python代码参考
import tushare as ts
def get_selected_stocks(n):
data = ts.get_today_all()
data = data[data['open'] != 0] # 剔除停牌股票
condition1 = REF(SORT_AMOUNT, 0) <= 5 # 今日竞价金额排名前5
condition2 = data['amplitude'] > 1 # 振幅大于1
condition3 = (data['markettype'] != 2) & (data['exclude_st'] != 1) & (data['st'] != 1) # 非ST
condition4 = (data['upper_shadow'] > REF(data['upper_shadow'], 1)) & (REF(data['upper_shadow'], 1) > REF(data['upper_shadow'], 2)) & (REF(data['upper_shadow'], 2) > REF(data['upper_shadow'], 3)) & (REF(data['upper_shadow'], 3) > REF(data['upper_shadow'], 4)) & (REF(data['upper_shadow'], 4) > REF(data['upper_shadow'], 5)) # 五部涨停战法
selected_stocks = data[condition1 & condition2 & condition3 & condition4].index.values
return selected_stocks[:n]
result = get_selected_stocks(5)
print(result)
注:以上代码仅供参考,实际选股应结合具体情况进行适度修改。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
