def perform_finance_exp_test(): timestamps_list = fetch_hawkes_bund_data() one_day_movement_up = timestamps_list[0][0] finance_train_times = one_day_movement_up[:round( len(one_day_movement_up) * 0.8)] finance_test_times = one_day_movement_up[ round(len(one_day_movement_up) * 0.8):] decay_candidates = np.logspace(0, 6, 20) selected_decay = try_and_choose_decay([[finance_train_times]], decay_candidates) model, exp_simulation = fit_exp_hawkes_and_simulate( [[finance_train_times]], selected_decay, round(np.max(finance_test_times)) + 10) print("predicted: " + str(exp_simulation.timestamps)) print("real: " + str(finance_train_times)) predicted_in_test_period = exp_simulation.timestamps[0][ exp_simulation.timestamps[0] > finance_test_times[0]] real_zero_extends = np.full( (len(predicted_in_test_period) - len(finance_test_times)), 0) test_df = pd.DataFrame( { 'real': np.append(np.around(finance_test_times), real_zero_extends, 0), 'predict': np.around(predicted_in_test_period) }, columns=['real', 'predict']) test_df.to_csv('../results/finance_obtained_times.csv', index=False) # evaulation_df = pd.DataFrame(columns=['name', 'dataset', "score_on_train"]) evaluation_df = pd.read_csv('../results/baseline_scores.csv') evaluation_df.loc[len(evaluation_df)] = [ 'HawkesExpKern', 'finance', model.score(), model.score([[finance_test_times]]) ] evaluation_df.to_csv('../results/baseline_scores.csv', index=False)
import numpy as np from tick.dataset import fetch_hawkes_bund_data from tick.hawkes import HawkesConditionalLaw from tick.plot import plot_hawkes_kernel_norms from tick.plot import plot_hawkes_kernels from tick.base import TimeFunction import seaborn as sns sns.set() import matplotlib.pyplot as plt timestamps_list = fetch_hawkes_bund_data() abscisses = np.linspace(0., 10., 200) def R_X_realisation(element): times = np.array(element) times_N_plus = times[2] times_N_moins = times[3] time_axe = np.sort(np.concatenate((times_N_moins, times_N_plus))) I_R_X = []