MCPcopy Index your code
hub / github.com/FinancialComputingUCL/LOBFrame / __init__

Method __init__

optimizers/executor.py:22–171  ·  view source on GitHub ↗
(self, experiment_id, general_hyperparameters, model_hyperparameters, torch_dataset_preparation=False, torch_dataset_preparation_backtest=False)

Source from the content-addressed store, hash-verified

20
21class Executor:
22 def __init__(self, experiment_id, general_hyperparameters, model_hyperparameters, torch_dataset_preparation=False, torch_dataset_preparation_backtest=False):
23 self.manager = None
24 self.model = None
25 self.experiment_id = experiment_id
26 self.torch_dataset_preparation = torch_dataset_preparation
27 self.torch_dataset_preparation_backtest = torch_dataset_preparation_backtest
28
29 self.training_stocks_string, self.test_stocks_string = get_training_test_stocks_as_string(general_hyperparameters)
30
31 if self.torch_dataset_preparation:
32 create_tree(f"./torch_datasets/threshold_{model_hyperparameters['threshold']}/batch_size_{model_hyperparameters['batch_size']}/training_{self.training_stocks_string}_test_{self.test_stocks_string}/{model_hyperparameters['prediction_horizon']}/")
33
34 if general_hyperparameters["model"] == "deeplob":
35 self.model = DeepLOB(lighten=model_hyperparameters["lighten"])
36 elif general_hyperparameters["model"] == "transformer":
37 self.model = Transformer(lighten=model_hyperparameters["lighten"])
38 elif general_hyperparameters["model"] == "itransformer":
39 self.model = ITransformer(lighten=model_hyperparameters["lighten"])
40 elif general_hyperparameters["model"] == "lobtransformer":
41 self.model = LobTransformer(lighten=model_hyperparameters["lighten"])
42 elif general_hyperparameters["model"] == "dla":
43 self.model = DLA(lighten=model_hyperparameters["lighten"])
44 elif general_hyperparameters["model"] == "cnn1":
45 self.model = CNN1()
46 elif general_hyperparameters["model"] == "cnn2":
47 self.model = CNN2()
48 elif general_hyperparameters["model"] == "binbtabl":
49 self.model = BiN_BTABL(120, 40, 100, 5, 3, 1)
50 elif general_hyperparameters["model"] == "binctabl":
51 self.model = BiN_CTABL(120, 40, 100, 5, 120, 5, 3, 1)
52 elif general_hyperparameters["model"] == "axiallob":
53 self.model = AxialLOB()
54 elif general_hyperparameters["model"] == "hlob":
55 homological_structures = torch.load(f"./torch_datasets/threshold_{model_hyperparameters['threshold']}/batch_size_{model_hyperparameters['batch_size']}/training_{self.training_stocks_string}_test_{self.test_stocks_string}/complete_homological_structures.pt")
56 self.model = Complete_HCNN(lighten=model_hyperparameters["lighten"], homological_structures=homological_structures)
57
58 if self.torch_dataset_preparation:
59 # Prepare the training dataloader.
60 dataset = CustomDataset(
61 dataset=general_hyperparameters["dataset"],
62 learning_stage="training",
63 window_size=model_hyperparameters["history_length"],
64 shuffling_seed=model_hyperparameters["shuffling_seed"],
65 cache_size=1,
66 lighten=model_hyperparameters["lighten"],
67 threshold=model_hyperparameters["threshold"],
68 all_horizons=general_hyperparameters["horizons"],
69 prediction_horizon=model_hyperparameters["prediction_horizon"],
70 targets_type=general_hyperparameters["targets_type"],
71 balanced_dataloader=model_hyperparameters["balanced_sampling"],
72 training_stocks=general_hyperparameters["training_stocks"],
73 validation_stocks=general_hyperparameters["target_stocks"],
74 target_stocks=general_hyperparameters["target_stocks"]
75 )
76 torch.save(dataset, f"./torch_datasets/threshold_{model_hyperparameters['threshold']}/batch_size_{model_hyperparameters['batch_size']}/training_{self.training_stocks_string}_test_{self.test_stocks_string}/{model_hyperparameters['prediction_horizon']}/training_dataset.pt")
77 elif self.torch_dataset_preparation is False and self.torch_dataset_preparation_backtest is False:
78 dataset = torch.load(f"./torch_datasets/threshold_{model_hyperparameters['threshold']}/batch_size_{model_hyperparameters['batch_size']}/training_{self.training_stocks_string}_test_{self.test_stocks_string}/{model_hyperparameters['prediction_horizon']}/training_dataset.pt")
79 self.train_loader = DataLoader(

Callers

nothing calls this directly

Calls 15

create_treeFunction · 0.90
DeepLOBClass · 0.90
TransformerClass · 0.90
ITransformerClass · 0.90
LobTransformerClass · 0.90
DLAClass · 0.90
CNN1Class · 0.90
CNN2Class · 0.90
BiN_BTABLClass · 0.90
BiN_CTABLClass · 0.90
AxialLOBClass · 0.90

Tested by

no test coverage detected