From 0583b6d0fb540eea17146c64a0e126fe32931ccc Mon Sep 17 00:00:00 2001 From: romysaputrasihananda Date: Wed, 10 Jun 2026 18:25:27 +0700 Subject: [PATCH] fix(client): send required dummy fields in cancel() for bridge compat Bridge schema requires volume/type/price even for TRADE_ACTION_REMOVE. MT5 ignores these fields when action=8; send minimal valid values. Co-Authored-By: Claude Sonnet 4.6 --- crates/mt5-client/src/types.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/crates/mt5-client/src/types.rs b/crates/mt5-client/src/types.rs index e4a6cb6..8498964 100644 --- a/crates/mt5-client/src/types.rs +++ b/crates/mt5-client/src/types.rs @@ -68,13 +68,14 @@ impl TradeRequest { } pub fn cancel(symbol: impl Into, ticket: u64) -> Self { - // TRADE_ACTION_REMOVE = 8 + // TRADE_ACTION_REMOVE = 8 — bridge requires volume/type/price even though + // MT5 ignores them for remove actions; send minimal valid values. Self { action: 8, symbol: symbol.into(), - volume: None, - order_type: None, - price: None, + volume: Some(0.01), + order_type: Some(0), + price: Some(0.0), sl: None, tp: None, magic: None,