public override void UpdatePriceModel(Market bazaar, String act, String good, bool success, double unitPrice = 0) { List <double> observed_trades; if (success) { //Add this to my list of observed trades observed_trades = ObservedTradingRange[good]; observed_trades.Add(unitPrice); } var publicMeanPrice = bazaar.GetAverageHistoricalPrice(good, 1); }
/********PROTECTED************/ protected double DeterminePurchaseQuantity(Market bazaar, string commodity) { var mean = bazaar.GetAverageHistoricalPrice(commodity, lookback); //double var tradingRange = observeTradingRange(commodity, 10); //Point if (tradingRange != null) { var favorability = Quick.PositionInRange(mean, tradingRange.x, tradingRange.y); //double favorability = 1 - favorability; //do 1 - favorability to see how close we are to the low end double amountToBuy = Math.Round(favorability * Inventory.Shortage(commodity)); //double if (amountToBuy < 1) { amountToBuy = 1; } return(amountToBuy); } return(0); }