Overall Statistics |
Total Trades 1 Average Win 130.78% Average Loss 0% Compounding Annual Return 5.362% Drawdown 74.500% Expectancy 0 Net Profit 130.78% Sharpe Ratio 0.324 Loss Rate 0% Win Rate 100% Profit-Loss Ratio 0 Alpha 0.026 Beta 1.04 Annual Standard Deviation 0.335 Annual Variance 0.112 Information Ratio 0.113 Tracking Error 0.255 Treynor Ratio 0.104 |
namespace QuantConnect { /// <summary> /// QC University algorithm to demonstrate split and dividend events /// </summary> public class QCUTotalReturnsAlgorithm : QCAlgorithm { /// <summary> /// Initialise the data and resolution required, as well as the cash and start-end dates for your algorithm. All algorithms must initialized. /// </summary> public override void Initialize() { SetStartDate(1998, 01, 01); //Set Start Date SetEndDate(2014, 01, 01); //Set End Date SetCash(100000); //Set Strategy Cash // Find more symbols here: http://quantconnect.com/data AddSecurity(SecurityType.Equity, "MSFT", Resolution.Minute); Securities["MSFT"].SetDataNormalizationMode(DataNormalizationMode.SplitAdjusted); } /// <summary> /// OnData event is the primary entry point for your algorithm. Each new data point will be pumped in here. /// </summary> /// <param name="data">TradeBars IDictionary object with your stock data</param> public void OnData(TradeBars data) { if (!Portfolio.Invested) { SetHoldings("MSFT", .5); Debug("Purchased Stock"); } } public void OnData(Dividends data) // update this to Dividends dictionary { var dividend = data["MSFT"]; Debug(string.Format("{0} >> DIVIDEND >> {1} - {2} - {3} - {4}", dividend.Time.ToString("o"), dividend.Symbol, dividend.Distribution.ToString("C"), Portfolio.Cash, Portfolio["MSFT"].Price.ToString("C"))); } public void OnData(Splits data) { var split = data["MSFT"]; Debug(string.Format("{0} >> SPLIT >> {1} - {2} - {3} - {4} - {5}", split.Time.ToString("o"), split.Symbol, split.SplitFactor, Portfolio.Cash, Portfolio["MSFT"].Quantity, Portfolio["MSFT"].Price.ToString("C"))); } } }