Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            Portfolio johnDoePortfolio    = new Portfolio("John");
            Portfolio richardRoePortfolio = new Portfolio("Richard");

            Stock hugoStock  = new Stock("Hugo", 1.50);
            Stock oswalStock = new Stock("Oswal", 0.50);

            johnDoePortfolio.AddStock(hugoStock, 10);
            johnDoePortfolio.AddStock(oswalStock, 7);

            richardRoePortfolio.AddStock(oswalStock, 15);
            richardRoePortfolio.AddStock(hugoStock, 15);

            johnDoePortfolio.print();
            richardRoePortfolio.print();

            hugoStock.Price  = 1.55;
            oswalStock.Price = 2.50;

            johnDoePortfolio.print();
            richardRoePortfolio.print();

            johnDoePortfolio.RemoveStock(oswalStock, 50);
            johnDoePortfolio.RemoveStock(oswalStock, 7);
            johnDoePortfolio.AddStock(hugoStock, 10);
            richardRoePortfolio.RemoveStock(hugoStock, 4);

            hugoStock.Price  = 1.60;
            oswalStock.Price = 3.45;

            johnDoePortfolio.print();
            richardRoePortfolio.print();
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");


            var portfolio = new Portfolio();
            var display   = new Display();

            portfolio.Attatch(display);

            List <Stock> stocks = new List <Stock>();


            for (int i = 0; i < 10; i++)
            {
                var stock = new Stock(new StockData($"TEST{i}", 10 + i));
                portfolio.AddStock(stock);
                stocks.Add(stock);
            }

            while (true)
            {
                var m      = Console.ReadLine();
                var values = m.Split(":");
                if (values.Length == 2)
                {
                    var stock = stocks.Find(s => s.Name == values[0]);
                    if (Int32.TryParse(values[1], out int numValue))
                    {
                    }
                    stock.Value = numValue;
                }
            }
        }
Ejemplo n.º 3
0
        public void AddStockTest()
        {
            AssetType assetType = AssetType.Bond;
            int       quantity  = 100;
            decimal   price     = 19.2m;

            portfolio.AddStock(assetType, price, quantity);
            Assert.IsTrue(portfolio.StocksCollections.Count == 1);
            Assert.IsTrue(portfolio.SummaryInfoCollections.Count > 0);

            Stock stock = portfolio.StocksCollections.First();

            Assert.AreEqual(stock.AssetType, assetType);
            Assert.AreEqual(stock.Price, price);
            Assert.AreEqual(stock.Quantity, quantity);
        }
Ejemplo n.º 4
0
        static void Main(string[] args)
        {
            Random random    = new Random();
            var    microsoft = new Stock.Stock(100, "Microsoft", random);
            var    google    = new Stock.Stock(150, "Google", random);
            var    vestas    = new Stock.Stock(332, "Vestas", random);

            var portfolio = new Portfolio(new PortfolioDisplay());

            portfolio.AddStock(microsoft, 50);
            portfolio.AddStock(microsoft, 150); //20000
            portfolio.AddStock(google, 120);    //18000
            portfolio.AddStock(vestas, 11);     //3652

            //portfolio.RemoveStock(google); // Removes the google stock again

            while (Console.ReadKey().KeyChar != 'q') // Press q to exit
            {
            }
        }
Ejemplo n.º 5
0
        public void AddStock_NoCurrentStock_StockIsCorrectlyAdded()
        {
            var portfolio = new Portfolio();

            portfolio.AddStock(new Stock("FP")
            {
                Count = 10, Price = 10
            });

            Assert.AreEqual(10, portfolio["FP"].Count);
        }
Ejemplo n.º 6
0
        static void Main(string[] args)
        {
            IEnumerable <IStock> validStocks      = Helpers.StockListGenerator.GetStockList();
            IStockIndex          stockIndex       = new StockIndex(validStocks);
            IPortfolio           portfolio        = new Portfolio(stockIndex);
            IPortfolioDisplay    portfolioDisplay = new PortfolioDisplay(portfolio);

            for (int i = 0; i < 10; i++)
            {
                portfolio.AddStock(validStocks.FirstOrDefault(s => s.Symbol == "TSLA"));
            }

            for (int i = 0; i < 15; i++)
            {
                portfolio.AddStock(validStocks.FirstOrDefault(s => s.Symbol == "AAL"));
            }

            for (int i = 0; i < 30; i++)
            {
                portfolio.AddStock(validStocks.FirstOrDefault(s => s.Symbol == "AMD"));
            }

            portfolio.AddStock(validStocks.First());
            portfolio.AddStock(validStocks.First());
            portfolio.AddStock(validStocks.First());
            portfolio.AddStock(validStocks.First());

            portfolioDisplay.DisplayPortfolio();


            var rand = new Random();

            while (true)
            {
                int randomStockIndex = rand.Next(validStocks.Count());
                var randomStock      = validStocks.ToList()[randomStockIndex];

                double oldStockValue = stockIndex.GetStockPrice(randomStock);
                double newStockValue = Helpers.StockRandomValueGenerator.Next5PctDifference(oldStockValue);

                Console.WriteLine("Changing stock value of {0} from {1:N1} to {2:N1}", randomStock.Symbol, oldStockValue, newStockValue);

                stockIndex.ChangeStockPrice(randomStock, newStockValue);

                Thread.Sleep(1000);
            }
        }
Ejemplo n.º 7
0
        static void Main(string[] args)
        {
            Stock GoogleStock = new Stock("Google", 600.50);
            Stock VestasStock = new Stock("Vestas", 300);

            StockHolding TenGoogle    = new StockHolding(GoogleStock, 10);
            StockHolding TwentyVestas = new StockHolding(VestasStock, 20);

            Portfolio MyPotfolio = new Portfolio();

            Display MyDisplay = new Display();

            MyPotfolio.Attach(MyDisplay);

            MyPotfolio.AddStock(TenGoogle);
            MyPotfolio.AddStock(TwentyVestas);

            Random myRandom = new Random();
            bool   positive = true;
            double procent;

            while (true)
            {
                if (myRandom.Next(0, 2) == 1)
                {
                    positive = true;
                }
                else
                {
                    positive = false;
                }
                procent = myRandom.Next(1, 6);


                if (positive)
                {
                    GoogleStock.Value += GoogleStock.Value * (procent / 100);
                }
                else
                {
                    GoogleStock.Value -= GoogleStock.Value * (procent / 100);
                }

                if (myRandom.Next(0, 2) == 1)
                {
                    positive = true;
                }
                else
                {
                    positive = false;
                }
                procent = myRandom.Next(0, 6);

                if (positive)
                {
                    VestasStock.Value += VestasStock.Value * (procent / 100);
                }
                else
                {
                    VestasStock.Value -= VestasStock.Value * (procent / 100);
                }
                Thread.Sleep(3000);
            }
        }