Files
quant-os/tools/jqdata_snapshot.py
T

38 lines
1004 B
Python

"""Authenticate interactively and build a canonical JQData index snapshot."""
from __future__ import annotations
import argparse
import json
from datetime import date
from adapters.jqdata_local import (
authenticate,
fetch_index_daily_snapshot,
load_jqdata,
)
def main() -> int:
parser = argparse.ArgumentParser()
parser.add_argument("--index", default="000905.XSHG")
parser.add_argument("--start", required=True, type=date.fromisoformat)
parser.add_argument("--end", required=True, type=date.fromisoformat)
parser.add_argument("--output", required=True)
args = parser.parse_args()
sdk = load_jqdata()
authenticate(sdk)
paths = fetch_index_daily_snapshot(
sdk,
index_symbol=args.index,
start_date=args.start,
end_date=args.end,
output_dir=args.output,
)
print(json.dumps({"ok": True, "artifacts": paths}, indent=2, sort_keys=True))
return 0
if __name__ == "__main__":
raise SystemExit(main())