DolphinDB Daily-Frequency Factor Generator
The Rule
Never present factor code to the user before it has been executed on the DolphinX platform and returned a successful result.
When to Use This Skill (vs dolphindb-highfreq-factor)
| Scenario | Which skill |
|---|---|
| Factor operates on daily-frequency data (daily bars) | dolphindb-daily-factor ← this skill |
| Factor starts from intraday/high-frequency data and down-frequencies to daily | dolphindb-highfreq-factor |
The differentiator is the granularity of the source data, not the output frequency. Both produce daily-frequency output, but the high-frequency skill adds a down-frequency aggregation step.
If the user says "write a factor" without specifying the data source, ask whether the data is daily or intraday before choosing a skill.
3-Step Flow
- verify — for every operator / function you are not 100% sure maps to a DolphinDB built-in, verify it before using:
- Check
references/pitfalls.mdandreferences/schema.mdfirst - Ask the user for the doc page if you have any doubt
- Or write a minimal probe script (one or two lines on a tiny vector) and run it on the DolphinX platform to confirm the behavior
- **Division uses
\, not/.** This one you do not need to verify — just write\.
- Check
- template — read
references/template.dos, fill in<FactorName>, fields used, factor body. Keep the 4 sections intact. - execute — submit the completed script to DolphinDB on the DolphinX platform. If it errors, build a smaller reproducer to isolate the failing operator, fix, re-submit. Only show the code to the user after a successful run.
If the factor expression is ambiguous (e.g. rank = cross-sectional vs time-series), ask the user one consolidated question before writing code.
The user may specify custom database/table names for the data source. The default tables stock_bak_daily and index_daily in dfs://tushare_daily_db are for reference only — always use whatever path the user provides.
References (read on demand)
references/probing.md— inspect cluster schema (existsDatabase/getTables/schema)references/pitfalls.md— DolphinDB syntax gotchas + red flagsreferences/schema.md— verified columns ofstock_bak_dailyandindex_dailyreferences/template.dos— the 4-section template to fill in
Examples (read for shape, not for content)
examples/wq_alpha1.dos— full input → code → preview output for the Alpha #1 formula
Related Skills
- General DolphinDB Q&A discipline →
dolphindb-ragskill (in this sameno_mcp/folder). It enforces "no fabrication from memory" when no retrieval tool is available.