示例#1
0
        private void ExcelDataToList()
        {
            try
            {
                var dsdata = ReadExcel(InputFile);
                #region FirstData
                CNSEExtractData             = new NSEData();
                CNSEExtractData.Time        = dsdata.Rows[3][0].ToString();
                CNSEExtractData.OI1         = dsdata.Rows[3][1].ToString();
                CNSEExtractData.COI1        = dsdata.Rows[3][2].ToString();
                CNSEExtractData.VOL1        = dsdata.Rows[3][3].ToString();
                CNSEExtractData.IV1         = dsdata.Rows[3][4].ToString();
                CNSEExtractData.LPT1        = dsdata.Rows[3][5].ToString();
                CNSEExtractData.NetC1       = dsdata.Rows[3][6].ToString();
                CNSEExtractData.BIDQty1     = dsdata.Rows[3][7].ToString();
                CNSEExtractData.BIDPrice1   = dsdata.Rows[3][8].ToString();
                CNSEExtractData.Askqty1     = dsdata.Rows[3][9].ToString();
                CNSEExtractData.ASKPrice1   = dsdata.Rows[3][10].ToString();
                CNSEExtractData.StockPrice1 = dsdata.Rows[3][11].ToString();
                CNSEExtractData.StockPrice2 = dsdata.Rows[3][12].ToString();
                CNSEExtractData.BIDQty2     = dsdata.Rows[3][13].ToString();
                CNSEExtractData.BIDPrice2   = dsdata.Rows[3][14].ToString();
                CNSEExtractData.Askqty2     = dsdata.Rows[3][15].ToString();
                CNSEExtractData.ASKPrice2   = dsdata.Rows[3][16].ToString();
                CNSEExtractData.NetC2       = dsdata.Rows[3][17].ToString();
                CNSEExtractData.LPT2        = dsdata.Rows[3][18].ToString();
                CNSEExtractData.IV2         = dsdata.Rows[3][19].ToString();
                CNSEExtractData.VOL2        = dsdata.Rows[3][20].ToString();
                CNSEExtractData.COI2        = dsdata.Rows[3][21].ToString();
                CNSEExtractData.OI2         = dsdata.Rows[3][22].ToString();
                CNSEExtractData.NIFTY       = dsdata.Rows[3][23].ToString();
                CNSEExtractData.CLPTDecay   = dsdata.Rows[3][24].ToString();
                CNSEExtractData.CIVCHANG    = dsdata.Rows[3][25].ToString();
                CNSEExtractData.PLPTDecay   = dsdata.Rows[3][26].ToString();
                CNSEExtractData.PIVCHANG    = dsdata.Rows[3][27].ToString();
                CNSEExtractData.ACALL       = dsdata.Rows[3][28].ToString();
                CNSEExtractData.APUT        = dsdata.Rows[3][29].ToString();
                NSEDataList1.Add(CNSEExtractData);
                #endregion

                #region SecoundData
                PNSEExtractData             = new NSEData();
                PNSEExtractData.Time        = dsdata.Rows[4][0].ToString();
                PNSEExtractData.OI1         = dsdata.Rows[4][1].ToString();
                PNSEExtractData.COI1        = dsdata.Rows[4][2].ToString();
                PNSEExtractData.VOL1        = dsdata.Rows[4][3].ToString();
                PNSEExtractData.IV1         = dsdata.Rows[4][4].ToString();
                PNSEExtractData.LPT1        = dsdata.Rows[4][5].ToString();
                PNSEExtractData.NetC1       = dsdata.Rows[4][6].ToString();
                PNSEExtractData.BIDQty1     = dsdata.Rows[4][7].ToString();
                PNSEExtractData.BIDPrice1   = dsdata.Rows[4][8].ToString();
                PNSEExtractData.Askqty1     = dsdata.Rows[4][9].ToString();
                PNSEExtractData.ASKPrice1   = dsdata.Rows[4][10].ToString();
                PNSEExtractData.StockPrice1 = dsdata.Rows[4][11].ToString();
                PNSEExtractData.StockPrice2 = dsdata.Rows[4][12].ToString();
                PNSEExtractData.BIDQty2     = dsdata.Rows[4][13].ToString();
                PNSEExtractData.BIDPrice2   = dsdata.Rows[4][14].ToString();
                PNSEExtractData.Askqty2     = dsdata.Rows[4][15].ToString();
                PNSEExtractData.ASKPrice2   = dsdata.Rows[4][16].ToString();
                PNSEExtractData.NetC2       = dsdata.Rows[4][17].ToString();
                PNSEExtractData.LPT2        = dsdata.Rows[4][18].ToString();
                PNSEExtractData.IV2         = dsdata.Rows[4][19].ToString();
                PNSEExtractData.VOL2        = dsdata.Rows[4][20].ToString();
                PNSEExtractData.COI2        = dsdata.Rows[4][21].ToString();
                PNSEExtractData.OI2         = dsdata.Rows[4][22].ToString();
                PNSEExtractData.NIFTY       = dsdata.Rows[4][23].ToString();
                PNSEExtractData.CLPTDecay   = dsdata.Rows[4][24].ToString();
                PNSEExtractData.CIVCHANG    = dsdata.Rows[4][25].ToString();
                PNSEExtractData.PLPTDecay   = dsdata.Rows[4][26].ToString();
                PNSEExtractData.PIVCHANG    = dsdata.Rows[4][27].ToString();
                PNSEExtractData.ACALL       = dsdata.Rows[4][28].ToString();
                PNSEExtractData.APUT        = dsdata.Rows[4][29].ToString();
                NSEDataList2.Add(PNSEExtractData);
                #endregion
            }
            catch (Exception ex)
            { }
            finally
            {
                CNSEExtractData = null;
                PNSEExtractData = null;
            }
        }
