import { createContainer } from './src/simple-container'; import fetch from 'node-fetch'; async function testApiResponse() { console.log('Testing API Response Values...\n'); // First, create the container and start the server const container = await createContainer({ database: { mongodb: { enabled: false, uri: '' }, postgres: { enabled: false, uri: '' }, questdb: { enabled: false, host: '', port: 0 }, dragonfly: { enabled: false } } }); // Run a simple backtest via API const backtestRequest = { strategy: 'sma-crossover', symbols: ['AAPL'], startDate: '2023-01-01', endDate: '2023-02-01', initialCapital: 100000, config: { commission: 0.001, slippage: 0.0001, dataFrequency: '1d' } }; try { console.log('Sending backtest request...'); const response = await fetch('http://localhost:2003/api/backtest/run', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(backtestRequest) }); if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } const result = await response.json(); console.log('\n=== API RESPONSE ==='); console.log(JSON.stringify(result, null, 2)); if (result.metrics) { console.log('\n=== METRICS VALUES ==='); console.log(`Total Return: ${result.metrics.totalReturn}`); console.log(`Sharpe Ratio: ${result.metrics.sharpeRatio}`); console.log(`Max Drawdown: ${result.metrics.maxDrawdown}`); console.log(`Win Rate: ${result.metrics.winRate}`); console.log(`Total Trades: ${result.metrics.totalTrades}`); } } catch (error) { console.error('API call failed:', error); } console.log('\n=== TEST COMPLETE ==='); process.exit(0); } testApiResponse().catch(error => { console.error('Test failed:', error); process.exit(1); });