feat: DB-Schema (candles, backtest_runs), Migration, CandleStore

This commit is contained in:
2026-06-09 20:56:24 +00:00
parent f318446ebf
commit 27a10dc794
9 changed files with 243 additions and 0 deletions

23
src/server/db/schema.ts Normal file
View File

@@ -0,0 +1,23 @@
import { doublePrecision, jsonb, pgTable, primaryKey, serial, text, timestamp, varchar } from 'drizzle-orm/pg-core';
export const candles = pgTable(
'candles',
{
pair: varchar('pair', { length: 16 }).notNull(),
ts: timestamp('ts', { withTimezone: true }).notNull(),
open: doublePrecision('open').notNull(),
high: doublePrecision('high').notNull(),
low: doublePrecision('low').notNull(),
close: doublePrecision('close').notNull(),
volume: doublePrecision('volume').notNull(),
},
(t) => [primaryKey({ columns: [t.pair, t.ts] })],
);
export const backtestRuns = pgTable('backtest_runs', {
id: serial('id').primaryKey(),
createdAt: timestamp('created_at', { withTimezone: true }).notNull().defaultNow(),
kind: text('kind').notNull(), // 'single' | 'walkforward'
config: jsonb('config').notNull(),
result: jsonb('result').notNull(),
});