Files
wickra/testdata/golden/rsi.csv
T
kingchenc 8bfe24ac1d test(golden): language-neutral fixtures + per-binding parity runners (#255)
**Task 5 — golden-fixture parity for the C-ABI bindings.** Lifts the C#/Go/Java/R tests from *one indicator per archetype* toward reference-value parity, catching FFI wiring bugs (swapped params, wrong multi-output field) the math-only core tests cannot see.

## What's here
- **`examples/rust/src/bin/gen_golden.rs`** + **`testdata/golden/*.csv`** — a Rust generator computing a deterministic OHLCV series plus the core's reference outputs for a curated archetype-spanning set: scalar (`Sma`/`Ema`/`Rsi`), candle (`Atr`), scalar multi-output (`MACD`), candle multi-output (`ADX`), pairwise (`Beta`). `nan` marks warmup. Regenerate with `cargo run -p wickra-examples --bin gen_golden`.
- **Parity runners** replaying the identical fixtures through each FFI (rel-tol 1e-6), each a standard test in the binding's existing suite (no `ci.yml` change — rides `dotnet test` / `go test` / `mvn install` / `R CMD`+testthat). A walk-up search locates `testdata/golden` regardless of run dir.
  - **C#** (`bindings/csharp/.../GoldenTests.cs`) —  validated locally, 7/7 pass.
  - **Go** (`bindings/go/golden_test.go`) —  validated locally, pass.
  - **Java** (`bindings/java/.../GoldenTests.java`) — modeled on the archetype API; validated by CI (no local mvn).
  - **R** (`bindings/r/tests/testthat/test-golden.R`) — modeled on the archetype API; validated by CI (no local Rscript).

## Notes
- The curated set spans every marshalling archetype; extending the indicator list is mechanical (add to the generator + regenerate). Bars/profile archetypes can be added next.
- No new CI jobs.
2026-06-11 15:22:29 +02:00

1.2 KiB

1rsi
2nan
3nan
4nan
5nan
6nan
7nan
8nan
9nan
10nan
11nan
12nan
13nan
14nan
15nan
1646.84518809898699
1745.82961265424322
1846.5293990131247
1949.23903870201344
2053.518768674122796
2158.56047460456064
2263.58342577996474
2368.07459111891804
2471.80327260156207
2574.72559789038102
2676.88488357198254
2778.34471541432595
2879.15131540353094
2979.31156608926268
3077.35312513119456
3173.13439349750769
3267.51119167055117
3361.48673113238304
3455.86675382432369
3551.14733221714866
3647.57753664027756
3745.28036590056008
3844.36975889174273
3945.212282377402985
4048.12434665867438
4152.61537254620642
4257.83678169397702
4362.992663568874654
4467.57346293490359
4571.3583982125327
4674.31265622918312
4776.4855340725887
4877.9435594091973
4978.73329989554925
5078.85948376472163
5176.76197022138767
5272.44443440532005
5366.78373698621982
5460.77877328002407
5555.21662487911296
5650.57413251002351
5747.087563552178636
5844.87458874458458
5944.050409895373384
6045.01878876311954
6148.0601943425273
6252.64880490307121
6357.92140340103244
6463.088714334306665
6567.65616719708338
6671.41589642993111
6774.34074717674663
6876.4832369420561
6977.91026866443379
7078.66702552588708
7178.75547116040536
7276.51507736151031
7372.09088140590961
7466.3803507173797
7560.378854393296976
7654.856911707280055
7750.27461841837877
7846.857548898064
7944.719625963574536
8043.978649539628535
8145.06927522550655