/// <summary> /// Create the UX. /// </summary> public LeanWinForm() { InitializeComponent(); //Form Setup: CenterToScreen(); WindowState = FormWindowState.Maximized; Text = "QuantConnect Lean Algorithmic Trading Engine: v" + Globals.Version; //GECKO WEB BROWSER: Create the browser control // https://www.nuget.org/packages/GeckoFX/ // -> If you don't have IE. #if !__MonoCS__ Gecko.Xpcom.Initialize(); _geckoBrowser = new GeckoWebBrowser { Dock = DockStyle.Fill, Name = "browser" }; splitPanel.Panel1.Controls.Add(_geckoBrowser); #else // MONO WEB BROWSER: Create the browser control // Default shipped with VS and Mono. Works OK in Windows, and compiles in linux. _monoBrowser = new WebBrowser() { Dock = DockStyle.Fill, Name = "Browser" }; splitPanel.Panel1.Controls.Add(_monoBrowser); #endif _logging = new QueueLogHandler(); }
public DesktopView() { InitializeComponent(); browser.Loaded += OnLoaded; Unloaded += OnUnloaded; _logging = new QueueLogHandler(); // Text = "QuantConnect Lean Algorithmic Trading Engine: v" + Globals.Version; }
/// <summary> /// Create the UX. /// </summary> /// <param name="notificationHandler">Messaging system</param> /// <param name="job">Job to use for URL generation</param> public LeanWinForm(IMessagingHandler notificationHandler, AlgorithmNodePacket job) { InitializeComponent(); //Form Setup: CenterToScreen(); WindowState = FormWindowState.Maximized; Text = "QuantConnect Lean Algorithmic Trading Engine: v" + Globals.Version; //Save off the messaging event handler we need: _job = job; _liveMode = job is LiveNodePacket; _messaging = (EventMessagingHandler)notificationHandler; var url = GetUrl(job, _liveMode); //GECKO WEB BROWSER: Create the browser control // https://www.nuget.org/packages/GeckoFX/ // -> If you don't have IE. #if !__MonoCS__ Gecko.Xpcom.Initialize(); _geckoBrowser = new GeckoWebBrowser { Dock = DockStyle.Fill, Name = "browser" }; _geckoBrowser.DOMContentLoaded += BrowserOnDomContentLoaded; _geckoBrowser.Navigate(url); splitPanel.Panel1.Controls.Add(_geckoBrowser); #else // MONO WEB BROWSER: Create the browser control // Default shipped with VS and Mono. Works OK in Windows, and compiles in linux. _monoBrowser = new WebBrowser() { Dock = DockStyle.Fill, Name = "Browser" }; _monoBrowser.DocumentCompleted += MonoBrowserOnDocumentCompleted; _monoBrowser.Navigate(url); splitPanel.Panel1.Controls.Add(_monoBrowser); #endif //Setup Event Handlers: _messaging.DebugEvent += MessagingOnDebugEvent; _messaging.LogEvent += MessagingOnLogEvent; _messaging.RuntimeErrorEvent += MessagingOnRuntimeErrorEvent; _messaging.HandledErrorEvent += MessagingOnHandledErrorEvent; _messaging.BacktestResultEvent += MessagingOnBacktestResultEvent; _logging = Log.LogHandler as QueueLogHandler; //Show warnings if the API token and UID aren't set. if (_job.UserId == 0) { MessageBox.Show("Your user id is not set. Please check your config.json file 'job-user-id' property.", "LEAN Algorithmic Trading", MessageBoxButtons.OK, MessageBoxIcon.Error); } if (_job.Channel == "") { MessageBox.Show("Your API token is not set. Please check your config.json file 'api-access-token' property.", "LEAN Algorithmic Trading", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void ChecksBothOpenInterestAndQuoteFiles() { var testHandler = new QueueLogHandler(); Log.LogHandler = testHandler; var symbol = Symbol.CreateFuture("NonExisting", Market.USA, DateTime.UtcNow); var result = _provider.GetFutureContractList(symbol, new DateTime(2013, 10, 11)).ToList(); Assert.IsTrue(testHandler.Logs.Any(entry => entry.Message.Contains("BacktestingFutureChainProvider.GetFutureContractList(): Failed, files not found:"))); Assert.IsEmpty(result); }
public void ChecksBothOpenInterestAndQuoteFiles() { var testHandler = new QueueLogHandler(); Log.LogHandler = testHandler; var originalValue = Log.DebuggingEnabled; Log.DebuggingEnabled = true; var symbol = Symbol.CreateFuture("NonExisting", Market.USA, new DateTime(2013, 11, 11)); var result = _provider.GetFutureContractList(symbol, new DateTime(2013, 10, 11)).ToList(); Log.DebuggingEnabled = originalValue; Assert.IsTrue(testHandler.Logs.Any(entry => entry.Message.Contains("found no source of contracts for NONEXISTING 2X for date 20131011 for any tick type", StringComparison.InvariantCultureIgnoreCase))); Assert.IsEmpty(result); }
public void DisposeDoesNotErrorWhenStorageFolderAlreadyDeleted() { var testHandler = new QueueLogHandler(); Log.LogHandler = testHandler; using (var store = new LocalObjectStore()) { store.Initialize("unused", 0, 0, "", new Controls()); Directory.Delete("./LocalObjectStoreTests/unused"); } Assert.IsFalse(testHandler.Logs.Any(message => message.Message.Contains("Error deleting storage directory."))); }