예제 #1
0
        private bool SafeDownload(string path)
        {
            bool result = false;

            try
            {
                Log("Downloading quotes...");
                using (DataFeedImpl impl = DataFeedImpl.Create())
                {
                    DataFeed feed = impl.Instance;
                    using (DataFeedStorage storage = new DataFeedStorage(path, StorageProvider.Ntfs, 1, feed, false))
                    {
                        HistoryInfo info          = storage.Online.GetQuotesInfo(m_symbol, 0);
                        string      availbaleFrom = info.AvailableFrom.ToString(cDateTimeFormat);
                        string      availableTo   = info.AvailableTo.ToString(cDateTimeFormat);
                        Log("Quotes history available from = {0} to = {1}", availbaleFrom, availableTo);
                        DateTime startTime = m_timestamp.AddSeconds(-m_duration);
                        Log("Start time = {0}", startTime.ToString(cDateTimeFormat));
                        DateTime endTime = m_timestamp;
                        Log("End time = {0}", endTime.ToString(cDateTimeFormat));
                        this.Quotes = storage.Online.GetQuotes(m_symbol, startTime, endTime, 0);
                    }
                }

                Log("{0} quotes have been loaded", this.Quotes.Length);

                result = this.Quotes.Length > 0;
            }
            catch (Exception ex)
            {
                Log(ex.Message);
            }

            return(result);
        }
예제 #2
0
        private void OnOK(object sender, EventArgs e)
        {
            this.DialogResult = DialogResult.OK;
            FixConnectionStringBuilder builder = new FixConnectionStringBuilder();

            builder.TradingPlatformAddress = m_address.Text;
            builder.TradingPlatformPort    = int.Parse(m_port.Text);
            builder.Username         = m_username.Text;
            builder.Password         = m_password.Text;
            builder.SecureConnection = m_ssl.Checked;

            DataFeedImpl.UpdateConnectionSettings(builder);
        }
예제 #3
0
        public ConnectionsSettingsDialog()
        {
            InitializeComponent();
            FixConnectionStringBuilder builder = DataFeedImpl.LoadConnectionSettings();

            if (null == builder)
            {
                builder = new FixConnectionStringBuilder();
                builder.TradingPlatformPort = 5003;
                builder.SecureConnection    = true;
            }
            m_address.Text     = builder.TradingPlatformAddress;
            m_port.Text        = builder.TradingPlatformPort.ToString();
            m_ssl.Checked      = builder.SecureConnection;
            m_username.Text    = builder.Username;
            m_password.Text    = builder.Password;
            m_port.Validating += OnPortValidating;
        }