diff --git a/frontend/src/api/portfolio.ts b/frontend/src/api/portfolio.ts index 5215477..7cc18d5 100644 --- a/frontend/src/api/portfolio.ts +++ b/frontend/src/api/portfolio.ts @@ -58,11 +58,33 @@ export interface PortfolioBacktestResult { export async function postPortfolioBacktest( req: PortfolioBacktestReq, -): Promise { - const { data } = await apiClient.post( +): Promise { + const { data } = await apiClient.post<{ task_id: string }>( '/portfolio/backtest', req, - { timeout: 600000 }, + ) + return data.task_id +} + +export interface PortfolioTaskStatus { + task_id: string + status: string + stage: string + error_msg: string | null +} + +export async function getPortfolioTaskStatus( + taskId: string, +): Promise { + const { data } = await apiClient.get(`/task/${taskId}`) + return data +} + +export async function getPortfolioResult( + taskId: string, +): Promise { + const { data } = await apiClient.get( + `/portfolio/task/${taskId}/result`, ) return data } diff --git a/frontend/src/views/backtest/PortfolioBacktest.vue b/frontend/src/views/backtest/PortfolioBacktest.vue index 7bf89ec..3c1e26f 100644 --- a/frontend/src/views/backtest/PortfolioBacktest.vue +++ b/frontend/src/views/backtest/PortfolioBacktest.vue @@ -1,11 +1,13 @@