Exemple #1
0
 public FinDataAdapter(FinAnalysisVM finAnalysisVm, string symbol, DataSource dataSource)
 {
     _finDataDao = new FinDataDao();
     _priceDataDao = new PriceDataDao();
     _dataSource = dataSource;
     _symbol = symbol;
     _finAnalysisVm = finAnalysisVm;
     _dcfDataDao = new DcfDataDao();
 }
Exemple #2
0
        public DcfVM(DataGrid dataGrid, DcfDataDao dcfDataDao, DcfInput dcfInput, FinDataDao finDataDao, FinDataAdapter finDataAdapter)
        {
            _dataGrid = dataGrid;
            _rowMapping = Rowmapping.DcfRows();
            _showForecastTable = new ObservableCollection<ForecastData>();
            _columnHeader = new List<string>();
            _dcfDataDao = dcfDataDao;
            _dcfInput = dcfInput;
            _finDataDao = finDataDao;
            _finDataAdapter = finDataAdapter;

            _finDataAdapter.DcfOutput.PropertyChanged += OutputChangedEventHandler;
        }
Exemple #3
0
 public void AddDcfDataDao(DcfDataDao dc)
 {
     _dcfDataDao = dc;
 }
Exemple #4
0
        /// <summary>
        /// Genereerib algsed rahavoogude prognoosid. Osa nendest on ajaloolised, osa tulevikuprognoosid. Ajaloolistest andmetest
        /// saadakse otse DCFData objektid (CalculateQuaterlyForecasts meetodiga küll neid täiendatakse veel), tulevikuprognoosid tuleb eraldi täita.
        /// </summary>
        /// <param name="finDatas">Ajaloolised andmed</param>
        /// <param name="dcfDataDao">Genereeritavate andmete hoidja</param>
        public static void GenerateDcfData(List<FinData> finDatas, DcfDataDao dcfDataDao)
        {
            // meetodile antakse findata list ette
            // nüüd tuleb võtta findatast viimase nt 5 aasta andmed ehk 20 kvartalit
            // ja nende põhjal genereerida olemasolevate kvartalite DcfData objektid
            dcfDataDao.ClearDcfData();
            int min = 0;
            if (finDatas.Count - 26 > 0)
            {
                min = finDatas.Count - 26;
            }
            for (int i = min; i < finDatas.Count; i++)
            {
                // siin täidame findata andmetega loodavad DcfData objektid
                dcfDataDao.AddDcfData(new DcfData(finDatas[i]));

            }

            // nüüd oleks vaja luua ka tulevikuprognooside DcfData objektid
            // loome need näiteks veel 5 aasta kohta ehk 20 kvartalit

            //DateTime futureDate = new DateTime();

            //futureDate.AddMonths(3);
            for (int i = 0; i < 20; i++)
            {
                // kõigepealt tuleks genereerida vastavad kuupäevad järgneva 20 kvartali lõpu jaoks
                // ja siis luua tühjad DcfData objektid

                // futureDate = futureDate + 3 kuud
                DateTime futureDate = dcfDataDao.DcfDatas[dcfDataDao.DcfDatas.Count - 1].Kuupaev.AddMonths(3);
                dcfDataDao.AddDcfData(new DcfData(futureDate));

            }
        }