What problem does it solve?
Developing new trading signal functions in the rs_czsc Rust codebase requires following strict conventions: the 7-segment Signal string format, correct #[signal] attribute registration, proper SignalConfig wiring, and mandatory documentation sections. This Skill guides the entire workflow so signals actually trigger Event and Position matching instead of silently failing.
Core Features & Use Cases
- Signal Authoring Workflow: Decide between K-line level signals (bar/tas/cxt) and Trader-level signals (pos), implement with the correct function signature, and enforce the 7-segment Signal format.
- Automatic Registration: Use the #[signal(...)] macro with inventory-based collection so functions are discoverable by SignalConfig without hand-editing registry code.
- Stub Generation: Run scripts/new_signal_stub.py to scaffold a compliant Rust function skeleton with registration attributes and boundary checks.
- Use Case: When a new signal fails to trigger a Position open event, use the pipeline reference to check registration name casing, freq Some/None configuration, and Event signal matching rules.
Quick Start
Use the czsc-write-signal-function skill to implement and register a new K-line signal function named tas_example_v240101 in rs_czsc.