Overall Statistics |
Total Trades 3 Average Win 0.81% Average Loss 0% Compounding Annual Return 108.286% Drawdown 1.800% Expectancy 0 Net Profit 1.757% Sharpe Ratio 4.112 Probabilistic Sharpe Ratio 65.311% Loss Rate 0% Win Rate 100% Profit-Loss Ratio 0 Alpha 0.503 Beta 0.036 Annual Standard Deviation 0.133 Annual Variance 0.018 Information Ratio -3.51 Tracking Error 0.199 Treynor Ratio 15.203 Total Fees $7.94 Estimated Strategy Capacity $63000000.00 Lowest Capacity Asset AAPL R735QTJ8XC9X |
from AlgorithmImports import * class TestAlgo(QCAlgorithm): def Initialize(self): self.SetStartDate(2022, 9, 1) self.SetEndDate(2022, 9, 10) self.aapl = self.AddEquity("AAPL", Resolution.Minute) self.SetPortfolioConstruction(InsightWeightingPortfolioConstructionModel(lambda x: None)) self.insight_collection = InsightCollection() def OnData(self, data): # Let's emit a signal if no active insight was there if not self.insight_collection.GetActiveInsights(self.Time): insight = Insight("AAPL", Expiry.EndOfMonth, InsightType.Price, InsightDirection.Up, None, None, None, 0.5) self.EmitInsights(insight) self.insight_collection.Add(insight) # For some reason you want to "hedge" the first signal if self.Time == datetime(2022, 9, 2, 11, 0): insight = Insight("AAPL", Expiry.EndOfDay, InsightType.Price, InsightDirection.Down, None, None, None, 0.5) self.EmitInsights(insight) self.insight_collection.Add(insight) self.insight_collection.RemoveExpiredInsights(self.Time)