diff --git a/app/api/live-state/route.js b/app/api/live-state/route.js new file mode 100644 index 0000000..b42a9a2 --- /dev/null +++ b/app/api/live-state/route.js @@ -0,0 +1,29 @@ +import { NextResponse } from 'next/server'; +import fs from 'fs'; + +export const dynamic = 'force-dynamic'; + +const STATE_FILE = '/tmp/kalbot-live-state.json'; + +export async function GET() { + try { + const raw = fs.readFileSync(STATE_FILE, 'utf-8'); + const data = JSON.parse(raw); + return NextResponse.json(data); + } catch (e) { + return NextResponse.json({ + market: null, + live: { + balance: null, portfolioValue: null, totalPnL: 0, + wins: 0, losses: 0, winRate: 0, totalTrades: 0, + openOrders: [], paused: true, dailyLoss: 0, + maxDailyLoss: 20, maxPerTrade: 5, + enabledStrategies: [], positions: [] + }, + strategies: [], + workerUptime: 0, + lastUpdate: null, + error: 'Worker not running or no data yet' + }); + } +}