Overall Statistics |
Total Trades 0 Average Win 0% Average Loss 0% Compounding Annual Return 0% Drawdown 0% Expectancy 0 Net Profit 0% Sharpe Ratio 0 Probabilistic Sharpe Ratio 0% Loss Rate 0% Win Rate 0% Profit-Loss Ratio 0 Alpha 0 Beta 0 Annual Standard Deviation 0 Annual Variance 0 Information Ratio -4.459 Tracking Error 0.636 Treynor Ratio 0 Total Fees $0.00 Estimated Strategy Capacity $0 Lowest Capacity Asset |
class MuscularGreenAlbatross(QCAlgorithm): def Initialize(self): self.SetStartDate(2020, 1, 1) # Set Start Date self.SetEndDate(2021, 3, 1) #Set End Date self.SetCash(100000) # Set Strategy Cash self.SetBrokerageModel(BrokerageName.Bitfinex, AccountType.Cash) #Broker Modell self.Settings.FreePortfolioValuePercentage = 0.05 self.positionSizeUSD = 5000 self.btc = self.AddCrypto("BTCUSD", Resolution.Daily).Symbol #self.SetBenchmark("BTCUSD") #NMA Indikator length1 = 120 length2 = 12 self.SetWarmUp(length1 + length2, Resolution.Daily) alpha = float(length1 / length2) beta = (alpha * float(length1 - 1)) / float(length1 - alpha) gamma = float(beta) + 1 #NMA with EMA self.ema1 = self.EMA(self.btc, length1) #120 day EMA self.ema_ema = IndicatorExtensions.Of(SimpleMovingAverage(length2), self.ema1) #12 day EMA of 120 day EMA self.nma_a = IndicatorExtensions.Times(self.ema1, float(gamma)) #multiply 120 day EMA with gamma self.nma_b = IndicatorExtensions.Times(self.ema_ema, float(beta)) #multiply 12 day EMA with beta self.nma = IndicatorExtensions.Minus(self.nma_a, self.nma_b) #subtract nma_b from nma_a def OnData(self, data): if self.IsWarmingUp: return if not self.ema1.IsReady or not self.ema_ema.IsReady: return #self.Plot("Benchmark", "EMA1", self.ema1.Current.Value) #self.Plot("Benchmark", "EMA2 of EMA1", self.ema_ema.Current.Value) self.Plot("Benchmark", "NMA", self.nma.Current.Value) self.Plot("Benchmark", "NMA_A", self.nma_a.Current.Value) self.Plot("Benchmark", "NMA_B", self.nma_b.Current.Value)