问财量化选股策略逻辑
本选股策略在日线上选取以下股票:振幅大于1、500日内至少2次涨停、现量大于1万手、高开。
选股逻辑分析
本选股策略除了振幅和涨停次数等技术指标外,加入了现量和高开的因素。现量是指当前股票的成交量,高开是指股价高于前一日收盘价的开盘价。这两个指标能够更精准地判断当前股市趋势,同时与技术指标结合,可以更好地筛选出“真”热门股票。
有何风险?
该选股策略同样较为注重近期表现,难以考虑到长期基本面因素。同时,现量过于注重短期成交情况,可能较容易被大户资金操纵。此外,高开过于注重前一天收盘价,无法有效考虑到其他市场变化。同时,过度依赖技术指标容易产生虚假信号。
如何优化?
可以考虑相对较长周期的基本面数据和财务数据等因素进行筛选,再同技术指标进行综合分析。同时,可以考虑引入其他市场指数等信息进行分析。此外,需要尝试针对股票民间流言等信息进行筛选和评估,以便更为精准地判断股票热门程度。
最终的选股逻辑
选取振幅大于1、500日内至少2次涨停、现量大于1万手、高开的股票。
同花顺指标公式代码参考
- 振幅公式:(high-low)/close
通达信代码:(HHV(HIGH,1)-LLV(LOW,1))/REF(CLOSE,1) - 涨停次数公式:计算500日内涨停次数,使用rolling()和sum()函数求和
通达信代码:(HIGH/LLV(LOW,1)>1.099).SUM(500) - 现量公式:计算当天成交量是否大于1万手
通达信代码:VOL>10000 - 高开公式:计算当天开盘价是否高于前一天收盘价
通达信代码:OPEN>REF(CLOSE,1) - 布林带上轨公式:MA(CLOSE, 20) + 2 * STD(CLOSE, 20)
通达信代码:MA(CLOSE, 20) + 2 * STD(CLOSE, 20) - 布林带中轨公式:MA(CLOSE, 20)
通达信代码:MA(CLOSE, 20)
python代码参考
import tushare as ts
# 定义需要筛选的企业类型
property_list = ['证券', '银行', '保险']
# 定义振幅筛选条件
amplitude_filter = 0.01
# 定义涨停次数筛选条件
rise_stop_filter = 2
# 定义现量和高开筛选条件
vol_filter = 10000
high_open_filter = 1
# 获取基本面数据
data = ts.get_stock_basics()
# 筛选振幅满足条件的股票
selected_stocks = data[data['high'] - data['low'] >= amplitude_filter * data['close']]
# 筛选涨停次数满足条件的股票
selected_stocks = selected_stocks[(selected_stocks['high'] / selected_stocks['low'].shift(1) > 1.099).rolling(500).sum() >= rise_stop_filter]
# 筛选现量和高开满足条件的股票
selected_stocks = selected_stocks[(selected_stocks['volume'] >= vol_filter) & (selected_stocks['open'] > selected_stocks['close'].shift(1) * high_open_filter)]
# 输出选中的股票
print(selected_stocks.index.tolist())
以上代码仅供参考,具体实现方法可以根据投资者需要和市场情况进行调整。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
