INNER CODE UNIT · Python
forward_returns
initial-d/ml-quant-trading · src/mlquant/cli/main.py:271
forward_returns=fwd_ret[: oos + 1],
)
n_features = ds.features.shape[1]
model = MLPRegressor(in_dim=n_features, hidden=cfg.get("hidden", 128))
trainer = Trainer(model, AdjMSELoss(gamma=cfg.get("loss_gamma", 0.1)),
TrainConfig(**(cfg.train.to_dict() if "train" in cfg else {})))
trainer.fit(ds)
# Write predictions for every tradable out-of-sample (t, n) cell.
with torch.no_grad():
T, N, F = feat_blob["factors"].shape
flat = feat_blob["factors"].reshape(-1, F)
pred = model(flat.to(trainer.cfg.device)).cpu().reshape(T, N)
pred = pred * feat_blob["mask"].float()
pred[:oos] = 0.0
torch.save({"pred": pred, "oos_start": oos}, art / "predictions.pt")
click.echo(
f"wrote predictions: {pred.shape} (trained on dates [0, {oos}),"