问财量化选股策略逻辑
本选股策略选取振幅大于1、下午大单净流入和近一个月内有过涨停的股票作为选股标准,选出的个股视为投资标的。
选股逻辑分析
本选股策略主要从技术面和市场情况方面考虑,选取振幅大于1、下午大单净流入和近一个月内有过涨停的股票作为选股标准,以发现近期市场热度高、股票短期动能较强的标的。振幅大于1的股票具有一定波动性,下午大单净流入较多的股票证明有投资者大量介入,近一个月内有过涨停的股票则意味着短期内已经有较明显的上涨趋势。综合考虑选取投资标的。
有何风险?
本选股策略存在一定的风险。首先,该策略选股条件较为简单,存在模型单一的问题,未能全面考虑公司基本面和行业趋势等因素。其次,选股排名可能被过多基于该规则的投资者依据而过度买入,导致市场泡沫出现。最后,市场行情可能会随着经济、政策等多重因素而变化,单纯依靠技术面指标并不能保证永久有效。
如何优化?
考虑引入更多因素来全面评估股票价值,如市盈率、市净率、ROE、行业趋势等指标,其中市盈率和市净率能够反映公司基本面和估值,ROE能够反映公司运营质量,行业趋势能够开拓更多的投资方向。同时可以继续根据市场情况进行研究,将近期市场预期、宏观经济情况等因素纳入选股考虑。结合技术面和市场情况,更全面且准确地找出投资标的。
最终的选股逻辑
本选股策略通过多个角度,综合考虑选取波动性大、资金流入情况好、近一个月内有过涨停的个股作为投资标的,以期获得更好的收益。在此基础上,可以继续加入其他因素和补充指标,进行更为全面、准确的选股。
同花顺指标公式代码参考
振幅大于1:
(HIGH - LOW) / PRE_CLOSE > 0.01
下午大单净流入:
C - O > (0.005 * V - MA(V, 3)) / 10000
最近一个月内有过涨停:
COUNT(REF(HIGH,1) == REF(LIMITUP,1),20) > 0
python代码参考
# 引入Tushare库
import tushare as ts
# 连接Tushare库
pro = ts.pro_api()
# 查询所有股票的数据
all_data = pro.stock_basic()
# 根据选股条件进行筛选
selected_stocks = []
for ts_code in all_data["ts_code"]:
# 获取股票数据
k_data = pro.daily(ts_code=ts_code, trade_date='2022-01-25')
if ts_code.startswith(("00", "30")) and \
(k_data.high - k_data.low).mean() / k_data.close.mean() > 0.01 and \
(k_data.close - k_data.open > ((0.005 * k_data.vol - pd.Series(k_data.vol).rolling(3).mean()) / 10000)).values[-1] and \
(pd.Series(k_data.high).rolling(21).apply(lambda x: (x == pd.Series(k_data.high).rolling(21).max()).any() and (x == pd.Series(k_data.high).rolling(21).max()).sum() == 1)).values[-1]:
selected_stocks.append(ts_code)
# 输出选中的股票
print(selected_stocks)
选股策略通过Tushare库获取股票数据并进行筛选,使用rolling函数来实现选股筛选条件的计算。在计算近一个月内有过涨停的条件中,使用rolling函数实现一个计数器进行计算,确保选取的股票有过一次涨停。对于选股策略的后续优化,建议加入更多因素和补充指标,在技术面的基础上充分考虑公司基本面和行业趋势。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
