generated from mathias/template-go-web
- scripts/prepare_hourly.py: M1→hourly aggregation (realized_vol = sqrt(Σr²), MIN_BARS=30 threshold, no weekend rows, year-based split preserved) - tests/test_prepare_hourly.py: 5 TDD tests, all green - train.py: USE_HOURLY=True, WINDOW=240 (10-day), PATCH_LEN=24 (1-day patches); build() prefers eurusd_hourly.parquet, falls back to daily; EXPORT BLOCK updated - Taskfile.yml: data:fetch:historical, data:prepare:hourly, data:prepare:all, data:test - 98,591 hourly rows (2008-2023) covering GFC, Euro crisis, Brexit, COVID, Fed cycle Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
70 lines
2.1 KiB
YAML
70 lines
2.1 KiB
YAML
version: '3'
|
|
|
|
tasks:
|
|
generate:
|
|
desc: Run templ generate
|
|
cmds: [templ generate]
|
|
build:
|
|
desc: Build all binaries
|
|
deps: [generate]
|
|
cmds:
|
|
- go build -o bin/jepa-fx-risk ./cmd/jepa-fx-risk
|
|
- go build -o bin/eval ./cmd/eval
|
|
run:
|
|
deps: [build]
|
|
cmds: [./bin/jepa-fx-risk]
|
|
test:
|
|
desc: Run all tests
|
|
deps: [generate]
|
|
cmds: [go test ./... -race]
|
|
|
|
data:fetch:
|
|
desc: "Download EUR/USD M1 from histdata (set YEARS env var)"
|
|
cmds: [.venv/bin/python scripts/fetch_data.py]
|
|
data:fetch:historical:
|
|
desc: "Download EUR/USD M1 2008-2018 from histdata"
|
|
cmds:
|
|
- YEARS=2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018 .venv/bin/python scripts/fetch_data.py
|
|
data:prepare:daily:
|
|
desc: "Rebuild eurusd_daily.parquet from all M1 zips"
|
|
cmds: [.venv/bin/python scripts/prepare_data.py]
|
|
data:prepare:hourly:
|
|
desc: "Build eurusd_hourly.parquet from all M1 zips"
|
|
cmds: [.venv/bin/python scripts/prepare_hourly.py]
|
|
data:prepare:all:
|
|
desc: "Build both daily and hourly parquets"
|
|
deps: [data:prepare:daily, data:prepare:hourly]
|
|
data:test:
|
|
desc: "Run Python data pipeline tests"
|
|
cmds: [.venv/bin/python -m pytest tests/test_prepare_hourly.py tests/test_hepa.py -v]
|
|
|
|
eval:probe:
|
|
desc: "Run linear-probe (val_vol_r2) on embeddings from metrics.json"
|
|
cmds: [./bin/eval -metric probe]
|
|
eval:silhouette:
|
|
desc: "Run silhouette on embeddings vs binary HV labels"
|
|
cmds: [./bin/eval -metric silhouette]
|
|
eval:collapse:
|
|
desc: "Run effective-rank collapse diagnostic"
|
|
cmds: [./bin/eval -metric erank]
|
|
lint:
|
|
cmds: [golangci-lint run ./...]
|
|
check:
|
|
desc: Lint, vet, and test (used by CI)
|
|
deps: [generate]
|
|
cmds:
|
|
- golangci-lint run ./...
|
|
- go vet ./...
|
|
- go test ./... -race -count=1
|
|
|
|
context:sync:
|
|
desc: Regenerate all harness-specific context files
|
|
cmds:
|
|
- bash scripts/context-sync.sh
|
|
context:sync:claude:
|
|
cmds: [bash scripts/context-sync.sh claude]
|
|
context:sync:agents:
|
|
cmds: [bash scripts/context-sync.sh agents]
|
|
context:sync:cursor:
|
|
cmds: [bash scripts/context-sync.sh cursor]
|