internal virtual void ClosePosition() { for (System.Collections.IEnumerator it = _agents.GetEnumerator(); it.MoveNext();) { AbstractStrategy trader = (AbstractStrategy)it.Current; if (trader.GetPosition(trader._instrument.Name) != 0) { trader.AddQuantityOrder(trader._instrument.Name, -trader.GetPosition(trader._instrument.Name)); } } }
private void UpdateStatistics() { for (int i = 0; i < _traderAgent.Agents.Count; i++) { AbstractStrategy abstracttrader = (AbstractStrategy)_traderAgent.Agents[i]; ((Statistics)_traderstats[abstracttrader]).Update(abstracttrader.GetPosition(""), abstracttrader.GetCash(), abstracttrader.GetValue()); } }