전략편집기 평가탭 시간봉 설정오류 수정

This commit is contained in:
Macbook
2026-06-25 01:36:32 +09:00
parent 3cc75ff770
commit a2816b9163
@@ -42,6 +42,11 @@ const StrategyEditorEvaluationPanel: React.FC<Props> = ({
const [selectedBarIndex, setSelectedBarIndex] = useState(0); const [selectedBarIndex, setSelectedBarIndex] = useState(0);
const [paramsRevision, setParamsRevision] = useState(0); const [paramsRevision, setParamsRevision] = useState(0);
const editorState = useMemo(
() => ({ buy: buyEditorState, sell: sellEditorState }),
[buyEditorState, sellEditorState],
);
const draftStrategy = useMemo( const draftStrategy = useMemo(
() => buildDraftStrategyForEvaluation({ () => buildDraftStrategyForEvaluation({
name: stratName, name: stratName,
@@ -53,12 +58,12 @@ const StrategyEditorEvaluationPanel: React.FC<Props> = ({
); );
const strategyPrimaryTimeframe = useMemo( const strategyPrimaryTimeframe = useMemo(
() => (draftStrategy ? resolveStrategyPrimaryTimeframe(draftStrategy) : undefined), () => resolveStrategyPrimaryTimeframe(draftStrategy ?? undefined, editorState),
[draftStrategy], [draftStrategy, editorState],
); );
const chartTimeframe = useMemo((): Timeframe => { const chartTimeframe = useMemo((): Timeframe => {
return resolveBacktestExecTimeframe(timeframeChoice, strategyPrimaryTimeframe ?? '3m'); return resolveBacktestExecTimeframe(timeframeChoice, strategyPrimaryTimeframe);
}, [timeframeChoice, strategyPrimaryTimeframe]); }, [timeframeChoice, strategyPrimaryTimeframe]);
const tfOptions = useMemo( const tfOptions = useMemo(
@@ -67,10 +72,14 @@ const StrategyEditorEvaluationPanel: React.FC<Props> = ({
); );
const draftRevisionKey = useMemo( const draftRevisionKey = useMemo(
() => `${draftStrategy?.buyCondition ?? ''}|${draftStrategy?.sellCondition ?? ''}`, () => `${draftStrategy?.buyCondition ?? ''}|${draftStrategy?.sellCondition ?? ''}|${strategyPrimaryTimeframe}`,
[draftStrategy?.buyCondition, draftStrategy?.sellCondition], [draftStrategy?.buyCondition, draftStrategy?.sellCondition, strategyPrimaryTimeframe],
); );
useEffect(() => {
setTimeframeChoice(BACKTEST_STRATEGY_TIMEFRAME);
}, [strategyPrimaryTimeframe]);
useEffect(() => { useEffect(() => {
setParamsRevision(v => v + 1); setParamsRevision(v => v + 1);
}, [draftRevisionKey, settingsRevision]); }, [draftRevisionKey, settingsRevision]);