public MarketSimulationManager(IConnectionFactory connectionFactory,
                                MarketSimulationProvider simulationProvider,
                                DefinitionResolver definitionResolver)
     : base(connectionFactory)
 {
     _simulationProvider = simulationProvider;
     _definitionResolver = definitionResolver;
 }
        public string ToString(MarketSimulationProvider simulationProvider, int maxNameLength)
        {
            var definition      = MyDefinitionManager.Static.GetDefinition(MyDefinitionId);
            var orderQuantity   = Quantity == -1 ? "Infinite" : (Quantity + "x").PadLeft(8);
            var valueDifference =
                Price - simulationProvider.GetOrCalculateUniversalItemValue(MyDefinitionId);

            return
                ($"{definition.DisplayNameText.PadRight(maxNameLength)} {orderQuantity}: {Utilities.FriendlyFormatCurrency(Price)} (Avg: {Utilities.FriendlyFormatCurrency(valueDifference)})");
        }