问财量化选股策略逻辑
- 非涨停: 股票没有发生连续两天的涨停或跌停,避免因异常价格波动影响分析结果。
- 换手率大于7%但小于10%m: 表示股票交易活跃,有一定的流动性,但也不是过于激进。
- 2天前涨跌幅排列: 选取在过去两天中上涨幅度较大的股票,这类股票可能存在较强的上涨动力。
选股逻辑分析
以上三个条件分别从市场表现、流动性、潜在上涨动力三个方面进行筛选,形成了一套相对较为全面和合理的选股逻辑。
然而,这个策略也存在一些风险:
- 可能会遗漏某些具有潜力但涨幅不大的股票。因为该策略主要考虑的是短期涨幅较大的股票,可能会忽略掉那些短期内涨幅较小但长期走势良好的股票。
- 如果市场整体行情较差,即使满足上述条件的股票也可能表现不佳。因为市场的整体走势会影响到单个股票的表现。
为了优化此策略,可以考虑增加更多的筛选条件,如盈利能力、估值水平等,以期更准确地找出有投资价值的股票。
最终的选股逻辑
经过综合考虑,我们可以制定以下的选股策略:
- 股票在最近5个交易日内没有发生过连续两天的涨停或跌停。
- 换手率大于7%但小于10%,表明股票有一定的流动性。
- 在过去20个交易日内,上涨幅度位于前30%的股票。
常见问题
-
"如何计算换手率?"
答案:换手率=成交量/流通股本×100% -
"为什么只选取过去20个交易日的数据?"
答案:这样可以避免短期数据的干扰,更准确地反映出股票的长期趋势。
python代码参考
import pandas as pd
from pandas_datareader import data as pdr
# 获取所有股票的换手率数据
stock_df = pdr.get_data_yahoo('all_stocks', start='2020-01-01', end='2021-12-31')
stock_df['volume'] = stock_df['Volume']
stock_df['turnover_rate'] = stock_df['volume']/stock_df['AverageDailyVolume']
stock_df.sort_values(by=['turnover_rate'], ascending=False).head(10)
这段代码使用
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击页面下方的复制按钮,复制到自己的账户即可使用模板进行回测。