Exemple #1
0
        static void Main(string[] args)
        {
            // General setup.
            StockQuoteGenerator sqGen = new StockQuoteGenerator("AMZN", 100, 100, 300, 20, 17);

            TestTraders(new StockTraderFactoryOrg(), sqGen, "Original Implementation");

            Console.WriteLine();
            Console.WriteLine("Done, press any key to close...");
            Console.ReadKey();
        }
Exemple #2
0
        public TestStrat()
        {
            LowQuote   = 100;
            HighQuote  = 300;
            MaxChange  = 20;
            NoOfQuotes = 100;
            Seed       = 17;

            InitQuote  = (HighQuote - LowQuote) / 2;
            InitCash   = 1000000;
            InitStocks = 1000;

            SqGen = new StockQuoteGenerator("AMZN", NoOfQuotes, LowQuote, HighQuote, MaxChange, Seed);
            StFac = new StockTraderFactoryOrg();
        }
Exemple #3
0
        private static void TestTraders(IStockTraderFactory stFac, StockQuoteGenerator sqGen, string desc)
        {
            // Create a trade for each strategy.
            IStockTrader traderAA = stFac.CreateAggrBuyAggrSell("(Aggr, Aggr)", 1000, 200, 1000000);
            IStockTrader traderAD = stFac.CreateAggrBuyDefSell("(Aggr, Def )", 1000, 200, 1000000);
            IStockTrader traderDA = stFac.CreateDefBuyAggrSell("(Def , Aggr)", 1000, 200, 1000000);
            IStockTrader traderDD = stFac.CreateDefBuyDefSell("(Def , Def )", 1000, 200, 1000000);

            // Let each trader act out its trading strategy.
            List <IStockTrader> traders = new List <IStockTrader> {
                traderAA, traderDA, traderAD, traderDD
            };

            Console.WriteLine(desc);
            foreach (IStockTrader trader in traders)
            {
                trader.Act(sqGen.Quotes);
                Console.WriteLine(trader);
            }

            Console.WriteLine();
        }