示例#2
0
        public void ProcessDataFetchProcess()
        {
            try
            {
                LabelLog("Fetch process started " + DateTime.Now.ToString());
                #region DataDownloadRegion
                DownloadNSEData();
                #endregion
                CNSEExtractData = new NSEData();
                PNSEExtractData = new NSEData();
                valuestatus     = new Status();
                h1 = null;
                h1 = new HtmlAgilityPack.HtmlDocument();
                h1.LoadHtml(DownloadedString);
                Nifty     = string.Empty;
                NiftyTime = string.Empty;
                var Maindiv = h1.DocumentNode.SelectSingleNode("//div[@id='wrapper_btm']");
                h2 = null;
                h2 = new HtmlAgilityPack.HtmlDocument();
                h2.LoadHtml(Maindiv.InnerHtml.ToString());
                var niftydata = h2.DocumentNode.SelectNodes("//table");
                h3 = null;
                h3 = new HtmlAgilityPack.HtmlDocument();
                h3.LoadHtml(niftydata[0].InnerHtml.ToString());

                CNSEExtractData.NIFTY = h3.DocumentNode.SelectNodes("//span")[0].InnerText.ToString().Replace("Underlying Index:", "").Replace("NIFTY", "").Trim().ToString().Replace(" ", "");
                CNSEExtractData.Time  = h3.DocumentNode.SelectNodes("//span")[1].InnerText.ToString().Replace("As on ", "").Trim().ToString();

                PNSEExtractData.NIFTY = CNSEExtractData.NIFTY;
                PNSEExtractData.Time  = CNSEExtractData.Time;

                h2 = null;
                h2 = new HtmlAgilityPack.HtmlDocument();
                h2.LoadHtml(h1.DocumentNode.SelectSingleNode("//table[@id='octable']").InnerHtml.ToString());

                var trdata = h2.DocumentNode.SelectNodes("//tr");
                for (int i = 2; i < trdata.Count(); i++)
                {
                    h4 = null;
                    h4 = new HtmlAgilityPack.HtmlDocument();
                    h4.LoadHtml(trdata[i].InnerHtml.ToString());
                    var td = h4.DocumentNode.SelectNodes("//td");
                    if (cs1 + ".00" == td[11].InnerText.ToString().Trim())
                    {
                        valuestatus.cs1             = true;
                        CNSEExtractData.OI1         = td[1].InnerText.ToString().Trim();
                        CNSEExtractData.COI1        = td[2].InnerText.ToString().Trim();
                        CNSEExtractData.VOL1        = td[3].InnerText.ToString().Trim();
                        CNSEExtractData.IV1         = td[4].InnerText.ToString().Trim();
                        CNSEExtractData.LPT1        = td[5].InnerText.ToString().Trim();
                        CNSEExtractData.NetC1       = td[6].InnerText.ToString().Trim();
                        CNSEExtractData.BIDQty1     = td[7].InnerText.ToString().Trim();
                        CNSEExtractData.BIDPrice1   = td[8].InnerText.ToString().Trim();
                        CNSEExtractData.Askqty1     = td[9].InnerText.ToString().Trim();
                        CNSEExtractData.ASKPrice1   = td[10].InnerText.ToString().Trim();
                        CNSEExtractData.StockPrice1 = cs1;
                        //CNSEExtractData
                    }
                    else if (ps1 + ".00" == td[11].InnerText.ToString().Trim())
                    {
                        valuestatus.ps1             = true;
                        CNSEExtractData.BIDQty2     = td[12].InnerText.ToString().Trim();
                        CNSEExtractData.BIDPrice2   = td[13].InnerText.ToString().Trim();
                        CNSEExtractData.Askqty2     = td[14].InnerText.ToString().Trim();
                        CNSEExtractData.ASKPrice2   = td[15].InnerText.ToString().Trim();
                        CNSEExtractData.NetC2       = td[16].InnerText.ToString().Trim();
                        CNSEExtractData.LPT2        = td[17].InnerText.ToString().Trim();
                        CNSEExtractData.IV2         = td[18].InnerText.ToString().Trim();
                        CNSEExtractData.VOL2        = td[19].InnerText.ToString().Trim();
                        CNSEExtractData.COI2        = td[20].InnerText.ToString().Trim();
                        CNSEExtractData.OI2         = td[21].InnerText.ToString().Trim();
                        CNSEExtractData.StockPrice2 = ps1;
                        //CNSEExtractData
                    }
                    else if (cs2 + ".00" == td[11].InnerText.ToString().Trim())
                    {
                        valuestatus.cs2 = true;
                        //PNSEExtractData
                        PNSEExtractData.OI1         = td[1].InnerText.ToString().Trim();
                        PNSEExtractData.COI1        = td[2].InnerText.ToString().Trim();
                        PNSEExtractData.VOL1        = td[3].InnerText.ToString().Trim();
                        PNSEExtractData.IV1         = td[4].InnerText.ToString().Trim();
                        PNSEExtractData.LPT1        = td[5].InnerText.ToString().Trim();
                        PNSEExtractData.NetC1       = td[6].InnerText.ToString().Trim();
                        PNSEExtractData.BIDQty1     = td[7].InnerText.ToString().Trim();
                        PNSEExtractData.BIDPrice1   = td[8].InnerText.ToString().Trim();
                        PNSEExtractData.Askqty1     = td[9].InnerText.ToString().Trim();
                        PNSEExtractData.ASKPrice1   = td[10].InnerText.ToString().Trim();
                        PNSEExtractData.StockPrice1 = cs2;
                    }
                    else if (ps2 + ".00" == td[11].InnerText.ToString().Trim())
                    {
                        valuestatus.ps2 = true;
                        //PNSEExtractData
                        PNSEExtractData.BIDQty2     = td[12].InnerText.ToString().Trim();
                        PNSEExtractData.BIDPrice2   = td[13].InnerText.ToString().Trim();
                        PNSEExtractData.Askqty2     = td[14].InnerText.ToString().Trim();
                        PNSEExtractData.ASKPrice2   = td[15].InnerText.ToString().Trim();
                        PNSEExtractData.NetC2       = td[16].InnerText.ToString().Trim();
                        PNSEExtractData.LPT2        = td[17].InnerText.ToString().Trim();
                        PNSEExtractData.IV2         = td[18].InnerText.ToString().Trim();
                        PNSEExtractData.VOL2        = td[19].InnerText.ToString().Trim();
                        PNSEExtractData.COI2        = td[20].InnerText.ToString().Trim();
                        PNSEExtractData.OI2         = td[21].InnerText.ToString().Trim();
                        PNSEExtractData.StockPrice2 = ps2;
                    }
                    if (valuestatus.cs1 && valuestatus.cs2 && valuestatus.ps1 && valuestatus.ps2)
                    {
                        break;
                    }
                }
                Tcount = NSEDataList1.Count();
                if (NSEDataList1.Count() > 2)
                {
                    //CNSEExtractData
                    try
                    {
                        int.TryParse(NSEDataList1[Tcount - 1].LPT1, out pval1);
                        int.TryParse(CNSEExtractData.LPT1, out pval2);
                        CNSEExtractData.CLPTDecay = (pval2 - pval1).ToString();
                    }
                    catch { }
                    try
                    {
                        int.TryParse(NSEDataList1[Tcount - 1].IV1, out pval1);
                        int.TryParse(CNSEExtractData.IV1, out pval2);
                        CNSEExtractData.CIVCHANG = ((pval2 - pval1) / pval2).ToString() + "%";
                    }
                    catch { }
                    try
                    {
                        int.TryParse(NSEDataList1[Tcount - 1].LPT2, out pval1);
                        int.TryParse(CNSEExtractData.LPT2, out pval2);
                        CNSEExtractData.PLPTDecay = (pval2 - pval1).ToString();
                    }
                    catch { }
                    try
                    {
                        int.TryParse(NSEDataList1[Tcount - 1].IV2, out pval1);
                        int.TryParse(CNSEExtractData.IV2, out pval2);
                        CNSEExtractData.CIVCHANG = ((pval2 - pval1) / pval2).ToString() + "%";
                    }
                    catch { }
                }
                NSEDataList1.Add(CNSEExtractData);
                Tcount = NSEDataList2.Count();
                if (NSEDataList2.Count() > 2)
                {
                    try
                    {
                        int.TryParse(NSEDataList2[Tcount - 1].LPT1, out pval1);
                        int.TryParse(PNSEExtractData.LPT1, out pval2);
                        PNSEExtractData.CLPTDecay = (pval2 - pval1).ToString();
                    }
                    catch { }
                    try
                    {
                        int.TryParse(NSEDataList2[Tcount - 1].IV1, out pval1);
                        int.TryParse(PNSEExtractData.IV1, out pval2);
                        PNSEExtractData.CIVCHANG = ((pval2 - pval1) / pval2).ToString() + "%";
                    }
                    catch { }
                    try
                    {
                        int.TryParse(NSEDataList2[Tcount - 1].LPT2, out pval1);
                        int.TryParse(PNSEExtractData.LPT2, out pval2);
                        PNSEExtractData.PLPTDecay = (pval2 - pval1).ToString();
                    }
                    catch { }
                    try
                    {
                        int.TryParse(NSEDataList2[Tcount - 1].IV2, out pval1);
                        int.TryParse(PNSEExtractData.IV2, out pval2);
                        PNSEExtractData.CIVCHANG = ((pval2 - pval1) / pval2).ToString() + "%";
                    }
                    catch { }
                    //PNSEExtractData
                }
                NSEDataList2.Add(PNSEExtractData);
                CreateOutputAsync();
                LabelLog("Fetch process stopped " + DateTime.Now.ToString());
            }
            catch (Exception ex)
            {
            }
            finally
            {
                DownloadedString = string.Empty;
                h1 = null;
                h2 = null;
                h3 = null;
                h4 = null;
                PNSEExtractData = null;
                CNSEExtractData = null;
            }
        }