def screen_stocks(codes): selected_stocks = [] for code in codes[:100]: # 示例仅筛选前100只股票 df = pro.daily(ts_code=code, start_date='20240101', end_date='20241231') df['MA20'] = df['close'].rolling(window=20).mean() # 计算20日均线 df['STD20'] = df['close'].rolling(window=20).std() # 计算20日标准差 df['UPPER'] = df['MA20'] + 2 * df['STD20'] # 布林带上轨 df['LOWER'] = df['MA20'] - 2 * df['STD20'] # 布林带下轨 if df.iloc[-1]['close'] > df.iloc[-1]['UPPER']: # 当前价格高于布林带上轨 selected_stocks.append(code) return selected_stocks pass
您需要登录后才能查看源码,点击登录