# set trade date tradeDate = tradeDate.strftime('%Y-%m-%d') print(tradeDate) # get first/last row df_start_date = temp_raw_df.Date[0] lastRow = temp_raw_df.shape[0] df_end_date = temp_raw_df.Date[lastRow-1] feat_df = dSet.set_date_range(temp_raw_df, df_start_date, df_end_date) # Resolve any NA's for now feat_df.fillna(method='ffill', inplace=True) #set beLong level beLongThreshold = 0.000 feat_df = ct.setTarget(temp_raw_df, "Long", beLongThreshold) # Adding features with new day input_dict = sysUtil.get_dict(system_directory, 'input_dict') feat_df = featureGen.generate_features(feat_df, input_dict) feat_df = transf.normalizer(feat_df, 'Volume', 50) col_vals = [k for k,v in feature_dict.items() if v == 'Drop'] to_drop = ['Open','High','Low', 'gainAhead', 'Close', 'Volume', 'AdjClose', 'beLong'] for x in to_drop: col_vals.append(x) model_data = dSet.drop_columns(feat_df, col_vals) # Retrieve model best_model_name = "SVM" best_model_segment = "segment-0"
isOosDates = timeUtil.is_oos_data_split(issue, pivotDate, is_oos_ratio, oos_months, segments) dataLoadStartDate = isOosDates[0] is_start_date = isOosDates[1] oos_start_date = isOosDates[2] is_months = isOosDates[3] is_end_date = isOosDates[4] oos_end_date = isOosDates[5] #load data dataSet = dSet.read_issue_data(issue) dataSet = dSet.set_date_range(dataSet, dataLoadStartDate, pivotDate) #set beLong level beLongThreshold = 0.0 dataSet = ct.setTarget(dataSet, "Long", beLongThreshold) # def stationarity_tests(s_df, signal, issue): # print("=============================================================") # adf_test(s_df, signal, issue) # hurst_setup(s_df[signal][:], issue) # print("========================================") for i in range(segments): modelData = dSet.set_date_range(dataSet, is_start_date, is_end_date) print("\n\n\nIN SAMPLE") # Stationarity tests stationarity_tests(modelData, 'Close', issue) stationarity_tests(modelData, 'beLong', issue) #print_beLongs(modelData) if doPlot:
print(new_data_df.tail(2)) # get first row df_start_date = new_data_df.Date[0] # get last row lastRow = new_data_df.shape[0] df_end_date = new_data_df.Date[lastRow - 1] feat_df = dSet.set_date_range(new_data_df, df_start_date, df_end_date) # Resolve any NA's for now feat_df.fillna(method='ffill', inplace=True) #set beLong level beLongThreshold = 0.000 feat_df = ct.setTarget(new_data_df, "Long", beLongThreshold) print(feat_df.tail(2)) # Adding features with new day input_dict = sysUtil.get_dict(system_directory, 'input_dict') feat_df = featureGen.generate_features(feat_df, input_dict) feat_df = transf.normalizer(feat_df, 'Volume', 50) col_vals = [k for k, v in feature_dict.items() if v == 'Drop'] to_drop = [ 'Open', 'High', 'Low', 'gainAhead', 'Close', 'Volume', 'AdjClose', 'beLong' ] for x in to_drop: