fix: the "optiondb-lmdbx" calendardb was returning too many possible strike-front-back permutations due to faulty programming
This commit is contained in:
@@ -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 ({
|
||||||
|
|||||||
Reference in New Issue
Block a user