diff --git a/KLHZ.Trader.Core/Exchange/Services/Trader.cs b/KLHZ.Trader.Core/Exchange/Services/Trader.cs index 3d5b989..65bd22a 100644 --- a/KLHZ.Trader.Core/Exchange/Services/Trader.cs +++ b/KLHZ.Trader.Core/Exchange/Services/Trader.cs @@ -454,7 +454,6 @@ namespace KLHZ.Trader.Core.Exchange.Services var mavTask = CheckByWindowAverageMean(data, message, windowMaxSize, -1, 2m); var mavTaskEnds = CheckByWindowAverageMeanNolog(data, message, windowMaxSize, -1, 1m); - var mavTaskShorts = CheckByWindowAverageMeanForShotrs(data, message, windowMaxSize); var ltTask = CheckByLocalTrends(data, message, windowMaxSize); var areasTask = GetAreasRelation(data, message); @@ -567,48 +566,6 @@ namespace KLHZ.Trader.Core.Exchange.Services await LogDeclision(DeclisionTradeAction.CloseLong, message); } - if ((mavTaskShorts.Result & TradingEvent.UptrendEnd) == TradingEvent.UptrendEnd) - { - if (trendTask.Result.HasValue && trendTask.Result.Value < -4) - { - if (!message.IsHistoricalData) - { - var accounts = _tradeDataProvider.Accounts - .Where(a => !a.Value.Assets.ContainsKey(message.Figi)) - .ToArray(); - var loggedDeclisions = 0; - foreach (var acc in accounts) - { - if (BotModeSwitcher.CanSell() && await acc.Value.Lock(TimeSpan.FromSeconds(60))) - { - if (RandomNumberGenerator.GetInt32(100) > 50) - { - var command = new TradeCommand() - { - AccountId = acc.Value.AccountId, - Figi = message.Figi, - CommandType = Contracts.Messaging.Dtos.Enums.TradeCommandType.MarketSell, - Count = 1, - RecomendPrice = null, - EnableMargin = true, - ExchangeObject = acc.Value, - }; - await _dataBus.Broadcast(command); - _logger.LogWarning("Открытие шорта {figi}! id команды {commandId}. Направление сделки: {dir}; Количество активов: {count}; Разрешена ли маржиналка: {margin}", - message.Figi, command.CommandId, command.CommandType, command.Count, command.EnableMargin); - if (loggedDeclisions == 0) - { - await LogDeclision(DeclisionTradeAction.OpenShortReal, message); - loggedDeclisions++; - } - } - } - } - } - await LogDeclision(DeclisionTradeAction.OpenShort, message); - } - } - if ((res & TradingEvent.DowntrendEnd) == TradingEvent.DowntrendEnd) { if (!ShortClosingStops.ContainsKey(message.Figi))