From 976dc22ab198c4df4179ea9e69dc19eb1b756e17 Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Mon, 27 May 2019 16:04:37 +0200 Subject: [PATCH] All nodes can be added via menu --- .../FunctionLibraries/NodeDeleter.js | 2 +- .../FunctionLibraries/PartsFromNodes.js | 24 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js b/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js index 73d9c4017..e14aee277 100644 --- a/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js +++ b/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js @@ -153,7 +153,7 @@ function newNodeDeleter () { let payload = node.payload if (payload.parentNode !== undefined) { switch (node.type) { - case 'Stop Loss': { + case 'Stop': { payload.parentNode.stopLoss = undefined break } diff --git a/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js b/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js index bcbd862d1..d99fcc2d0 100644 --- a/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js +++ b/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js @@ -4,6 +4,8 @@ function newPartsFromNodes () { newStrategy: newStrategy, addMissingStages: addMissingStages, addMissingEvents: addMissingEvents, + addMissingItems: addMissingItems, + addInitialDefinition: addInitialDefinition, addPhase: addPhase, addSituation: addSituation, addCondition: addCondition @@ -282,6 +284,28 @@ function newPartsFromNodes () { } } + function addMissingItems (node) { + if (node.stopLoss === undefined) { + node.stopLoss = { + phases: [] + } + createPart('Stop', '', node.stopLoss, node, node) + } + if (node.buyOrder === undefined) { + node.buyOrder = { + phases: [] + } + createPart('Take Profit', '', node.buyOrder, node, node) + } + } + + function addInitialDefinition (node) { + if (node.initialDefinition === undefined) { + node.initialDefinition = {} + createPart('Initial Definition', '', node.initialDefinition, node, node) + } + } + function addPhase (parentNode) { let phaseParent = parentNode let m = phaseParent.phases.length