Skip to content

Commit 053cb5a

Browse files
committed
make twap and avol similar to price and confidence
1 parent 9495efa commit 053cb5a

File tree

1 file changed

+24
-8
lines changed

1 file changed

+24
-8
lines changed

src/index.ts

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -128,16 +128,24 @@ export const parsePriceData = (data: Buffer) => {
128128
// valid on-chain slot of aggregate price
129129
const validSlot = readBigUInt64LE(data, 40)
130130
// time-weighted average price
131-
const twap = readBigInt64LE(data, 48)
131+
const twapComponent = readBigInt64LE(data, 48)
132+
const twap = Number(twapComponent) * 10 ** exponent
132133
// annualized price volatility
133-
const avol = readBigUInt64LE(data, 56)
134+
const avolComponent = readBigUInt64LE(data, 56)
135+
const avol = Number(avolComponent) * 10 ** exponent
134136
// space for future derived values
135-
const drv0 = readBigInt64LE(data, 64)
136-
const drv1 = readBigInt64LE(data, 72)
137-
const drv2 = readBigInt64LE(data, 80)
138-
const drv3 = readBigInt64LE(data, 88)
139-
const drv4 = readBigInt64LE(data, 96)
140-
const drv5 = readBigInt64LE(data, 104)
137+
const drv0Component = readBigInt64LE(data, 64)
138+
const drv0 = Number(drv0Component) * 10 ** exponent
139+
const drv1Component = readBigInt64LE(data, 72)
140+
const drv1 = Number(drv1Component) * 10 ** exponent
141+
const drv2Component = readBigInt64LE(data, 80)
142+
const drv2 = Number(drv2Component) * 10 ** exponent
143+
const drv3Component = readBigInt64LE(data, 88)
144+
const drv3 = Number(drv3Component) * 10 ** exponent
145+
const drv4Component = readBigInt64LE(data, 96)
146+
const drv4 = Number(drv4Component) * 10 ** exponent
147+
const drv5Component = readBigInt64LE(data, 104)
148+
const drv5 = Number(drv5Component) * 10 ** exponent
141149
// product id / reference account
142150
const productAccountKey = new PublicKey(data.slice(112, 144))
143151
// next price account in list
@@ -172,13 +180,21 @@ export const parsePriceData = (data: Buffer) => {
172180
numComponentPrices,
173181
currentSlot,
174182
validSlot,
183+
twapComponent,
175184
twap,
185+
avolComponent,
176186
avol,
187+
drv0Component,
177188
drv0,
189+
drv1Component,
178190
drv1,
191+
drv2Component,
179192
drv2,
193+
drv3Component,
180194
drv3,
195+
drv4Component,
181196
drv4,
197+
drv5Component,
182198
drv5,
183199
productAccountKey,
184200
nextPriceAccountKey,

0 commit comments

Comments
 (0)