| 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
#self.Debug(alpha)
#self.Debug(beta)
#self.Debug(gamma)
#NMA with SMA
#self.sma1 = self.SMA(self.btc, length1, Resolution.Daily)
#self.sma_sma = IndicatorExtensions.Of(SimpleMovingAverage(length2), self.sma1)
#NMA with EMA
self.ema1 = self.EMA(self.btc, length1)
self.ema_ema = IndicatorExtensions.Of(SimpleMovingAverage(length2), self.ema1)
self.nma_a = IndicatorExtensions.Times(self.ema1, float(gamma))
self.nma_b = IndicatorExtensions.Times(self.ema_ema, float(beta))
self.nma = IndicatorExtensions.Minus(self.nma_a, self.nma_b)
self.nma2 = IndicatorExtensions.Minus(IndicatorExtensions.Times(self.ema1, float(gamma)),IndicatorExtensions.Times(self.ema_ema, float(beta)))
def OnData(self, data):
if self.IsWarmingUp:
return
if not self.ema1.IsReady or not self.ema_ema.IsReady:
return
#self.Plot("Benchmark", "SMA1", self.sma1.Current.Value)
#self.Plot("Benchmark", "SMA2 of SMA1", self.sma_sma.Current.Value)
#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)
self.Plot("Benchmark", "NMA_2", self.nma2.Current.Value)