fix: the "optiondb-lmdbx" calendardb was returning too many possible strike-front-back permutations due to faulty programming

main
avraham 9 months ago
parent 8d908521fd
commit fe1265810d

@ -68,14 +68,22 @@ function makeCalendarDatabase(): CalendarDatabase {
return optionContracts.flatMap( return optionContracts.flatMap(
(frontOptionContract, i, optionContracts) => (frontOptionContract, i, optionContracts) =>
optionContracts optionContracts
.filter((_, j) => i !== j) .filter(
(potientialBackOptionContract) =>
frontOptionContract.strike ===
potientialBackOptionContract.strike &&
frontOptionContract.type ===
potientialBackOptionContract.type &&
frontOptionContract.expirationDate <
potientialBackOptionContract.expirationDate
)
.map((backOptionContract) => ({ .map((backOptionContract) => ({
symbol, symbol,
frontExpirationDate: frontOptionContract.expirationDate, frontExpirationDate: frontOptionContract.expirationDate,
backExpirationDate: backOptionContract.expirationDate, backExpirationDate: backOptionContract.expirationDate,
strike: frontOptionContract.strike, strike: frontOptionContract.strike,
type: frontOptionContract.type, type: frontOptionContract.type,
})), }))
); );
}, },
getAggregates: async ({ getAggregates: async ({

Loading…
Cancel
Save