전략편집기 평가탭 시간봉 설정오류 수정
This commit is contained in:
@@ -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]);
|
||||||
|
|||||||
Reference in New Issue
Block a user