build_eth_nextgen_micro_signal_intent.py 828 B

12345678910111213141516171819202122
  1. from __future__ import annotations
  2. import argparse
  3. import json
  4. from okx_codex_trader.eth_nextgen_micro import JSON_REPORT, MARKDOWN_REPORT, REPORT_DIR, build_payload, markdown_report
  5. def main() -> int:
  6. parser = argparse.ArgumentParser(description="Build a read-only ETH nextgen + micro signal intent payload.")
  7. parser.add_argument("--no-write", action="store_true")
  8. args = parser.parse_args()
  9. payload = build_payload()
  10. if not args.no_write:
  11. REPORT_DIR.mkdir(parents=True, exist_ok=True)
  12. JSON_REPORT.write_text(json.dumps(payload, indent=2, sort_keys=True) + "\n", encoding="utf-8")
  13. MARKDOWN_REPORT.write_text(markdown_report(payload), encoding="utf-8")
  14. print(json.dumps(payload, indent=2, sort_keys=True))
  15. return 0
  16. if __name__ == "__main__":
  17. raise SystemExit(main())