通达信选股公式迁移-涨幅〈0、近五个交易日有单日涨幅大于5%、去掉新股与次新股

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

问财量化选股策略逻辑

根据上述要求,我们可以使用Python的pandas库来实现这个选股策略。首先,我们需要获取所有满足条件的股票,然后筛选出近五个交易日中有单日涨幅大于5%的股票。

import pandas as pd

# 获取所有的股票数据
df = pd.read_csv('stock_data.csv')

# 满足条件的股票
selected_stocks = df[(df['涨跌幅'] < 0) & (df['近五个交易日单日涨幅大于5%'])]

# 选择新股与次新股
new_stocks = selected_stocks[selected_stocks['上市日期'] == '2021年以后']

在这个策略中,最大的风险是可能存在数据错误或者计算错误,这可能会导致筛选出不符合要求的股票。为了优化这个策略,我们可以在获取股票数据时进行严格的验证和清洗,例如检查是否有缺失值、异常值等,并且在计算涨跌幅时采用更精确的方法,例如使用移动平均法代替简单的比较操作。

如何优化?

为了优化这个策略,我们可以通过以下方式来提高其准确性和效率:

  • 使用更复杂的筛选条件:除了涨跌幅和近五个交易日单日涨幅之外,还可以考虑其他因素,如市盈率、市净率、换手率等。
  • 使用更高效的数据处理方法:如果数据量很大,可以考虑使用分布式计算框架,如Apache Spark或Hadoop,来加速计算过程。
  • 对于频繁更新的数据,可以考虑实时计算,而不是等到每天晚上才进行一次计算。

最终的选股逻辑

综合以上优化建议,我们可以得到如下完整的选股策略:

import pandas as pd

# 获取所有的股票数据
df = pd.read_csv('stock_data.csv')

# 满足条件的股票
selected_stocks = df[(df['涨跌幅'] < 0) & 
                    (df['近五个交易日单日涨幅大于5%']) &
                    (df['市盈率'] < 30) & 
                    (df['市净率'] > 1)]

# 选择新股与次新股
new_stocks = selected_stocks[selected_stocks['上市日期'] == '2021年以后']

# 输出结果
print(new_stocks)

常见问题

Q: 为什么需要去除新股与次新股?
A: 因

如何进行量化策略实盘?

请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

select_sentence = '市值小于100亿' #选股语句。

模板如何使用?

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

评论