calibrate-first – skill Dữ liệu & Khoa học cho agent AI
Đo ngưỡng phát hiện tối thiểu của tập dữ liệu trước khi đọc bất kỳ kết quả tín hiệu giao dịch nào, đăng ký trước mọi bài kiểm tra, và báo cáo 'quá nhỏ để thấy' là UNDECIDABLE, không phải 'không có hiệu ứng'.
Cài skill calibrate-first bằng một lệnh
Chọn công cụ bạn đang dùng, copy lệnh và dán vào terminal. Skill sẽ nằm trong thư mục skills của công cụ đó và sẵn sàng dùng ở phiên làm việc tiếp theo.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/calibrate-first-6bf7c.tgz | tar xz -C ~/.claude/skills
Gọi trong Claude Code: /calibrate-first – rồi mô tả công việc bạn muốn làm.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/calibrate-first-6bf7c.tgz | tar xz -C ~/.codex/skills
Gọi trong Codex: $calibrate-first – rồi mô tả công việc bạn muốn làm.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/calibrate-first-6bf7c.tgz | tar xz -C ~/.hermes/skills
Gọi trong Hermes Agent: /calibrate-first – rồi mô tả công việc bạn muốn làm.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/calibrate-first-6bf7c.tgz | tar xz -C ~/.deepcode/skills
Gọi trong DeepSeek: /calibrate-first – rồi mô tả công việc bạn muốn làm.
Nội dung SKILL.md
Nội dung SKILL.md gốc bằng tiếng Anh.
Calibrate First
Overview
A backtest result is only as good as the instrument that produced it. This skill
makes Claude measure the instrument before it measures the signal. It drives
[assay-lite](https://github.com/assaylabdesk-sudo/assay-lite), a single-file,
offline Python tool. floor injects synthetic signals of known strength into the
user's own returns to find the smallest effect the data can detect. test charges
every run to an append-only registry *before* computing, and a result below the
floor is reported as UNDECIDABLE rather than "the signal doesn't work".
When to Use
- The user asks whether a trading signal, factor or ranking "works", is
"significant", or has an "edge".
- The user wants to read an information coefficient (IC) or a cross-sectional
backtest result, especially a null one.
- The user is about to try several variants of an idea and pick the best one.
Do not use it for single-asset timing signals, intraday data, live trading or
position sizing. assay-lite does not cover them.
How It Works
Use only a previously reviewed local assay_lite.py at an explicit absolute path, verified against commit 78104a4356541affe2a469dfdf69cb1e418eb0c5, together with a fully locked and reviewed numpy/pandas/scipy environment. This skill does not download code or resolve dependencies. If absent, stop before execution and return the input schema and analysis plan. Do not substitute a same-named project file. A separate installation task must stage and inspect every file and dependency with installation hooks disabled, verify immutable bytes, then obtain approval before executing or writing the trial registry. uv caching is not isolation.
Four rules:
1. Run floor before interpreting any result. Until the floor is measured for
these prices and this horizon, a non-significant result means nothing either way.
2. Never compare p with a conventional 0.05. The only bars are the ones the
registry prints: 0.05 divided by every trial ever charged. "Bar for the last
trial charged" and "the NEXT test will face" are different bars. Quote the one
that matches the question.
3. Trials are never refunded. Re-running a signal, tweaking a parameter or
trying another horizon is a new trial. Never suggest deleting registry lines or
using a fresh --home to reset the count.
4. Below the floor is UNDECIDABLE, not "no effect". Say "too small for this data
to see", never "doesn't work".
Procedure:
1. Check the inputs. Prices are date,asset,close. The signal is
date,asset,signal, known at that date's close.
2. Run breadth, and state the effective number of independent bets next to the
asset count.
3. Run floor for the exact prices file and horizon you will test.
4. Write down in one sentence what you expect and why, then run test once.
5. Report the verdict line verbatim, with IC, p, the bar it faced, the dispersion
ratio and the scaled floor.
Examples
python /absolute/reviewed/assay_lite.py demo # synthetic data; shows PASS, UNDECIDABLE, and a scaled floor
python /absolute/reviewed/assay_lite.py breadth --prices prices.csv
python /absolute/reviewed/assay_lite.py floor --prices prices.csv --horizon 1
python /absolute/reviewed/assay_lite.py test --prices prices.csv --signal signal.csv --name momentum_12_1 --horizon 1
python /absolute/reviewed/assay_lite.py registry| verdict | say this | not this |
|---|---|---|
| PASS | "cleared the multiple-testing bar" | "proven", "profitable" |
| UNDECIDABLE | "too small for this data to see" | "doesn't work" |
| FAIL | "large but unreliable" | "zero" |
Limitations
- Cross-sectional and daily only, using Spearman IC. No timing signals and no
portfolio simulation.
- No transaction costs. A PASS says nothing about profit after costs.
- Bonferroni is conservative when trials are correlated.
- The floor is calibrated with independent noise and then scaled up by each
signal's daily-IC dispersion. That corrects for factor structure on average, not
exactly.
- Nothing here is investment advice. A PASS is evidence of a ranking effect, not
permission to trade.
Security & Safety Notes
- assay-lite makes no network calls and needs no API keys. It reads the CSVs the
user points it at and writes only to its own .assay-lite/ folder.
- The registry is append-only on purpose. Don't edit or delete it on the user's
behalf.
Skill liên quan
- primekg – Truy vấn tệp CSV PrimeKG (Precision Medicine Knowledge Graph) đã ghim phiên bản để tìm…
- cc-skill-clickhouse-io – Mẫu cơ sở dữ liệu ClickHouse, tối ưu truy vấn, phân tích và thực hành kỹ thuật dữ liệu…
- osint-investigation – Truy dấu dòng tiền qua hồ sơ công khai và dữ liệu trừng phạt.
- protocolsio-integration – Đọc, kiểm tra và xuất an toàn dữ liệu protocols.io theo hợp đồng REST/MCP chính thức…
- chord-onchain-trading – Đọc dữ liệu thị trường DEX và chuẩn bị báo giá hoán đổi theo tuyến tốt nhất cùng các…
- pybamm – Mô phỏng các thí nghiệm sạc, xả và nghỉ của pin lithium-ion bằng PyBaMM, ghi lại nguồn…
- claude-ally-health – Skill trợ lý sức khỏe để phân tích thông tin y tế, theo dõi triệu chứng và hướng dẫn sức…
- claude-d3js-skill – Skill này hướng dẫn tạo các trực quan hóa dữ liệu tinh vi, tương tác bằng d3.js.