When I run a backtest for the following algortihm, I get the error: Build Error: File: n/a Line:0 Column:0 - return

I don't know why. Please help, I migrated from Quantopian.

import clr clr.AddReference("System") clr.AddReference("QuantConnect.Algorithm") clr.AddReference("QuantConnect.Indicators") clr.AddReference("QuantConnect.Common") from System import * from QuantConnect import * from QuantConnect.Algorithm import * from QuantConnect.Indicators import * import decimal as d  #   QuantConnect Basic Template: #    Fundamentals to using a QuantConnect algorithm. # #    You can view the QCAlgorithm base class on Github:  #    https://github.com/QuantConnect/Lean/tree/master/Algorithm # import numpy as np class MovingAverageCrossAlgorithm(QCAlgorithm):     def Initialize(self):         # Set the cash we'd like to use for our backtest         # This is ignored in live trading          self.SetCash(100000)                  # Start and end dates for the backtest.         # These are ignored in live trading.         self.SetStartDate(2014,1,1)         self.SetEndDate(2017,1,1)                  self.UniverseSettings.Resolution = Resolution.Daily                  # Add assets you'd like to see         self.aapl = self.AddEquity("AAPL")         self.tesla = self.AddEquity("TSLA")         self.boeing = self.AddEquity("BA")         self.fb = self.AddEquity("FB")         #20 Day MA Setup         self.fastAAPL = self.SMA("AAPL", 20, Resolution.Daily);         self.fastBA = self.SMA("BA", 20, Resolution.Daily);         self.fastTSLA = self.SMA("TSLA", 20, Resolution.Daily);         self.fastFB = self.SMA("FB", 20, Resolution.Daily);         #50 Day MA Setup         self.slowAAPL = self.SMA("AAPL", 50, Resolution.Daily);         self.slowBA = self.SMA("BA", 50, Resolution.Daily);         self.slowTSLA = self.SMA("TSLA", 50, Resolution.Daily);         self.slowFB = self.SMA("FB", 50, Resolution.Daily);              if not self.slow.IsReady:             return                           if not self.fast.IsReady:             return                    def OnData(self, slice):         # Simple buy and hold template         hold_AAPL = self.AAPL["AAPL"].Quantity         hold_TSLA = self.TSLA["TSLA"].Quantity         hold_BA = self.BA["BA"].Quantity         hold_FB = self.FB["FB"].Quantity         hist = data[AAPL]         tolerance = 0.00015;                  #Go Long If MA20 > MA50                  if hold_AAPL <= 0:             if self.fastAAPL.Current.Value > self.slowAAPL.Current.Value * d.Decimal(1 + tolerance):                 self.Log("BUY >> {0}".format(self.Securities["TSLA"].Price))                 self.SetHoldings("TSLA", 0.24)                  if hold_TSLA <= 0:             if self.fastTSLA.Current.Value > self.slowTSLA.Current.Value * d.Decimal(1 + tolerance):                 self.Log("BUY  >> {0}".format(self.Securities["TSLA"].Price))                 self.SetHoldings("TSLA", 0.24)                                           if hold_FB <= 0:             # if the fast is greater than the slow, we'll go long             if self.fastFB.Current.Value > self.slowFB.Current.Value * d.Decimal(1 + tolerance):                 self.Log("BUY  >> {0}".format(self.Securities["FB"].Price))                 self.SetHoldings("FB", 0.24)                                                            if hold_BA <= 0:             # if the fast is greater than the slow, we'll go long             if self.fastBA.Current.Value > self.slowBA.Current.Value * d.Decimal(1 + tolerance):                 self.Log("BUY  >> {0}".format(self.Securities["BA"].Price))                 self.SetHoldings("BA", 0.24)                                           #Sell if stock is present and if MA50 > MA20                  if hold_AAPL > 0 and self.fastAAPL.Current.Value < self.slowAAPL.Current.Value:             self.Log("SELL >> {0}".format(self.Securities["AAPL"].Price))             self.Liquidate("AAPL")                      if hold_TSLA > 0 and self.fastTSLA.Current.Value < self.slowTSLA.Current.Value:             self.Log("SELL >> {0}".format(self.Securities["TSLA"].Price))             self.Liquidate("TSLA")                                                if hold_BA > 0 and self.fastBA.Current.Value < self.slowBA.Current.Value:             self.Log("SELL >> {0}".format(self.Securities["BA"].Price))             self.Liquidate("BA")                                                if hold_FB > 0 and self.fastFB.Current.Value < self.slowFB.Current.Value:             self.Log("SELL >> {0}".format(self.Securities["FB"].Price))             self.Liquidate("FB")                                   self.previous = self.Time

 

Author