通达信选股量化迁移-非涨停、换手率大于7%但小于10%m股票、2天前涨跌幅排列

用户头像神盾局量子研究部
2023-10-30 发布

问财量化选股策略逻辑

  • 非涨停: 股票没有发生连续两天的涨停或跌停,避免因异常价格波动影响分析结果。
  • 换手率大于7%但小于10%m: 表示股票交易活跃,有一定的流动性,但也不是过于激进。
  • 2天前涨跌幅排列: 选取在过去两天中上涨幅度较大的股票,这类股票可能存在较强的上涨动力。

选股逻辑分析

以上三个条件分别从市场表现、流动性、潜在上涨动力三个方面进行筛选,形成了一套相对较为全面和合理的选股逻辑。

然而,这个策略也存在一些风险:

  • 可能会遗漏某些具有潜力但涨幅不大的股票。因为该策略主要考虑的是短期涨幅较大的股票,可能会忽略掉那些短期内涨幅较小但长期走势良好的股票。
  • 如果市场整体行情较差,即使满足上述条件的股票也可能表现不佳。因为市场的整体走势会影响到单个股票的表现。

为了优化此策略,可以考虑增加更多的筛选条件,如盈利能力、估值水平等,以期更准确地找出有投资价值的股票。

最终的选股逻辑

经过综合考虑,我们可以制定以下的选股策略:

  • 股票在最近5个交易日内没有发生过连续两天的涨停或跌停。
  • 换手率大于7%但小于10%,表明股票有一定的流动性。
  • 在过去20个交易日内,上涨幅度位于前30%的股票。

常见问题

  1. "如何计算换手率?"
    答案:换手率=成交量/流通股本×100%

  2. "为什么只选取过去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亿' #选股语句。

模板如何使用?

点击页面下方的复制按钮,复制到自己的账户即可使用模板进行回测。
收益&风险
源码

评论

需要帮助?

试试AI小助手吧