29 lines
1.1 KiB
Python
29 lines
1.1 KiB
Python
from __future__ import annotations
|
|
|
|
import argparse
|
|
from pathlib import Path
|
|
|
|
import _bootstrap # noqa: F401
|
|
from trader_training.direction_opportunity_dataset import build_direction_opportunity_dataset
|
|
from trader_training.io_utils import add_common_args, setup_logging
|
|
|
|
|
|
def main() -> None:
|
|
parser = argparse.ArgumentParser()
|
|
add_common_args(parser)
|
|
parser.add_argument("--direction-dataset-path", type=Path)
|
|
parser.add_argument("--entry-dataset-path", type=Path)
|
|
parser.add_argument("--output-path", type=Path)
|
|
parser.add_argument("--opportunity-bps", type=float, required=True)
|
|
parser.add_argument("--min-advantage-bps", type=float, default=5.0)
|
|
parser.add_argument("--long-edge-column", default="long_max_achievable_net_edge_bps")
|
|
parser.add_argument("--short-edge-column", default="short_max_achievable_net_edge_bps")
|
|
parser.add_argument("--label-method", default="DIRECTION_OPPORTUNITY_FROM_ENTRY_MFE_V1")
|
|
args = parser.parse_args()
|
|
setup_logging()
|
|
build_direction_opportunity_dataset(args)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|