일목-BB 수정

This commit is contained in:
Macbook
2026-06-23 21:24:37 +09:00
parent 3e26373bfe
commit 5d90d1a74e
13 changed files with 226 additions and 239 deletions
@@ -78,11 +78,6 @@ import {
import {
buildIchimokuBbTree,
isIchimokuBbPaletteValue,
isIchimokuBbPairRoot,
setIchimokuBbPairConfig,
patchIchimokuBbPairInTree,
inferIchimokuBbConfig,
type IchimokuBbPairConfig,
} from '../utils/ichimokuBbStrategy';
import {
buildStableStrategyTree,
@@ -105,7 +100,6 @@ import {
import StochPairNodeSettings from './strategyEditor/StochPairNodeSettings';
import PriceExtremePairNodeSettings from './strategyEditor/PriceExtremePairNodeSettings';
import Inflection33PairNodeSettings from './strategyEditor/Inflection33PairNodeSettings';
import IchimokuBbPairNodeSettings from './strategyEditor/IchimokuBbPairNodeSettings';
import StableStrategyPairNodeSettings from './strategyEditor/StableStrategyPairNodeSettings';
import {
emptySignalFlowLayout,
@@ -741,36 +735,6 @@ export default function StrategyEditorPage({
handleOrphansChange, handleRootChange, handleExtraRootsChange,
]);
const applyIchimokuBbConfig = useCallback((pairNodeId: string, patch: Partial<IchimokuBbPairConfig>) => {
if (currentOrphans.some(o => o.id === pairNodeId)) {
handleOrphansChange(currentOrphans.map(o => (
o.id === pairNodeId ? setIchimokuBbPairConfig(o, patch, DEF) : o
)));
return;
}
if (currentRoot) {
const patched = patchIchimokuBbPairInTree(currentRoot, pairNodeId, patch, DEF);
if (patched && patched !== currentRoot) {
handleRootChange(patched);
return;
}
}
for (const [startId, branch] of Object.entries(currentLayout.extraRoots ?? {})) {
if (!branch) continue;
const patched = patchIchimokuBbPairInTree(branch, pairNodeId, patch, DEF);
if (patched && patched !== branch) {
handleExtraRootsChange({
...(currentLayout.extraRoots ?? {}),
[startId]: patched,
});
return;
}
}
}, [
currentRoot, currentOrphans, currentLayout.extraRoots, DEF,
handleOrphansChange, handleRootChange, handleExtraRootsChange,
]);
const applyStableStrategyFilterLevel = useCallback((pairNodeId: string, filterLevel: StableStrategyFilterLevel) => {
if (currentOrphans.some(o => o.id === pairNodeId)) {
handleOrphansChange(currentOrphans.map(o => (
@@ -2186,17 +2150,6 @@ export default function StrategyEditorPage({
/>
</div>
)}
{selectedLogicNode && isIchimokuBbPairRoot(selectedLogicNode) && selectedLogicNode.ichimokuBbPair && (
<div className="se-node-config-bar se-node-config-bar--ichimoku-bb">
<span className="se-node-config-label">×</span>
<IchimokuBbPairNodeSettings
variant="inline"
config={inferIchimokuBbConfig(selectedLogicNode)}
onChange={patch => applyIchimokuBbConfig(selectedLogicNode.id, patch)}
onClose={() => {}}
/>
</div>
)}
{selectedLogicNode && isStableStrategyPairRoot(selectedLogicNode) && selectedLogicNode.stableStrategyPair && (
<div className="se-node-config-bar se-node-config-bar--stable-strategy">
<span className="se-node-config-label"> </span>