diff --git a/src/main/tjava/com/r35157/libs/jupiter/perps/impl/anchoridl/AnchorIdlJupiterPerpsPositionDecoder.tjava b/src/main/tjava/com/r35157/libs/jupiter/perps/impl/anchoridl/AnchorIdlJupiterPerpsPositionDecoder.tjava index e1567ef..096af67 100644 --- a/src/main/tjava/com/r35157/libs/jupiter/perps/impl/anchoridl/AnchorIdlJupiterPerpsPositionDecoder.tjava +++ b/src/main/tjava/com/r35157/libs/jupiter/perps/impl/anchoridl/AnchorIdlJupiterPerpsPositionDecoder.tjava @@ -47,13 +47,16 @@ class AnchorIdlJupiterPerpsPositionDecoder { private JupiterPerpsPositionDirection decodeDirection( byte rawSide ) { - return switch (rawSide) { - case 0 -> JupiterPerpsPositionDirection.LONG; - case 1 -> JupiterPerpsPositionDirection.SHORT; + // Jupiter Perps position side values are encoded as 1 = LONG, 2 = SHORT. + JupiterPerpsPositionDirection direction = switch (rawSide) { + case 1 -> JupiterPerpsPositionDirection.LONG; + case 2 -> JupiterPerpsPositionDirection.SHORT; default -> throw new IllegalArgumentException( "Unknown Jupiter Perps position side: " + rawSide ); }; + + return direction; } private static final int ANCHOR_DISCRIMINATOR_LENGTH = 8;