From 71dbab6a57f32f7445d8672d144195951b90b4d4 Mon Sep 17 00:00:00 2001 From: Josue Nina Date: Wed, 29 Jan 2025 10:58:08 -0500 Subject: [PATCH] Refactor validation to check buying power only for non-ComboLeg update orders --- Algorithm.CSharp/ComboLegLimitOrderAlgorithm.cs | 2 +- .../BrokerageTransactionHandler.cs | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Algorithm.CSharp/ComboLegLimitOrderAlgorithm.cs b/Algorithm.CSharp/ComboLegLimitOrderAlgorithm.cs index 1910796e4809..54576d6196ad 100644 --- a/Algorithm.CSharp/ComboLegLimitOrderAlgorithm.cs +++ b/Algorithm.CSharp/ComboLegLimitOrderAlgorithm.cs @@ -113,7 +113,7 @@ public override void OnEndOfAlgorithm() {"Estimated Strategy Capacity", "$58000.00"}, {"Lowest Capacity Asset", "GOOCV W78ZERHAOVVQ|GOOCV VP83T1ZUHROL"}, {"Portfolio Turnover", "30.22%"}, - {"OrderListHash", "1c2fd5b4c3bd8568bf19e64697d7d1b8"} + {"OrderListHash", "ab6171073cd96df46fd9d7bce62f5594"} }; } } diff --git a/Engine/TransactionHandlers/BrokerageTransactionHandler.cs b/Engine/TransactionHandlers/BrokerageTransactionHandler.cs index fea73103e3a2..14636206e32c 100644 --- a/Engine/TransactionHandlers/BrokerageTransactionHandler.cs +++ b/Engine/TransactionHandlers/BrokerageTransactionHandler.cs @@ -948,11 +948,14 @@ private OrderResponse HandleUpdateOrderRequest(UpdateOrderRequest request) ticket.SetOrder(order); - // check to see if we have enough money to place the order - var validationResult = ValidateSufficientBuyingPowerForOrders(order, request); - if (validationResult != null) + // If the order is not part of a ComboLegLimit update, validate sufficient buying power + if (order.Type != OrderType.ComboLegLimit) { - return validationResult; + var validationResult = ValidateSufficientBuyingPowerForOrders(order, request); + if (validationResult != null) + { + return validationResult; + } } bool orderUpdated;