Esempio n. 1
0
        //TODO: Gérer les erreurs dans les chiffres pour date, et choix d'options
        //      Virer les fonctions statics et les mettre dans un meilleur endroit
        //      BLoquer quand 2 fois le meme actif

        /// <summary>
        /// Methode qui set un Data d'actifs à partir de différents paramètres
        /// </summary>
        /// <param name="namesActif"> Liste de String contenant les noms (Yahoo) des actifs désirés </param>
        /// <param name="columns"> Liste contenant les options souhaitées (High, Low, Volume ...)</param>
        /// <param name="startDate"></param>
        /// <param name="endDate"></param>
        public void setActif(List <String> namesActif, List <Data.HistoricalColumn> columns, DateTime startDate, DateTime endDate)
        {
            //Gestion du GetActif sans spécifier les options --> tout ajouter
            if (!columns.Any())
            {
                columns.Add(Data.HistoricalColumn.Open);
                columns.Add(Data.HistoricalColumn.High);
                columns.Add(Data.HistoricalColumn.Low);
                columns.Add(Data.HistoricalColumn.Close);
                columns.Add(Data.HistoricalColumn.Volume);
            }

            Services s = new Services();
            Data     d = s.getActifHistorique(namesActif, columns, startDate, endDate, donnees);

            // gestion d'erreur
            try
            {
                donnees.SetData(GestionErreurs.actifErreur((DataActif)d, donnees));
                GestionErreurs.donneesIncomplètes(donnees, startDate, endDate);
            }
            catch
            {
            }
            //
        }
Esempio n. 2
0
        public void TestOK()
        {
            List <Data.HistoricalColumn> columns = new List <Data.HistoricalColumn>();

            columns.Add(Data.HistoricalColumn.Open);
            columns.Add(Data.HistoricalColumn.High);
            columns.Add(Data.HistoricalColumn.Low);
            columns.Add(Data.HistoricalColumn.Close);
            columns.Add(Data.HistoricalColumn.Volume);



            List <String> l = new List <string>();

            l.Add("GOOG".ToUpper());


            DateTime debut = new DateTime(2015, 01, 01);
            DateTime fin   = new DateTime(2015, 04, 01);


            Services   s       = new Services();
            Data       donnees = s.getActifHistorique(l, columns, debut, fin);
            DataRetour dretour = new DataRetour();
            Data       d       = GestionErreurs.actifErreur((DataActif)donnees, dretour);

            for (int i = 0; i < d.Ds.Tables[0].Rows.Count; i++)
            {
                foreach (string c in d.Columns)
                {
                    Assert.AreEqual <double>((double)d.Ds.Tables[0].Rows[i][c], (double)donnees.Ds.Tables[0].Rows[i][c]);
                }
            }
        }
Esempio n. 3
0
        public void TestMauvaiseEntree()
        {
            List <Data.HistoricalColumn> columns = new List <Data.HistoricalColumn>();

            columns.Add(Data.HistoricalColumn.Open);
            columns.Add(Data.HistoricalColumn.High);
            columns.Add(Data.HistoricalColumn.Low);
            columns.Add(Data.HistoricalColumn.Close);
            columns.Add(Data.HistoricalColumn.Volume);



            List <String> l = new List <string>();

            l.Add("GOOG".ToUpper());
            //mauvaise entrée
            l.Add("lkdfsopf".ToUpper());
            l.Add("CA.PA".ToUpper());


            DateTime debut = new DateTime(2015, 01, 01);
            DateTime fin   = new DateTime(2015, 04, 01);


            Services   s       = new Services();
            DataRetour dretour = new DataRetour();
            Data       donnees = s.getActifHistorique(l, columns, debut, fin, dretour);
            Data       d       = GestionErreurs.actifErreur((DataActif)donnees, dretour);

            dretour.SetData(d);
            Assert.AreEqual <string>(dretour.GetListeErreur()[0], "lkdfsopf".ToUpper());
        }
