public IRuleResult RuleExecuted(Solbot solbot) { var result = solbot.Communication.Buy.PriceReached && solbot.Actions.BoughtPrice == 0; if (result) { solbot.Actions.BoughtPrice = solbot.Communication.Price.Current; result = true; _pushOverNotificationService.Send( LogGenerator.NotificationTitle(WorkingType.TEST, MarketOrder, solbot.Strategy.AvailableStrategy.Symbol), LogGenerator.NotificationMessage( solbot.Communication.Average.Current, solbot.Communication.Price.Current, solbot.Communication.Buy.Change)); } return(new MarketRuleResult() { Success = result, Message = result ? LogGenerator.ExecuteMarketSuccess(MarketOrder, solbot.Actions.BoughtPrice) : LogGenerator.ExecuteMarketError(MarketOrder, solbot.Actions.BoughtPrice) }); }