Most vendors prefer not to test whether sentiment data actually predicts price. Testing it seriously risks undermining their product. This publication tests it seriously. SSI does not Granger-cause price in any of the seven major pairs tested. Zero of seven. Null results get the same...
FX Engineer
@fxengineer.bsky.social
Systematic research on retail FX positioning. 1.9M hourly observations. 28 pairs. 12 years. We provide context. Markets decide.
What RP-001 found using 1,936,174 hourly observations across 28 currency pairs: - SSI does not Granger-cause price in any major pair tested (0 of 7) - SSI is extraordinarily persistent (mean 1-hour autocorrelation r=0.989) - SSI is episodically extreme (z-scores exceed |1.5| in 25% of 2-hour...
What raw sentiment percentage doesn't tell you: - Whether the reading is historically unusual or just Tuesday - Whether the extreme built over two days or two months - Whether similar readings preceded moves or sideways chop - Which session the pattern fired in - Whether crowd is trapped...
Building a trading framework on sentiment data without understanding methodology: 1. Is it one-to-one buy vs sell regardless of client size? 2. Is A-book separated from B-book? 3. Is it volume-weighted or account-weighted? 4. How are hedged positions handled? 5. Are institutional and retail...
AUDCAD reaches the 36th percentile. Retail traders hold 40.7% long. The SSI Z-score flips from -0.55 to +0.56 in two weeks.
CADJPY reaches 58.6% long. This places it in the 42nd percentile. Price falls 3.8% this week against the dominant retail bet.
Positioning events hit 90 percent volatility rate. 10 events detected over seven days. 9 produced 15 plus pip moves.
Twelve currency pairs flipped bias in the last eight hours. Retail traders are now 92 percent long AUDCHF, 28 percent long EURAUD, 16 percent long EURCAD, 97 percent long EURCHF, 42 percent long EURGBP, and 36 percent long EURNZD.
[COT Brief] Issue #10: cross-asset positioning across 22 markets as of 2026-07-28. Data tables only. Full analysis: https://fxeresearch.substack.com/p/weekly-cot-positioning-week-of-2026-88a #cot #positioning #weekly
Leveraged funds hold 100th percentile long COPPER. Net position +69,008 contracts.
NZD reaches the 2nd percentile. Leveraged funds short -29,002 contracts. z-score reaches -1.94. A large price move follows 91% of the time — direction unknown. https://fxeresearch.substack.com
CAD sits at the 2nd percentile. Leveraged funds short -92,771 contracts. z-score reaches -2.13. A large price move follows 91% of the time — direction unknown.
EUR hits 0th percentile. Leveraged funds short -53,691 contracts. z-score reaches -3.02. A large price move follows 91% of the time — direction unknown.
COPPER hits 100th percentile. Money managers hold +58,784 contracts. This marks the highest reading in the past year.
ES reaches 0th percentile. Leveraged funds hold -361,875 contracts. Asset managers sit long +970,592 contracts on the opposite side. A large price move follows 91% of the time — direction unknown.
VIX reaches 100th percentile. Leveraged funds long +10,189 contracts. z-score reaches +2.31. A large price move follows 91% of the time — direction unknown.
CADCHF reaches 94.5 percent long. This places it in the 81st percentile. Price moves up 0.9 percent this week against the dominant retail bet.
NZDCHF sits at 94.1 percent long. This places it in the 73rd percentile. Price rises 1.6 percent this week against the crowd. https://fxeresearch.substack.com
2Y rates reach 95th percentile. Leveraged funds hold -1,756,528 contracts. Asset managers sit long +1,891,993 contracts on the opposite side. A large price move follows 91% of the time — direction unknown.
NZD sits at the 0th percentile. Leveraged funds hold -27,201 contracts with a z-score of -2.51. A large price move follows 91% of the time — direction unknown. https://fxeresearch.substack.com
Leveraged funds hold 0th percentile short NZD. Net position -22,187 contracts. Z-score -2.51.
CHF sits at 0th percentile. Leveraged funds hold -9,666 contracts. z-score reaches -2.90. A large price move follows 91% of the time — direction unknown.
CHFJPY sits at the 3rd percentile. Retail traders are 3 percent long. The reading shows more short positions than 97 percent of all readings since 2002. Price has risen 0.4 percent, or 85 pips, this week. https://fxeresearch.substack.com
NZD reaches 0th percentile with z-score -2.51. Leveraged funds hold -25,285 contracts. A large price move follows 91% of the time — direction unknown. https://fxeresearch.substack.com
COPPER hits 100th percentile. A large price move follows 91% of the time — direction unknown.
ES reaches 0th percentile. Leveraged funds hold -360,469 contracts. Asset managers sit long +976,189 contracts on the opposite side. A large price move follows 91% of the time — direction unknown. https://fxeresearch.substack.com
EURCHF reaches 96.7 percent long. This places it in the 94th percentile. Retail traders hold the position for less than eight hours. Price moves down 0.4 percent this week against the crowd.
AUDCHF is 93.2 percent long. This places it in the 70th percentile. Retail traders hold the position for 14 days. Price rises 0.3 percent this week with the crowd.
Two markets. Two mental models. Options: What's the probability distribution? Equities: What's the likely direction? Same question breaks both trades. The edge isn't which market you pick. It's matching your framework to what that market actually prices.
Traders study charts after the move. We document positioning before it. The edge isn't seeing what happened. It's quantifying what's building.