Backtest Workflow#
Orchestrates a backtest for a single model over multiple historical snapshots.
This workflow iterates through available historical data, using each day's data to calibrate a model and the subsequent day's data to evaluate its out-of-sample performance.
Source code in src/quantfin/workflows/backtest_workflow.py
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
|
__init__(ticker: str, model_config: dict)
#
Initializes the backtest workflow.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
ticker
|
str
|
The stock ticker to run the backtest for. |
required |
model_config
|
dict
|
A dictionary "recipe" defining how to calibrate the model. |
required |
Source code in src/quantfin/workflows/backtest_workflow.py
run()
#
Executes the full backtesting loop.
It fetches available dates, then for each calibration/evaluation pair,
it runs a DailyWorkflow
to calibrate the model and then evaluates
the out-of-sample RMSE on the next day's data.
Source code in src/quantfin/workflows/backtest_workflow.py
save_results()
#
Saves the collected backtest results to a CSV file in the artifacts directory.