这种通过现在的名字来过滤之前的股票,不就相当于使用了未来函数吗?也算是幸存者偏差吧,代码如下:
# 过滤ST及其他具有退市标签的股票
def filter_st_stock(stock_list):
current_data = get_current_data()
return [stock for stock in stock_list
if not current_data[stock].is_st
and 'ST' not in current_data[stock].name
and '*' not in current_data[stock].name
and '退' not in current_data[stock].name]
另外,把股票池稍微换一下就不行了,如果改成创业板,回测结果差的一塌糊涂,这难道不是过拟合?