/* * QUANTCONNECT.COM - Democratizing Finance, Empowering Individuals. * Lean Algorithmic Trading Engine v2.0. Copyright 2014 QuantConnect Corporation. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ using Newtonsoft.Json; using Newtonsoft.Json.Converters; using QuantConnect.Packets; using System; using System.Collections.Generic; namespace QuantConnect.Api { /// /// Details a live algorithm from the "live/read" Api endpoint /// public class LiveAlgorithmResults : RestResponse { /// /// Error message /// public string Message { get; set; } /// /// Indicates the status of the algorihtm, i.e. 'Running', 'Stopped' /// public string Status { get; set; } /// /// Algorithm deployment ID /// public string DeployId { get; set; } /// /// The snapshot project ID for cloning the live development's source code. /// public int CloneId { get; set; } /// /// Date the live algorithm was launched /// public DateTime Launched { get; set; } /// /// Date the live algorithm was stopped /// public DateTime? Stopped { get; set; } /// /// Brokerage used in the live algorithm /// public string Brokerage { get; set; } /// /// Security types present in the live algorithm /// public string SecurityTypes { get; set; } /// /// Name of the project the live algorithm is in /// public string ProjectName { get; set; } /// /// Name of the data center where the algorithm is physically located. /// public string Datacenter { get; set; } /// /// Indicates if the algorithm is being live shared /// public bool Public { get; set; } /// /// Files present in the project in which the algorithm is /// public List Files { get; set; } /// /// Runtime banner/updating statistics in the title banner of the live algorithm GUI. /// [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] public IDictionary RuntimeStatistics { get; set; } /// /// Charts updates for the live algorithm since the last result packet /// [JsonProperty(NullValueHandling = NullValueHandling.Ignore)] public IDictionary Charts { get; set; } } /// /// Holds information about the state and operation of the live running algorithm /// public class LiveResultsData { /// /// Results version /// public int Version { get; set; } /// /// Temporal resolution of the results returned from the Api /// [JsonProperty(PropertyName = "resolution"), JsonConverter(typeof(StringEnumConverter))] public Resolution Resolution { get; set; } /// /// Class to represent the data groups results return from the Api /// [JsonProperty(PropertyName = "results")] public LiveResult Results { get; set; } } }