Exemplo n.º 1
0
        private void BtnAddFav_Click(object sender, EventArgs e)
        {
            FrmScriptSelection ObjFrmSelection = new FrmScriptSelection();

            ObjFrmSelection.ShowDialog();
            DgvSwing.DataSource = ClsDataBase.GetSwingScriptData();
        }
Exemplo n.º 2
0
 private void CB50DMA_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (UpdatedData)
     {
         DataTable dt;
         Dgv50_200.DataSource = null;
         if (CB50DMA.SelectedItem.ToString() == "200")
         {
             dt = ClsDataBase.GetBreakOutData(3);
             if (dt != null)
             {
                 Dgv50_200.DataSource = dt;
             }
         }
         if (CB50DMA.SelectedItem.ToString() == "50")
         {
             dt = ClsDataBase.GetBreakOutData(2);
             if (dt != null)
             {
                 Dgv50_200.DataSource = dt;
             }
         }
         if (CB50DMA.SelectedItem.ToString() == "50+200")
         {
             dt = ClsDataBase.GetBreakOutData(4);
             if (dt != null)
             {
                 Dgv50_200.DataSource = dt;
             }
         }
     }
 }
Exemplo n.º 3
0
        void m_oWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            // The background process is complete. We need to inspect
            // our response to see if an error occurred, a cancel was
            // requested or if we completed successfully.
            if (e.Cancelled)
            {
                lblStatus.Text = "Task Cancelled.";
            }

            // Check to see if an error occurred in the background process.

            else if (e.Error != null)
            {
                lblStatus.Text = "Error while performing background operation.";
            }
            else
            {
                // Everything completed normally.
                progressBar1.Value = 0;
                progressBar2.Value = 0;
                labStckStatus.Text = "Download Complete..";
                lblStatus.Text     = "Download Complete..";
                ClsLog.WriteLog("Download Complete.");
                ClsDataBase.UpdateConfigTbl("LastDataDate", Dates[Dates.Count - 1].ToString("yyyy-MM-dd"));
                BtnJson.Enabled    = true;
                BtnGetData.Enabled = true;
                UpdatedData        = true;
            }
            UpdateDashBoard();
            Tm.Enabled             = false;
            LabTotalTime.Visible   = false;
            LabTimeElapsed.Visible = false;
            //Change the status of the buttons on the UI accordingly
        }
Exemplo n.º 4
0
 public FrmScriptSelection()
 {
     InitializeComponent();
     DgvScriptName.AutoGenerateColumns = false;
     TxtLowerLimit.Maximum             = 100000;
     TxtUpperLimit.Maximum             = 100000;
     ColScript = ClsDataBase.GetScriptsCode(false);
     DgvScriptName.DataSource = ColScript;
     SwingMargin = Convert.ToInt16(ClsDataBase.GetConfigValue("SwingMargin"));
 }
Exemplo n.º 5
0
 private void BtnRemoveScript_Click(object sender, EventArgs e)
 {
     if (DgvSwing.SelectedRows.Count != 0)
     {
         var id = DgvSwing.SelectedRows[0].Cells["ID"].Value.ToString();
         if (MessageBox.Show("Do you want to delete the selected Script?", "Warning", MessageBoxButtons.YesNo) == DialogResult.Yes)
         {
             ClsDataBase.RemoveSwingScript(Convert.ToInt16(id));
         }
         DgvSwing.DataSource = ClsDataBase.GetSwingScriptData();
     }
 }
Exemplo n.º 6
0
 private void BtnJson_Click(object sender, EventArgs e)
 {
     ClsDataBase.InsertScriptCode();
     //if (MessageBox.Show("Are you sure to download complete data, this operation will take huge time!!","Warning!!",MessageBoxButtons.YesNo) == DialogResult.Yes)
     //{
     //    ChangeOPbarValue = true;
     //    ChangeSPbarValue = false;
     //    OneDayData = false;
     //    BtnJson.Enabled = false;
     //    ClsLog.WriteLog("Initiating Bulk Stock Data Download.. ");
     //    m_oWorker.RunWorkerAsync();
     //}
 }
Exemplo n.º 7
0
        private static void CreateLiveDataTbl()
        {
            Collection <ClsScriptsMaster> ScriptCodes = ClsDataBase.GetScriptsCode(true);

            DtLivedata = new DataTable("NSELiveData");
            DtLivedata.Columns.Add("ScriptCode", typeof(string));
            DtLivedata.Columns.Add("ScriptID", typeof(string));
            DtLivedata.Columns.Add("LivePrice", typeof(float));
            DtLivedata.Columns.Add("ChangeInPrice", typeof(float));
            DtLivedata.Columns.Add("LastClosePrice", typeof(float));
            DtLivedata.Columns.Add("Trend", typeof(string));
            DtLivedata.Columns.Add("ScriptName", typeof(string));
            foreach (var item in ScriptCodes)
            {
                DtLivedata.Rows.Add(item.ScriptsCode, item.ScriptId, null, null, ClsDataBase.GetSriptLastClosePrice(item.ScriptsCode), null, item.ScriptsName);
            }
        }
Exemplo n.º 8
0
        private void CopyDataGridView(DataGridView dgv_org)
        {
            try
            {
                if (DgvDetails.Columns.Count == 0)
                {
                    foreach (DataGridViewColumn dgvc in dgv_org.Columns)
                    {
                        DgvDetails.Columns.Add(dgvc.Clone() as DataGridViewColumn);
                    }
                }
                DataGridViewButtonColumn NewCol = new DataGridViewButtonColumn();

                DgvDetails.Columns.Add(NewCol);
                NewCol.Text       = "Add to Track list";
                NewCol.Name       = "BtnColAdd";
                NewCol.HeaderText = "Add To List";
                NewCol.Width      = 150;
                NewCol.UseColumnTextForButtonValue = true;
                DataGridViewRow row = new DataGridViewRow();

                for (int i = 0; i < dgv_org.Rows.Count; i++)
                {
                    row = (DataGridViewRow)dgv_org.Rows[i].Clone();
                    int intColIndex = 0;
                    foreach (DataGridViewCell cell in dgv_org.Rows[i].Cells)
                    {
                        row.Cells[intColIndex].Value = cell.Value;
                        intColIndex++;
                    }
                    DgvDetails.Rows.Add(row);
                    if (ClsDataBase.CheckTrackScript(row.Cells[StrScriptIdCol].Value.ToString()))
                    {
                        row.DefaultCellStyle.BackColor = Color.Green;
                    }
                }
                DgvDetails.AllowUserToAddRows = false;
                DgvDetails.Refresh();
            }
            catch (Exception ex)
            {
                ClsLog.WriteLog("Copy DataGridViw" + ex.Message);
            }
        }
Exemplo n.º 9
0
        public static string[] GetScriptForLiveData()
        {
            int i = 0;
            int j = 0;

            string[] UriList = new string[4];
            try
            {
                Collection <ClsScriptsMaster> ScriptCodes = ClsDataBase.GetScriptsCode(true);
                System.Text.StringBuilder     StrScpt     = new System.Text.StringBuilder();
                StrScpt.Append("https://www.google.com/finance/info?q=");
                foreach (var Script in ScriptCodes)
                {
                    StrScpt.Append("NSE:" + Script.ScriptsCode + ",");
                    i++;
                    if (i == 100)
                    {
                        StrScpt.Remove(StrScpt.Length - 1, 1);
                        StrScpt.Replace("&", "%26");
                        UriList[j] = StrScpt.ToString();
                        StrScpt.Clear();
                        StrScpt.Append("https://www.google.com/finance/info?q=");
                        j++;
                        i = 0;
                    }
                }
                if (i != 0)
                {
                    StrScpt.Remove(StrScpt.Length - 1, 1);
                    StrScpt.Replace("&", "%26");
                    UriList[j] = StrScpt.ToString();
                }

                return(UriList);
            }
            catch (Exception ex)
            {
                ClsLog.WriteLog("ERROR:GetScriptForLiveData " + ex.Message);
                return(null);
            }
        }
Exemplo n.º 10
0
 private void DgvScriptName_SelectionChanged(object sender, EventArgs e)
 {
     if (DgvScriptName.SelectedRows.Count > 0)
     {
         LabSelScript.Text = DgvScriptName.SelectedRows[0].Cells["ScriptNameSearch"].Value.ToString();
         ScriptId          = DgvScriptName.SelectedRows[0].Cells["ID"].Value.ToString();
         var item = ClsDataBase.GetSwingScriptById(ScriptId);
         if (item != null && item.Length > 0)
         {
             TxtUpperLimit.Value = Convert.ToDecimal(item[0]);
             TxtLowerLimit.Value = Convert.ToDecimal(item[1]);
             txtComment.Text     = item[2];
             BtnAddScript.Text   = "Update Script";
         }
         else
         {
             TxtUpperLimit.Value = 0;
             TxtLowerLimit.Value = 0;
             txtComment.Text     = "";
             BtnAddScript.Text   = "Add Script";
         }
     }
 }
Exemplo n.º 11
0
        private void BtnAddScript_Click(object sender, EventArgs e)
        {
            bool Result;

            if ((TxtUpperLimit.Value > 0 && TxtLowerLimit.Value > 0) && (TxtUpperLimit.Value > TxtLowerLimit.Value))
            {
                Data[0] = ScriptId;
                Data[1] = TxtUpperLimit.Value.ToString();
                Data[2] = TxtLowerLimit.Value.ToString();
                Data[3] = txtComment.Text;
                Data[4] = ((TxtLowerLimit.Value * SwingMargin) / 100).ToString();
                if (BtnAddScript.Text == "Update Script")
                {
                    Result = ClsDataBase.InsertSwingScripts(Data, true);
                }
                else
                {
                    Result = ClsDataBase.InsertSwingScripts(Data, false);
                }

                if (Result)
                {
                    LBoxScripts.Items.Add(LabSelScript.Text);
                    TxtLowerLimit.Value = 0;
                    TxtUpperLimit.Value = 0;
                    txtComment.Text     = "";
                }
                else
                {
                    MessageBox.Show("Issue saving data!!");
                }
            }
            else
            {
                MessageBox.Show("Please check the values...");
            }
        }
Exemplo n.º 12
0
 public static void DownloadEodDataNSEBhav(ref BackgroundWorker BGW, List <DateTime> Dates)
 {
     try
     {
         Collection <ClsScriptsMaster> ScriptCodes = ClsDataBase.GetScriptsCode(false);
         Collection <ClsPriceDataSet>  ColEodData  = new Collection <ClsPriceDataSet>();
         ArrayList TempData        = new ArrayList();
         string    BhavFileName    = null;
         string    BhavFilePath    = null;
         string    NseZipFile      = null;
         string    BhavCsvFileName = null;
         DateTime  Tradedate       = DateTime.Today;
         DataSet   ds;
         DataRow[] Dr;
         int       i = 0;
         ClsDashBoard.OverallPbarMax = ScriptCodes.Count;
         WebClient WC;
         foreach (DateTime item in Dates)
         {
             ClsLog.WriteLog("Dowloading NSE Bhav file..");
             ClsDashBoard.ScriptOStatus = "Dowloading NSE Bhav file for the date";
             BGW.ReportProgress(0);
             ClsDashBoard.DataDate = item.ToString("dd-MM-yyyy");
             BGW.ReportProgress(2);
             i               = 0;
             BhavFileName    = "cm" + item.ToString("dd") + item.ToString("MMM").ToUpper() + item.Year.ToString() + "bhav.csv.zip";
             BhavCsvFileName = "cm" + item.ToString("dd") + item.ToString("MMM").ToUpper() + item.Year.ToString() + "bhav.csv";
             BhavFilePath    = "https://www.nseindia.com/content/historical/EQUITIES/" + item.Year.ToString() + "/" + item.ToString("MMM").ToUpper() + "/";
             BhavFilePath    = BhavFilePath + BhavFileName;
             NseZipFile      = "AllNSEData_" + item.ToString("ddMMMyyyy") + ".zip";
             WC              = new WebClient();
             if (File.Exists(BhavFilePath))
             {
                 File.Delete(BhavFilePath);
             }
             WC.Headers.Add("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
             WC.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.83 Safari/537.1");
             WC.DownloadFile(BhavFilePath, NseZipFile);
             ZipFile.ExtractToDirectory(Application.StartupPath + "\\" + NseZipFile, Application.UserAppDataPath);
             var connString = string.Format(@"Provider=Microsoft.Jet.OleDb.4.0; Data Source={0};Extended Properties=""Text;HDR=YES;FMT=Delimited""",
                                            Application.UserAppDataPath);
             using (var conn = new OleDbConnection(connString))
             {
                 conn.Open();
                 var query = "SELECT * FROM [" + BhavCsvFileName + "]";
                 using (var adapter = new OleDbDataAdapter(query, conn))
                 {
                     ds = new DataSet("CSV File");
                     adapter.Fill(ds);
                 }
             }
             foreach (var Scode in ScriptCodes)
             {
                 ClsLog.WriteLog("Starting Data Download for script: " + Scode.ScriptsName + "(" + Scode.ScriptsCode + ")");
                 ClsDashBoard.ScriptOStatus = "Total Scripts: " + ScriptCodes.Count.ToString() + " Downloading " +
                                              i.ToString() + " Of " + ScriptCodes.Count.ToString() +
                                              " Script Name: " + Scode.ScriptsCode;
                 ClsDashBoard.OverallProgress = i;
                 i = i + 1;
                 BGW.ReportProgress(0);
                 Dr = ds.Tables[0].Select("SYMBOL='" + Scode.ScriptsCode + "' and SERIES='" + Scode.Series + "'");
                 if (Dr.Length != 0)
                 {
                     Tradedate = Convert.ToDateTime(Dr[0]["TIMESTAMP"]);
                     ColEodData.Add(new ClsPriceDataSet()
                     {
                         ScriptId   = Scode.ScriptId,
                         Date       = Convert.ToDateTime(Dr[0]["TIMESTAMP"]),
                         OpenPrice  = Dr[0]["OPEN"] != null ? Convert.ToDouble(Dr[0]["OPEN"].ToString()) : 0.0,
                         HighPrice  = Dr[0]["HIGH"] != null ? Convert.ToDouble(Dr[0]["HIGH"].ToString()) : 0.0,
                         LowPrice   = Dr[0]["LOW"] != null ? Convert.ToDouble(Dr[0]["LOW"].ToString()) : 0.0,
                         LastPrice  = Dr[0]["LAST"] != null ? Convert.ToDouble(Dr[0]["LAST"].ToString()) : 0.0,
                         ClosePrice = Dr[0]["CLOSE"] != null ? Convert.ToDouble(Dr[0]["CLOSE"].ToString()) : 0.0,
                         TotalVal   = Dr[0]["TOTTRDQTY"] != null ? Convert.ToDouble(Dr[0]["TOTTRDQTY"].ToString()) : 0.0,
                         TurnOver   = Dr[0]["TOTTRDVAL"] != null ? Convert.ToDouble(Dr[0]["TOTTRDVAL"].ToString()) : 0.0
                     });
                 }
                 else
                 {
                     ColEodData.Add(new ClsPriceDataSet()
                     {
                         ScriptId   = Scode.ScriptId,
                         Date       = Tradedate,
                         OpenPrice  = 0.0,
                         HighPrice  = 0.0,
                         LowPrice   = 0.0,
                         LastPrice  = 0.0,
                         ClosePrice = 0.0,
                         TotalVal   = 0.0,
                         TurnOver   = 0.0
                     });
                 }
                 ClsDataBase.UpdateEodData(ColEodData, Scode.TableName);
                 ClsLog.WriteLog("Data Download for script: " + Scode.ScriptsName + "(" + Scode.ScriptsCode + ") Completed.");
                 ColEodData.Clear();
             }
             File.Move(Application.UserAppDataPath + @"\" + BhavCsvFileName, @"E:\TradeAppBackup\" + BhavCsvFileName);
         }
         ClsLog.WriteLog("Running EMA DMA SP...");
         ClsDashBoard.ScriptOStatus = "Data Download Complete. Running EMA DMA Update SP.";
         ClsDashBoard.ScriptSStatus = "Data Download Complete. Running EMA DMA Update SP.";
         BGW.ReportProgress(0);
         ClsDataBase.UpdateEmaDma();
         ClsLog.WriteLog("Running EMA DMA SP...Completed");
     }
     catch (Exception ex)
     {
         ClsLog.WriteLog(ex.Message);
     }
 }
Exemplo n.º 13
0
        public static void DownlaodBulkEodData(ref BackgroundWorker BGW, List <DateTime> Dates)
        {
            try
            {
                Collection <ClsScriptsMaster> ScriptCodes = ClsDataBase.GetScriptsCode(false);
                Collection <ClsPriceDataSet>  ColEodData  = new Collection <ClsPriceDataSet>();
                ArrayList    TempData     = new ArrayList();
                string       json         = "";
                ClsDashBoard ObjDashBoard = new ClsDashBoard();
                ClsDashBoard.OverallPbarMax = ScriptCodes.Count;
                //ClsDashBoard.ChangeOPbarValue = false;
                //ClsDashBoard.OverallPbarMax = ScriptCodes.Count;
                int i = 1; int j = 1;
                foreach (var Scode in ScriptCodes)
                {
                    ClsLog.WriteLog("Starting Data Download for script: " + Scode.ScriptsName + "(" + Scode.ScriptsCode + ")");

                    QuandlDownloadRequest request = new QuandlDownloadRequest();
                    request.APIKey    = "Fp8XizZQKq3P1pqcHNxc";
                    request.Datacode  = new Datacode("NSE", Scode.ScriptsCode); // PRAGUESE is the source, PX is the datacode
                    request.Format    = FileFormats.JSON;
                    request.Frequency = Frequencies.Daily;
                    request.StartDate = Dates[0];
                    if (Dates.Count > 1)
                    {
                        request.EndDate = Dates[Dates.Count - 1];
                    }
                    //request.Truncation = 150;
                    request.Sort = SortOrders.Descending;
                    //request.Transformation = Transformations.Difference;
                    QuandlConnection conn = new QuandlConnection();
                    try
                    {
                        json = conn.Request(request); // request is your QuandlDownloadRequst
                    }
                    catch (Exception ex)
                    {
                        ClsLog.WriteLog("ERROR: Not able to Downlaoding data for " + Scode.ScriptsCode + ". Exception: " + ex.Message);
                        ClsDataBase.MarkScriptInvalid(Scode.ScriptsCode);
                        continue;
                    }

                    RootObject obj = JsonConvert.DeserializeObject <RootObject>(json);
                    ClsDashBoard.ScriptOStatus    = "Total Scripts: " + ScriptCodes.Count.ToString() + " Downloading " + i.ToString() + " Of " + ScriptCodes.Count.ToString();
                    ClsDashBoard.OverallProgress  = i;
                    ClsDashBoard.ScriptPbarMax    = 0;
                    ClsDashBoard.ChangeSPbarValue = true;
                    BGW.ReportProgress(0);
                    ClsDashBoard.ScriptSStatus = Scode.ScriptsCode + " Total Records:" + obj.data.Count.ToString();
                    ClsLog.WriteLog(Scode.ScriptsCode + " Total Records:" + obj.data.Count.ToString());
                    ClsDashBoard.ScriptPbarMax    = obj.data.Count;
                    ClsDashBoard.ChangeSPbarValue = true;
                    BGW.ReportProgress(0);
                    i = i + 1;
                    j = 0;

                    //ClsDashBoard.ScriptPbarMax = obj.data.Count;
                    if (obj.data.Count != 0)
                    {
                        foreach (var item in obj.data)
                        {
                            ColEodData.Add(new ClsPriceDataSet()
                            {
                                ScriptId   = Scode.ScriptId,
                                Date       = Convert.ToDateTime(item[0].ToString()),
                                OpenPrice  = item[1] != null ? Convert.ToDouble(item[1].ToString()) : 0.0,
                                HighPrice  = item[2] != null ? Convert.ToDouble(item[2].ToString()) : 0.0,
                                LowPrice   = item[3] != null ? Convert.ToDouble(item[3].ToString()) : 0.0,
                                LastPrice  = item[4] != null ? Convert.ToDouble(item[4].ToString()) : 0.0,
                                ClosePrice = item[5] != null ? Convert.ToDouble(item[5].ToString()) : 0.0,
                                TotalVal   = item[6] != null ? Convert.ToDouble(item[6].ToString()) : 0.0,
                                TurnOver   = item[7] != null ? Convert.ToDouble(item[7].ToString()) : 0.0
                            });
                            ClsDashBoard.ScriptProgress = j;
                            BGW.ReportProgress(0);
                            j = j + 1;
                        }
                    }
                    else
                    {
                        ColEodData.Add(new ClsPriceDataSet()
                        {
                            ScriptId   = Scode.ScriptId,
                            Date       = request.StartDate,
                            OpenPrice  = 0.0,
                            HighPrice  = 0.0,
                            LowPrice   = 0.0,
                            LastPrice  = 0.0,
                            ClosePrice = 0.0,
                            TotalVal   = 0.0,
                            TurnOver   = 0.0
                        });
                        ClsDashBoard.ScriptProgress = j;
                        BGW.ReportProgress(0);
                        j = j + 1;
                    }
                    ClsDataBase.UpdateEodData(ColEodData, Scode.TableName);
                    ColEodData.Clear();
                    ClsLog.WriteLog("Data Download for script: " + Scode.ScriptsName + "(" + Scode.ScriptsCode + ") Completed.");
                }
                ClsLog.WriteLog("Running EMA DMA SP...");
                ClsDashBoard.ScriptOStatus = "Data Download Complete. Running EMA DMA Update SP.";
                ClsDashBoard.ScriptSStatus = "Data Download Complete. Running EMA DMA Update SP.";
                BGW.ReportProgress(0);
                ClsDataBase.UpdateEmaDma();
                ClsLog.WriteLog("Running EMA DMA SP...Completed");
            }
            catch (Exception ex)
            {
                ClsLog.WriteLog(ex.Message);
            }
        }
Exemplo n.º 14
0
        private void UpdateDashBoard()
        {
            DataTable dt;
            int       i = 0;

            try
            {
                Dates = ClsDataBase.GetDatesForDataDownload(ClsDataBase.GetConfigValue("LastDataDate"), null);
            }
            catch (Exception ex)
            {
                ClsLog.WriteLog("ERROR: Load Function, DashBoard module: " + ex.Message);
            }
            if (Dates.Count == 0)
            {
                UpdatedData        = true;
                label1.ForeColor   = Color.Green;
                label1.Text        = "Data is up to date!!";
                LabDates.Visible   = false;
                BtnGetData.Enabled = false;
                BtnJson.Enabled    = false;
                groupBox3.Enabled  = true;
                groupBox4.Enabled  = true;
                groupBox5.Enabled  = true;
                groupBox6.Enabled  = true;
                groupBox8.Enabled  = true;
                Grv.Enabled        = true;
            }
            else
            {
                UpdatedData        = false;
                label1.ForeColor   = Color.Red;
                label1.Text        = "Data to be downloaded for the dates(" + Dates.Count.ToString() + ") :";
                BtnGetData.Enabled = true;
                BtnJson.Enabled    = true;
                groupBox3.Enabled  = false;
                groupBox4.Enabled  = false;
                groupBox5.Enabled  = false;
                groupBox6.Enabled  = false;
                groupBox8.Enabled  = false;
                Grv.Enabled        = false;
            }

            foreach (var Date in Dates)
            {
                if (i <= 3)
                {
                    LabDates.Text = LabDates.Text + Date.Date.Day.ToString() + "-" + Date.Date.Month.ToString() + ", ";
                    i++;
                }
                else

                {
                    LabDates.Text = LabDates.Text.Remove(LabDates.Text.Length - 2);
                    LabDates.Text = LabDates.Text + " + " + (Dates.Count - i).ToString() + " More";
                    break;
                }
            }
            if (UpdatedData)
            {
                dt = ClsDataBase.GetBreakOutData(1);
                if (dt != null)
                {
                    DgvAllDma.DataSource = dt;
                }
                PanUpdateEOD.Visible = false;
                dt = ClsDataBase.GetBreakOutData(2);
                if (dt != null)
                {
                    Dgv50_200.DataSource = dt;
                }
                dt = ClsDataBase.GetBreakOutData(5);
                if (dt != null)
                {
                    DgvGCross.DataSource = dt;
                }
                dt = ClsDataBase.GetSwingScriptData();
                if (dt != null)
                {
                    DgvSwing.DataSource = dt;
                }
                dt = ClsDataBase.GetSwingThit(true);
                foreach (DataRow item in dt.Rows)
                {
                    RTxtSwing.AppendText("It's Time to BUY:" + item[0].ToString() + " CP:" + item[1].ToString());
                    RTxtSwing.AppendText(Environment.NewLine);
                }
                RTxtSwing.Select(0, RTxtSwing.Text.Length);
                RTxtSwing.SelectionColor = Color.Green;
                dt = ClsDataBase.GetSwingThit(false);
                var txtLenth = RTxtSwing.Text.Length;
                foreach (DataRow item in dt.Rows)
                {
                    RTxtSwing.AppendText("It's Time to SELL:" + item[0].ToString() + " CP:" + item[1].ToString());
                    RTxtSwing.AppendText(Environment.NewLine);
                }
                RTxtSwing.Select(txtLenth, RTxtSwing.Text.Length - txtLenth);
                RTxtSwing.SelectionColor = Color.Red;
            }
            else
            {
                PanUpdateEOD.Visible = true;
            }
            LabDataDetails.Text = "Latest Data Date: " + ClsDataBase.GetConfigValue("LastDataDate");
        }