Esempio n. 4
0
        public void TestValeurIsolee()
        {
            List <Data.HistoricalColumn> columns = new List <Data.HistoricalColumn>();

            columns.Add(Data.HistoricalColumn.Open);
            columns.Add(Data.HistoricalColumn.High);
            columns.Add(Data.HistoricalColumn.Low);
            columns.Add(Data.HistoricalColumn.Close);
            columns.Add(Data.HistoricalColumn.Volume);



            List <String> l = new List <string>();

            l.Add("GOOG".ToUpper());


            DateTime debut = new DateTime(2015, 01, 01);
            DateTime fin   = new DateTime(2015, 04, 01);


            Services s       = new Services();
            Data     donnees = s.getActifHistorique(l, columns, debut, fin);
            // on supprime une ligne
            // attention à ne pas prendre un vendredi ou lundi
            DataRow row = donnees.Ds.Tables[0].Rows[2];

            if (((DateTime)row["Date"]).DayOfWeek == DayOfWeek.Friday)
            {
                donnees.Ds.Tables[0].Rows.Remove(donnees.Ds.Tables[0].Rows[5]);
            }
            else if (((DateTime)row["Date"]).DayOfWeek == DayOfWeek.Monday)
            {
                donnees.Ds.Tables[0].Rows.Remove(donnees.Ds.Tables[0].Rows[3]);
            }
            else
            {
                donnees.Ds.Tables[0].Rows.Remove(row);
            }


            DataRetour dretour = new DataRetour();
            Data       d       = GestionErreurs.actifErreur((DataActif)donnees, dretour);

            for (int i = 0; i < d.Ds.Tables[0].Rows.Count; i++)
            {
                foreach (string c in d.Columns)
                {
                    Assert.AreEqual <double>((double)d.Ds.Tables[0].Rows[i][c], (double)donnees.Ds.Tables[0].Rows[i][c]);
                    // Trace.Write((double)donnees.Ds.Tables[0].Rows[i]["Open"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Open"] + "\n");
                }
            }
        }
Esempio n. 5
0
        public void Test1requete()
        {
            List <Data.HistoricalColumn> columns = new List <Data.HistoricalColumn>();

            columns.Add(Data.HistoricalColumn.Open);

            List <String> l = new List <string>();

            l.Add("GOOG".ToUpper());


            DateTime debut = new DateTime(2015, 01, 01);
            DateTime fin   = new DateTime(2015, 04, 01);


            Services s       = new Services();
            Data     donnees = s.getActifHistorique(l, columns, debut, fin);

            // on supprime une ligne
            // attention à ne pas prendre un vendredi ou lundi
            for (int k = 0; k < 15; k++)
            {
                donnees.Ds.Tables[0].Rows.Remove(donnees.Ds.Tables[0].Rows[2]);
            }
            DataRetour dretour = new DataRetour();
            Data       d       = GestionErreurs.actifErreur((DataActif)donnees, dretour);

            Assert.AreNotEqual(d.Ds.Tables[0].Rows.Count, donnees.Ds.Tables[0].Rows.Count);
            for (int j = 0; j < donnees.Ds.Tables[0].Rows.Count; j++)
            {
                Trace.Write(((DateTime)donnees.Ds.Tables[0].Rows[j]["Date"]).ToString("yyyy/MM/dd") + "   " + (double)donnees.Ds.Tables[0].Rows[j]["Open"] + "\n");
            }
            Trace.Write("new tab \n\n");
            for (int i = 0; i < d.Ds.Tables[0].Rows.Count; i++)
            {
                Trace.Write(((DateTime)d.Ds.Tables[0].Rows[i]["Date"]).ToString("yyyy/MM/dd") + "   " + (double)d.Ds.Tables[0].Rows[i]["Open"] + "\n");
            }
        }
