From b6058edfc6bcbcfb13b68c18190be709d180453f Mon Sep 17 00:00:00 2001 From: "lin.dongzhao" <542698096@qq.com> Date: Tue, 10 Sep 2024 17:06:28 +0800 Subject: [PATCH] revise matcher validate --- rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py b/rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py index 9af13dd34..9852db31b 100644 --- a/rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py +++ b/rqalpha/mod/rqalpha_mod_sys_simulation/matcher.py @@ -210,7 +210,7 @@ def match(self, account, order, open_auction): trade._commission = self._env.get_trade_commission(trade) trade._tax = self._env.get_trade_tax(trade) - if order.side == SIDE.BUY and self._slippage_decider.decider.rate != 0: + if order.position_effect == POSITION_EFFECT.OPEN and self._slippage_decider.decider.rate != 0: # 标的价格经过滑点处理后,账户资金可能不够买入,需要进行验证 cost_money = instrument.calc_cash_occupation(price, order.quantity, order.position_direction, order.trading_datetime.date()) cost_money += trade.transaction_cost @@ -467,7 +467,7 @@ def match(self, account, order, open_auction): # type: (Account, Order, bool) - trade._commission = self._env.get_trade_commission(trade) trade._tax = self._env.get_trade_tax(trade) - if order.side == SIDE.BUY and self._slippage_decider.decider.rate != 0: + if order.position_effect == POSITION_EFFECT.OPEN and self._slippage_decider.decider.rate != 0: cost_money = instrument.calc_cash_occupation(price, order.quantity, order.position_direction, order.trading_datetime.date()) cost_money += trade.transaction_cost if cost_money > account.cash + order.init_frozen_cash: