Beispiel #1
0
        private void Form1_Load(object sender, EventArgs e)
        {
            if (!Directory.Exists("CONVERTED"))
            {
                Directory.CreateDirectory("CONVERTED");
            }

            string md = Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "\\NinjaTrader 8\\db\\NinjaTrader.sdf";

            SqlCeConnection scc = new SqlCeConnection(@"data source=" + md);

            scc.Open();

            string query = "SELECT * FROM MasterInstruments ORDER BY Name";

            SqlCeCommand command = new SqlCeCommand(query, scc);

            SqlCeDataReader reader = command.ExecuteReader();

            while (reader.Read())
            {
                MI tmp = new MI();
                tmp.Name     = reader[5].ToString();
                tmp.TickSize = Convert.ToDouble(reader[8]);
                tmp.Type     = (InstrumentType)reader[3];
                lstMaster.Add(tmp);
            }
            reader.Close();

            FillTreeView();
        }
Beispiel #2
0
        private void button3_Click(object sender, EventArgs e)
        {
            if (tv1.SelectedNode == null)
            {
                return;
            }
            try
            {
                if (tv1.SelectedNode.Level == 1)
                {
                    string md = Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "\\NinjaTrader 8\\db\\replay\\";
                    string fn = md + tv1.SelectedNode.Parent.Text + "\\" + tv1.SelectedNode.Text + ".nrd";
                    if (File.Exists(fn))
                    {
                        button3.Enabled = false;
                        string[]         s      = tv1.SelectedNode.Parent.Text.Split(' ');
                        string           MIname = s[0];
                        MI               tmp    = lstMaster.First(i => i.Name == MIname);
                        MasterInstrument mi     = new MasterInstrument();
                        mi.Name           = tmp.Name;
                        mi.InstrumentType = tmp.Type;
                        mi.TickSize       = tmp.TickSize;
                        DateTime exp   = new DateTime(2099, 12, 12);
                        int      month = 12;
                        int      year  = 0;
                        if (s.Length == 2)
                        {
                            month = Convert.ToInt16(s[1].Split('-')[0]);
                            year  = 2000 + Convert.ToInt16(s[1].Split('-')[1]);
                            exp   = new DateTime(year, month, 15);
                        }

                        Instrument instrument = new Instrument
                        {
                            Exchange         = Exchange.Default,
                            Expiry           = exp,
                            MasterInstrument = mi,
                        };
                        DateTime dt = new DateTime(Convert.ToInt16(tv1.SelectedNode.Text.Substring(0, 4)),
                                                   Convert.ToInt16(tv1.SelectedNode.Text.Substring(4, 2)),
                                                   Convert.ToInt16(tv1.SelectedNode.Text.Substring(6, 2)));
                        if (!Directory.Exists("CONVERTED\\" + tv1.SelectedNode.Parent.Text + "\\"))
                        {
                            Directory.CreateDirectory("CONVERTED\\" + tv1.SelectedNode.Parent.Text + "\\");
                        }
                        MarketReplay.DumpMarketDepth(instrument,
                                                     dt.AddDays(1), dt.AddDays(1),
                                                     "CONVERTED\\" + tv1.SelectedNode.Parent.Text + "\\" + tv1.SelectedNode.Text + ".txt");
                        button3.Enabled = true;
                        MessageBox.Show("Сonversion completed");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Error" + Environment.NewLine + ex.Message);
                button3.Enabled = true;
            }
        }