Esempio n. 6
0
        public void TestRequeteComplete()
        {
            List <Data.HistoricalColumn> columns = new List <Data.HistoricalColumn>();

            columns.Add(Data.HistoricalColumn.Open);
            columns.Add(Data.HistoricalColumn.High);
            columns.Add(Data.HistoricalColumn.Low);
            columns.Add(Data.HistoricalColumn.Close);
            columns.Add(Data.HistoricalColumn.Volume);

            List <String> l = new List <string>();

            l.Add("GOOG".ToUpper());


            DateTime debut = new DateTime(2015, 01, 01);
            DateTime fin   = new DateTime(2015, 04, 01);


            Services s       = new Services();
            Data     donnees = s.getActifHistorique(l, columns, debut, fin);

            // on supprime une ligne
            // attention à ne pas prendre un vendredi ou lundi
            for (int k = 0; k < 15; k++)
            {
                donnees.Ds.Tables[0].Rows.Remove(donnees.Ds.Tables[0].Rows[2]);
            }
            DataRetour dretour = new DataRetour();
            Data       d       = GestionErreurs.actifErreur((DataActif)donnees, dretour);

            Assert.AreEqual <double>((double)d.Ds.Tables[0].Rows[1]["Open"], (double)donnees.Ds.Tables[0].Rows[1]["Open"]);


            /////////////////////////////// A decommenter pour avoir les donnees de test en .csv \\\\\\\\\\\\\\\\\\\\\\\\\\
            /////////////////////////////// Penser à changer le path pour ecrire dans les fichiers \\\\\\\\\\\\\\\\\\\\\\\\

            /*
             * // Pour extraire les données en format .csv
             * string text = "Date;Open;Close;Low;High;Volume\n";
             * string text2 = "Date;Open;Close;Low;High;Volume\n";
             * //Trace.Write("  date        open         close        low         high     volume\n");
             * for (int i = 0; i < d.Ds.Tables[0].Rows.Count; i++)
             * {
             *  text += ((DateTime)d.Ds.Tables[0].Rows[i]["Date"]).ToString("yyyy/MM/dd")
             + ";" + ((double)d.Ds.Tables[0].Rows[i]["Open"]).ToString()
             + ";" + ((double)d.Ds.Tables[0].Rows[i]["Close"]).ToString()
             + ";" + ((double)d.Ds.Tables[0].Rows[i]["Low"]).ToString()
             + ";" + ((double)d.Ds.Tables[0].Rows[i]["High"]).ToString()
             + ";" + ((double)d.Ds.Tables[0].Rows[i]["Volume"]).ToString() + "\n";
             +  //Trace.Write(((DateTime)d.Ds.Tables[0].Rows[i]["Date"]).ToString("yyyy/MM/dd") + "   " + (double)d.Ds.Tables[0].Rows[i]["Open"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Close"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Low"] + "   " + (double)d.Ds.Tables[0].Rows[i]["High"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Volume"] + "\n");
             + }
             + for (int i = 0; i < donnees.Ds.Tables[0].Rows.Count; i++)
             + {
             +  text2 += ((DateTime)donnees.Ds.Tables[0].Rows[i]["Date"]).ToString("yyyy/MM/dd")
             + ";" + ((double)donnees.Ds.Tables[0].Rows[i]["Open"]).ToString()
             + ";" + ((double)donnees.Ds.Tables[0].Rows[i]["Close"]).ToString()
             + ";" + ((double)donnees.Ds.Tables[0].Rows[i]["Low"]).ToString()
             + ";" + ((double)donnees.Ds.Tables[0].Rows[i]["High"]).ToString()
             + ";" + ((double)donnees.Ds.Tables[0].Rows[i]["Volume"]).ToString() + "\n";
             +  //Trace.Write(((DateTime)d.Ds.Tables[0].Rows[i]["Date"]).ToString("yyyy/MM/dd") + "   " + (double)d.Ds.Tables[0].Rows[i]["Open"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Close"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Low"] + "   " + (double)d.Ds.Tables[0].Rows[i]["High"] + "   " + (double)d.Ds.Tables[0].Rows[i]["Volume"] + "\n");
             + }
             + // On écrit dans le fichier
             + System.IO.File.WriteAllText(@"C:\Users\BVE\Desktop\Projet_Spe\TestResults\SimuleValeurComplet_Actif.csv", text);
             + System.IO.File.WriteAllText(@"C:\Users\BVE\Desktop\Projet_Spe\TestResults\Temoin_Actif.csv", text2);
             * */
        }