|
|
|
@ -37,10 +37,11 @@ export function RpcType<T extends TSchema>(schema: T) {
|
|
|
|
|
|
|
|
|
|
const appRouter = router({
|
|
|
|
|
getAvailableUnderlyings: publicProcedure.query(async (opts) => {
|
|
|
|
|
// return (await query<{symbol:string}>(`
|
|
|
|
|
// SELECT DISTINCT(symbol) as symbol FROM option_contract_existences
|
|
|
|
|
// `))
|
|
|
|
|
// .map(({symbol})=>symbol);
|
|
|
|
|
// return (
|
|
|
|
|
// await query<{ symbol: string }>(`
|
|
|
|
|
// SELECT DISTINCT(symbol) as symbol FROM option_contract_existences WHERE asOfDate = (SELECT max(asOfDate) FROM option_contract_existences)
|
|
|
|
|
// `)
|
|
|
|
|
// ).map(({ symbol }) => symbol);
|
|
|
|
|
return ["AAPL", "AMD", "GOOGL", "MSFT", "NFLX"];
|
|
|
|
|
}),
|
|
|
|
|
getAvailableAsOfDates: publicProcedure
|
|
|
|
@ -142,7 +143,7 @@ const appRouter = router({
|
|
|
|
|
SELECT
|
|
|
|
|
toUnixTimestamp(tsStart) as x,
|
|
|
|
|
open as y
|
|
|
|
|
FROM option_aggregates
|
|
|
|
|
FROM option_contract_aggregates
|
|
|
|
|
WHERE symbol = '${underlying}'
|
|
|
|
|
AND expirationDate = '${expirationDate}'
|
|
|
|
|
AND strike = ${strike}
|
|
|
|
|