比如买入套利开仓买a 一手,卖b一手,当平仓时,策略那里虽说是平仓,但实际algo算法那里下单的还是开仓,变成开仓卖a一手,买b一手,这样不就会越积越多,资金占用越来越多,咋获益啊?
比如买入套利开仓买a 一手,卖b一手,当平仓时,策略那里虽说是平仓,但实际algo算法那里下单的还是开仓,变成开仓卖a一手,买b一手,这样不就会越积越多,资金占用越来越多,咋获益啊?
你启动算法的时候是不是lock传为True了
xiaohe wrote:
你启动算法的时候是不是lock传为True了
没有,默认的lock是false,我看算法那里的send_order里offset都是open啊,根本就没有close
def send_order(
self,
algo: SpreadAlgoTemplate,
vt_symbol: str,
price: float,
volume: float,
direction: Direction,
lock: bool,
fak: bool
) -> List[str]:
""""""# 创建原始委托请求 contract: Optional[ContractData] = self.main_engine.get_contract(vt_symbol)
if fak:
order_type: OrderType = OrderType.FAK
else:
order_type: OrderType = OrderType.LIMIT
original_req: OrderRequest = OrderRequest(
symbol=contract.symbol,
exchange=contract.exchange,
direction=direction,
offset=Offset.OPEN, #默认offset一直是开仓
type=order_type,
price=price,
volume=volume,
reference=f"{APP_NAME}_{algo.spread_name}"
coverter里面会转换的
xiaohe wrote:
coverter里面会转换的
我懂了,原来净仓是有仓位平仓,没仓位开仓的意思