фикс блокировок
test / deploy_trader_prod (push) Failing after 30s Details

dev
vlad zverzhkhovskiy 2025-09-17 17:18:02 +03:00
parent a802097fb5
commit f36452001e
1 changed files with 2 additions and 2 deletions

View File

@ -691,7 +691,7 @@ namespace KLHZ.Trader.Core.Exchange.Services
if (acc.Value.Assets.TryGetValue(message.Figi, out var asset)) if (acc.Value.Assets.TryGetValue(message.Figi, out var asset))
{ {
var order = acc.Value.Orders.Values.FirstOrDefault(o => o.Figi == message.Figi && o.Direction == DealDirection.Sell); var order = acc.Value.Orders.Values.FirstOrDefault(o => o.Figi == message.Figi && o.Direction == DealDirection.Sell);
if (order == null && asset.Count > 0) if (order == null && asset.Count > 0 && await asset.Lock(TimeSpan.FromSeconds(60))
{ {
var command = new TradeCommand() var command = new TradeCommand()
{ {
@ -829,7 +829,7 @@ namespace KLHZ.Trader.Core.Exchange.Services
if (acc.Value.Assets.TryGetValue(message.Figi, out var asset)) if (acc.Value.Assets.TryGetValue(message.Figi, out var asset))
{ {
var order = acc.Value.Orders.Values.FirstOrDefault(o => o.Figi == message.Figi && o.Direction == DealDirection.Buy); var order = acc.Value.Orders.Values.FirstOrDefault(o => o.Figi == message.Figi && o.Direction == DealDirection.Buy);
if (order == null && asset.Count < 0) if (order == null && asset.Count < 0 && await asset.Lock(TimeSpan.FromSeconds(60)))
{ {
var command = new TradeCommand() var command = new TradeCommand()
{ {