가상투자 설정 수정
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
import { saveLiveStrategySettings } from './backendApi';
|
||||
import type { VirtualSessionConfig, VirtualTargetItem } from './virtualTradingStorage';
|
||||
|
||||
/** 가상투자 대상 종목을 백엔드 live strategy 설정과 동기화 */
|
||||
export async function syncVirtualTargetsToBackend(
|
||||
targets: VirtualTargetItem[],
|
||||
session: VirtualSessionConfig,
|
||||
isLiveCheck: boolean,
|
||||
): Promise<void> {
|
||||
if (targets.length === 0) return;
|
||||
|
||||
const shared = {
|
||||
isLiveCheck,
|
||||
executionType: session.executionType,
|
||||
positionMode: session.positionMode,
|
||||
skipWatchlistSync: true,
|
||||
} as const;
|
||||
|
||||
await Promise.all(
|
||||
targets.map(t =>
|
||||
saveLiveStrategySettings({
|
||||
market: t.market,
|
||||
strategyId: t.strategyId ?? session.globalStrategyId,
|
||||
...shared,
|
||||
}),
|
||||
),
|
||||
);
|
||||
|
||||
await saveLiveStrategySettings({
|
||||
market: targets[0].market,
|
||||
strategyId: session.globalStrategyId,
|
||||
...shared,
|
||||
});
|
||||
}
|
||||
|
||||
/** 가상투자 중지 — 대상 종목 체크 해제 + 전역 liveStrategyCheck OFF */
|
||||
export async function stopVirtualLiveOnBackend(
|
||||
targets: VirtualTargetItem[],
|
||||
session: VirtualSessionConfig,
|
||||
): Promise<void> {
|
||||
if (targets.length === 0) {
|
||||
await saveLiveStrategySettings({
|
||||
market: 'KRW-BTC',
|
||||
strategyId: session.globalStrategyId,
|
||||
isLiveCheck: false,
|
||||
executionType: session.executionType,
|
||||
positionMode: session.positionMode,
|
||||
skipWatchlistSync: true,
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
await syncVirtualTargetsToBackend(targets, session, false);
|
||||
}
|
||||
Reference in New Issue
Block a user