Bug: 修正exclued_list的筛选逻辑,先判断是否可以交易

This commit is contained in:
binz 2024-06-02 20:06:56 +08:00
parent f103ac9d1e
commit 1f6794ea41
1 changed files with 5 additions and 1 deletions

View File

@ -307,6 +307,8 @@ class Trader(Account):
# 异常强制卖出
for stock in last_position.index:
if stock in force_exclude:
if stock_status.loc[stock] in [0,2,5,7]:
continue
sell_list.append(stock)
force_sell_num = len(sell_list)
# 按照反向排名逐个卖出
@ -420,9 +422,11 @@ class Trader(Account):
# 异常强制卖出
for stock in last_margin_list:
if stock in force_exclude:
if stock_status.loc[stock] in [0,2,5,7]:
continue
sell_list.append(stock)
force_sell_num = len(sell_list)
for stock in factor.loc[last_margin_list].sort_values(ascending=self.ascending).index.values[::-1]:
if len(sell_list) >= int(max_sell_num * margin_ratio) + force_sell_num + 1:
break