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 0 Tracking Error 0 Treynor Ratio 0 Total Fees $0.00 Estimated Strategy Capacity $0 Lowest Capacity Asset |
from AlgorithmImports import * import pickle import base64 class SleepyVioletAlbatross(QCAlgorithm): def Initialize(self): self.SetStartDate(2021, 5, 17) self.SetEndDate(2021, 5, 17) self.UniverseSettings.Resolution = Resolution.Hour #read in the model per these instructions: https://www.quantconnect.com/docs/v2/writing-algorithms/importing-data/bulk-downloads#04-Transport-Binary-Data base64_str = self.Download("https://www.dropbox.com/s/9wn4rgb3w50ge3h/xgboost_13features_grpcd-5_mar-oct20222_apr2021_2.base64?dl=1") #this is my actual model base64_bytes = base64_str.encode('ascii') model = base64.b64decode(base64_bytes) self.calibrated = pickle.loads(model) #load arbitrary data #running this code works on my model locally df = pd.DataFrame() df['RR.10'] = [1.2] df['GRP_CD_scaled'] = [1.0] df['RVOL_CD_scaled'] = [.5] df['CD_RVOL_x_GRP'] = [.50] df['GRP_day'] = [.50] df['PercChangeEMA5'] = [10] df['PercChangeEMA20'] = [20] df['PercChangeEMA50'] = [20] df['PercChangeEMA200'] = [20] df['PercFromPriceEMA5'] = [15] df['PercFromPriceEMA20'] = [5] df['PercFromPriceEMA50'] = [5] df['PercFromPriceEMA200'] = [5] self.Debug(df) #just seeing the df looks correct ############################################### # Errors start from the commented lines below # ############################################### #calibrated_proba = self.calibrated.predict_proba(df) #the above line gives an error: "object of type 'NoneType' has no len()" #it should return "array([[0.46464646, 0.53535354]])" #self.Debug(self.calibrated) #just seeing if the model can be printed out -- this doesn't work either, giving an error: "'CalibratedClassifierCV' object has no attribute 'ensemble'" #but it's correctly calling it a CalibratedClassifierCV def OnData(self, data: Slice): return