From 03f13a8e1690cf0c24f8a8e41270901d6f69fec2 Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Wed, 16 Sep 2020 12:51:27 +0200 Subject: [PATCH] Charts Organized --- AppSchema.json | 2 + CanvasApp/ChartingSpace/TimeMachine.js | 16 +++++++ .../ChartingSpaceFunctions.js | 2 +- .../CryptoEcosystemFunctions.js | 2 +- CanvasApp/Panels/Layer.js | 5 ++- CanvasApp/Spaces/ChartingSpace.js | 2 - CanvasApp/Utilities/Meshes.js | 4 +- CanvasApp/Utilities/NodeChildren.js | 42 +++++++++++++++++++ Super-Scripts/Masters.json | 2 +- 9 files changed, 69 insertions(+), 8 deletions(-) diff --git a/AppSchema.json b/AppSchema.json index 3249a7fdf..38f0d5d1a 100644 --- a/AppSchema.json +++ b/AppSchema.json @@ -13252,6 +13252,7 @@ }, "alternativeIcons": "Use Reference Parent", "title": [ + "Use Reference Parent Parent Parent", "Use Reference Parent" ], "isTitleAllwaysVisible": true, @@ -13323,6 +13324,7 @@ }, "alternativeIcons": "Use Reference Parent", "title": [ + "Use Reference Parent Parent Parent", "Use Reference Parent" ], "isTitleAllwaysVisible": true, diff --git a/CanvasApp/ChartingSpace/TimeMachine.js b/CanvasApp/ChartingSpace/TimeMachine.js index b9fa5471f..bcd25a4b2 100644 --- a/CanvasApp/ChartingSpace/TimeMachine.js +++ b/CanvasApp/ChartingSpace/TimeMachine.js @@ -142,6 +142,7 @@ function newTimeMachine() { function initialize(callBackFunction) { timeFrame = INITIAL_TIME_PERIOD loadFrame(thisObject.payload, thisObject.container.frame) + setInitialPosition() saveFrame(thisObject.payload, thisObject.container.frame) recalculateCoordinateSystem() @@ -158,6 +159,21 @@ function newTimeMachine() { callBackFunction() } + function setInitialPosition() { + let centerOfScreenX = browserCanvas.width / 2 - browserCanvas.width / TIME_MACHINE_WIDTH / 2 + let centerOfScreenY = browserCanvas.height / 2 - (browserCanvas.height - TOP_SPACE_HEIGHT - COCKPIT_SPACE_HEIGHT) / TIME_MACHINE_HEIGHT / 2 + + if (thisObject.container.frame.position.x === 0 && thisObject.container.frame.position.y === 0) { + let timeMachineIndex = findChildIndexAtParentNode(thisObject.payload.node) + let dashboardIndex = findChildIndexAtParentNode(thisObject.payload.parentNode) + let timeMachinesCount = thisObject.payload.parentNode.timeMachines.length + let dashboardsCount = thisObject.payload.parentNode.payload.parentNode.dashboards.length + + thisObject.container.frame.position.x = centerOfScreenX + thisObject.container.frame.width * timeMachineIndex * 2 - timeMachinesCount * thisObject.container.frame.width + thisObject.container.frame.position.y = centerOfScreenY + thisObject.container.frame.height * dashboardIndex * 2 - dashboardsCount * thisObject.container.frame.height + } + } + function onKeyPressed(event) { thisObject.edgeEditor.onKeyPressed(event) } diff --git a/CanvasApp/DesignSpace/Workspace/FunctionLibraries/ChartingSpaceFunctions.js b/CanvasApp/DesignSpace/Workspace/FunctionLibraries/ChartingSpaceFunctions.js index 453752151..f58d93b0c 100644 --- a/CanvasApp/DesignSpace/Workspace/FunctionLibraries/ChartingSpaceFunctions.js +++ b/CanvasApp/DesignSpace/Workspace/FunctionLibraries/ChartingSpaceFunctions.js @@ -112,7 +112,7 @@ function newChartingSpaceFunctions() { let mineProducts let timeMachine = functionLibraryUiObjectsFromNodes.addUIObject(dashboard, 'Time Machine') timeMachine.payload.referenceParent = session - timeMachine.name = session.name + ' ' + session.type + timeMachine.name = session.name + ' ' + session.type + ' ' + networkNode.name timeMachine.payload.floatingObject.collapseToggle() timeMachine.payload.floatingObject.angleToParent = ANGLE_TO_PARENT.RANGE_180 /* diff --git a/CanvasApp/DesignSpace/Workspace/FunctionLibraries/CryptoEcosystemFunctions.js b/CanvasApp/DesignSpace/Workspace/FunctionLibraries/CryptoEcosystemFunctions.js index c5c2f3743..579d3a0c9 100644 --- a/CanvasApp/DesignSpace/Workspace/FunctionLibraries/CryptoEcosystemFunctions.js +++ b/CanvasApp/DesignSpace/Workspace/FunctionLibraries/CryptoEcosystemFunctions.js @@ -377,7 +377,7 @@ function newCryptoEcosystemFunctions() { for (let i = 0; i < timeMachines.length; i++) { let timeMachine = timeMachines[i] let session = timeMachine.payload.referenceParent - if (session === undefined) { + if (session === undefined || session.cleaned === true) { /* This is what usually happens, that the intall process make these time machines to lose their reference parent since the install diff --git a/CanvasApp/Panels/Layer.js b/CanvasApp/Panels/Layer.js index 191540e89..885280d3e 100644 --- a/CanvasApp/Panels/Layer.js +++ b/CanvasApp/Panels/Layer.js @@ -162,8 +162,9 @@ function newLayer() { 'Data Product->' + 'Data Product Folder->Data Product Folder->Data Product Folder->Data Product Folder->Data Product Folder->' + 'Bot Products->Data Mine Products->Trading Mine Products->' + - 'Market Data Products->Single Market Trading Data->Exchange Data Products->' + - 'Session Reference->Data Mines Data->Trading Mines Data->Exchange Trading Products->Trading Mines Data->Data Storage->Network Node->' + + 'Market Data Products->Exchange Data Products->' + + 'Market Trading Products->Session Reference->Exchange Trading Products->' + + 'Data Mines Data->Trading Mines Data->Data Storage->Network Node->' + 'Data Storage->Network Node->' + 'Backtesting Session->Paper Trading Session->Forward Testing Session->Live Trading Session->' + 'Trading System Reference->Trading Engine Reference->Trading System->Trading Engine->' + diff --git a/CanvasApp/Spaces/ChartingSpace.js b/CanvasApp/Spaces/ChartingSpace.js index f42e0c77c..6fcc122c5 100644 --- a/CanvasApp/Spaces/ChartingSpace.js +++ b/CanvasApp/Spaces/ChartingSpace.js @@ -345,8 +345,6 @@ function newChartingSpace() { timeMachine.payload.uiObject.setValue('Loading...') /* Setting up the new time machine. */ - timeMachine.container.frame.position.x = browserCanvas.width / 2 - browserCanvas.width / TIME_MACHINE_WIDTH / 2 - timeMachine.container.frame.position.y = browserCanvas.height / 2 - (browserCanvas.height - TOP_SPACE_HEIGHT - COCKPIT_SPACE_HEIGHT) / TIME_MACHINE_HEIGHT / 2 timeMachine.initialize(onTimeMachineInitialized) function onTimeMachineInitialized() { diff --git a/CanvasApp/Utilities/Meshes.js b/CanvasApp/Utilities/Meshes.js index 44144bf95..834cb48e1 100644 --- a/CanvasApp/Utilities/Meshes.js +++ b/CanvasApp/Utilities/Meshes.js @@ -11,7 +11,9 @@ function findNodeInNodeMesh(node, nodeType, nodeName, connectedViaPayload, findI function scanNodeMesh(startingNode, depth) { if (startingNode === undefined) { return } - if (startingNode.payload === undefined) { return } + if (connectedViaPayload === true) { + if (startingNode.payload === undefined) { return } + } if (nodeFound !== undefined) { return } if (depth >= MAX_DEPTH) {return} diff --git a/CanvasApp/Utilities/NodeChildren.js b/CanvasApp/Utilities/NodeChildren.js index 43889d8df..5e59b2295 100644 --- a/CanvasApp/Utilities/NodeChildren.js +++ b/CanvasApp/Utilities/NodeChildren.js @@ -142,4 +142,46 @@ function findAndRecreateChildWithReference(startingNode, childType, referencedNo child = functionLibraryUiObjectsFromNodes.addUIObject(startingNode, childType) child.payload.referenceParent = referencedNode return child +} + +function findChildIndexAtParentNode(startingNode) { + /* + This functioin scan all the children of a node's parent and returns the child + index at the node property array that contains it. + */ + if (startingNode === undefined) { return } + if (startingNode.payload === undefined) { return } + if (startingNode.payload.parentNode === undefined) { return } + + let parentNode = startingNode.payload.parentNode + + let nodeDefinition = APP_SCHEMA_MAP.get(parentNode.type) + if (nodeDefinition === undefined) { return } + + /* We scan through this parent node children */ + if (nodeDefinition.properties !== undefined) { + for (let i = 0; i < nodeDefinition.properties.length; i++) { + let property = nodeDefinition.properties[i] + + switch (property.type) { + case 'node': { + /* We ignore these types of children. */ + } + break + case 'array': { + let startingNodePropertyArray = parentNode[property.name] + if (startingNodePropertyArray !== undefined) { + for (let m = 0; m < startingNodePropertyArray.length; m++) { + let arrayItem = startingNodePropertyArray[m] + + if (arrayItem.id === startingNode.id) { + return m + } + } + } + break + } + } + } + } } \ No newline at end of file diff --git a/Super-Scripts/Masters.json b/Super-Scripts/Masters.json index 3980d423e..6d7c99476 100644 --- a/Super-Scripts/Masters.json +++ b/Super-Scripts/Masters.json @@ -1 +1 @@ -{"type":"Super Scripts","name":"Masters","config":"{ \n\"codeName\": \"Masters\"\n}","scriptsLibrary":{"type":"Scripts Library","name":"New Scripts Library","masterScripts":[{"type":"Master Script","name":"Setup Market","templateScripts":[{"type":"Template Script","name":"Install Market Data Products","templateStructure":{"type":"Template Structure","name":"New Template Structure","marketDataProducts":{"type":"Market Data Products","name":"","dataProducts":[{"type":"Data Product","name":"Candles","id":"5e93b8b3-3ed7-4c98-bbc1-3804900cf6aa","savedPayload":{"position":{"x":39650.030384991085,"y":28142.770659988782},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Candles","id":"fe6065ec-4d2d-47a0-bae0-8647f0e195d7"}}},{"type":"Data Product","name":"Volumes","id":"7c9bb27e-b439-4391-82ae-c1d0eeac404e","savedPayload":{"position":{"x":39602.32443296776,"y":28028.041261771512},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Volumes","id":"1a366aef-efef-470e-88e0-2a6fbe4dd91f"}}},{"type":"Data Product","name":"Candles Channels","id":"4c98c4d3-cd29-41ba-8d5e-80b932bf2d86","savedPayload":{"position":{"x":39574.77784960979,"y":27916.594007704927},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Candles Channels","id":"8c81d378-0947-4e9d-be25-58e69120152e"}}},{"type":"Data Product","name":"Candles Channels Objects","id":"83695a47-e8bc-454b-9904-4e4f817542cb","savedPayload":{"position":{"x":39554.52222383268,"y":27807.90661198409},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Candles Channels Objects","id":"ba5dbb67-2030-42a0-9ff8-1ee80874f047"}}},{"type":"Data Product","name":"Bollinger Bands","id":"9fdb24c0-ecb7-4cd6-a61d-49d51de6c3e7","savedPayload":{"position":{"x":39552.30927819702,"y":27700.222235085923},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Bands","id":"29088877-8d63-4217-8d34-8742afc262f4"}}},{"type":"Data Product","name":"Percentage Bandwidth","id":"018210b2-49f8-4d60-841a-c20d87543851","savedPayload":{"position":{"x":39542.24590323085,"y":27591.843126728603},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Percentage Bandwidth","id":"3b7885a0-cd72-4a3f-a38b-3dc8c47bd068"}}},{"type":"Data Product","name":"Bollinger Channels Objects","id":"ceddddcc-461a-48c1-9a6f-84e43676b2d1","savedPayload":{"position":{"x":39585.23490295202,"y":27490.884320551177},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Channels Objects","id":"1f111f72-624f-4166-9f99-ab8d785d5267"}}},{"type":"Data Product","name":"Bollinger Sub-Channels Objects","id":"68a764ce-c162-4984-a4ee-ef92872b7fc9","savedPayload":{"position":{"x":39539.82297232588,"y":27361.579082279957},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Sub-Channels Objects","id":"080c87fc-4546-4482-ab11-180a33f6d9ab"}}},{"type":"Data Product","name":"Popular SMAs","id":"97d661ae-559b-4ab2-b877-2eeb0fc08fbe","savedPayload":{"position":{"x":39689.20422657283,"y":27296.335084035833},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Popular SMAs","id":"4029d5bf-a8ad-4d80-b874-2af506e0ab34"}}},{"type":"Data Product","name":"Base7 SMAs","id":"f1aa59b6-2a43-4659-a1d4-1dd1917dfbc5","savedPayload":{"position":{"x":39589.4219274921,"y":27151.163449753276},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Base7 SMAs","id":"a03ef0ea-5be9-4d40-952e-24789e77dbb6"}}},{"type":"Data Product","name":"Base11 SMAs","id":"67b468d8-29c0-4b5a-b5a1-d7971086de43","savedPayload":{"position":{"x":39747.429115912564,"y":27125.232292897315},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Base11 SMAs","id":"05fabbf9-7798-4a53-995e-53ae74bef3de"}}},{"type":"Data Product","name":"Popular EMAs","id":"8e4b92ff-efb0-48cf-9975-ac8e88e5448a","savedPayload":{"position":{"x":39709.54970162271,"y":26974.02651719367},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Popular EMAs","id":"d5894707-b065-429b-ba6b-78c71e6529fe"}}},{"type":"Data Product","name":"Base7 EMAs","id":"503cc250-ef5a-459a-bbc6-58d783db9d78","savedPayload":{"position":{"x":39854.550956350555,"y":26952.16094339507},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Base7 EMAs","id":"b42348a4-6a26-4d46-aa2e-cbf5fa0a4984"}}},{"type":"Data Product","name":"Base11 EMAs","id":"4b6236b3-17fa-4878-8209-5fb2545c404c","savedPayload":{"position":{"x":39847.036799342895,"y":26795.99008435171},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Base11 EMAs","id":"21df4f44-96eb-453b-8652-4ce2dc03424c"}}},{"type":"Data Product","name":"MACD 122609","id":"407974d4-f228-4be8-93b6-8de0a2460f20","savedPayload":{"position":{"x":40000.18204267903,"y":26809.973653992438},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"MACD 122609","id":"6c0c9bf0-90af-4497-b4fb-49b5872b1119"}}},{"type":"Data Product","name":"RSI14","id":"bd9d6917-85e4-4ea1-b6d4-b66fbab54304","savedPayload":{"position":{"x":40010.83883760511,"y":26648.489649639112},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"RSI14","id":"e24248b9-90df-4b26-b5cc-0bac80efa0c7"}}},{"type":"Data Product","name":"Base6 SMAs","id":"8d28f5f5-b957-4c4e-9354-5cc7557ae6e0","savedPayload":{"position":{"x":40159.55505347419,"y":26691.844850627076},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Base6 SMAs","id":"4ae22e54-cd02-4e2e-b638-1c5ea9a171ac"}}},{"type":"Data Product","name":"Base5 SMAs","id":"b1ca1bdb-6a9a-44cb-bc03-13e57fa3b2f3","savedPayload":{"position":{"x":40199.67151760821,"y":26536.90320875713},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Base5 SMAs","id":"2dcb55de-1673-409e-aa52-f51e7c7f8fa3"}}},{"type":"Data Product","name":"Bollinger Channels","id":"7886d69f-327a-4820-8b73-3229f5c67c1b","savedPayload":{"position":{"x":40338.213753894044,"y":26601.735084745018},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Channels","id":"94bc3958-cc85-43a1-a178-103e84f42910"}}},{"type":"Data Product","name":"Bollinger Sub-Channels","id":"35ed3c59-2fa8-4432-af22-39191a328a58","savedPayload":{"position":{"x":40405.70943632296,"y":26457.056217109133},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Sub-Channels","id":"79ce9c05-8a4c-4b58-850f-288037acc702"}}},{"type":"Data Product","name":"MACD 122609","id":"cb2b263e-4c2c-4436-8e0d-9356d6aa8953","savedPayload":{"position":{"x":40530.98890378412,"y":26545.997256770825},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"MACD 122609","id":"6c0c9bf0-90af-4497-b4fb-49b5872b1119"}}},{"type":"Data Product","name":"MACD 031016","id":"366a7df3-743c-4dc3-8ef7-366da2d62a17","savedPayload":{"position":{"x":40622.02640595803,"y":26413.77740089986},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"MACD 031016","id":"d1482dc0-e9f1-47ba-b75e-961fa914a53a"}}},{"type":"Data Product","name":"MACD 081709","id":"a441e958-9d0d-4e19-a439-9676bf5c9d78","savedPayload":{"position":{"x":40729.60263236204,"y":26523.894065420896},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"MACD 081709","id":"683e6b29-9f82-4a8e-93eb-20ac0e81a750"}}},{"type":"Data Product","name":"MACD 245209","id":"1c5d8411-f438-48fb-a398-a391a918c835","savedPayload":{"position":{"x":40841.99149660254,"y":26410.017631725208},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"MACD 245209","id":"47984765-8180-45cf-a9eb-f0a8b22d165d"}}},{"type":"Data Product","name":"Candles","id":"b29fdf78-6a85-4e6a-bea2-1a9c081b991d","savedPayload":{"position":{"x":40929.21550804983,"y":26535.792497404906},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Candles","id":"2443883b-6959-42a3-ae3b-ef3102ffcdcc"}}},{"type":"Data Product","name":"Volumes","id":"34fd6a36-26c3-4417-abf7-f9af54c39587","savedPayload":{"position":{"x":41059.78550857249,"y":26444.247460651783},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Volumes","id":"3a43c6f3-bac0-404e-865f-822eb48c8660"}}},{"type":"Data Product","name":"Bollinger Channels","id":"ea39fec5-b63c-4088-8261-fa72be94f1a0","savedPayload":{"position":{"x":41124.00008771877,"y":26583.213235959065},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Channels","id":"94bc3958-cc85-43a1-a178-103e84f42910"}}},{"type":"Data Product","name":"Bollinger Sub-Channels","id":"6f008953-abf8-406e-9d09-8543e7d57948","savedPayload":{"position":{"x":41268.61135660428,"y":26515.263317449517},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Bollinger Sub-Channels","id":"79ce9c05-8a4c-4b58-850f-288037acc702"}}},{"type":"Data Product","name":"External Signals","id":"f30fd646-c34a-4503-93a0-782e1394d65c","savedPayload":{"position":{"x":41307.372812307905,"y":26663.724655319682},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"External Signals","id":"29196db8-4c41-47ea-be7e-952cd9be9a0b"}}},{"type":"Data Product","name":"Resistances","id":"0fc52ebd-5ade-467a-ab81-b0c8c4d31d2d","savedPayload":{"position":{"x":41461.68126244026,"y":26621.616430109563},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Resistances","id":"7a734501-a0fb-4305-803e-7e95d477c513"}}},{"type":"Data Product","name":"Supports","id":"314bd1f4-9eb8-4c86-a74e-3b9410684b42","savedPayload":{"position":{"x":41474.05216036022,"y":26774.643688209508},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Supports","id":"bc3c43de-6312-47d4-ae3d-0c95c1b039e0"}}},{"type":"Data Product","name":"","id":"f0d3d630-2589-482c-a1fb-61557b36fdbb","savedPayload":{"position":{"x":41633.416208521245,"y":26759.969002755184},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Basic Candles","id":"7519e3d8-b5ec-47eb-84c9-8c9262c9efc6"}}},{"type":"Data Product","name":"","id":"d12994e0-734b-4c73-8c60-e2dad1754244","savedPayload":{"position":{"x":41618.899374003944,"y":26913.040943954424},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"One-Candle Patterns","id":"f3c0863c-ac0c-4fc0-b9ee-5f0f2bd722ea"}}},{"type":"Data Product","name":"","id":"bf1c2d69-b624-4100-8fc7-cd1df20d22d0","savedPayload":{"position":{"x":41778.80078025863,"y":26926.024759411866},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Two-Candles Patterns","id":"29283392-6a01-4acd-8f41-328e92281980"}}},{"type":"Data Product","name":"","id":"03d9649a-7fe7-4fdc-be36-5a0db0cb8be6","savedPayload":{"position":{"x":41788.80834700064,"y":27107.52362183986},"targetPosition":{"x":40757.00079050569,"y":27671.679802500574},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Three-Candles Patterns","id":"1b6f79d8-d1ba-49e5-a808-42f71fba5657"}}}],"id":"74270308-14e4-45db-95a2-4956c6f489b2","savedPayload":{"position":{"x":40757.00079050569,"y":27671.679802500574},"targetPosition":{"x":41288.543140830356,"y":28749.185389847455},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":5,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"922126c5-3b95-4c76-90ce-c85435c49624","savedPayload":{"position":{"x":41288.30576385606,"y":28747.6362748311},"targetPosition":{"x":41578.67890839344,"y":29277.64489904081},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"79c82a1e-4c4e-4622-b762-4ccbfdac46b7","savedPayload":{"position":{"x":41408.778868052425,"y":28691.823288881566},"targetPosition":{"x":41578.67890839344,"y":29277.64489904081},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Mines Data","name":"New Data Mines Data","id":"bf04ccea-266d-4115-b50e-fefdf29b873a"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.marketDataProducts === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Market Data Products.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Data Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.marketDataProducts)\n setup(templateClone, target, exchange, 'Exchange Data Products', 'marketDataProducts')\n templateClone.payload.referenceParent = market\n\n return templateClone\n }\n}","id":"255fc8f9-413a-4334-b6f5-d944d57fb27c","savedPayload":{"position":{"x":41577.84374712068,"y":28672.974168472487},"targetPosition":{"x":41578.67890839344,"y":29277.64489904081},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"4dd2897c-d7e2-4fa2-a92f-4d0cf49a6370","savedPayload":{"position":{"x":41578.67890839344,"y":29277.64489904081},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Back WHB Session Reference","templateStructure":{"type":"Template Structure","name":"New Template Structure","sessionReferences":{"type":"Session Reference","name":" ","marketDataProducts":{"type":"Market Data Products","name":"","dataProducts":[{"type":"Data Product","name":"Episode Counters","id":"05a01aed-ce76-4e0c-b3b2-1876eccf3f87","savedPayload":{"position":{"x":38540.009777681786,"y":26347.85132065392},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Counters","id":"574cfd2f-a269-452d-9a90-dd6921ebc49d"}}},{"type":"Data Product","name":"Episode Statistics","id":"599cf7cf-4e7b-4d99-8974-2bc30441f62a","savedPayload":{"position":{"x":38520.277760275785,"y":26167.873267822444},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Statistics","id":"400c7f49-37da-41fb-b83d-879960aa74ff"}}},{"type":"Data Product","name":"Episode Candle","id":"7e88a423-ddc6-410c-be6b-541d84298db4","savedPayload":{"position":{"x":38516.38806202917,"y":25986.356459586146},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Candle","id":"b9a58113-cf27-4d57-9810-87a2cc158804"}}},{"type":"Data Product","name":"Episode Balances","id":"83a89b34-f22a-4197-822d-81b61544265d","savedPayload":{"position":{"x":38522.019165050006,"y":25807.15828766374},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Balances","id":"a9a53d82-133b-4417-b639-f9a56d338233"}}},{"type":"Data Product","name":"Distance To Event","id":"71abd26c-870f-437b-a5d8-2c3c8688eed9","savedPayload":{"position":{"x":38540.24296173973,"y":25627.47842754829},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Distance To Event","id":"8ea88d6c-7d7f-4152-b781-ea108df52c63"}}},{"type":"Data Product","name":"Current Strategy","id":"224064d6-03b7-4c3a-9131-ef228c277b32","savedPayload":{"position":{"x":38571.4955338463,"y":25449.985461014912},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Strategy","id":"895d8a04-ef45-41a7-909a-ba31013ffb90"}}},{"type":"Data Product","name":"Current Position","id":"5a1ff3d4-7c9b-44c5-ad5a-390787013a07","savedPayload":{"position":{"x":38613.46908574689,"y":25273.629636577185},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Position","id":"832ecada-8da3-4ba6-b6e9-be34dd5f7ce9"}}},{"type":"Data Product","name":"Last Position","id":"9abd83c8-1454-4be4-947c-c868818bfa84","savedPayload":{"position":{"x":38668.18265773209,"y":25100.252141800433},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Position","id":"477cd6d5-862a-44d0-9313-786a4e63a602"}}},{"type":"Data Product","name":"Market Buy Orders","id":"99efff55-6d3e-4c55-b566-55d077d35c0d","savedPayload":{"position":{"x":38733.63529583671,"y":24931.9858534836},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"7c769317-2639-4460-8b88-9dc92f7b0585"}}},{"type":"Data Product","name":"Market Sell Orders","id":"97b9e46c-c79b-421c-9bd0-759da93f61c2","savedPayload":{"position":{"x":38810.33624022519,"y":24768.152856494307},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"9cc7645a-54fe-40d6-9896-9278167011fb"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"e9069f9c-1037-4cd0-b45b-de3d718cbe3d","savedPayload":{"position":{"x":38899.085167878926,"y":24610.823781869498},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"4c827ee0-a29b-4b65-8438-03e2ea98b410"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"65e6f378-130c-4149-a06a-e2aeadfb6220","savedPayload":{"position":{"x":38996.5841089995,"y":24459.47109898738},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2c753cd8-36d8-466c-bd80-1ebfa8e314dc"}}},{"type":"Data Product","name":"Trading System Highlights","id":"3740fb14-419b-4892-92e7-b270934fed87","savedPayload":{"position":{"x":39102.82470936782,"y":24314.603743845102},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Highlights","id":"319f660a-78be-4cf4-8052-877837cad806"}}},{"type":"Data Product","name":"Trading System Values","id":"cc1e7498-c02c-4948-abab-6a2092ac6c09","savedPayload":{"position":{"x":39223.425522160745,"y":24176.468279338922},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Values","id":"c90c009b-588d-45d4-aff1-05e375181dfa"}}},{"type":"Data Product","name":"Trading System Errors","id":"c8c562c1-b322-4468-bf53-402cf8428f1a","savedPayload":{"position":{"x":39347.499231006506,"y":24046.8799452049},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Errors","id":"1d9c570d-77c7-40ac-a61e-c5a57a411de8"}}},{"type":"Data Product","name":"Trading System Status","id":"14677571-51c5-4443-a4fd-7dc94b8e861e","savedPayload":{"position":{"x":39482.73704560584,"y":23926.774721497226},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Status","id":"eed48c80-35c5-49fa-b12d-18e7280ffb8f"}}},{"type":"Data Product","name":"Trading System Progress","id":"0dda05b7-11bc-404c-82cd-d01378f4d67e","savedPayload":{"position":{"x":39624.90438750951,"y":23814.0492903772},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Progress","id":"04c8606b-5e59-4e7d-b3ac-387bfffcd300"}}},{"type":"Data Product","name":"Trading System Running","id":"2ac74ec6-68f9-4dba-93d8-79b4117d16bc","savedPayload":{"position":{"x":39775.097404436165,"y":23712.86496745489},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Running","id":"17236f59-6ef2-4cc3-913c-1ff6db052236"}}},{"type":"Data Product","name":"Trading System Announcements","id":"0681d107-00b9-4ab9-a4a3-4a4b03143a38","savedPayload":{"position":{"x":39930.134336103954,"y":23620.1382603244},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Announcements","id":"4a6f828a-9671-431e-8257-fc920943581e"}}},{"type":"Data Product","name":"Strategies","id":"cc3990cf-cd87-4d54-842b-5eb779469b16","savedPayload":{"position":{"x":40092.76890045384,"y":23541.812638130996},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Strategies","id":"21db6fce-8450-4b07-9015-d81a339fd030"}}},{"type":"Data Product","name":"Positions","id":"11db043e-de9e-4dd8-9396-a168a24dba48","savedPayload":{"position":{"x":40256.55650226629,"y":23469.3786047283},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Positions","id":"1eabba24-cbd4-4cbf-95e0-c5135349d41d"}}},{"type":"Data Product","name":"Stop Loss","id":"35e859fd-8e57-4175-8510-7bc111c687ec","savedPayload":{"position":{"x":40427.17584726131,"y":23410.92164231538},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Stop Loss","id":"c18bdc82-216a-4b1d-8850-5c3c9dc2000b"}}},{"type":"Data Product","name":"Take Profit","id":"2abb2476-7440-4683-963b-672210352bdd","savedPayload":{"position":{"x":40603.82281014226,"y":23363.625397531057},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Take Profit","id":"2542c7d0-fa26-4b52-a59a-a3630e52eb89"}}},{"type":"Data Product","name":"Last Strategy","id":"74cec8de-ee51-414c-bf78-84484f319d88","savedPayload":{"position":{"x":40781.52841113816,"y":23329.006538335427},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Strategy","id":"0625f524-2b97-4b4d-8a90-590ffc62ecd3"}}},{"type":"Data Product","name":"Market Buy Orders","id":"4bb526f7-2521-4367-ba88-2dca86f4e443","savedPayload":{"position":{"x":40960.89240525442,"y":23306.66701173718},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"db256083-9aa2-48e1-8fd6-3425a5085302"}}},{"type":"Data Product","name":"Market Sell Orders","id":"d927892b-1aa7-4bad-8a22-56044d18e642","savedPayload":{"position":{"x":41139.27983106244,"y":23293.78341301361},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"1958f79b-5c6c-4874-9154-98c314822ed7"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"7dc30ec8-3acf-471f-8e60-a516bfd68de9","savedPayload":{"position":{"x":41321.93750189346,"y":23296.264210900164},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"5deceb32-c7ab-4560-818a-0f0b9d6632fb"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"af10457e-bd7e-43e2-bc0d-1a815d8914ed","savedPayload":{"position":{"x":41500.47991939269,"y":23306.817663955386},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2a1d405b-2fbe-4ed4-a76a-d2c7be59d20e"}}},{"type":"Data Product","name":"Open Stage","id":"f87799d5-61d1-481a-9309-f4cbcad21324","savedPayload":{"position":{"x":41681.116854724256,"y":23332.734599876065},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stage","id":"73c3c041-ba2a-4798-a362-a453409b518a"}}},{"type":"Data Product","name":"Close Stage","id":"eb4a0236-6a49-4cc5-9595-bbf1257ee4f6","savedPayload":{"position":{"x":41857.45816423588,"y":23368.78472333558},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stage","id":"2bb9bb41-1ff5-4f83-aa5b-bfc4c9f06a9a"}}},{"type":"Data Product","name":"Trigger Stage","id":"f660248a-feb9-45f1-8697-7951b60112ee","savedPayload":{"position":{"x":42031.892599930805,"y":23417.41197250529},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stage","id":"b6cff826-9056-4fbd-8eca-cbd6cceec962"}}},{"type":"Data Product","name":"Manage Stage","id":"44c7342b-ea48-408a-bee1-15b3b1c73ed4","savedPayload":{"position":{"x":42201.52186186003,"y":23476.2649384158},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stage","id":"bd691611-e7a6-49a8-b07d-c15360b55e40"}}},{"type":"Data Product","name":"Episode Base Asset","id":"2af63eb5-09da-4139-87dc-6f9da1cf94d3","savedPayload":{"position":{"x":42367.07265717679,"y":23551.095248258298},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Base Asset","id":"234969ff-eab1-4d59-b6fa-79433c9a20e9"}}},{"type":"Data Product","name":"Episode Quoted Asset","id":"12f61179-1c60-43ee-bde2-c0777805330d","savedPayload":{"position":{"x":42529.032733365,"y":23632.83683694977},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Quoted Asset","id":"ae525e31-d6a8-47d2-9021-3f2ddb9615b0"}}},{"type":"Data Product","name":"Position Base Asset","id":"170589ab-c463-491a-adb2-4283e5080fa7","savedPayload":{"position":{"x":42683.03653736282,"y":23724.25547736275},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Base Asset","id":"b371b039-f6c8-4f60-84cb-52f55c96c84d"}}},{"type":"Data Product","name":"Position Quoted Asset","id":"fbaa1015-a721-48b3-ac5a-62cf7e7f2320","savedPayload":{"position":{"x":42833.585297536214,"y":23827.34096450717},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Quoted Asset","id":"a376f02b-a5d2-4079-b5cd-ab7dc894b909"}}},{"type":"Data Product","name":"Current Episode","id":"45f0f172-89b0-4916-98f2-a0a48750b0b8","savedPayload":{"position":{"x":42972.90398698872,"y":23939.051940041674},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Episode","id":"b8da0132-ba28-46ec-aa54-eb9eaac56ce7"}}},{"type":"Data Product","name":"Episodes","id":"814b7f17-1107-44f3-a150-7af3a7a9aa88","savedPayload":{"position":{"x":43108.69028619688,"y":24061.766979013686},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episodes","id":"aeec080e-8caf-4976-8187-ba4e725b73b0"}}},{"type":"Data Product","name":"Trigger Stages","id":"c341c49d-83d2-411d-9c0f-48044fd36a9f","savedPayload":{"position":{"x":43233.80862866719,"y":24192.345358931416},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stages","id":"18cc2e79-7e57-418c-b635-6c68fc11d681"}}},{"type":"Data Product","name":"Open Stages","id":"f65c58c2-078f-4f07-bbbd-e1597ec20c33","savedPayload":{"position":{"x":43350.031787490196,"y":24331.17552412177},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stages","id":"d5938c00-0849-466d-ae14-4ea91b571678"}}},{"type":"Data Product","name":"Manage Stages","id":"541b4563-37c3-4e96-b487-599d44cbe75d","savedPayload":{"position":{"x":43456.052956754786,"y":24477.67155351735},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stages","id":"8fab86b3-db8d-4113-8418-1d256bd98cf2"}}},{"type":"Data Product","name":"Close Stages","id":"55ff512e-5d5a-49eb-aabd-45772fccb472","savedPayload":{"position":{"x":43553.57007707833,"y":24630.18657396468},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stages","id":"ba911e61-f951-48cd-b547-9a70aa211100"}}},{"type":"Data Product","name":"Last Market Order","id":"73353a22-11d6-47d5-8ccb-890252540689","savedPayload":{"position":{"x":43640.92574432084,"y":24788.782767394026},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Market Order","id":"6df1ac87-92d5-4788-b0bc-f3543b283ef0"}}},{"type":"Data Product","name":"Last Limit Order","id":"392d99f6-770a-4620-bc0f-59209155d4c3","savedPayload":{"position":{"x":43714.222361006076,"y":24954.387789344517},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Limit Order","id":"c24ec6a1-e937-4d20-93eb-4faf2a0becc3"}}},{"type":"Data Product","name":"Trading System Warnings","id":"e3d90022-b237-4145-b529-8cff10ed0ff9","savedPayload":{"position":{"x":43779.4097117348,"y":25123.30448128056},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Warnings","id":"34310596-466a-4e9a-a5a2-256b0fe3e339"}}},{"type":"Data Product","name":"Trading System Infos","id":"186384c2-efc9-4e85-8a4d-0221fe759927","savedPayload":{"position":{"x":43830.68182866555,"y":25298.461286658796},"targetPosition":{"x":41219.62900944148,"y":25997.987314273985},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Infos","id":"020ad519-0fc6-4f2f-9f26-b2c7de118fb8"}}}],"id":"4241ac67-c6af-48fd-a6b3-bbf4d355ce7b","savedPayload":{"position":{"x":41219.75325668756,"y":25998.62732686098},"targetPosition":{"x":41570.8776740334,"y":27764.606278156036},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":5,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"5d4fb545-1392-4651-8f54-32b3b0b2278f","savedPayload":{"position":{"x":41570.888798401305,"y":27764.511394712776},"targetPosition":{"x":41746.82223951055,"y":28649.483974380306},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"726cd3f8-cfce-4e06-8e13-f4b2523e6e57","savedPayload":{"position":{"x":41746.80546264749,"y":28649.43268031967},"targetPosition":{"x":41890.12020399356,"y":29236.601914004903},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"d5bc03d5-baeb-4ab0-91a6-cc61d0122474","savedPayload":{"position":{"x":41877.63069456137,"y":28626.66484309387},"targetPosition":{"x":41890.12020399356,"y":29236.601914004903},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Trading Mines Data","name":"New Trading Mines Data","id":"29ca14e5-dabe-470a-be64-ed7996bd1e55"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.sessionReferences === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Session Reference.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Trading Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Trading Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.sessionReferences)\n \n setup(templateClone, target, exchange, 'Exchange Trading Products', 'sessionReferences')\n templateClone.marketDataProducts.payload.referenceParent = market\n\n templateClone.templateType = 'Backtesting Session'\n return templateClone\n }\n}","id":"5201c9bb-45d3-4066-970d-56d13eb6905e","savedPayload":{"position":{"x":42045.7593797747,"y":28652.32086368015},"targetPosition":{"x":41890.12020399356,"y":29236.601914004903},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"caa968ef-9a38-4fb4-998f-cb7e27a3eedd","savedPayload":{"position":{"x":41890.12020399356,"y":29236.601914004903},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Paper WHB Session Reference","templateStructure":{"type":"Template Structure","name":"New Template Structure","sessionReferences":{"type":"Session Reference","name":" ","marketDataProducts":{"type":"Market Data Products","name":"","dataProducts":[{"type":"Data Product","name":"Episode Counters","id":"6f18f083-ed8e-4697-8c03-4697cfe151db","savedPayload":{"position":{"x":40098.216981825055,"y":28933.818210993046},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Counters","id":"574cfd2f-a269-452d-9a90-dd6921ebc49d"}}},{"type":"Data Product","name":"Episode Statistics","id":"b298da2e-4e1e-4c6e-b55d-54fdc153a632","savedPayload":{"position":{"x":39994.12926022697,"y":28793.028120130315},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Statistics","id":"400c7f49-37da-41fb-b83d-879960aa74ff"}}},{"type":"Data Product","name":"Episode Candle","id":"d15c34d5-25de-499f-895b-090dda990b88","savedPayload":{"position":{"x":39900.42941325055,"y":28646.28913228971},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Candle","id":"b9a58113-cf27-4d57-9810-87a2cc158804"}}},{"type":"Data Product","name":"Episode Balances","id":"c92a19f3-4b59-43b2-8d14-3924e8bf3926","savedPayload":{"position":{"x":39816.05486598375,"y":28493.66573687395},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Balances","id":"a9a53d82-133b-4417-b639-f9a56d338233"}}},{"type":"Data Product","name":"Distance To Event","id":"965fb37a-9788-42cd-8ae1-03034b895a3c","savedPayload":{"position":{"x":39742.4325799138,"y":28335.77882345765},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Distance To Event","id":"8ea88d6c-7d7f-4152-b781-ea108df52c63"}}},{"type":"Data Product","name":"Current Strategy","id":"9236ab33-fd21-43c2-9e69-e1074bdbed3f","savedPayload":{"position":{"x":39678.92643081689,"y":28171.709051712034},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Strategy","id":"895d8a04-ef45-41a7-909a-ba31013ffb90"}}},{"type":"Data Product","name":"Current Position","id":"519e90a1-02d6-440e-859e-22f729af363b","savedPayload":{"position":{"x":39627.30715773405,"y":28003.60595480638},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Position","id":"832ecada-8da3-4ba6-b6e9-be34dd5f7ce9"}}},{"type":"Data Product","name":"Last Position","id":"7dafbd86-54f1-47bb-b543-44bea8eee6a9","savedPayload":{"position":{"x":39586.487407967055,"y":27833.202132249677},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Position","id":"477cd6d5-862a-44d0-9313-786a4e63a602"}}},{"type":"Data Product","name":"Market Buy Orders","id":"ffd17878-c0f1-4b05-9d6b-8ba0b74e469a","savedPayload":{"position":{"x":39558.311935075966,"y":27660.665055267018},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"7c769317-2639-4460-8b88-9dc92f7b0585"}}},{"type":"Data Product","name":"Market Sell Orders","id":"604e972a-8796-41b1-9a24-75dc1c480e6f","savedPayload":{"position":{"x":39540.08927151699,"y":27485.92311257219},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"9cc7645a-54fe-40d6-9896-9278167011fb"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"8da735d1-a0db-4539-9bd2-d13a6f6ae947","savedPayload":{"position":{"x":39532.49266837573,"y":27310.85761266595},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"4c827ee0-a29b-4b65-8438-03e2ea98b410"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"69fbc68a-a427-4e76-be71-2c7a599dc107","savedPayload":{"position":{"x":39539.64003005353,"y":27135.89625310463},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2c753cd8-36d8-466c-bd80-1ebfa8e314dc"}}},{"type":"Data Product","name":"Trading System Highlights","id":"1d387da9-e782-48f4-b148-86c705f654f4","savedPayload":{"position":{"x":39556.3115829875,"y":26961.804881094115},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Highlights","id":"319f660a-78be-4cf4-8052-877837cad806"}}},{"type":"Data Product","name":"Trading System Values","id":"e899e993-fc16-453e-9f27-26c923c32d0e","savedPayload":{"position":{"x":39586.03313301019,"y":26788.983166569764},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Values","id":"c90c009b-588d-45d4-aff1-05e375181dfa"}}},{"type":"Data Product","name":"Trading System Errors","id":"cafbf2a0-728e-43e1-a15b-1d39183270fd","savedPayload":{"position":{"x":39624.27015233072,"y":26617.903334820403},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Errors","id":"1d9c570d-77c7-40ac-a61e-c5a57a411de8"}}},{"type":"Data Product","name":"Trading System Status","id":"b018f1ce-e21c-458f-a2e3-0311e20da2e6","savedPayload":{"position":{"x":39679.83398875249,"y":26452.345645541143},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Status","id":"eed48c80-35c5-49fa-b12d-18e7280ffb8f"}}},{"type":"Data Product","name":"Trading System Progress","id":"1a378cfa-4972-4d75-8107-1aec11441f77","savedPayload":{"position":{"x":39737.9215122701,"y":26287.358642987227},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Progress","id":"04c8606b-5e59-4e7d-b3ac-387bfffcd300"}}},{"type":"Data Product","name":"Trading System Running","id":"8e0ecee9-3534-4833-a7fe-d25ee9f80056","savedPayload":{"position":{"x":39816.55816866711,"y":26129.481850999717},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Running","id":"17236f59-6ef2-4cc3-913c-1ff6db052236"}}},{"type":"Data Product","name":"Trading System Announcements","id":"c342b810-3f97-419c-8f1d-05e7f0eaa4f3","savedPayload":{"position":{"x":39896.12107440301,"y":25973.444027286525},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Announcements","id":"4a6f828a-9671-431e-8257-fc920943581e"}}},{"type":"Data Product","name":"Strategies","id":"dc806e3f-e76c-42f4-b4b4-4196eab81024","savedPayload":{"position":{"x":39995.11183649106,"y":25827.60094023992},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Strategies","id":"21db6fce-8450-4b07-9015-d81a339fd030"}}},{"type":"Data Product","name":"Positions","id":"9e9a2f75-c762-42f2-a0ac-62c709b972b5","savedPayload":{"position":{"x":40098.189600645965,"y":25685.30379879463},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Positions","id":"1eabba24-cbd4-4cbf-95e0-c5135349d41d"}}},{"type":"Data Product","name":"Stop Loss","id":"bb5293fe-ed7d-46fd-a002-47467ae09e5c","savedPayload":{"position":{"x":40210.17862569498,"y":25549.859573981346},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Stop Loss","id":"c18bdc82-216a-4b1d-8850-5c3c9dc2000b"}}},{"type":"Data Product","name":"Take Profit","id":"8480e26d-0ef6-4877-8437-9d40d933b9b8","savedPayload":{"position":{"x":40333.03403807846,"y":25424.180870308574},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Take Profit","id":"2542c7d0-fa26-4b52-a59a-a3630e52eb89"}}},{"type":"Data Product","name":"Last Strategy","id":"fc52ae6d-4401-469c-bd1d-610ff7b692fc","savedPayload":{"position":{"x":40463.75438170163,"y":25306.76795265002},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Strategy","id":"0625f524-2b97-4b4d-8a90-590ffc62ecd3"}}},{"type":"Data Product","name":"Market Buy Orders","id":"567671dd-a00d-40ab-915f-96288c51b46a","savedPayload":{"position":{"x":40602.325974103886,"y":25198.761745657725},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"db256083-9aa2-48e1-8fd6-3425a5085302"}}},{"type":"Data Product","name":"Market Sell Orders","id":"f7dc1991-0d6a-4bf9-9cd8-375f7e04b30c","savedPayload":{"position":{"x":40745.83449844007,"y":25097.42844734549},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"1958f79b-5c6c-4874-9154-98c314822ed7"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"a32be85f-e4eb-48be-8f4a-dbebe20339f3","savedPayload":{"position":{"x":40899.968362635096,"y":25012.922086211474},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"5deceb32-c7ab-4560-818a-0f0b9d6632fb"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"be1ea388-ff94-451e-9ec7-1e94ab990c37","savedPayload":{"position":{"x":41054.02863995971,"y":24928.68132225379},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2a1d405b-2fbe-4ed4-a76a-d2c7be59d20e"}}},{"type":"Data Product","name":"Open Stage","id":"dec7861f-0a28-40dd-a873-1bfc2e3292e2","savedPayload":{"position":{"x":41218.23486283324,"y":24866.0020177432},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stage","id":"73c3c041-ba2a-4798-a362-a453409b518a"}}},{"type":"Data Product","name":"Close Stage","id":"74e8a16e-6556-498e-964a-b74bc15a5b0a","savedPayload":{"position":{"x":41382.581242073364,"y":24804.361668934343},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stage","id":"2bb9bb41-1ff5-4f83-aa5b-bfc4c9f06a9a"}}},{"type":"Data Product","name":"Trigger Stage","id":"d0d9a097-bbb8-4b8c-81ba-e46ac8012741","savedPayload":{"position":{"x":41552.859406352916,"y":24761.18570915957},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stage","id":"b6cff826-9056-4fbd-8eca-cbd6cceec962"}}},{"type":"Data Product","name":"Manage Stage","id":"45d6b321-0670-4a69-9105-dbf2c4d287ec","savedPayload":{"position":{"x":41724.893978123524,"y":24726.134142604064},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stage","id":"bd691611-e7a6-49a8-b07d-c15360b55e40"}}},{"type":"Data Product","name":"Episode Base Asset","id":"4e52457c-eb7b-417c-beea-dd74735053b7","savedPayload":{"position":{"x":41898.892533168866,"y":24702.501262694244},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Base Asset","id":"234969ff-eab1-4d59-b6fa-79433c9a20e9"}}},{"type":"Data Product","name":"Episode Quoted Asset","id":"2d85b66a-086f-4959-85cb-e7579bd5f93b","savedPayload":{"position":{"x":42074.375124923274,"y":24694.50041839573},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Quoted Asset","id":"ae525e31-d6a8-47d2-9021-3f2ddb9615b0"}}},{"type":"Data Product","name":"Position Base Asset","id":"88108bea-8de4-4726-8e94-687940729792","savedPayload":{"position":{"x":42249.86099849343,"y":24691.59124534065},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Base Asset","id":"b371b039-f6c8-4f60-84cb-52f55c96c84d"}}},{"type":"Data Product","name":"Position Quoted Asset","id":"4c8763ba-b535-454e-84ca-70720eedba78","savedPayload":{"position":{"x":42424.83264100943,"y":24707.054797890265},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Quoted Asset","id":"a376f02b-a5d2-4079-b5cd-ab7dc894b909"}}},{"type":"Data Product","name":"Current Episode","id":"d9bd3474-2bb9-42dc-b33b-8fa4168819f8","savedPayload":{"position":{"x":42602.6305711725,"y":24732.609751808443},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Episode","id":"b8da0132-ba28-46ec-aa54-eb9eaac56ce7"}}},{"type":"Data Product","name":"Episodes","id":"184dd37e-5117-436f-ac9f-71ea602eeb07","savedPayload":{"position":{"x":42780.48742947943,"y":24726.303753119784},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episodes","id":"aeec080e-8caf-4976-8187-ba4e725b73b0"}}},{"type":"Data Product","name":"Trigger Stages","id":"fb95f14a-f37c-4a60-aa9c-3bca98a5737b","savedPayload":{"position":{"x":42935.35490118859,"y":24814.49055524695},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stages","id":"18cc2e79-7e57-418c-b635-6c68fc11d681"}}},{"type":"Data Product","name":"Open Stages","id":"432de912-7bad-4772-b2c6-ca3315d1850b","savedPayload":{"position":{"x":43101.6653899894,"y":24870.52656313988},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stages","id":"d5938c00-0849-466d-ae14-4ea91b571678"}}},{"type":"Data Product","name":"Manage Stages","id":"f9630ce2-3cca-4b9d-a61a-2bd2e8e08d7d","savedPayload":{"position":{"x":43263.17124597971,"y":24939.464578538453},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stages","id":"8fab86b3-db8d-4113-8418-1d256bd98cf2"}}},{"type":"Data Product","name":"Close Stages","id":"71d6d9bc-36d3-4002-9d11-17a31274bc00","savedPayload":{"position":{"x":43419.698907757935,"y":25019.041823185464},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stages","id":"ba911e61-f951-48cd-b547-9a70aa211100"}}},{"type":"Data Product","name":"Last Market Order","id":"aa9ad5c5-0584-47cc-bd17-48751161a7e5","savedPayload":{"position":{"x":43570.53564581273,"y":25108.921038613888},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Market Order","id":"6df1ac87-92d5-4788-b0bc-f3543b283ef0"}}},{"type":"Data Product","name":"Last Limit Order","id":"39c69091-cd12-422d-8d2a-267af5828931","savedPayload":{"position":{"x":43714.976242817705,"y":25208.738013845705},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Limit Order","id":"c24ec6a1-e937-4d20-93eb-4faf2a0becc3"}}},{"type":"Data Product","name":"Trading System Warnings","id":"a318c304-1076-444e-b2c4-41f33ef01658","savedPayload":{"position":{"x":43852.33459466575,"y":25318.07968116616},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Warnings","id":"34310596-466a-4e9a-a5a2-256b0fe3e339"}}},{"type":"Data Product","name":"Trading System Infos","id":"6a5ddfd6-00f8-4da3-8ca2-31d7ef581208","savedPayload":{"position":{"x":43988.90507530018,"y":25442.854392371028},"targetPosition":{"x":42153.333333333336,"y":27311.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Infos","id":"020ad519-0fc6-4f2f-9f26-b2c7de118fb8"}}}],"id":"fa46265d-4593-41e8-8875-c8e751987df1","savedPayload":{"position":{"x":42391.445867465125,"y":25976.980171948708},"targetPosition":{"x":42273.81803999269,"y":27773.476058639597},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":5,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"9bf71a35-9ee8-4679-89c7-e9894c3963cd","savedPayload":{"position":{"x":42273.703920783555,"y":27773.34018243633},"targetPosition":{"x":42214.82704443634,"y":28673.413425612285},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"f7b51fbd-c90d-4b5a-9242-9de2a40f4733","savedPayload":{"position":{"x":42214.84437662907,"y":28673.30419209898},"targetPosition":{"x":42201.31096605775,"y":29277.573528601555},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"b7adb316-4430-4933-80ef-c8e239a947fc","savedPayload":{"position":{"x":42347.077285420426,"y":28685.233641241357},"targetPosition":{"x":42201.31096605775,"y":29277.573528601555},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Trading Mines Data","name":"New Trading Mines Data","id":"29ca14e5-dabe-470a-be64-ed7996bd1e55"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.sessionReferences === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Session Reference.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Trading Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Trading Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.sessionReferences)\n \n setup(templateClone, target, exchange, 'Exchange Trading Products', 'sessionReferences')\n templateClone.marketDataProducts.payload.referenceParent = market\n\n templateClone.templateType = 'Paper Trading Session'\n return templateClone\n }\n}","id":"09fd8aa3-006f-4c13-8084-78da7f7ed4ca","savedPayload":{"position":{"x":42502.84558954993,"y":28753.465025445385},"targetPosition":{"x":42201.31096605775,"y":29277.573528601555},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"ce8531c2-42df-4c54-b4ea-48d7ca9861e5","savedPayload":{"position":{"x":42201.31096605775,"y":29277.573528601555},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Live WHB Session Reference","templateStructure":{"type":"Template Structure","name":"New Template Structure","sessionReferences":{"type":"Session Reference","name":" ","marketDataProducts":{"type":"Market Data Products","name":"","dataProducts":[{"type":"Data Product","name":"Episode Counters","id":"81726a55-e68c-4568-b67d-c2eba650ab33","savedPayload":{"position":{"x":40829.216981825055,"y":29112.818210993046},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Counters","id":"574cfd2f-a269-452d-9a90-dd6921ebc49d"}}},{"type":"Data Product","name":"Episode Statistics","id":"335893e2-abf9-466b-9efc-de7d8fc0f72b","savedPayload":{"position":{"x":40725.12926022697,"y":28972.028120130315},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Statistics","id":"400c7f49-37da-41fb-b83d-879960aa74ff"}}},{"type":"Data Product","name":"Episode Candle","id":"e68a93d4-6bdb-4077-b199-46c890549906","savedPayload":{"position":{"x":40631.42941325055,"y":28825.28913228971},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Candle","id":"b9a58113-cf27-4d57-9810-87a2cc158804"}}},{"type":"Data Product","name":"Episode Balances","id":"553320b2-edac-48fe-b1a0-a0b11728fc7f","savedPayload":{"position":{"x":40547.05486598375,"y":28672.66573687395},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Balances","id":"a9a53d82-133b-4417-b639-f9a56d338233"}}},{"type":"Data Product","name":"Distance To Event","id":"0892d6b3-b886-4458-b2aa-d330bdd1a7cd","savedPayload":{"position":{"x":40473.4325799138,"y":28514.77882345765},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Distance To Event","id":"8ea88d6c-7d7f-4152-b781-ea108df52c63"}}},{"type":"Data Product","name":"Current Strategy","id":"ac8e21c3-7f77-4a6e-aa09-69009fa35bbe","savedPayload":{"position":{"x":40409.92643081689,"y":28350.709051712034},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Strategy","id":"895d8a04-ef45-41a7-909a-ba31013ffb90"}}},{"type":"Data Product","name":"Current Position","id":"53fdd49e-246c-4c83-aff3-87eba4646614","savedPayload":{"position":{"x":40358.30715773405,"y":28182.60595480638},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Position","id":"832ecada-8da3-4ba6-b6e9-be34dd5f7ce9"}}},{"type":"Data Product","name":"Last Position","id":"c962f6f5-7894-449c-bb91-1919704e1746","savedPayload":{"position":{"x":40317.487407967055,"y":28012.202132249677},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Position","id":"477cd6d5-862a-44d0-9313-786a4e63a602"}}},{"type":"Data Product","name":"Market Buy Orders","id":"23aba9cd-516a-4a46-ad98-f4fbd4fdb5a5","savedPayload":{"position":{"x":40289.311935075966,"y":27839.665055267018},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"7c769317-2639-4460-8b88-9dc92f7b0585"}}},{"type":"Data Product","name":"Market Sell Orders","id":"148d5f86-ecf0-4b8b-9688-f76eecfbe791","savedPayload":{"position":{"x":40271.08927151699,"y":27664.92311257219},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"9cc7645a-54fe-40d6-9896-9278167011fb"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"19c51d22-3bbe-4d8e-972f-d86403713d9b","savedPayload":{"position":{"x":40263.49266837573,"y":27489.85761266595},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"4c827ee0-a29b-4b65-8438-03e2ea98b410"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"1d383627-913b-409b-9498-31ce1308fd4c","savedPayload":{"position":{"x":40270.64003005353,"y":27314.89625310463},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2c753cd8-36d8-466c-bd80-1ebfa8e314dc"}}},{"type":"Data Product","name":"Trading System Highlights","id":"b0a53405-cef1-42e4-8000-5d4f7b39b811","savedPayload":{"position":{"x":40287.3115829875,"y":27140.804881094115},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Highlights","id":"319f660a-78be-4cf4-8052-877837cad806"}}},{"type":"Data Product","name":"Trading System Values","id":"faa276d0-98d6-4a24-9e87-00809dcfad4e","savedPayload":{"position":{"x":40317.03313301019,"y":26967.983166569764},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Values","id":"c90c009b-588d-45d4-aff1-05e375181dfa"}}},{"type":"Data Product","name":"Trading System Errors","id":"5c19738b-1dd4-4c0b-8a07-e6f7c59a3671","savedPayload":{"position":{"x":40355.27015233072,"y":26796.903334820403},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Errors","id":"1d9c570d-77c7-40ac-a61e-c5a57a411de8"}}},{"type":"Data Product","name":"Trading System Status","id":"51519a5c-2bb8-4966-aa20-fc74ce90ab0f","savedPayload":{"position":{"x":40410.83398875249,"y":26631.345645541143},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Status","id":"eed48c80-35c5-49fa-b12d-18e7280ffb8f"}}},{"type":"Data Product","name":"Trading System Progress","id":"a4ea6a97-9c0e-4881-9d4a-034689f8cfbd","savedPayload":{"position":{"x":40468.9215122701,"y":26466.358642987227},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Progress","id":"04c8606b-5e59-4e7d-b3ac-387bfffcd300"}}},{"type":"Data Product","name":"Trading System Running","id":"44565966-e8d6-4ed0-82d7-5a117c77597a","savedPayload":{"position":{"x":40547.55816866711,"y":26308.481850999717},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Running","id":"17236f59-6ef2-4cc3-913c-1ff6db052236"}}},{"type":"Data Product","name":"Trading System Announcements","id":"a60666d2-8290-4db8-ae50-0b820223bd02","savedPayload":{"position":{"x":40627.12107440301,"y":26152.444027286525},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Announcements","id":"4a6f828a-9671-431e-8257-fc920943581e"}}},{"type":"Data Product","name":"Strategies","id":"3df11f37-d521-4ada-942c-766d805fabac","savedPayload":{"position":{"x":40726.11183649106,"y":26006.60094023992},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Strategies","id":"21db6fce-8450-4b07-9015-d81a339fd030"}}},{"type":"Data Product","name":"Positions","id":"7bd9ab51-708f-4ccb-b7f7-f32a29f8e064","savedPayload":{"position":{"x":40829.189600645965,"y":25864.30379879463},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Positions","id":"1eabba24-cbd4-4cbf-95e0-c5135349d41d"}}},{"type":"Data Product","name":"Stop Loss","id":"5d1b514b-d227-46ca-b0f0-9e06db4ee653","savedPayload":{"position":{"x":40941.17862569498,"y":25728.859573981346},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Stop Loss","id":"c18bdc82-216a-4b1d-8850-5c3c9dc2000b"}}},{"type":"Data Product","name":"Take Profit","id":"1a6524ab-b860-4dcb-8626-cbf4c773bd47","savedPayload":{"position":{"x":41064.03403807846,"y":25603.180870308574},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Take Profit","id":"2542c7d0-fa26-4b52-a59a-a3630e52eb89"}}},{"type":"Data Product","name":"Last Strategy","id":"7b4e6f04-1e84-48a1-bd33-39a4d6863809","savedPayload":{"position":{"x":41194.75438170163,"y":25485.76795265002},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Strategy","id":"0625f524-2b97-4b4d-8a90-590ffc62ecd3"}}},{"type":"Data Product","name":"Market Buy Orders","id":"1e801400-e43b-46ca-a796-b246651713da","savedPayload":{"position":{"x":41333.325974103886,"y":25377.761745657725},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"db256083-9aa2-48e1-8fd6-3425a5085302"}}},{"type":"Data Product","name":"Market Sell Orders","id":"14e05017-4f4e-4846-ac79-9b891f05ec0d","savedPayload":{"position":{"x":41476.83449844007,"y":25276.42844734549},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"1958f79b-5c6c-4874-9154-98c314822ed7"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"db43ae81-086d-44ed-a9cc-e9971f2c9355","savedPayload":{"position":{"x":41630.968362635096,"y":25191.922086211474},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"5deceb32-c7ab-4560-818a-0f0b9d6632fb"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"015eb2be-c954-4c1e-9a65-3ce95d144123","savedPayload":{"position":{"x":41785.02863995971,"y":25107.68132225379},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2a1d405b-2fbe-4ed4-a76a-d2c7be59d20e"}}},{"type":"Data Product","name":"Open Stage","id":"11041a76-efdb-4a07-bb1a-52cab56691db","savedPayload":{"position":{"x":41949.23486283324,"y":25045.0020177432},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stage","id":"73c3c041-ba2a-4798-a362-a453409b518a"}}},{"type":"Data Product","name":"Close Stage","id":"6f3e0cde-7a34-4c59-97f9-766c5fe13aed","savedPayload":{"position":{"x":42113.581242073364,"y":24983.361668934343},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stage","id":"2bb9bb41-1ff5-4f83-aa5b-bfc4c9f06a9a"}}},{"type":"Data Product","name":"Trigger Stage","id":"946fc0cd-9c64-42ca-889a-8735ceed6dfb","savedPayload":{"position":{"x":42283.859406352916,"y":24940.18570915957},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stage","id":"b6cff826-9056-4fbd-8eca-cbd6cceec962"}}},{"type":"Data Product","name":"Manage Stage","id":"5dff9859-136b-47f4-9c53-d6582a03076c","savedPayload":{"position":{"x":42455.893978123524,"y":24905.134142604064},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stage","id":"bd691611-e7a6-49a8-b07d-c15360b55e40"}}},{"type":"Data Product","name":"Episode Base Asset","id":"b0dab16a-9d2b-46d6-8d23-8427d4f4510a","savedPayload":{"position":{"x":42629.892533168866,"y":24881.501262694244},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Base Asset","id":"234969ff-eab1-4d59-b6fa-79433c9a20e9"}}},{"type":"Data Product","name":"Episode Quoted Asset","id":"1433390c-ecae-42d3-9526-b307c0e24f39","savedPayload":{"position":{"x":42805.375124923274,"y":24873.50041839573},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Quoted Asset","id":"ae525e31-d6a8-47d2-9021-3f2ddb9615b0"}}},{"type":"Data Product","name":"Position Base Asset","id":"4e667983-5d98-41b3-8ed6-d87e21cefa5b","savedPayload":{"position":{"x":42980.86099849343,"y":24870.59124534065},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Base Asset","id":"b371b039-f6c8-4f60-84cb-52f55c96c84d"}}},{"type":"Data Product","name":"Position Quoted Asset","id":"a579c35a-b176-4e8c-9a63-b86d797e817d","savedPayload":{"position":{"x":43155.83264100943,"y":24886.054797890265},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Quoted Asset","id":"a376f02b-a5d2-4079-b5cd-ab7dc894b909"}}},{"type":"Data Product","name":"Current Episode","id":"2563034c-f865-4fe5-923d-2a9b2152943a","savedPayload":{"position":{"x":43333.6305711725,"y":24911.609751808443},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Episode","id":"b8da0132-ba28-46ec-aa54-eb9eaac56ce7"}}},{"type":"Data Product","name":"Episodes","id":"9a11c78b-ce63-4be5-b9f8-460ab281ac92","savedPayload":{"position":{"x":43511.48742947943,"y":24905.303753119784},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episodes","id":"aeec080e-8caf-4976-8187-ba4e725b73b0"}}},{"type":"Data Product","name":"Trigger Stages","id":"3bf78cf8-bc95-4bde-aceb-aefb2cfe4004","savedPayload":{"position":{"x":43666.35490118859,"y":24993.49055524695},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stages","id":"18cc2e79-7e57-418c-b635-6c68fc11d681"}}},{"type":"Data Product","name":"Open Stages","id":"0c723802-4bac-4060-a8f3-360d7f8a0505","savedPayload":{"position":{"x":43832.6653899894,"y":25049.52656313988},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stages","id":"d5938c00-0849-466d-ae14-4ea91b571678"}}},{"type":"Data Product","name":"Manage Stages","id":"19393436-c992-4047-940c-450e679f03ca","savedPayload":{"position":{"x":43994.17124597971,"y":25118.464578538453},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stages","id":"8fab86b3-db8d-4113-8418-1d256bd98cf2"}}},{"type":"Data Product","name":"Close Stages","id":"ca50e93d-4665-437c-b2f3-b676a01e07da","savedPayload":{"position":{"x":44150.698907757935,"y":25198.041823185464},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stages","id":"ba911e61-f951-48cd-b547-9a70aa211100"}}},{"type":"Data Product","name":"Last Market Order","id":"70e610d6-f24c-4596-8b82-abb7d527d89a","savedPayload":{"position":{"x":44301.53564581273,"y":25287.921038613888},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Market Order","id":"6df1ac87-92d5-4788-b0bc-f3543b283ef0"}}},{"type":"Data Product","name":"Last Limit Order","id":"4b7d674e-07c3-45c0-bc63-df7ef48d9e66","savedPayload":{"position":{"x":44445.976242817705,"y":25387.738013845705},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Limit Order","id":"c24ec6a1-e937-4d20-93eb-4faf2a0becc3"}}},{"type":"Data Product","name":"Trading System Warnings","id":"ef8177c9-4400-45b1-a552-f98ec8942ce8","savedPayload":{"position":{"x":44583.33459466575,"y":25497.07968116616},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Warnings","id":"34310596-466a-4e9a-a5a2-256b0fe3e339"}}},{"type":"Data Product","name":"Trading System Infos","id":"3a307a63-b02e-4d2e-b244-84af04bed20e","savedPayload":{"position":{"x":44719.90507530018,"y":25621.854392371028},"targetPosition":{"x":42884.333333333336,"y":27490.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Infos","id":"020ad519-0fc6-4f2f-9f26-b2c7de118fb8"}}}],"id":"1542049d-e64a-48b2-bb42-3deae584ee04","savedPayload":{"position":{"x":43529.6046142995,"y":26258.25043970013},"targetPosition":{"x":42950.84027095785,"y":27963.46738169149},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":5,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"a095996a-c30e-45e8-8598-7b6010b2095b","savedPayload":{"position":{"x":42950.88729740178,"y":27963.540787622107},"targetPosition":{"x":42660.98367779632,"y":28817.77442447993},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"9df1f12f-0030-4c41-98e2-d07482ff8d22","savedPayload":{"position":{"x":42660.9328517596,"y":28817.583669126176},"targetPosition":{"x":42491.45035553209,"y":29397.739778491254},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"b5554d40-5014-45ec-b996-e74e05c5e872","savedPayload":{"position":{"x":42785.58676107733,"y":28863.324820582562},"targetPosition":{"x":42491.45035553209,"y":29397.739778491254},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Trading Mines Data","name":"New Trading Mines Data","id":"29ca14e5-dabe-470a-be64-ed7996bd1e55"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.sessionReferences === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Session Reference.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Trading Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Trading Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.sessionReferences)\n \n setup(templateClone, target, exchange, 'Exchange Trading Products', 'sessionReferences')\n templateClone.marketDataProducts.payload.referenceParent = market\n\n templateClone.templateType = 'Live Trading Session'\n return templateClone\n }\n}","id":"ade4b7d5-1066-43fa-b6af-e2d1213c4d14","savedPayload":{"position":{"x":42918.40895537162,"y":28969.58199747816},"targetPosition":{"x":42491.45035553209,"y":29397.739778491254},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"3e9a2343-49bb-43d5-adda-0072b01313f1","savedPayload":{"position":{"x":42491.45035553209,"y":29397.739778491254},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Forward WHB Session Reference","templateStructure":{"type":"Template Structure","name":"New Template Structure","sessionReferences":{"type":"Session Reference","name":" ","marketDataProducts":{"type":"Market Data Products","name":"","dataProducts":[{"type":"Data Product","name":"Episode Counters","id":"e73f413b-6213-4f06-be73-a4e7bb6d9e5b","savedPayload":{"position":{"x":41636.216981825055,"y":29544.818210993046},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Counters","id":"574cfd2f-a269-452d-9a90-dd6921ebc49d"}}},{"type":"Data Product","name":"Episode Statistics","id":"dbef919f-0c92-46ad-b210-027aab215dc5","savedPayload":{"position":{"x":41532.12926022697,"y":29404.028120130315},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Statistics","id":"400c7f49-37da-41fb-b83d-879960aa74ff"}}},{"type":"Data Product","name":"Episode Candle","id":"22d77ffb-8e22-441b-98cf-5bd50d6b3b8e","savedPayload":{"position":{"x":41438.42941325055,"y":29257.28913228971},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Candle","id":"b9a58113-cf27-4d57-9810-87a2cc158804"}}},{"type":"Data Product","name":"Episode Balances","id":"96969f43-66ac-4bfd-9db4-b838b3f8fb36","savedPayload":{"position":{"x":41354.05486598375,"y":29104.66573687395},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Balances","id":"a9a53d82-133b-4417-b639-f9a56d338233"}}},{"type":"Data Product","name":"Distance To Event","id":"e9113822-2a81-4ee5-a053-eabea5699a3c","savedPayload":{"position":{"x":41280.4325799138,"y":28946.77882345765},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Distance To Event","id":"8ea88d6c-7d7f-4152-b781-ea108df52c63"}}},{"type":"Data Product","name":"Current Strategy","id":"790ac34c-b46a-44a9-8ad3-fb2fb3312222","savedPayload":{"position":{"x":41216.92643081689,"y":28782.709051712034},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Strategy","id":"895d8a04-ef45-41a7-909a-ba31013ffb90"}}},{"type":"Data Product","name":"Current Position","id":"d118aad3-b292-4606-bc7d-0b2e726b991c","savedPayload":{"position":{"x":41165.30715773405,"y":28614.60595480638},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Position","id":"832ecada-8da3-4ba6-b6e9-be34dd5f7ce9"}}},{"type":"Data Product","name":"Last Position","id":"81fc1c18-9e0f-4f68-aece-4923d042395e","savedPayload":{"position":{"x":41124.487407967055,"y":28444.202132249677},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Position","id":"477cd6d5-862a-44d0-9313-786a4e63a602"}}},{"type":"Data Product","name":"Market Buy Orders","id":"4ac9563a-e5cb-4631-aaf4-e6ffe6882150","savedPayload":{"position":{"x":41096.311935075966,"y":28271.665055267018},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"7c769317-2639-4460-8b88-9dc92f7b0585"}}},{"type":"Data Product","name":"Market Sell Orders","id":"01a0ddad-a477-46fb-ab9a-50ed9ace8e15","savedPayload":{"position":{"x":41078.08927151699,"y":28096.92311257219},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"9cc7645a-54fe-40d6-9896-9278167011fb"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"e352dae7-d24a-4630-94ca-1a64d6b540c3","savedPayload":{"position":{"x":41070.49266837573,"y":27921.85761266595},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"4c827ee0-a29b-4b65-8438-03e2ea98b410"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"31d2af78-be9c-4621-836d-e876f07e748e","savedPayload":{"position":{"x":41077.64003005353,"y":27746.89625310463},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2c753cd8-36d8-466c-bd80-1ebfa8e314dc"}}},{"type":"Data Product","name":"Trading System Highlights","id":"08166953-d814-4cc8-a481-9aac8824edff","savedPayload":{"position":{"x":41094.3115829875,"y":27572.804881094115},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Highlights","id":"319f660a-78be-4cf4-8052-877837cad806"}}},{"type":"Data Product","name":"Trading System Values","id":"1ab4b547-4b8d-4da7-9d0a-6df2d9a0a6f4","savedPayload":{"position":{"x":41124.03313301019,"y":27399.983166569764},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Values","id":"c90c009b-588d-45d4-aff1-05e375181dfa"}}},{"type":"Data Product","name":"Trading System Errors","id":"ecc05555-e068-48d7-9010-69558d157f33","savedPayload":{"position":{"x":41162.27015233072,"y":27228.903334820403},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Errors","id":"1d9c570d-77c7-40ac-a61e-c5a57a411de8"}}},{"type":"Data Product","name":"Trading System Status","id":"7f38a4b7-0ba6-4297-afa0-f0e608f0bf11","savedPayload":{"position":{"x":41217.83398875249,"y":27063.345645541143},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Status","id":"eed48c80-35c5-49fa-b12d-18e7280ffb8f"}}},{"type":"Data Product","name":"Trading System Progress","id":"dce5e275-2b99-42c4-96c4-f68e8f8e631c","savedPayload":{"position":{"x":41275.9215122701,"y":26898.358642987227},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Progress","id":"04c8606b-5e59-4e7d-b3ac-387bfffcd300"}}},{"type":"Data Product","name":"Trading System Running","id":"e9c1ba78-3b81-4886-b560-0de9ffa7f722","savedPayload":{"position":{"x":41354.55816866711,"y":26740.481850999717},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Running","id":"17236f59-6ef2-4cc3-913c-1ff6db052236"}}},{"type":"Data Product","name":"Trading System Announcements","id":"f8e90783-a413-4494-9f91-3eec71a4b5ae","savedPayload":{"position":{"x":41434.12107440301,"y":26584.444027286525},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Announcements","id":"4a6f828a-9671-431e-8257-fc920943581e"}}},{"type":"Data Product","name":"Strategies","id":"ec0b83af-e05e-45a5-934c-e6d516996658","savedPayload":{"position":{"x":41533.11183649106,"y":26438.60094023992},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Strategies","id":"21db6fce-8450-4b07-9015-d81a339fd030"}}},{"type":"Data Product","name":"Positions","id":"cfdafb57-5654-47c4-95cb-5df278742256","savedPayload":{"position":{"x":41636.189600645965,"y":26296.30379879463},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Positions","id":"1eabba24-cbd4-4cbf-95e0-c5135349d41d"}}},{"type":"Data Product","name":"Stop Loss","id":"7693c9b1-de08-4486-b862-b3dad7afeb0a","savedPayload":{"position":{"x":41748.17862569498,"y":26160.859573981346},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Stop Loss","id":"c18bdc82-216a-4b1d-8850-5c3c9dc2000b"}}},{"type":"Data Product","name":"Take Profit","id":"fce029ea-3688-4c21-9059-4987123d1029","savedPayload":{"position":{"x":41871.03403807846,"y":26035.180870308574},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Take Profit","id":"2542c7d0-fa26-4b52-a59a-a3630e52eb89"}}},{"type":"Data Product","name":"Last Strategy","id":"4238e1f3-372b-403f-9ad6-d9e4a2c1cf9d","savedPayload":{"position":{"x":42001.75438170163,"y":25917.76795265002},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Strategy","id":"0625f524-2b97-4b4d-8a90-590ffc62ecd3"}}},{"type":"Data Product","name":"Market Buy Orders","id":"b449165d-3597-44e5-a87d-576e48874a89","savedPayload":{"position":{"x":42140.325974103886,"y":25809.761745657725},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Buy Orders","id":"db256083-9aa2-48e1-8fd6-3425a5085302"}}},{"type":"Data Product","name":"Market Sell Orders","id":"e4de9552-b5ae-491c-b804-9a802d92e66b","savedPayload":{"position":{"x":42283.83449844007,"y":25708.42844734549},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Market Sell Orders","id":"1958f79b-5c6c-4874-9154-98c314822ed7"}}},{"type":"Data Product","name":"Limit Buy Orders","id":"7334670e-2ad4-4160-99e4-bdd5cb7a7af0","savedPayload":{"position":{"x":42437.968362635096,"y":25623.922086211474},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Buy Orders","id":"5deceb32-c7ab-4560-818a-0f0b9d6632fb"}}},{"type":"Data Product","name":"Limit Sell Orders","id":"ef2e64ce-6c6a-44ed-8755-14fc616b010f","savedPayload":{"position":{"x":42592.02863995971,"y":25539.68132225379},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Limit Sell Orders","id":"2a1d405b-2fbe-4ed4-a76a-d2c7be59d20e"}}},{"type":"Data Product","name":"Open Stage","id":"19436d5d-8d16-4820-bfd7-ebe5a36a1c72","savedPayload":{"position":{"x":42756.23486283324,"y":25477.0020177432},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stage","id":"73c3c041-ba2a-4798-a362-a453409b518a"}}},{"type":"Data Product","name":"Close Stage","id":"12063fe0-18ab-4e47-a9df-c1799c57df78","savedPayload":{"position":{"x":42920.581242073364,"y":25415.361668934343},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stage","id":"2bb9bb41-1ff5-4f83-aa5b-bfc4c9f06a9a"}}},{"type":"Data Product","name":"Trigger Stage","id":"d57c20a9-48fd-42b8-9909-aeadce66e509","savedPayload":{"position":{"x":43090.859406352916,"y":25372.18570915957},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stage","id":"b6cff826-9056-4fbd-8eca-cbd6cceec962"}}},{"type":"Data Product","name":"Manage Stage","id":"0da8052c-f118-4308-98dd-cbfbb30d5120","savedPayload":{"position":{"x":43262.893978123524,"y":25337.134142604064},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stage","id":"bd691611-e7a6-49a8-b07d-c15360b55e40"}}},{"type":"Data Product","name":"Episode Base Asset","id":"f345eb7e-4c82-4a2e-a27a-b275e85a9159","savedPayload":{"position":{"x":43436.892533168866,"y":25313.501262694244},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Base Asset","id":"234969ff-eab1-4d59-b6fa-79433c9a20e9"}}},{"type":"Data Product","name":"Episode Quoted Asset","id":"310c3bd2-d3ba-4d61-a90c-5c31428f6dac","savedPayload":{"position":{"x":43612.375124923274,"y":25305.50041839573},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episode Quoted Asset","id":"ae525e31-d6a8-47d2-9021-3f2ddb9615b0"}}},{"type":"Data Product","name":"Position Base Asset","id":"842537fb-7ca7-469f-9fee-a8df37178731","savedPayload":{"position":{"x":43787.86099849343,"y":25302.59124534065},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Base Asset","id":"b371b039-f6c8-4f60-84cb-52f55c96c84d"}}},{"type":"Data Product","name":"Position Quoted Asset","id":"6a62252c-1a2a-4c11-8b07-43314d31cd67","savedPayload":{"position":{"x":43962.83264100943,"y":25318.054797890265},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Position Quoted Asset","id":"a376f02b-a5d2-4079-b5cd-ab7dc894b909"}}},{"type":"Data Product","name":"Current Episode","id":"6e33c119-2a9e-4eee-abc9-8617a9286cd9","savedPayload":{"position":{"x":44140.6305711725,"y":25343.609751808443},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Current Episode","id":"b8da0132-ba28-46ec-aa54-eb9eaac56ce7"}}},{"type":"Data Product","name":"Episodes","id":"af9a796b-dbed-4358-a6d3-c50b70628912","savedPayload":{"position":{"x":44318.48742947943,"y":25337.303753119784},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Episodes","id":"aeec080e-8caf-4976-8187-ba4e725b73b0"}}},{"type":"Data Product","name":"Trigger Stages","id":"badd2783-cb14-4465-8fc7-f6b846d1a39c","savedPayload":{"position":{"x":44473.35490118859,"y":25425.49055524695},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trigger Stages","id":"18cc2e79-7e57-418c-b635-6c68fc11d681"}}},{"type":"Data Product","name":"Open Stages","id":"c309d74e-62f9-4fdf-83e3-cdc5c1361c49","savedPayload":{"position":{"x":44639.6653899894,"y":25481.52656313988},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Open Stages","id":"d5938c00-0849-466d-ae14-4ea91b571678"}}},{"type":"Data Product","name":"Manage Stages","id":"df4f2106-fd01-4778-9fd5-c24dd84ec830","savedPayload":{"position":{"x":44801.17124597971,"y":25550.464578538453},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Manage Stages","id":"8fab86b3-db8d-4113-8418-1d256bd98cf2"}}},{"type":"Data Product","name":"Close Stages","id":"c0143154-eda9-4a42-b160-f52bc95af14f","savedPayload":{"position":{"x":44957.698907757935,"y":25630.041823185464},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Close Stages","id":"ba911e61-f951-48cd-b547-9a70aa211100"}}},{"type":"Data Product","name":"Last Market Order","id":"1d7d3431-a726-48ee-a139-22c84730ea62","savedPayload":{"position":{"x":45108.53564581273,"y":25719.921038613888},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Market Order","id":"6df1ac87-92d5-4788-b0bc-f3543b283ef0"}}},{"type":"Data Product","name":"Last Limit Order","id":"36b68477-5b41-41cf-8bbc-d7340c351614","savedPayload":{"position":{"x":45252.976242817705,"y":25819.738013845705},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Last Limit Order","id":"c24ec6a1-e937-4d20-93eb-4faf2a0becc3"}}},{"type":"Data Product","name":"Trading System Warnings","id":"30e6ba9f-d050-4b99-b3ca-5d9243766f28","savedPayload":{"position":{"x":45390.33459466575,"y":25929.07968116616},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Warnings","id":"34310596-466a-4e9a-a5a2-256b0fe3e339"}}},{"type":"Data Product","name":"Trading System Infos","id":"4b306cad-c165-4b66-ae6a-57c120f87f65","savedPayload":{"position":{"x":45526.90507530018,"y":26053.854392371028},"targetPosition":{"x":43691.333333333336,"y":27922.652173913044},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Product Definition","name":"Trading System Infos","id":"020ad519-0fc6-4f2f-9f26-b2c7de118fb8"}}}],"id":"0d987410-a075-4c15-92d5-f48bff21c1e6","savedPayload":{"position":{"x":44555.86403989964,"y":26825.47814817509},"targetPosition":{"x":43555.561158649296,"y":28322.589101011403},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":5,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"3a96fe18-f607-4a4e-9921-31b507475885","savedPayload":{"position":{"x":43555.561158649296,"y":28322.589101011403},"targetPosition":{"x":43054.46540838799,"y":29072.568043889445},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"f6114149-90fb-45a7-a42a-6ab052a9980a","savedPayload":{"position":{"x":43054.46108887811,"y":29072.398355624715},"targetPosition":{"x":42740.59150662999,"y":29588.905063905553},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"315b67c6-84cf-4370-a4fd-a8209c2532c9","savedPayload":{"position":{"x":43163.04392679501,"y":29148.838342031962},"targetPosition":{"x":42740.59150662999,"y":29588.905063905553},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Trading Mines Data","name":"New Trading Mines Data","id":"29ca14e5-dabe-470a-be64-ed7996bd1e55"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.sessionReferences === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Session Reference.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Trading Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Trading Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.sessionReferences)\n \n setup(templateClone, target, exchange, 'Exchange Trading Products', 'sessionReferences')\n templateClone.marketDataProducts.payload.referenceParent = market\n\n templateClone.templateType = 'Forward Testing Session'\n return templateClone\n }\n}","id":"8635fe81-b9b5-4a95-a6d0-950584c2787c","savedPayload":{"position":{"x":43263.84011001747,"y":29285.88201394038},"targetPosition":{"x":42740.59150662999,"y":29588.905063905553},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"3bb7924d-49b4-4748-83f5-5067dd8f3ef5","savedPayload":{"position":{"x":42740.59150662999,"y":29588.905063905553},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Testing Environment Task Manager","templateStructure":{"type":"Template Structure","name":"New Template Structure","taskManagers":{"type":"Task Manager","name":"Paper & Backtesting Sessions","tasks":[{"type":"Task","name":"Paper Trading WHB","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Paper Trading Session","name":"Paper WHB","config":"{\n\"folderName\": \"Paper-WHB\"\n}","parameters":{"type":"Parameters","name":"Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{ \n\"initialBalance\": 0.01,\n\"minimumBalance\": 0.005\n}","id":"7d2a4605-5be7-4b12-9761-0087ce656080","savedPayload":{"position":{"x":43967.02691514668,"y":27525.861144829083},"targetPosition":{"x":44173.75547921624,"y":27306.612301484747},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n\"finalDatetime\": \"2020-12-31\"\n}","id":"e645ba22-2ba3-4c87-9d62-748477e055dc","savedPayload":{"position":{"x":44005.01916634307,"y":27056.68794156349},"targetPosition":{"x":44173.75547921624,"y":27306.612301484747},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"New Time Frame","config":"{\n\"value\": \"01-min\"\n}","id":"9b0e2fa1-fb9e-4854-9657-7157843a0a56","savedPayload":{"position":{"x":44263.849782844656,"y":27018.975945526912},"targetPosition":{"x":44173.75547921624,"y":27306.612301484747},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"072fc7e2-ca96-4c0a-963c-d8697f26a12c","savedPayload":{"position":{"x":44445.51926939331,"y":27196.52117718798},"targetPosition":{"x":44173.75547921624,"y":27306.612301484747},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"New Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"28139c87-d8fb-49e6-92ce-f826f0ef32d3","savedPayload":{"position":{"x":44443.93353036292,"y":27511.548425759087},"targetPosition":{"x":44173.75547921624,"y":27306.612301484747},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"0e80ef27-72f6-42e9-98bd-2266ad8d0902","savedPayload":{"position":{"x":44173.75547921624,"y":27306.612301484747},"targetPosition":{"x":44217.42238725857,"y":27604.843242346273},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"43096f38-2d07-4536-a8de-c1d6dc52e5af","savedPayload":{"position":{"x":44217.42238725857,"y":27604.843242346273},"targetPosition":{"x":44261.229296246485,"y":27902.682136623076},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"h"},"referenceParent":{"type":"Trading System","name":"WHB v.2 (BTC/USDT)","id":"a239a374-497a-43f9-8382-5277410b1c2d"}}},"marketReference":{"type":"Market Reference","name":"","id":"c169326d-c842-452b-a9b7-e8658e31dcd4","savedPayload":{"position":{"x":44519.5008040459,"y":27748.210013492404},"targetPosition":{"x":44261.229296246485,"y":27902.682136623076},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"67daf900-abb9-4d94-b86b-85ec5820c311","savedPayload":{"position":{"x":44261.229296246485,"y":27902.682136623076},"targetPosition":{"x":44150.22794847467,"y":28182.072489721773},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period","id":"6f95cc67-bad0-48dc-bb82-0075c43cb202"}}}],"id":"e1d9b766-0b00-478d-a179-b4d030811a17","savedPayload":{"position":{"x":44150.22794847467,"y":28182.072489721773},"targetPosition":{"x":44039.21373697195,"y":28461.820110989},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"10914881-2af7-4326-9a48-eb50a5b83b21","savedPayload":{"position":{"x":44039.21373697195,"y":28461.820110989},"targetPosition":{"x":43821.21864781779,"y":29023.840714810944},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Backtesting WHB","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Backtesting Session","name":"Back WHB","config":"{\n\"folderName\": \"Back-WHB\"\n}","parameters":{"type":"Parameters","name":"Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{\n\"initialBalance\": 1,\n\"minimumBalance\": 0.5\n}","id":"58289171-cb5f-482c-b5f6-445eb6dd33bf","savedPayload":{"position":{"x":44401.37996654206,"y":27612.19125627542},"targetPosition":{"x":44698.19192880219,"y":27505.020445751055},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{}","id":"59fd49b3-e491-4029-9dae-12cf0a0e48e5","savedPayload":{"position":{"x":44409.807791707026,"y":27335.337266668004},"targetPosition":{"x":44698.19192880219,"y":27505.020445751055},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n\"initialDatetime\": \"2019-01-01\",\n\"finalDatetime\": \"2020-12-31\"\n}","id":"7bd10192-7a52-4995-98aa-e16129827ca8","savedPayload":{"position":{"x":44624.52036960233,"y":27216.035886849255},"targetPosition":{"x":44698.19192880219,"y":27505.020445751055},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"New Time Frame","config":"{\n\"value\": \"01-hs\"\n}","id":"59764b94-aa9f-462a-be17-5b110e18609a","savedPayload":{"position":{"x":44873.003549433735,"y":27259.535559010892},"targetPosition":{"x":44698.19192880219,"y":27505.020445751055},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"f72c1a53-9e2e-49d5-a07d-90d7ab53c6cf","savedPayload":{"position":{"x":44999.1070850376,"y":27488.622321238192},"targetPosition":{"x":44698.19192880219,"y":27505.020445751055},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"3f249546-8932-42c0-a779-b4142cb03d17","savedPayload":{"position":{"x":44898.75735452582,"y":27729.75392491355},"targetPosition":{"x":44698.19192880219,"y":27505.020445751055},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"2c70a07e-67d1-4157-8524-448842327782","savedPayload":{"position":{"x":44698.19192880219,"y":27505.020445751055},"targetPosition":{"x":44646.99897352095,"y":27801.86601216097},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"58ad6731-33c6-4a8f-8bfd-fbd40d7aa8d0","savedPayload":{"position":{"x":44646.99897352095,"y":27801.86601216097},"targetPosition":{"x":44590.55377940258,"y":28095.17679191377},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""},"referenceParent":{"type":"Trading System","name":"WHB v.2 (BTC/USDT)","id":"a239a374-497a-43f9-8382-5277410b1c2d"}}},"marketReference":{"type":"Market Reference","name":"","id":"3a49b8dd-94b8-4b8f-9c0d-a140ba4526a8","savedPayload":{"position":{"x":44873.2929824281,"y":27991.372453559154},"targetPosition":{"x":44590.55377940258,"y":28095.17679191377},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"649950c4-79f9-4d35-ba72-a96d67fb9278","savedPayload":{"position":{"x":44590.55377940258,"y":28095.17679191377},"targetPosition":{"x":44398.0184007425,"y":28326.26050593864},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period","id":"6f95cc67-bad0-48dc-bb82-0075c43cb202"}}}],"id":"ef610792-0e38-40b6-8d28-41b6b8d76cb7","savedPayload":{"position":{"x":44398.0184007425,"y":28326.26050593864},"targetPosition":{"x":44205.41332248683,"y":28557.646716831277},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"13ceeef0-8a9f-4da9-a4ce-43bc32323c47","savedPayload":{"position":{"x":44205.41332248683,"y":28557.646716831277},"targetPosition":{"x":43821.21864781779,"y":29023.840714810944},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},{"type":"Task","name":"Paper Trading Beta 6 Demo","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"Low Frequency Trading","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Paper Trading Session","name":"Paper Session","config":"{ \n\"folderName\": \"Testing\"\n}","parameters":{"type":"Parameters","name":"My Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{\n\"initialBalance\": 10,\n\"minimumBalance\": 0.0\n}","id":"70381adf-9fb2-4d89-8b9f-5c8d3b065356","savedPayload":{"position":{"x":44120.0805677003,"y":26898.071215999713},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{\n\"initialBalance\": 100000\n}","id":"7322d11f-9579-4e3e-8f2f-9b5b1d7cf357","savedPayload":{"position":{"x":44107.92186371436,"y":26585.513698501632},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n}","id":"0d0fdb3f-f50a-4f86-bd69-1f6f0f477899","savedPayload":{"position":{"x":44203.53525837042,"y":26287.150235475663},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"1 Min","config":"{\n\"label\": \"01-min\"\n}","id":"439eb384-8b10-421e-bd6a-aae723b17f89","savedPayload":{"position":{"x":44395.45126208123,"y":26039.388851955486},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"21068daf-8b2f-48a0-bbbd-9a522f73c0f4","savedPayload":{"position":{"x":44660.54363803368,"y":25872.168549099868},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"b2358349-64f8-47d1-931c-49d9ebbada5f","savedPayload":{"position":{"x":44966.84838745124,"y":25805.67470002489},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"snapshots":{"type":"Snapshots","name":"New Snapshots","config":"{ \n\"strategy\": true,\n\"position\": true\n}","id":"61a9f8ce-dd0b-4c43-a219-3ad13679bca6","savedPayload":{"position":{"x":45277.198731008524,"y":25847.932206932786},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"userDefinedParameters":{"type":"User Defined Parameters","name":"New User Defined Parameters","config":"{ \n\"param1Name\": \"Choose your own names for your parameters. Also, you can add as many as you want.\",\n\"param2Name\": 0\n}","id":"4b8c26ab-c6ec-458b-bbcb-68e12f40a659","savedPayload":{"position":{"x":45554.62125280424,"y":25993.860146190982},"targetPosition":{"x":45002.16424828405,"y":26707.530671842207},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"4d40771a-d919-43dd-b8ff-181e9ebc4636","savedPayload":{"position":{"x":45002.16424828405,"y":26707.530671842207},"targetPosition":{"x":45483.90907340196,"y":27471.57042334324},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"tradingSystemReference":{"type":"Trading System Reference","name":"Beta 6 Demo","id":"e7ca754e-4873-4163-bc0c-43b9a0f71bb9","savedPayload":{"position":{"x":45616.9523626286,"y":26884.079380465},"targetPosition":{"x":45483.90907340196,"y":27471.57042334324},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading System","name":"Beta 6 Demo","id":"d972ec8c-9f7c-4fef-8d23-38666e69172e"}}},"tradingEngineReference":{"type":"Trading Engine Reference","name":"Low Frequency","id":"5436dc73-c1f0-41f8-b00a-5625ef70d2a6","savedPayload":{"position":{"x":45976.18119307407,"y":27120.92132340243},"targetPosition":{"x":45483.90907340196,"y":27471.57042334324},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading Engine","name":"Low Frequency","id":"eb20f622-71bf-4479-a574-d2320e1d4bd1"}}},"id":"c5f974de-d1f6-4756-ab86-239ed49ee89d","savedPayload":{"position":{"x":45483.90907340196,"y":27471.57042334324},"targetPosition":{"x":45350.95920431876,"y":28058.793044300517},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","id":"a6c5425d-b9cc-4f15-bec6-b34d5c001ce1","savedPayload":{"position":{"x":45860.11716292842,"y":27737.894441698038},"targetPosition":{"x":45350.95920431876,"y":28058.793044300517},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"executionStartedEvent":{"type":"Execution Started Event","name":"Resistances and Supports Multi-Period-Daily","id":"14d08668-518b-46d2-9e62-c5eae7cd7048","savedPayload":{"position":{"x":45866.87241345422,"y":28214.548175737946},"targetPosition":{"x":45350.95920431876,"y":28058.793044300517},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Execution Finished Event","name":"New Execution Finished Event","id":"7e2fdde9-8b64-44a3-85f1-10c3935bd3e3"}}},"id":"e689d671-fceb-4fee-b8d8-78fd84c11f4f","savedPayload":{"position":{"x":45350.95920431876,"y":28058.793044300517},"targetPosition":{"x":44841.54762964564,"y":28379.82548548363},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Trading","id":"a8c8d761-96e5-4a86-9285-6c3881d61442"}}}],"id":"1028366a-dd00-41ac-a190-332e612b46db","savedPayload":{"position":{"x":44841.54762964564,"y":28379.82548548363},"targetPosition":{"x":44332.26237476879,"y":28700.519964103827},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"3c050f0d-1c6b-4f67-a0f7-7a1f43381e03","savedPayload":{"position":{"x":44332.26237476879,"y":28700.519964103827},"targetPosition":{"x":43821.21864781779,"y":29023.840714810944},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Backtesting Beta 6 Demo","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"Low Frequency Trading","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Backtesting Session","name":"Testing","config":"{\n\"folderName\": \"Back-WHB\"\n}","parameters":{"type":"Parameters","name":"My Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{\n\"initialBalance\": 0,\n\"minimumBalance\": 0.0\n}","id":"e4ea0396-318d-4372-99c0-9f66d51d3681","savedPayload":{"position":{"x":45218.16355144694,"y":26994.309610414788},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{\n\"initialBalance\": 1000\n}","id":"2b10f860-0167-4ea4-ad65-10e0e7bba1cb","savedPayload":{"position":{"x":45349.637142716616,"y":26744.17369094295},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{ \n\"initialDatetime\": \"2020-08-23\",\n\"finalDatetime\": \"2020-08-24\"\n}","id":"1da4fa20-0a57-4a86-acc9-c89e6a932952","savedPayload":{"position":{"x":45551.922925690546,"y":26547.078453528015},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"1 Min","config":"{\n\"label\": \"01-min\"\n}","id":"c445bfd0-730f-4f5c-aaaf-0f2314523a70","savedPayload":{"position":{"x":45805.147325050624,"y":26422.3011890117},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"1ceb45ca-0deb-4182-b292-7ac899acc92a","savedPayload":{"position":{"x":46084.385557170484,"y":26381.8379957836},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"43acffdc-5910-4a37-a4ad-ef7808666a60","savedPayload":{"position":{"x":46362.68376188179,"y":26429.70371611368},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"snapshots":{"type":"Snapshots","name":"New Snapshots","config":"{ \n\"strategy\": true,\n\"position\": true\n}","id":"3bb9fa90-dcd4-4adb-86cc-082ab8081962","savedPayload":{"position":{"x":46612.594974595035,"y":26561.227660243367},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"heartbeats":{"type":"Heartbeats","name":"New Heartbeats","config":"{ \n\"date\": true,\n\"candleIndex\": false\n}","id":"b8363740-1ca0-4c4b-a61d-bb108d7c45de","savedPayload":{"position":{"x":46809.651168260876,"y":26763.547308428664},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"userDefinedParameters":{"type":"User Defined Parameters","name":"New User Defined Parameters","config":"{ \n}","id":"60464ae7-e374-4143-8fe8-e538213c6f43","savedPayload":{"position":{"x":46934.56422264639,"y":27016.908494429215},"targetPosition":{"x":46072.469655138106,"y":27284.434198266492},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"22c29626-5d9f-4445-b403-8c3ad7bce4df","savedPayload":{"position":{"x":46072.469655138106,"y":27284.434198266492},"targetPosition":{"x":46043.214302593966,"y":28158.281051327936},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"tradingSystemReference":{"type":"Trading System Reference","name":"Beta 6 Demo","id":"5c71c439-0957-478a-9878-805bf4d581c2","savedPayload":{"position":{"x":46474.889934532875,"y":27738.24679572034},"targetPosition":{"x":46043.214302593966,"y":28158.281051327936},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading System","name":"Beta 6 Demo","id":"d972ec8c-9f7c-4fef-8d23-38666e69172e"}}},"tradingEngineReference":{"type":"Trading Engine Reference","name":"Low Frequency","id":"46796c2b-633f-47a2-ab62-15d41b973589","savedPayload":{"position":{"x":46645.59297129309,"y":28166.192383311165},"targetPosition":{"x":46043.214302593966,"y":28158.281051327936},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading Engine","name":"Low Frequency","id":"eb20f622-71bf-4479-a574-d2320e1d4bd1"}}},"id":"9abcc00d-050b-48af-b4e4-357e6d4e5121","savedPayload":{"position":{"x":46043.214302593966,"y":28158.281051327936},"targetPosition":{"x":45575.97004429498,"y":28589.543610041954},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","id":"95ad5c31-1dc8-4ff8-8d34-0dc41c0f1c32","savedPayload":{"position":{"x":46155.45009655726,"y":28753.123505923017},"targetPosition":{"x":45575.97004429498,"y":28589.543610041954},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"id":"bbb369a4-3538-4b6d-800a-b1811f00ef9b","savedPayload":{"position":{"x":45575.97004429498,"y":28589.543610041954},"targetPosition":{"x":44992.20356116469,"y":28737.318700251777},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Trading","id":"a8c8d761-96e5-4a86-9285-6c3881d61442"}}}],"id":"b43ecb4f-5d51-4f49-9dc2-2c62039dae48","savedPayload":{"position":{"x":44992.20356116469,"y":28737.318700251777},"targetPosition":{"x":44408.600317639,"y":28884.965671819537},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"w"}}},"id":"cab17ca3-1773-4481-8462-6763e0798632","savedPayload":{"position":{"x":44408.600317639,"y":28884.965671819537},"targetPosition":{"x":43821.21864781779,"y":29023.840714810944},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}}],"id":"e4b004e5-d078-435b-896e-bcbec6684a4c","savedPayload":{"position":{"x":43821.21864781779,"y":29023.840714810944},"targetPosition":{"x":43368.171903579045,"y":29421.05918019569},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"d1632ba7-4823-4174-9caf-8979360c7399","savedPayload":{"position":{"x":43368.621177788584,"y":29420.383756930103},"targetPosition":{"x":42931.75842386848,"y":29838.040135264902},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"cce4bcd5-fa0e-4dda-82a7-28cbf76432a4","savedPayload":{"position":{"x":43453.72380719106,"y":29522.328239388433},"targetPosition":{"x":42931.75842386848,"y":29838.040135264902},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Testing Environment","name":"New Testing Environment","id":"2ae685a1-25c6-4bd5-b559-d83e373e8d45"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.taskManagers === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Task Manager.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Testing Environment') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Testing Environment.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.taskManagers)\n \n setup(templateClone, target, exchange, 'Exchange Tasks', 'taskManagers')\n for (let i = 0; i < templateClone.tasks.length; i++) {\n let task = templateClone.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n process.marketReference.payload.referenceParent = market\n }\n if (process.session !== undefined) {\n if (process.session.parameters !== undefined) {\n if (process.session.parameters.sessionBaseAsset !== undefined) {\n findExchangeAccountAsset(process.session.parameters.sessionBaseAsset, superAction.payload.parentNode.baseAsset)\n }\n if (process.session.parameters.sessionQuotedAsset !== undefined) {\n findExchangeAccountAsset(process.session.parameters.sessionQuotedAsset, superAction.payload.parentNode.quotedAsset)\n }\n\n function findExchangeAccountAsset(taskAsset, marketAsset) {\n for (let k = 0; k < superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts.length; k++) {\n let userAccount = superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts[k]\n let found = false\n if (userAccount.userAssets !== undefined) {\n for (let m = 0; m < userAccount.userAssets.assets.length; m++) {\n let asset = userAccount.userAssets.assets[m]\n if (asset.payload.referenceParent !== undefined) {\n if (asset.payload.referenceParent.id === marketAsset.payload.referenceParent.id) {\n taskAsset.payload.referenceParent = asset\n found = true\n break\n }\n }\n }\n }\n if (found === true) { break }\n }\n }\n }\n }\n }\n }\n }\n }\n\n return templateClone\n }\n}","id":"49b39b49-1d4c-405c-a9f8-955e0ecc9a71","savedPayload":{"position":{"x":43515.627053959135,"y":29680.81570367484},"targetPosition":{"x":42931.75842386848,"y":29838.040135264902},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"414cdf9f-dc5b-4c23-ac5c-0e7a098b2143","savedPayload":{"position":{"x":42931.75842386848,"y":29838.040135264902},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Production Environment Task Manager","templateStructure":{"type":"Template Structure","name":"New Template Structure","taskManagers":{"type":"Task Manager","name":"Fwd & Live Sessions","tasks":[{"type":"Task","name":"Fwd Testing WHB","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"Multi-Period","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Forward Testing Session","name":"Fwd WHB","config":"{\n\"folderName\": \"Fwd-WHB\",\n\"balancePercentage\": 10\n}","parameters":{"type":"Parameters","name":"Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{ \n\"initialBalance\": 0.01,\n\"minimumBalance\": 0.005\n}","id":"19a13131-9554-43ef-860b-d994b9804a0e","savedPayload":{"position":{"x":43949.02209402912,"y":28514.744495850893},"targetPosition":{"x":44252.09762841825,"y":28406.000583471792},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{\n\"initialBalance\": 0\n}","id":"00ee3b70-7e94-4b71-aa64-05f6a699b080","savedPayload":{"position":{"x":43977.81112139866,"y":28236.59236923798},"targetPosition":{"x":44252.09762841825,"y":28406.000583471792},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n\"finalDatetime\": \"2020-12-31\"\n}","id":"8d94c05a-b82d-4fd9-8552-dcf19fb01ba1","savedPayload":{"position":{"x":44213.44333414086,"y":28085.505562610808},"targetPosition":{"x":44252.09762841825,"y":28406.000583471792},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"New Time Frame","config":"{\n\"value\": \"01-min\"\n}","id":"e6e657e8-1049-40e7-aeec-b57429e34a59","savedPayload":{"position":{"x":44478.339217712455,"y":28175.492208004023},"targetPosition":{"x":44252.09762841825,"y":28406.000583471792},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"57de0f1c-8cef-462a-bb88-764cfec67516","savedPayload":{"position":{"x":44573.309327218114,"y":28438.61215850976},"targetPosition":{"x":44252.09762841825,"y":28406.000583471792},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"New Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"70c32855-5085-4e45-be3c-cfdb212ef266","savedPayload":{"position":{"x":44426.715336862566,"y":28676.91519870268},"targetPosition":{"x":44252.09762841825,"y":28406.000583471792},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"c5989e16-cde7-414d-9296-e28d805e216a","savedPayload":{"position":{"x":44252.09762841825,"y":28406.000583471792},"targetPosition":{"x":44148.7422061206,"y":28711.062917859083},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"47651cad-aee5-405e-9d40-b4787c49d09e","savedPayload":{"position":{"x":44148.7422061206,"y":28711.062917859083},"targetPosition":{"x":44045.11308194365,"y":29016.158202849896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Trading System","name":"WHB v.2 (BTC/USDT)","id":"a239a374-497a-43f9-8382-5277410b1c2d"}}},"marketReference":{"type":"Market Reference","name":"","id":"ac49275e-4fe1-480f-be02-37665547a777","savedPayload":{"position":{"x":44361.54848844125,"y":28953.513309627917},"targetPosition":{"x":44045.11308194365,"y":29016.158202849896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"57deee32-22b7-4eec-8c9a-9b971d1aeb1a","savedPayload":{"position":{"x":44045.11308194365,"y":29016.158202849896},"targetPosition":{"x":43803.03273271357,"y":29228.27863694877},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period","id":"6f95cc67-bad0-48dc-bb82-0075c43cb202"}}}],"id":"8910dee0-b699-4a35-85ee-a2b3bbdac18e","savedPayload":{"position":{"x":43803.03273271357,"y":29228.27863694877},"targetPosition":{"x":43518.575577642056,"y":29477.69782587427},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"70fd8717-56d5-4ad8-b6ed-3050decedf19","savedPayload":{"position":{"x":44478.68306645306,"y":29084.77826684394},"targetPosition":{"x":44122.37280787688,"y":29571.510408167193},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Live Trading WHB","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"Multi-Period","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Live Trading Session","name":"Live Trading WHB","config":"{\n\"folderName\": \"Live-WHB\"\n}","parameters":{"type":"Parameters","name":"Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{ \n\"initialBalance\": 0.01,\n\"minimumBalance\": 0.005\n}","id":"1c0d2a17-cfd5-4eb4-8322-388ad7472fea","savedPayload":{"position":{"x":44511.69115776187,"y":29163.28766291385},"targetPosition":{"x":44827.797086714076,"y":29220.397958400925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{\n\"initialBalance\": 0\n}","id":"43d84134-6e65-4ba9-93fb-0d8cb705e90a","savedPayload":{"position":{"x":44675.41944631209,"y":28937.14672767146},"targetPosition":{"x":44827.797086714076,"y":29220.397958400925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n\"finalDatetime\": \"2020-12-31\"\n}","id":"16b7de55-dd83-4d7b-a1f8-45f28200a6f6","savedPayload":{"position":{"x":44954.1838102591,"y":28924.144732198314},"targetPosition":{"x":44827.797086714076,"y":29220.397958400925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"New Time Frame","config":"{\n\"value\": \"01-min\"\n}","id":"8c2d281c-7cd7-4f3e-8411-777eaec18ed5","savedPayload":{"position":{"x":45138.344553177376,"y":29134.142576562248},"targetPosition":{"x":44827.797086714076,"y":29220.397958400925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"dc21103a-37a9-4c67-a456-a3d35c14e9ad","savedPayload":{"position":{"x":45089.04722701449,"y":29408.829825358807},"targetPosition":{"x":44827.797086714076,"y":29220.397958400925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"New Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"c0a305e0-3a8b-428e-b005-117bd35270dc","savedPayload":{"position":{"x":44843.50938494748,"y":29541.60389632369},"targetPosition":{"x":44827.797086714076,"y":29220.397958400925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"325c8283-9e06-4711-9791-49994e1eb24f","savedPayload":{"position":{"x":44827.797086714076,"y":29220.397958400925},"targetPosition":{"x":44586.3641707821,"y":29432.324069027018},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"e70a2d0f-329a-410e-b3ed-fbf1968cac32","savedPayload":{"position":{"x":44586.3641707821,"y":29432.324069027018},"targetPosition":{"x":44344.60660428931,"y":29644.1656163963},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""},"referenceParent":{"type":"Trading System","name":"WHB v.2 (BTC/USDT)","id":"a239a374-497a-43f9-8382-5277410b1c2d"}}},"marketReference":{"type":"Market Reference","name":"","id":"a6c24af9-77fd-4179-bb83-22928acce259","savedPayload":{"position":{"x":44649.290571908976,"y":29747.76088866544},"targetPosition":{"x":44344.60660428931,"y":29644.1656163963},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"6053e090-2c8e-4c1b-8eb4-eb3032f5cb9d","savedPayload":{"position":{"x":44344.60660428931,"y":29644.1656163963},"targetPosition":{"x":44029.65068525114,"y":29706.589257726668},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period","id":"6f95cc67-bad0-48dc-bb82-0075c43cb202"}}}],"id":"67b86977-56e8-4cb9-aa4f-0ae1b8d6d9f3","savedPayload":{"position":{"x":44029.65068525114,"y":29706.589257726668},"targetPosition":{"x":43658.77696384793,"y":29780.18960006669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"8b8401d2-fbd3-4514-9a24-6236941f8572","savedPayload":{"position":{"x":44614.50869711259,"y":29220.395790582606},"targetPosition":{"x":44122.37280787688,"y":29571.510408167193},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Fwd Testing Beta 6 Demo","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"Low Frequency Trading","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Forward Testing Session","name":"New Forward Testing Session","config":"{ \n\"folderName\": \"Type the name of the folder where you wish to store the logs of this session\",\n\"balancePercentage\": \"Type the percentage of the balance to be used in this test\"\n}","parameters":{"type":"Parameters","name":"My Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{\n\"initialBalance\": 0,\n\"minimumBalance\": 0.0\n}","id":"da9f3845-17bb-4abe-86c0-2753871838ee","savedPayload":{"position":{"x":45026.629756538634,"y":27606.81929392788},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{\n\"initialBalance\": 1000\n}","id":"2dc42abe-29b5-40a2-a1c0-65505932af94","savedPayload":{"position":{"x":45074.42421010506,"y":27328.47674455428},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n\"finalDatetime\": \"2021-08-24\"\n}","id":"4685aa9e-d076-4061-a5e1-6cb1f52228a4","savedPayload":{"position":{"x":45205.89254012597,"y":27078.585133251974},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"1 Min","config":"{\n\"label\": \"01-min\"\n}","id":"b5314671-14d5-4510-ac03-c05bd90fbf19","savedPayload":{"position":{"x":45408.150683025626,"y":26881.557673708638},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"31d7313b-c07e-4f69-b7ae-534833769271","savedPayload":{"position":{"x":45661.39795590133,"y":26756.6754335393},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"aacb0b73-cc63-4c56-a800-24b68326763b","savedPayload":{"position":{"x":45940.61876249261,"y":26716.162536116397},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"snapshots":{"type":"Snapshots","name":"New Snapshots","config":"{ \n\"strategy\": true,\n\"position\": true\n}","id":"d77ae147-5bcc-47a6-b07a-bf9ed1a7d073","savedPayload":{"position":{"x":46218.91175756121,"y":26763.986355164387},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"heartbeats":{"type":"Heartbeats","name":"New Heartbeats","config":"{ \n\"date\": true,\n\"candleIndex\": false\n}","id":"42117dc4-a26c-4bc1-b577-9b0b28ee67f1","savedPayload":{"position":{"x":46468.81379952877,"y":26895.47207618953},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"userDefinedParameters":{"type":"User Defined Parameters","name":"New User Defined Parameters","config":"{ \n}","id":"669021a4-cda5-4b70-99bd-a03cbe546445","savedPayload":{"position":{"x":46665.88244500669,"y":27097.79632770553},"targetPosition":{"x":45928.8764665493,"y":27618.5301402359},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"353ef454-0698-49f4-8c5f-d4353816e95b","savedPayload":{"position":{"x":45928.8764665493,"y":27618.5301402359},"targetPosition":{"x":46196.43552434137,"y":28480.91239385315},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"tradingSystemReference":{"type":"Trading System Reference","name":"Beta 6 Demo","id":"2cbe9070-a6e1-4dc6-869f-1a591bb438b5","savedPayload":{"position":{"x":46477.00800994304,"y":27948.054303786346},"targetPosition":{"x":46196.43552434137,"y":28480.91239385315},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading System","name":"Beta 6 Demo","id":"d972ec8c-9f7c-4fef-8d23-38666e69172e"}}},"tradingEngineReference":{"type":"Trading Engine Reference","name":"Low Frequency","id":"fa42d030-5125-46ac-bb5e-7bb82e53e4f7","savedPayload":{"position":{"x":46771.722420141065,"y":28302.44719687128},"targetPosition":{"x":46196.43552434137,"y":28480.91239385315},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading Engine","name":"Low Frequency","id":"eb20f622-71bf-4479-a574-d2320e1d4bd1"}}},"id":"76283497-3aad-473a-a644-2c7d4b103c8f","savedPayload":{"position":{"x":46196.43552434137,"y":28480.91239385315},"targetPosition":{"x":45916.27695834841,"y":29013.648798444035},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","keyReference":{"type":"Key Reference","name":"","id":"68e67c4f-fd24-4750-8088-1eef651dbf3f","savedPayload":{"position":{"x":47065.18806779685,"y":28657.350528295756},"targetPosition":{"x":46491.066528398966,"y":28835.417508918406},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"cf612f33-c9a5-4083-9338-2e3da47dbe27","savedPayload":{"position":{"x":46491.066528398966,"y":28835.417508918406},"targetPosition":{"x":45916.27695834841,"y":29013.648798444035},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"executionStartedEvent":{"type":"Execution Started Event","name":"Resistances and Supports Multi-Period-Daily","id":"5894a6d2-a5a9-4b30-a5b7-dbedf1b090df","savedPayload":{"position":{"x":46448.86741529326,"y":29294.03094382136},"targetPosition":{"x":45916.27695834841,"y":29013.648798444035},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Execution Finished Event","name":"New Execution Finished Event","id":"7e2fdde9-8b64-44a3-85f1-10c3935bd3e3"}}},"id":"092e0416-1d8b-4cf3-81cc-a3b555dc9002","savedPayload":{"position":{"x":45916.27695834841,"y":29013.648798444035},"targetPosition":{"x":45341.12117724298,"y":29192.057708963483},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Trading","id":"a8c8d761-96e5-4a86-9285-6c3881d61442"}}}],"id":"496449d8-2c15-4efe-b11a-b76e4464d560","savedPayload":{"position":{"x":45341.12117724298,"y":29192.057708963483},"targetPosition":{"x":44699.06311252438,"y":29391.292024058166},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"b419f54a-0455-4e5d-9567-972299308083","savedPayload":{"position":{"x":44699.98493392244,"y":29390.87108064614},"targetPosition":{"x":44122.37280787688,"y":29571.510408167193},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},{"type":"Task","name":"Live Trading Beta 6 Demo","bot":{"type":"Trading Bot Instance","config":" {}","processes":[{"type":"Trading Process Instance","name":"Low Frequency Trading","code":" {\n \"process\": \"Multi-Period\"\n }","session":{"type":"Live Trading Session","name":"Live Session","config":"{ \n\"folderName\": \"Live-Trading-Session\"\n}","parameters":{"type":"Parameters","name":"My Parameters","sessionBaseAsset":{"type":"Session Base Asset","name":"","config":"{\n\"initialBalance\": 0,\n\"minimumBalance\": 0.0\n}","id":"39650b2b-89a6-4744-96dc-a307dae9ab06","savedPayload":{"position":{"x":45588.108191310625,"y":27993.227723882574},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"sessionQuotedAsset":{"type":"Session Quoted Asset","name":"","config":"{\n\"initialBalance\": 1000\n}","id":"1ddfa109-00ff-4268-bdcf-1cc1e9eb9938","savedPayload":{"position":{"x":45719.584427473914,"y":27743.26411314994},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeRange":{"type":"Time Range","name":"New Time Range","config":"{\n\"finalDatetime\": \"2021-08-24\"\n}","id":"560b54d8-37fa-43e6-894f-41fd1d0bd6bc","savedPayload":{"position":{"x":45921.85439586398,"y":27546.21552430766},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrame":{"type":"Time Frame","name":"1 Min","config":"{\n\"label\": \"01-min\"\n}","id":"5780603f-fa16-4a09-9544-ae7a58f2e026","savedPayload":{"position":{"x":46175.117588687644,"y":27421.32345256872},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"slippage":{"type":"Slippage","name":"New Slippage","config":"{\n\"positionRate\": 0.1,\n\"stopLoss\": 0.1,\n\"takeProfit\": 0.1\n}","id":"8d00bff4-b2e7-4233-8364-a1bcba3b67d9","savedPayload":{"position":{"x":46454.3707483272,"y":27380.808209922303},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"feeStructure":{"type":"Fee Structure","name":"Fee Structure","config":"{\n\"maker\": 0.1,\n\"taker\": 0.1\n}","id":"b36aa335-c481-41c1-87e3-136796e685be","savedPayload":{"position":{"x":46732.68051412125,"y":27428.635506930656},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"snapshots":{"type":"Snapshots","name":"New Snapshots","config":"{ \n\"strategy\": true,\n\"position\": true\n}","id":"e9acc3d1-12f3-4dd7-a178-379525f74096","savedPayload":{"position":{"x":46982.59344303618,"y":27560.125603663662},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"heartbeats":{"type":"Heartbeats","name":"New Heartbeats","config":"{ \n\"date\": true,\n\"candleIndex\": false\n}","id":"1340695f-ca1a-4d80-81b7-1f6e9c520ca7","savedPayload":{"position":{"x":47179.64767702012,"y":27762.41432296533},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"userDefinedParameters":{"type":"User Defined Parameters","name":"New User Defined Parameters","config":"{ \n}","id":"981ce452-bd56-44a5-beaa-d2a5e0c8b9ee","savedPayload":{"position":{"x":47304.55810485737,"y":28015.74811239809},"targetPosition":{"x":46442.67878224914,"y":28283.24287053376},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"a608a04c-bede-4305-843c-3d62d2e380fd","savedPayload":{"position":{"x":46442.67878224914,"y":28283.24287053376},"targetPosition":{"x":46430.99959276328,"y":29186.173678994335},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"tradingSystemReference":{"type":"Trading System Reference","name":"Beta 6 Demo","id":"fccabfd0-111d-4a69-95a5-f085c624b4f3","savedPayload":{"position":{"x":46862.33136614471,"y":28766.108079059355},"targetPosition":{"x":46430.99959276328,"y":29186.173678994335},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading System","name":"Beta 6 Demo","id":"d972ec8c-9f7c-4fef-8d23-38666e69172e"}}},"tradingEngineReference":{"type":"Trading Engine Reference","name":"Low Frequency","id":"3a9d4417-a716-4ebd-864f-0e2f81cb73af","savedPayload":{"position":{"x":47033.11543659354,"y":29194.0214476333},"targetPosition":{"x":46430.99959276328,"y":29186.173678994335},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Trading Engine","name":"Low Frequency","id":"eb20f622-71bf-4479-a574-d2320e1d4bd1"}}},"id":"c0203b2c-4660-4f22-bfab-8fd7fc4cebfd","savedPayload":{"position":{"x":46430.99959276328,"y":29186.173678994335},"targetPosition":{"x":45999.54105642301,"y":29606.224438215057},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","keyReference":{"type":"Key Reference","name":"","id":"008c288d-773e-4076-a75b-b135db165407","savedPayload":{"position":{"x":47202.42032252842,"y":29622.06997151286},"targetPosition":{"x":46601.625229581674,"y":29614.17713224757},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"ec6f6263-90b7-4112-b2ff-4a5fd6bf68d2","savedPayload":{"position":{"x":46601.625229581674,"y":29614.17713224757},"targetPosition":{"x":45999.54105642301,"y":29606.224438215057},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"executionStartedEvent":{"type":"Execution Started Event","name":"Resistances and Supports Multi-Period-Daily","id":"2175cce3-2173-4f0e-97e4-be1ed5fadb63","savedPayload":{"position":{"x":46419.70830471042,"y":30037.476866248486},"targetPosition":{"x":45999.54105642301,"y":29606.224438215057},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{},"referenceParent":{"type":"Execution Finished Event","name":"New Execution Finished Event","id":"7e2fdde9-8b64-44a3-85f1-10c3935bd3e3"}}},"id":"9248f618-1891-43f2-aab8-d5597a89562b","savedPayload":{"position":{"x":45999.54105642301,"y":29606.224438215057},"targetPosition":{"x":45397.758357617975,"y":29598.339315471847},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Trading","id":"a8c8d761-96e5-4a86-9285-6c3881d61442"}}}],"id":"5320de77-7905-41f0-8fea-c93068e23c6b","savedPayload":{"position":{"x":45397.758357617975,"y":29598.339315471847},"targetPosition":{"x":44725.130358997056,"y":29589.56177600973},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"420b0ae4-389e-459b-b7fb-469a2a0e136e","savedPayload":{"position":{"x":44725.934820786264,"y":29589.228223328082},"targetPosition":{"x":44122.37280787688,"y":29571.510408167193},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}}],"id":"122a1f16-06c2-4e63-9c9b-0b1b6532ef6e","savedPayload":{"position":{"x":44122.37280787688,"y":29571.510408167193},"targetPosition":{"x":43581.715008797495,"y":29838.081290432212},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"l"}}},"id":"7154ffab-e458-47a9-98ab-716d7db899c2","savedPayload":{"position":{"x":43582.00458649242,"y":29837.83128467003},"targetPosition":{"x":43051.922796937186,"y":30128.167911555214},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"efbaa91d-f097-4fda-b373-8b9394dae215","savedPayload":{"position":{"x":43637.835993530076,"y":29958.33545918882},"targetPosition":{"x":43051.922796937186,"y":30128.167911555214},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Production Environment","name":"New Production Environment","id":"32656457-f603-416a-b805-546642094dc4"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.taskManagers === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Task Manager.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Production Environment') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Production Environment.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.taskManagers)\n\n setup(templateClone, target, exchange, 'Exchange Tasks', 'taskManagers')\n for (let i = 0; i < templateClone.tasks.length; i++) {\n let task = templateClone.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n process.marketReference.payload.referenceParent = market\n }\n if (process.marketReference.keyInstance !== undefined) {\n process.marketReference.keyInstance.payload.referenceParent = key\n }\n if (process.session !== undefined) {\n if (process.session.parameters !== undefined) {\n if (process.session.parameters.sessionBaseAsset !== undefined) {\n findExchangeAccountAsset(process.session.parameters.sessionBaseAsset, superAction.payload.parentNode.baseAsset)\n }\n if (process.session.parameters.sessionQuotedAsset !== undefined) {\n findExchangeAccountAsset(process.session.parameters.sessionQuotedAsset, superAction.payload.parentNode.quotedAsset)\n }\n\n function findExchangeAccountAsset(taskAsset, marketAsset) {\n for (let k = 0; k < superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts.length; k++) {\n let userAccount = superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts[k]\n let found = false\n if (userAccount.userAssets !== undefined) {\n for (let m = 0; m < userAccount.userAssets.assets.length; m++) {\n let asset = userAccount.userAssets.assets[m]\n if (asset.payload.referenceParent !== undefined) {\n if (asset.payload.referenceParent.id === marketAsset.payload.referenceParent.id) {\n taskAsset.payload.referenceParent = asset\n found = true\n break\n }\n }\n }\n }\n if (found === true) { break }\n }\n }\n }\n }\n }\n }\n }\n }\n\n return templateClone\n }\n}","id":"7504b088-dc0b-4a67-b673-150524eb3430","savedPayload":{"position":{"x":43656.58707313911,"y":30127.48170984985},"targetPosition":{"x":43051.922796937186,"y":30128.167911555214},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"aaef47a3-030f-4bba-a297-72973f84a6a7","savedPayload":{"position":{"x":43051.922796937186,"y":30128.167911555214},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Masters Data Mining Tasks","templateStructure":{"type":"Template Structure","name":"New Template Structure","taskManagers":{"type":"Task Manager","name":"Masters","tasks":[{"type":"Task","name":"OHKCVs","bot":{"type":"Sensor Bot Instance","name":"Exchange Raw Data","config":" {\n \"repo\": \"Exchange-Raw-Data-Sensor-Bot\",\n \"startDate\": \"2015-01-01\"\n }","processes":[{"type":"Sensor Process Instance","name":"Exchange Raw Data Historic-OHLCVs","marketReference":{"type":"Market Reference","name":"","id":"fa969ad9-f967-4c42-9a7b-e3ca5c53a2a4","savedPayload":{"position":{"x":44560.21368779044,"y":28699.809307269523},"targetPosition":{"x":44501.76395322693,"y":28995.836611128198},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"7321618d-f188-4909-ae51-bff16e83e85c","savedPayload":{"position":{"x":44501.76395322693,"y":28995.836611128198},"targetPosition":{"x":44443.56643935867,"y":29291.8269419157},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Historic-OHLCVs","id":"5eb11d6a-022e-4f60-97c4-d6cf90b249dc"}}}],"id":"66324e06-a787-4389-ba0a-f6158224532e","savedPayload":{"position":{"x":44443.56643935867,"y":29291.8269419157},"targetPosition":{"x":44385.612029874464,"y":29587.94913019008},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"02b2b5ef-8fbb-4234-847b-9e9381e39e40","savedPayload":{"position":{"x":44385.612029874464,"y":29587.94913019008},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Candles & Volumes","bot":{"type":"Indicator Bot Instance","name":"Candles Volumes","config":" {\n \"repo\": \"Candles-Volumes-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"Candles Volumes Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"","id":"65a2cdb9-af06-458b-ae81-52a922d32874","savedPayload":{"position":{"x":44964.187758241846,"y":28854.98670045004},"targetPosition":{"x":44867.37394867931,"y":29141.00474305331},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"fe3e9758-12d8-46da-a7e9-968a340f0ae5","savedPayload":{"position":{"x":44867.37394867931,"y":29141.00474305331},"targetPosition":{"x":44770.863841205035,"y":29426.794555832763},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"9f683143-a33f-42c1-9fa8-c601f01ee4e1"}}},{"type":"Indicator Process Instance","name":"Candles Volumes Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"","id":"5ba98b0e-e71d-4c91-a3b2-ca98f7bf3e1b","savedPayload":{"position":{"x":45450.607347487006,"y":28830.004895688664},"targetPosition":{"x":45110.84538126836,"y":29128.246946977702},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"e3fe5518-65d4-4413-9d1f-624025766f97","savedPayload":{"position":{"x":45110.84538126836,"y":29128.246946977702},"targetPosition":{"x":44770.863841205035,"y":29426.794555832763},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"980ceb1d-7be6-454f-90d9-01ba1fd4a65d"}}}],"id":"80415df6-6aca-42d5-b91d-6d5d6326f72f","savedPayload":{"position":{"x":44770.863841205035,"y":29426.794555832763},"targetPosition":{"x":44603.629636348196,"y":29677.915109594087},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"a2a8253d-ea54-431a-a623-627a9d80c96d","savedPayload":{"position":{"x":44603.629636348196,"y":29677.915109594087},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Candles Channels","bot":{"type":"Indicator Bot Instance","name":"Candles Channels","config":"{}","processes":[{"type":"Indicator Process Instance","name":"Candle Channels Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","id":"cb0330ef-a176-4e88-b09e-17c5c0ed8893","savedPayload":{"position":{"x":45419.04412697955,"y":29222.81355279071},"targetPosition":{"x":45219.80854926223,"y":29449.828829021604},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"id":"606c5e74-aa46-47d9-82c9-e1ff4a627ebe","savedPayload":{"position":{"x":45219.80854926223,"y":29449.828829021604},"targetPosition":{"x":45021.0311547657,"y":29676.604548844087},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"2ab8c00c-8e15-4bdc-87fa-291c8d4edadb"}}},{"type":"Indicator Process Instance","name":"Candle Channels Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","id":"de1108b1-a773-4d54-b32b-b2931011f115","savedPayload":{"position":{"x":45877.73357208005,"y":29385.707334754436},"targetPosition":{"x":45449.54959923155,"y":29531.08075928177},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"id":"6c0075a2-e741-45b7-8b6c-66d2faf95ad8","savedPayload":{"position":{"x":45449.54959923155,"y":29531.08075928177},"targetPosition":{"x":45021.0311547657,"y":29676.604548844087},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"0de6dd1f-5bca-4f66-a5db-cd068dd4190f"}}}],"id":"d29785c9-1789-45f5-88a1-17fa13a383bb","savedPayload":{"position":{"x":45021.0311547657,"y":29676.604548844087},"targetPosition":{"x":44770.193944183266,"y":29844.31302783551},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"34ef19e0-5e75-4108-86e5-276f213deea5","savedPayload":{"position":{"x":44770.193944183266,"y":29844.31302783551},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},{"type":"Task","name":"Bollinger Bands & Percentage Bandwidth","bot":{"type":"Indicator Bot Instance","name":"Bollinger Bands","config":" {\n \"repo\": \"Bollinger-Bands-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"Bollinger Bands Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"","id":"936109e1-9d5f-4738-9eee-26e98c6675a9","savedPayload":{"position":{"x":45697.98636630025,"y":29736.511735359036},"targetPosition":{"x":45426.92109998537,"y":29869.831340077228},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"69c2cfe4-3a79-45d0-8742-ff3f368431f6","savedPayload":{"position":{"x":45426.92109998537,"y":29869.831340077228},"targetPosition":{"x":45156.359188427705,"y":30003.07715234361},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"e598ee86-1e18-4aa1-95c2-64aaf66776ca"}}},{"type":"Indicator Process Instance","name":"Bollinger Bands Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"","id":"75d8a16d-5ff3-4771-b32a-bf5ea071e7fc","savedPayload":{"position":{"x":46059.27837314473,"y":30061.884267235077},"targetPosition":{"x":45608.011015660944,"y":30032.523271358426},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"c437054a-3447-486b-ab42-b267b800f96a","savedPayload":{"position":{"x":45608.011015660944,"y":30032.523271358426},"targetPosition":{"x":45156.359188427705,"y":30003.07715234361},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"941a0543-0cc0-4a5d-a782-728d2835c100"}}}],"id":"9604d5b6-af02-4ac3-91aa-fa82dcd316bf","savedPayload":{"position":{"x":45156.359188427705,"y":30003.07715234361},"targetPosition":{"x":44860.33193547722,"y":30061.741068175525},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"ed9d924d-7a8b-46da-a4e9-eb121329fe49","savedPayload":{"position":{"x":44860.33193547722,"y":30061.741068175525},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Bollinger Channels & Sub-Channels","bot":{"type":"Indicator Bot Instance","name":"Bollinger Channels","config":" {\n \"repo\": \"Bollinger-Channels-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"Bollinger Channels Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"","id":"6e4bd29a-ffe6-4bbd-a114-62a0efe82a12","savedPayload":{"position":{"x":45758.75561663214,"y":30317.320218567547},"targetPosition":{"x":45457.29733530277,"y":30336.578022703987},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"b3c5ca8e-cc9d-4662-96cb-82d7c5801f67","savedPayload":{"position":{"x":45457.29733530277,"y":30336.578022703987},"targetPosition":{"x":45156.33093996296,"y":30355.86726431393},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"28be432d-80ca-46b3-859a-55541e24b2b4"}}},{"type":"Indicator Process Instance","name":"Bollinger Channels Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"","id":"d6995a0d-dffd-4213-b159-1919fa35f1b8","savedPayload":{"position":{"x":45967.6249476123,"y":30756.13682334884},"targetPosition":{"x":45562.14586637951,"y":30556.226071108442},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"d640b042-3b50-4f02-961a-9f4e9aab1015","savedPayload":{"position":{"x":45562.14586637951,"y":30556.226071108442},"targetPosition":{"x":45156.33093996296,"y":30355.86726431393},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"bc15b49d-4547-4bac-a28b-193eb0158fe3"}}}],"id":"88c5bffa-e658-4a99-89b3-b3b03d40d2e6","savedPayload":{"position":{"x":45156.33093996296,"y":30355.86726431393},"targetPosition":{"x":44860.312420884715,"y":30296.79683962292},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"10972cbd-be85-4344-bf34-8aab4dc3a23b","savedPayload":{"position":{"x":44860.312420884715,"y":30296.79683962292},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},{"type":"Task","name":"Webhooks","bot":{"type":"Sensor Bot Instance","name":"Webhooks","config":" {\n \"repo\": \"Webhooks-Sensor-Bot\"\n }","processes":[{"type":"Sensor Process Instance","name":"Webhooks Check-Webhook","marketReference":{"type":"Market Reference","name":"Binance BTC/USDT","id":"2ef284e2-813b-422b-91b1-fd9f4a3289dc","savedPayload":{"position":{"x":41234.40772073858,"y":30225.096264588887},"targetPosition":{"x":40812.801769173064,"y":30219.066258020608},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"5489751f-5ce4-40d0-9854-5bcfdc810269"}}},"id":"4b5cf18d-cd45-4a96-9117-8d5d7781b0ab","savedPayload":{"position":{"x":45271.73602611185,"y":30850.04067801827},"targetPosition":{"x":45020.91081505051,"y":30682.19113571526},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Check-Webhook","id":"69f37820-ab16-4e19-bfd8-386dd6e249a3"}}}],"id":"79548414-ae13-4e0f-99b6-fff96171bbaf","savedPayload":{"position":{"x":45020.91081505051,"y":30682.19113571526},"targetPosition":{"x":44770.12701693432,"y":30514.206485735685},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"5aa3a8bc-9fda-4e11-a56d-5655b148bfa7","savedPayload":{"position":{"x":44770.12701693432,"y":30514.206485735685},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"Resistances & Supports","bot":{"type":"Indicator Bot Instance","name":"Resistances & Supports","config":" {\n \"repo\": \"\"\n }","processes":[{"type":"Indicator Process Instance","name":"Resistances and Supports Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"","id":"e28673ef-1555-4468-83f6-9011026ef257","savedPayload":{"position":{"x":45449.67968691551,"y":31528.445253888036},"targetPosition":{"x":45110.0218108498,"y":31230.334001105028},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"1d60f7c3-f431-43f0-aaf3-6b25c092a7d3","savedPayload":{"position":{"x":45110.0218108498,"y":31230.334001105028},"targetPosition":{"x":44770.07296321164,"y":30931.963593222703},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"5d9b2729-43fb-4e7e-aa4f-b8477c424e51"}}},{"type":"Indicator Process Instance","name":"Resistances and Supports Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"","id":"5c8850db-00c6-4607-b153-469534df6f68","savedPayload":{"position":{"x":44963.09766348393,"y":31503.5865599359},"targetPosition":{"x":44866.41807565363,"y":31217.685157715303},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"f38aa087-739d-4c9c-ac81-c5eaf4750f6e","savedPayload":{"position":{"x":44866.41807565363,"y":31217.685157715303},"targetPosition":{"x":44770.07296321164,"y":30931.963593222703},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"be19d91b-9337-4f84-96b3-f4e54ea12df5"}}}],"id":"12391346-c72a-44d7-8574-17fd5ed22657","savedPayload":{"position":{"x":44770.07296321164,"y":30931.963593222703},"targetPosition":{"x":44603.065268373626,"y":30680.754120741043},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"39e297c4-fc60-4df1-a76d-c59f45b6a090","savedPayload":{"position":{"x":44603.065268373626,"y":30680.754120741043},"targetPosition":{"x":44269.59727069643,"y":30179.073387474502},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"id":"8e0023df-5beb-4187-a53b-908c363861f9","savedPayload":{"position":{"x":44269.59727069643,"y":30179.073387474502},"targetPosition":{"x":43679.20572729225,"y":30296.37779364818},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"j"}}},"id":"930ad389-2e02-405d-a608-628df967e702","savedPayload":{"position":{"x":43680.03662495652,"y":30296.121398642605},"targetPosition":{"x":43092.893525133986,"y":30439.424366156163},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"216101a4-697c-41c6-989c-a5f8f181c624","savedPayload":{"position":{"x":43702.77493565774,"y":30426.93976511335},"targetPosition":{"x":43092.893525133986,"y":30439.424366156163},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Mining","name":"New Data Mining","id":"7449a608-32ca-4285-94d1-c96791e2817f"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.taskManagers === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Task Manager.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Data Mining') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mining.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.taskManagers)\n \n setup(templateClone, target, exchange, 'Exchange Tasks', 'taskManagers')\n for (let i = 0; i < templateClone.tasks.length; i++) {\n let task = templateClone.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n process.marketReference.payload.referenceParent = market\n }\n }\n }\n }\n }\n\n return templateClone\n }\n}","id":"c1cbecc9-8340-4435-a0ab-140334ba104d","savedPayload":{"position":{"x":43677.114577683766,"y":30595.068706133403},"targetPosition":{"x":43092.893525133986,"y":30439.424366156163},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"ddd80520-a052-464b-a7b8-23b72387086f","savedPayload":{"position":{"x":43092.893525133986,"y":30439.424366156163},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Sparta Data Mining Tasks","templateStructure":{"type":"Template Structure","name":"New Template Structure","taskManagers":{"type":"Task Manager","name":"Sparta","tasks":[{"type":"Task","name":"SMA","bot":{"type":"Indicator Bot Instance","name":"SMA","config":" {\n\"repo\": \"SMA-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"SMA Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"592304dd-b412-4f42-9f24-1c2b6305538a","savedPayload":{"position":{"x":44071.61797125626,"y":29269.179122287296},"targetPosition":{"x":44017.22604407985,"y":29586.166432086655},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"4829d508-b32b-402c-8d27-4493549196b5","savedPayload":{"position":{"x":44017.22604407985,"y":29586.166432086655},"targetPosition":{"x":43962.84190684965,"y":29903.09502706654},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"456269f6-9849-4d5f-9c8c-7cd7d1eef297"}}},{"type":"Indicator Process Instance","name":"SMA Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"4de8af37-754b-4178-9960-49f8dd9fea12","savedPayload":{"position":{"x":45168.8488344655,"y":29458.147255078686},"targetPosition":{"x":44565.86589926591,"y":29680.585441818144},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"5f34959e-a63c-4298-8323-a16f75e23431","savedPayload":{"position":{"x":44565.86589926591,"y":29680.585441818144},"targetPosition":{"x":43962.84190684965,"y":29903.09502706654},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"333ae5d7-7ec1-4f08-b206-91e3b4f2c99f"}}}],"id":"6db29c31-152b-472a-852e-0e4a36bec524","savedPayload":{"position":{"x":43962.84190684965,"y":29903.09502706654},"targetPosition":{"x":43551.90647643782,"y":30397.266512500442},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"20c34f88-6b58-474b-b69d-02712765c0db","savedPayload":{"position":{"x":43551.90647643782,"y":30397.266512500442},"targetPosition":{"x":43140.801983244026,"y":30891.950600638847},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"EMA","bot":{"type":"Indicator Bot Instance","name":"EMA","config":" {\n\"repo\": \"EMA-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"EMA Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"64c7ca91-01ce-4dab-8b29-7cfa8e1f19a4","savedPayload":{"position":{"x":44848.06740265459,"y":30126.954299288456},"targetPosition":{"x":44617.64305938516,"y":30351.280902615003},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"31761ef4-c98b-4657-a37f-652eff5340ea","savedPayload":{"position":{"x":44617.64305938516,"y":30351.280902615003},"targetPosition":{"x":44387.27143213535,"y":30575.564915785017},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"278c34a7-199d-400e-8a06-087149e3d391"}}},{"type":"Indicator Process Instance","name":"EMA Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"7610e87b-a8c3-475c-a44f-665e26614ad8","savedPayload":{"position":{"x":45624.60027321795,"y":30924.208529781736},"targetPosition":{"x":45005.977709353945,"y":30749.876937252106},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"c4d61b48-9c23-47f1-937b-1729767a26f6","savedPayload":{"position":{"x":45005.977709353945,"y":30749.876937252106},"targetPosition":{"x":44387.27143213535,"y":30575.564915785017},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"943ea24f-ee24-4eae-9b4b-e8a73122b1c2"}}}],"id":"34656b7b-826e-4ebd-943a-407d8c91ea24","savedPayload":{"position":{"x":44387.27143213535,"y":30575.564915785017},"targetPosition":{"x":43764.266809147426,"y":30733.667438768847},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"28be18c7-c387-435e-ae7d-dfeca201bce5","savedPayload":{"position":{"x":43764.266809147426,"y":30733.667438768847},"targetPosition":{"x":43140.801983244026,"y":30891.950600638847},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"MACD","bot":{"type":"Indicator Bot Instance","name":"MACD","config":" {\n\"repo\": \"MACD-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"MACD Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"4f7ed8bc-c0b7-4930-80c3-67c7d5378066","savedPayload":{"position":{"x":44971.81020849867,"y":31276.620146946167},"targetPosition":{"x":44653.49004123155,"y":31322.55467880252},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"9cc4175f-28ad-4307-a8d6-0df303a02be1","savedPayload":{"position":{"x":44653.49004123155,"y":31322.55467880252},"targetPosition":{"x":44335.23861007668,"y":31368.479242651025},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"44019efe-950a-4eec-a546-cd2ee26818b9"}}},{"type":"Indicator Process Instance","name":"MACD Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"3c7ff3c1-be17-4c7d-ba0a-1cc66a41970b","savedPayload":{"position":{"x":45131.12724051729,"y":32377.93040356555},"targetPosition":{"x":44733.22183307022,"y":31873.22574960204},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"a585a9e1-e18d-40b6-b364-75f01e840a4b","savedPayload":{"position":{"x":44733.22183307022,"y":31873.22574960204},"targetPosition":{"x":44335.23861007668,"y":31368.479242651025},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"8e5db945-8507-4489-9288-21cfa1e9301c"}}}],"id":"525c3ef8-145e-4919-bf2d-983db99a5cdb","savedPayload":{"position":{"x":44335.23861007668,"y":31368.479242651025},"targetPosition":{"x":43738.24708451567,"y":31130.308446359704},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"b652ba10-fb7a-4a93-bd24-9500bb7d25ec","savedPayload":{"position":{"x":43738.24708451567,"y":31130.308446359704},"targetPosition":{"x":43140.801983244026,"y":30891.950600638847},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Task","name":"RSI","bot":{"type":"Indicator Bot Instance","name":"RSI","config":" {\n\"repo\": \"RSI-Indicator-Bot\"\n }","processes":[{"type":"Indicator Process Instance","name":"RSI Multi-Period-Market","code":" {\n \"process\": \"Multi-Period-Market\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"002570f4-0254-46d4-ba77-c23598fd8e51","savedPayload":{"position":{"x":44395.607564219106,"y":32279.346270225502},"targetPosition":{"x":44111.06304717549,"y":32129.543698932317},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"16a0815f-b793-4ca8-aa09-78f9f447f110","savedPayload":{"position":{"x":44111.06304717549,"y":32129.543698932317},"targetPosition":{"x":43826.594538981204,"y":31979.768305805377},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Market","id":"96f31416-5090-428a-be83-985a0b3ab275"}}},{"type":"Indicator Process Instance","name":"RSI Multi-Period-Daily","code":" {\n \"process\": \"Multi-Period-Daily\"\n }","marketReference":{"type":"Market Reference","name":"Bitfinex BTC/USDT","id":"a1c6a73c-d518-478c-b1bb-cb1b0b4f08db","savedPayload":{"position":{"x":43876.85035087776,"y":33264.29116567567},"targetPosition":{"x":43851.71485258066,"y":32622.075786304355},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"b734f59f-f29c-450b-a6e4-6d2345a1082a"}}},"id":"123f248b-aa95-4d1c-a6c2-9fc70fc2b816","savedPayload":{"position":{"x":43851.71485258066,"y":32622.075786304355},"targetPosition":{"x":43826.594538981204,"y":31979.768305805377},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""},"referenceParent":{"type":"Process Definition","name":"Multi-Period-Daily","id":"f1177bcd-22dc-425b-8f30-878844aa82b8"}}}],"id":"007d0fe3-9637-4a4f-8078-730af1716e1b","savedPayload":{"position":{"x":43826.594538981204,"y":31979.768305805377},"targetPosition":{"x":43483.775300077,"y":31436.11470464454},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}},"id":"da1cddfc-5d56-46e7-b14a-0b21127cf6e3","savedPayload":{"position":{"x":43483.775300077,"y":31436.11470464454},"targetPosition":{"x":43140.801983244026,"y":30891.950600638847},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}}],"id":"6907a34a-7247-4717-8be3-154ebc2cacfc","savedPayload":{"position":{"x":42927.695684739876,"y":30878.09191280621},"targetPosition":{"x":42499.798120847416,"y":30850.102649976},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"j"}}},"id":"ac392204-2e14-4744-a636-063c2bf461ae","savedPayload":{"position":{"x":43656.00911057671,"y":30764.257975548626},"targetPosition":{"x":43051.872090210105,"y":30750.703809171566},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"4d93f230-422c-4a10-8e6d-50381aa60aba","savedPayload":{"position":{"x":43644.050555703776,"y":30896.472157975586},"targetPosition":{"x":43051.872090210105,"y":30750.703809171566},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Mining","name":"New Data Mining","id":"7449a608-32ca-4285-94d1-c96791e2817f"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.taskManagers === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Task Manager.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Data Mining') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mining.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.taskManagers)\n \n setup(templateClone, target, exchange, 'Exchange Tasks', 'taskManagers')\n for (let i = 0; i < templateClone.tasks.length; i++) {\n let task = templateClone.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n process.marketReference.payload.referenceParent = market\n }\n }\n }\n }\n }\n\n return templateClone\n }\n}","id":"b2fdaf25-bbd2-476a-93ed-faf23b3bfa00","savedPayload":{"position":{"x":43575.833565406254,"y":31052.325856965672},"targetPosition":{"x":43051.872090210105,"y":30750.703809171566},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"83556c43-8483-48e3-be7e-36f9dbb70f08","savedPayload":{"position":{"x":43051.872090210105,"y":30750.703809171566},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Install Time Machine","templateStructure":{"type":"Template Structure","name":"New Template Structure","timeMachines":{"type":"Time Machine","name":"My Time Machine","config":"{}","timeScale":{"type":"Time Scale","name":"New Time Scale","config":"{\n \"fromDate\": \"2018-12-30T23:22:24.048Z\",\n \"toDate\": \"2019-01-10T19:44:56.900Z\",\n \"autoMinScale\": true,\n \"autoMaxScale\": true\n}","id":"acf304c4-443a-4a57-880e-13d330e754c4","savedPayload":{"position":{"x":45035.54872082319,"y":31167.284695389415},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"rateScale":{"type":"Rate Scale","name":"New Rate Scale","config":"{\n \"offset\": 0,\n \"minValue\": 3540,\n \"maxValue\": 4069.8,\n \"autoMinScale\": true,\n \"autoMaxScale\": true\n}","id":"153feb9a-76e1-4838-ae3e-33cacd7ca646","savedPayload":{"position":{"x":45178.85858512892,"y":31353.88146472699},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timeFrameScale":{"type":"Time Frame Scale","name":"New Time Frame Scale","config":"{\"value\":\"24-hs\"}","id":"7890a24e-5bf5-450f-bb35-f23b3eb495f6","savedPayload":{"position":{"x":45239.74341949191,"y":31581.000164926612},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"timelineCharts":[{"type":"Timeline Chart","name":"Indicators","layersManager":{"type":"Layers Manager","name":"New Layers Manager","config":"{\n \"visibleLayers\": 2,\n \"panelLocation\": {\n \"upOrDown\": \"up\",\n \"leftOrRight\": \"left\"\n }\n}","layers":[{"type":"Layer","name":"","config":"{\n \"status\": \"on\",\n \"showPanels\": false\n}","id":"38e64db1-376d-45de-a92c-a6fb25282507","savedPayload":{"position":{"x":45798.08358329995,"y":30783.47112133315},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Candles","id":"884a5d08-b607-4b2b-8e7a-8adeb7e8dd4a"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"9ad6d912-ff9c-45c8-bfce-bcd0d86e3977","savedPayload":{"position":{"x":45898.37673360377,"y":30788.25119234455},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Bollinger Bands","id":"68df01d8-d9a8-400c-aa76-8da44c5dc040"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"6c5e7c7f-a010-4d59-8299-d8d4534aa7f8","savedPayload":{"position":{"x":45996.05938571397,"y":30809.588522972816},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Bollinger Channels Objects","id":"632f0f98-eb2c-4820-9943-662a4903be81"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"41db7192-ec70-4f95-85dd-343bfa05258e","savedPayload":{"position":{"x":46088.671022938994,"y":30846.72421469604},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Bollinger Sub-Channels Objects","id":"88a1ca81-b317-4ab2-b651-c8fa566e8e28"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"13c5c367-3758-4f8f-883c-ba6f1ee3bef2","savedPayload":{"position":{"x":46173.797322491286,"y":30898.58369972401},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Candle-Stairs","id":"5979844b-35e7-4c04-938f-18e6156352a0"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"0fac6cd3-3172-4854-9ce2-f2827023f503","savedPayload":{"position":{"x":46249.17664768098,"y":30963.730987652525},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Popular SMAs","id":"5bce195f-7d08-4281-bb9d-ca1e9417068e"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"88c7874f-9372-4dc5-9bb1-491ca58ceded","savedPayload":{"position":{"x":46312.78393052083,"y":31040.384533238812},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Base7 SMAs","id":"b9145946-1899-4fac-b531-47ed600873be"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"6570c568-8d96-427f-9dbe-822d0fe9f900","savedPayload":{"position":{"x":46362.900460538505,"y":31126.454059169817},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Base11 SMAs","id":"c9daf265-f452-4372-a8a9-6ed9c0d7a0ed"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"a133263e-3eca-4d4a-b04e-8f40e5ec78ba","savedPayload":{"position":{"x":46398.167326095994,"y":31219.59432824167},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Popular EMAs","id":"fba1f18e-dd5b-48e6-82b1-ff04a624f090"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"32fcaa2a-af1d-4aa6-adf0-36dd24759ca4","savedPayload":{"position":{"x":46417.62588351845,"y":31317.267577006704},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Base7 EMAs","id":"64f059bf-66e2-463c-aed1-800b5fa195ab"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\"\n}","id":"3d5d19b9-481d-4542-b279-06303aa9edef","savedPayload":{"position":{"x":46420.70567572493,"y":31416.809466474464},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Base11 EMAs","id":"5b6e48e5-259f-44f3-b40e-a29982204c95"}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"04f846d4-f203-4eed-807d-214655d4551b","savedPayload":{"position":{"x":46407.31337137963,"y":31515.483822428057},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"10e19911-11b2-4b8d-86fa-b7a5de9f93e4","savedPayload":{"position":{"x":46377.87367543775,"y":31610.607629023725},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"5666253c-62f6-46f2-91fa-c19b44a5932a","savedPayload":{"position":{"x":46333.185880681754,"y":31699.591341637817},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"aae1b1f8-35b5-4c41-b5c9-64d80a97cc38","savedPayload":{"position":{"x":46274.467312818415,"y":31780.011584392756},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"434c3396-d53e-434b-aa8b-c27a170c9ed9","savedPayload":{"position":{"x":46203.31676678368,"y":31849.67669835976},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"9e784e59-be45-4895-9174-75d3dabfd45b","savedPayload":{"position":{"x":46121.67361107911,"y":31906.68977984249},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"3ad3e53b-53d4-4c61-a80d-e3f5a679b2cd","savedPayload":{"position":{"x":46028.33674024209,"y":31950.48529383432},"targetPosition":{"x":45818.52076736195,"y":31385.59859580079},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"id":"5bfa0541-b9bb-4dc6-a5a0-5684278c2a16","savedPayload":{"position":{"x":45819.36840869368,"y":31385.419815840156},"targetPosition":{"x":45228.931388073186,"y":31502.74417203152},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"frame":{"position":{"x":0,"y":80},"width":150,"height":190,"radius":0}}},"id":"63c36d69-c222-4687-a535-c147abcfb9a9","savedPayload":{"position":{"x":45209.0595890069,"y":31813.909808588185},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Timeline Chart","name":"Volumes","rateScale":{"type":"Rate Scale","name":"New Rate Scale","config":"{\n \"offset\": 0,\n \"minValue\": 3496.3969296811883,\n \"maxValue\": 12400.41819345618,\n \"autoMinScale\": true,\n \"autoMaxScale\": true\n}","id":"6f07d76a-363a-4200-a7f4-ee9daf700744","savedPayload":{"position":{"x":43955.58254498447,"y":31504.999869023693},"targetPosition":{"x":43630.44688258736,"y":31530.628144529433},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"layersManager":{"type":"Layers Manager","name":"New Layers Manager","config":"{\n \"visibleLayers\": 0,\n \"panelLocation\": {\n \"upOrDown\": \"up\",\n \"leftOrRight\": \"left\"\n }\n}","layers":[{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"a6350c1f-64b3-4b13-921b-aea1eb09b6c1","savedPayload":{"position":{"x":44162.92610911858,"y":31723.43961416986},"targetPosition":{"x":43951.317213648734,"y":31685.17817589269},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Volumes","id":"4ec71a01-3d83-4e8e-9780-bcb700dcf66a"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\"\n}","id":"3b5badc4-8160-4c8f-ae19-8db7970e581d","savedPayload":{"position":{"x":44114.39338158986,"y":31825.20197219218},"targetPosition":{"x":43951.317213648734,"y":31685.17817589269},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Volume-Stairs","id":"dd1f89bc-3c2f-4fc4-a5f1-de7a34e0997e"}}}],"id":"929661b5-acce-457c-a8cc-505a64cfacf2","savedPayload":{"position":{"x":43951.317213648734,"y":31685.17817589269},"targetPosition":{"x":43630.44688258736,"y":31530.628144529433},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"frame":{"position":{"x":150,"y":80},"width":150,"height":40,"radius":0}}},"id":"6f781018-392b-4ba2-b00f-68d4c5498f2b","savedPayload":{"position":{"x":45091.49176756894,"y":32017.525303790968},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"d4098b73-7e25-434e-8fd9-342393cbb400"}}},{"type":"Timeline Chart","name":"Oscilators","rateScale":{"type":"Rate Scale","name":"New Rate Scale","config":"{\n \"minValue\": -2,\n \"maxValue\": 2,\n \"autoMinScale\": true,\n \"autoMaxScale\": true\n}","id":"5074db98-f742-4771-a68e-a001b9c45182","savedPayload":{"position":{"x":43911.24885028547,"y":31610.221317602256},"targetPosition":{"x":43610.47458913771,"y":31590.810656481015},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"layersManager":{"type":"Layers Manager","name":"New Layers Manager","config":"{\n \"visibleLayers\": 0,\n \"panelLocation\": {\n \"upOrDown\": \"up\",\n \"leftOrRight\": \"left\"\n }\n}","layers":[{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"830c5295-25ca-4f08-bc7c-262be9e2fb17","savedPayload":{"position":{"x":44079.22692482198,"y":31836.109592766257},"targetPosition":{"x":43875.02284358463,"y":31767.22077825714},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Percentage Bandwidth","id":"9b5b1b81-c68c-45a5-8123-1a114a24b744"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"8aa6fde7-89cb-43af-bea1-149a0b94c29c","savedPayload":{"position":{"x":44017.101529873595,"y":31929.337889021248},"targetPosition":{"x":43875.02284358463,"y":31767.22077825714},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"RSI14","id":"71351f63-10b4-4f89-ac9f-a8380bb0b75e"}}}],"id":"2f754398-30ac-4afa-8c12-c37013b8a4da","savedPayload":{"position":{"x":43875.02284358463,"y":31767.22077825714},"targetPosition":{"x":43610.47458913771,"y":31590.810656481015},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"frame":{"position":{"x":300,"y":80},"width":150,"height":40,"radius":0}}},"id":"805c6659-38e2-4959-86d0-cbabc87a8184","savedPayload":{"position":{"x":44904.92390172229,"y":32160.646037965875},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Timeline Chart","name":"MACD","rateScale":{"type":"Rate Scale","name":"New Rate Scale","config":"{\n \"minValue\": -2,\n \"maxValue\": 2,\n \"autoMinScale\": true,\n \"autoMaxScale\": true\n}","id":"53e5ea3b-83b8-4460-ac02-c68e2f17c85f","savedPayload":{"position":{"x":43840.620290316496,"y":31789.82237029658},"targetPosition":{"x":43558.71007204624,"y":31694.11687469478},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"layersManager":{"type":"Layers Manager","name":"New Layers Manager","config":"{\n \"visibleLayers\": 0,\n \"panelLocation\": {\n \"upOrDown\": \"up\",\n \"leftOrRight\": \"left\"\n }\n}","layers":[{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"775d50c1-df4b-4d02-9da4-de31dd5fc006","savedPayload":{"position":{"x":43963.892899882354,"y":31948.760513223307},"targetPosition":{"x":43702.617792383055,"y":31853.05810689925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"Percentage Bandwidth","id":"9b5b1b81-c68c-45a5-8123-1a114a24b744"}}},{"type":"Layer","name":"","config":"{\n \"status\": \"off\",\n \"showPanels\": false\n}","id":"06f133c7-2bf0-4352-89e7-bd43dc74c3e7","savedPayload":{"position":{"x":43920.721667853606,"y":32029.92468150603},"targetPosition":{"x":43702.617792383055,"y":31853.05810689925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Product","name":"RSI14","id":"71351f63-10b4-4f89-ac9f-a8380bb0b75e"}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"ae91005d-2615-4b4e-bcd4-3fb25ef7f510","savedPayload":{"position":{"x":43853.974112885124,"y":32090.426818984488},"targetPosition":{"x":43702.617792383055,"y":31853.05810689925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Layer","name":"","config":"{ \n\"status\": \"off\"\n}","id":"1939dd65-d12b-436d-8c76-609fc1f776f4","savedPayload":{"position":{"x":43757.20500332351,"y":32127.063274152384},"targetPosition":{"x":43702.617792383055,"y":31853.05810689925},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"id":"68537c49-d84e-4843-9ee2-9aae3f9abef1","savedPayload":{"position":{"x":43767.25622614087,"y":31932.288004103884},"targetPosition":{"x":43558.71007204624,"y":31694.11687469478},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"frame":{"position":{"x":300,"y":80},"width":150,"height":40,"radius":0}}},"id":"35419f31-46aa-455e-b9bc-1f87a04e7903","savedPayload":{"position":{"x":44677.62962621081,"y":32221.44230376397},"targetPosition":{"x":44638.594406795266,"y":31620.301606823563},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"id":"a4a8b171-8b07-4895-8c25-cedd8fa9c957","savedPayload":{"position":{"x":44638.594406795266,"y":31620.301606823563},"targetPosition":{"x":44068.52094392708,"y":31426.836755586308},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""},"frame":{"position":{"x":-1305,"y":-15},"width":240,"height":112.375,"radius":0}}},"id":"e6469c64-26cb-4a30-951d-a68147cf1ba5","savedPayload":{"position":{"x":44068.52094392708,"y":31426.836755586308},"targetPosition":{"x":42931.61862042705,"y":31040.934806843637},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"templateTarget":{"type":"Template Target","name":"New Template Target","id":"c01a6962-8b0e-4b06-8705-8751660aabbf","savedPayload":{"position":{"x":43467.326225782956,"y":31320.33445797248},"targetPosition":{"x":42931.61862042705,"y":31040.934806843637},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Dashboard","name":"Super Action Generated","id":"64fa2a31-21ea-4b56-a625-dc4082876a89"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateStructure.timeMachines === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Structure must have a child Time Machine.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Dashboard') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Dashboard.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n let templateClone = clone(templateScript.templateStructure.timeMachines)\n target.timeMachines.push(templateClone)\n setup(templateClone, target)\n\n return templateClone\n }\n}","id":"968fd18b-2a1b-41ca-9317-23f301607857","savedPayload":{"position":{"x":43368.61546572378,"y":31458.862987994245},"targetPosition":{"x":42931.61862042705,"y":31040.934806843637},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"41c01e94-6c5c-4b71-9c70-8d962c86fec0","savedPayload":{"position":{"x":42931.61862042705,"y":31040.934806843637},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"/*\nMaster Script\n*/\nfunction newNewMasterScriptInstance() {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction, masterScript) {\n /* Validations */\n if (superAction.payload.parentNode.type !== 'Market') {\n superAction.payload.uiObject.setErrorMessage('Super Action Parent Node needs to be of type Market.')\n return\n }\n if (superAction.payload.parentNode.baseAsset === undefined) {\n superAction.payload.uiObject.setErrorMessage('Market Node needs to have a child Market Base Asset.')\n return\n }\n if (superAction.payload.parentNode.quotedAsset === undefined) {\n superAction.payload.uiObject.setErrorMessage('Market Node needs to have a child Market Quoted Asset.')\n return\n }\n if (superAction.payload.parentNode.baseAsset.payload.referenceParent === undefined) {\n superAction.payload.uiObject.setErrorMessage('Market Base Asset Node needs to reference an Asset.')\n return\n }\n if (superAction.payload.parentNode.quotedAsset.payload.referenceParent === undefined) {\n superAction.payload.uiObject.setErrorMessage('Market Quoted Asset Node needs to reference an Asset.')\n return\n }\n if (superAction.payload.parentNode.baseAsset.payload.referenceParent.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Asset Node needs to be a child of Exchange Assets.')\n return\n }\n if (superAction.payload.parentNode.quotedAsset.payload.referenceParent.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Asset Node needs to be a child of Exchange Assets.')\n return\n }\n if (superAction.payload.parentNode.baseAsset.payload.referenceParent.payload.parentNode.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Exchange Assets needs to be a child of an Exchange Node.')\n return\n }\n if (superAction.payload.parentNode.quotedAsset.payload.referenceParent.payload.parentNode.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Exchange Assets needs to be a child of an Exchange Node.')\n return\n }\n if (superAction.payload.parentNode.baseAsset.payload.referenceParent.payload.parentNode.payload.parentNode.id !== superAction.payload.parentNode.quotedAsset.payload.referenceParent.payload.parentNode.payload.parentNode.id) {\n superAction.payload.uiObject.setErrorMessage('Assets must be from the same Exchange.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Market needs to be a child of Exchange Markets.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Exchange Markets needs to be a child of an Exchange.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode.id !== superAction.payload.parentNode.baseAsset.payload.referenceParent.payload.parentNode.payload.parentNode.id) {\n superAction.payload.uiObject.setErrorMessage('Assets and Market must be defined at the same Exchange.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts === undefined) {\n superAction.payload.uiObject.setErrorMessage('Exchange needs to have a child Exchange Accounts.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts.length === 0) {\n superAction.payload.uiObject.setErrorMessage('Exchange Accounts to needs have a child User Account.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts[0].userKeys === undefined) {\n superAction.payload.uiObject.setErrorMessage('User Account needs to have a child User Keys.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode.exchangeAccounts.userAccounts[0].userKeys.keys.length === 0) {\n superAction.payload.uiObject.setErrorMessage('User Keys needs to have a child Exchange Account Key.')\n return\n }\n\n for (let i = 0; i < masterScript.templateScripts.length; i++) {\n let templateScript = masterScript.templateScripts[i]\n\n if (templateScript.javascriptCode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Script must have a child Javascript Code.')\n return\n }\n if (templateScript.templateStructure === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Script must have a child Template Structure.')\n return\n }\n if (templateScript.templateTarget === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Script must have a child Template Target.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent.')\n return\n }\n try {\n let templateScriptConstructor\n\n eval(templateScript.javascriptCode.code)\n\n let executionResult = true\n let templateScriptInstance = templateScriptConstructor()\n\n if (executionResult === true) {\n executionResult = templateScriptInstance.runValidations(superAction)\n }\n\n if (executionResult !== true) { return false }\n } catch (err) {\n console.log(err.stack)\n superAction.payload.uiObject.setErrorMessage(err.message)\n return false\n }\n }\n\n return true\n }\n\n function runScript(superAction, masterScript) {\n let market = superAction.payload.parentNode\n let exchange = superAction.payload.parentNode.payload.parentNode.payload.parentNode\n let key = exchange.exchangeAccounts.userAccounts[0].userKeys.keys[0]\n let marketDataProducts\n let backSessionReference\n let paperSessionReference\n let liveSessionReference\n let ForwardSessionReference\n let dataMiningTaskManagers = []\n let testingEnvironmentTaskManager\n let productionEnvironmentTaskManager\n let timeMachine\n\n for (let i = 0; i < masterScript.templateScripts.length; i++) {\n let templateScript = masterScript.templateScripts[i]\n\n try {\n let templateScriptConstructor\n\n eval(templateScript.javascriptCode.code)\n\n let executionResult = true\n let templateClone\n let templateScriptInstance = templateScriptConstructor()\n\n if (executionResult === true) {\n templateClone = templateScriptInstance.runScript(superAction, templateScript)\n }\n\n if (executionResult !== true) { return false }\n\n switch (templateClone.payload.parentNode.payload.parentNode.type) {\n case 'Data Mines Data': {\n marketDataProducts = templateClone\n break\n }\n case 'Trading Mines Data': {\n switch (templateClone.templateType) {\n case 'Backtesting Session': {\n backSessionReference = templateClone\n break\n }\n case 'Paper Trading Session': {\n paperSessionReference = templateClone\n break\n }\n case 'Live Trading Session': {\n liveSessionReference = templateClone\n break\n }\n case 'Forward Testing Session': {\n ForwardSessionReference = templateClone\n break\n }\n }\n break\n }\n case 'Data Mining': {\n dataMiningTaskManagers.push(templateClone)\n break\n }\n case 'Testing Environment': {\n testingEnvironmentTaskManager = templateClone\n break\n }\n case 'Production Environment': {\n productionEnvironmentTaskManager = templateClone\n break\n }\n case 'Charting Space': {\n timeMachine = templateClone\n break\n }\n }\n\n if (executionResult !== true) { return false }\n } catch (err) {\n console.log(err.stack)\n superAction.payload.uiObject.setErrorMessage(err.message)\n return false\n }\n }\n\n /* Here we will find the sessions within the tasks in order to put them as a reference of the Session Reference nodes we already have */\n let session\n session = findSession('Backtesting Session', testingEnvironmentTaskManager)\n backSessionReference.payload.referenceParent = session\n session = findSession('Paper Trading Session', testingEnvironmentTaskManager)\n paperSessionReference.payload.referenceParent = session\n session = findSession('Live Trading Session', productionEnvironmentTaskManager)\n liveSessionReference.payload.referenceParent = session\n session = findSession('Forward Testing Session', productionEnvironmentTaskManager)\n ForwardSessionReference.payload.referenceParent = session\n\n function findSession(sessionType, taskManager) {\n for (let i = 0; i < taskManager.tasks.length; i++) {\n let task = taskManager.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.session !== undefined) {\n if (process.session.type === sessionType) {\n return process.session\n }\n }\n }\n }\n }\n }\n }\n\n /* Here, we are going to connect the layers of the charts at the Time Machine */\n for (let i = 0; i < timeMachine.timelineCharts.length; i++) {\n let timelineChart = timeMachine.timelineCharts[i]\n switch (timelineChart.name) {\n case 'Indicators': {\n for (let j = 0; j < timelineChart.layersManager.layers.length; j++) {\n let layer = timelineChart.layersManager.layers[j]\n switch (j) {\n case 0: {\n let dataProduct = findDataProduct(marketDataProducts, 'Candles')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 1: {\n let dataProduct = findDataProduct(marketDataProducts, 'Bollinger Bands')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 2: {\n let dataProduct = findDataProduct(marketDataProducts, 'Resistances')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 3: {\n let dataProduct = findDataProduct(marketDataProducts, 'Supports')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 4: {\n let dataProduct = findDataProduct(marketDataProducts, 'Candles Channels')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 5: {\n let dataProduct = findDataProduct(marketDataProducts, 'Candles Channels Objects')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 6: {\n let dataProduct = findDataProduct(marketDataProducts, 'Bollinger Channels')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 7: {\n let dataProduct = findDataProduct(marketDataProducts, 'Bollinger Channels Objects')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 8: {\n let dataProduct = findDataProduct(marketDataProducts, 'Bollinger Sub-Channels')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 9: {\n let dataProduct = findDataProduct(marketDataProducts, 'Bollinger Sub-Channels Objects')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 10: {\n let dataProduct = findDataProduct(marketDataProducts, 'Popular SMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 11: {\n let dataProduct = findDataProduct(marketDataProducts, 'Base5 SMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 12: {\n let dataProduct = findDataProduct(marketDataProducts, 'Base6 SMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 13: {\n let dataProduct = findDataProduct(marketDataProducts, 'Base7 SMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 14: {\n let dataProduct = findDataProduct(marketDataProducts, 'Base11 SMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 15: {\n let dataProduct = findDataProduct(marketDataProducts, 'Popular EMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 16: {\n let dataProduct = findDataProduct(marketDataProducts, 'Base7 EMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 17: {\n let dataProduct = findDataProduct(marketDataProducts, 'Base11 EMAs')\n layer.payload.referenceParent = dataProduct\n break\n }\n }\n layer.payload.uiObject.physics()\n }\n break\n }\n case 'Volumes': {\n for (let j = 0; j < timelineChart.layersManager.layers.length; j++) {\n let layer = timelineChart.layersManager.layers[j]\n switch (j) {\n case 0: {\n let dataProduct = findDataProduct(marketDataProducts, 'Volumes')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 1: {\n let dataProduct = findDataProduct(marketDataProducts, 'Volume-Stairs')\n layer.payload.referenceParent = dataProduct\n break\n }\n }\n layer.payload.uiObject.physics()\n }\n break\n }\n case 'Oscilators': {\n for (let j = 0; j < timelineChart.layersManager.layers.length; j++) {\n let layer = timelineChart.layersManager.layers[j]\n switch (j) {\n case 0: {\n let dataProduct = findDataProduct(marketDataProducts, 'Percentage Bandwidth')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 1: {\n let dataProduct = findDataProduct(marketDataProducts, 'RSI14')\n layer.payload.referenceParent = dataProduct\n break\n }\n }\n layer.payload.uiObject.physics()\n }\n break\n }\n case 'MACD': {\n for (let j = 0; j < timelineChart.layersManager.layers.length; j++) {\n let layer = timelineChart.layersManager.layers[j]\n switch (j) {\n case 0: {\n let dataProduct = findDataProduct(marketDataProducts, 'MACD 122609')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 1: {\n let dataProduct = findDataProduct(marketDataProducts, 'MACD 031016')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 2: {\n let dataProduct = findDataProduct(marketDataProducts, 'MACD 081709')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 3: {\n let dataProduct = findDataProduct(marketDataProducts, 'MACD 245209')\n layer.payload.referenceParent = dataProduct\n break\n }\n }\n layer.payload.uiObject.physics()\n }\n break\n }\n case 'Backtesting': {\n setupSessionReference(timelineChart, backSessionReference)\n break\n }\n case 'Paper Trading': {\n setupSessionReference(timelineChart, paperSessionReference)\n break\n }\n case 'Live Trading': {\n setupSessionReference(timelineChart, liveSessionReference)\n break\n }\n case 'Forward Testing': {\n setupSessionReference(timelineChart, ForwardSessionReference)\n break\n }\n }\n }\n\n function findDataProduct(marketDataProducts, name) {\n for (let i = 0; i < marketDataProducts.dataProducts.length; i++) {\n let dataProduct = marketDataProducts.dataProducts[i]\n if (dataProduct.name === name) {\n return dataProduct\n }\n }\n }\n function setupSessionReference(timelineChart, sessionReference) {\n for (let j = 0; j < timelineChart.layersManager.layers.length; j++) {\n let layer = timelineChart.layersManager.layers[j]\n switch (j) {\n case 0: {\n let dataProduct = findDataProduct(sessionReference.marketDataProducts, 'Simulation')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 1: {\n let dataProduct = findDataProduct(sessionReference.marketDataProducts, 'Conditions')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 2: {\n let dataProduct = findDataProduct(sessionReference.marketDataProducts, 'Trades')\n layer.payload.referenceParent = dataProduct\n break\n }\n case 3: {\n let dataProduct = findDataProduct(sessionReference.marketDataProducts, 'Strategies')\n layer.payload.referenceParent = dataProduct\n break\n }\n }\n layer.payload.uiObject.physics()\n }\n }\n\n let exchangeAndMarket = superAction.payload.parentNode.payload.parentNode.payload.parentNode.name + ' ' + market.name\n timeMachine.name = exchangeAndMarket\n\n for (let i = 0; i < dataMiningTaskManagers.length; i++) {\n let dataMiningTaskManager = dataMiningTaskManagers[i]\n dataMiningTaskManager.name = dataMiningTaskManager.name + ' ' + market.name\n }\n\n testingEnvironmentTaskManager.name = testingEnvironmentTaskManager.name + ' ' + market.name\n productionEnvironmentTaskManager.name = productionEnvironmentTaskManager.name + ' ' + market.name\n return true\n }\n}\n/*\nEnd Manster Script\n*/","id":"d234c201-4b50-48c6-be9d-f3b141c8cc16","savedPayload":{"position":{"x":42315.33336502471,"y":30864.768546823092},"targetPosition":{"x":41890.13397926204,"y":30439.421640837994},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"95b24e48-3b10-47cb-b149-8667571f4a83","savedPayload":{"position":{"x":41890.13397926204,"y":30439.421640837994},"targetPosition":{"x":40847.785430914875,"y":31041.241941751345},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"o"}}},{"type":"Master Script","name":"Delete Market Dependencies ","templateScripts":[{"type":"Template Script","name":"Delete Testing Environment Task Managers","templateTarget":{"type":"Template Target","name":"New Template Target","id":"a97aa286-3199-4362-900a-65b604bf5b9a","savedPayload":{"position":{"x":41729.477786552314,"y":31046.11236071952},"targetPosition":{"x":41582.54274899229,"y":31205.193628384397},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Testing Environment","name":"New Testing Environment","id":"2ae685a1-25c6-4bd5-b559-d83e373e8d45"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Testing Environment') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mining.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n\n let nodesToDelete = []\n for (let e = 0; e < target.exchangeTasks.length; e++) {\n let exchangeTasks = target.exchangeTasks[e]\n if (exchangeTasks.payload.referenceParent !== undefined) {\n if (exchangeTasks.payload.referenceParent.id === exchange.id) {\n for (let k = 0; k < exchangeTasks.taskManagers.length; k++) {\n let taskManager = exchangeTasks.taskManagers[k]\n checkReferenceToMarket()\n function checkReferenceToMarket() {\n for (let i = 0; i < taskManager.tasks.length; i++) {\n let task = taskManager.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n if (process.marketReference.payload !== undefined) {\n if (process.marketReference.payload.referenceParent !== undefined) {\n if (process.marketReference.payload.referenceParent.id === market.id) {\n nodesToDelete.push(taskManager)\n return\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n if (exchangeTasks.taskManagers.length === nodesToDelete.length) {\n nodesToDelete.push(exchangeTasks)\n }\n }\n }\n }\n\n for (let i = 0; i < nodesToDelete.length; i++) {\n deleteNode(nodesToDelete[i])\n }\n }\n}","id":"9d020e32-68e5-4123-b0ad-cb443d778905","savedPayload":{"position":{"x":41785.524618173,"y":31129.822745374793},"targetPosition":{"x":41582.54274899229,"y":31205.193628384397},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"12eb790b-7f24-48bf-a4f0-34159f3d1863","savedPayload":{"position":{"x":41582.54274899229,"y":31205.193628384397},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Delete Production Environment Task Managers","templateTarget":{"type":"Template Target","name":"New Template Target","id":"2ef5ba0f-10f7-4af0-81c1-2e89b9aea583","savedPayload":{"position":{"x":41853.66308982842,"y":31264.801386694602},"targetPosition":{"x":41656.82837164478,"y":31355.520360853872},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Production Environment","name":"New Production Environment","id":"32656457-f603-416a-b805-546642094dc4"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Production Environment') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mining.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n\n let nodesToDelete = []\n for (let e = 0; e < target.exchangeTasks.length; e++) {\n let exchangeTasks = target.exchangeTasks[e]\n if (exchangeTasks.payload.referenceParent !== undefined) {\n if (exchangeTasks.payload.referenceParent.id === exchange.id) {\n for (let k = 0; k < exchangeTasks.taskManagers.length; k++) {\n let taskManager = exchangeTasks.taskManagers[k]\n checkReferenceToMarket()\n function checkReferenceToMarket() {\n for (let i = 0; i < taskManager.tasks.length; i++) {\n let task = taskManager.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n if (process.marketReference.payload !== undefined) {\n if (process.marketReference.payload.referenceParent !== undefined) {\n if (process.marketReference.payload.referenceParent.id === market.id) {\n nodesToDelete.push(taskManager)\n return\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n if (exchangeTasks.taskManagers.length === nodesToDelete.length) {\n nodesToDelete.push(exchangeTasks)\n }\n }\n }\n }\n\n for (let i = 0; i < nodesToDelete.length; i++) {\n deleteNode(nodesToDelete[i])\n }\n }\n}","id":"9f9515a8-2e47-4a6f-acc3-6e4e01a610b2","savedPayload":{"position":{"x":41873.37022951505,"y":31363.719899709926},"targetPosition":{"x":41656.82837164478,"y":31355.520360853872},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"29b330a4-d4f6-45ac-8b41-090740dc418f","savedPayload":{"position":{"x":41656.82837164478,"y":31355.520360853872},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Delete Data Mining Task Managers","templateTarget":{"type":"Template Target","name":"New Template Target","id":"c3417c9a-68b3-4d49-9514-0d2d30cea254","savedPayload":{"position":{"x":41884.48440596237,"y":31513.967037417144},"targetPosition":{"x":41667.84415563366,"y":31522.410064016763},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Mining","name":"New Data Mining","id":"7449a608-32ca-4285-94d1-c96791e2817f"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Data Mining') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mining.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n\n let nodesToDelete = []\n for (let e = 0; e < target.exchangeTasks.length; e++) {\n let exchangeTasks = target.exchangeTasks[e]\n if (exchangeTasks.payload.referenceParent !== undefined) {\n if (exchangeTasks.payload.referenceParent.id === exchange.id) {\n for (let k = 0; k < exchangeTasks.taskManagers.length; k++) {\n let taskManager = exchangeTasks.taskManagers[k]\n checkReferenceToMarket()\n function checkReferenceToMarket() {\n for (let i = 0; i < taskManager.tasks.length; i++) {\n let task = taskManager.tasks[i]\n if (task.bot !== undefined) {\n if (task.bot.processes !== undefined) {\n for (let j = 0; j < task.bot.processes.length; j++) {\n let process = task.bot.processes[j]\n if (process.marketReference !== undefined) {\n if (process.marketReference.payload !== undefined) {\n if (process.marketReference.payload.referenceParent !== undefined) {\n if (process.marketReference.payload.referenceParent.id === market.id) {\n nodesToDelete.push(taskManager)\n return\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n if (exchangeTasks.taskManagers.length === nodesToDelete.length) {\n nodesToDelete.push(exchangeTasks)\n }\n }\n }\n }\n\n for (let i = 0; i < nodesToDelete.length; i++) {\n deleteNode(nodesToDelete[i])\n }\n }\n}","id":"2d8e00e3-836a-426d-9f78-db3262bd7454","savedPayload":{"position":{"x":41864.71847634008,"y":31612.922947914863},"targetPosition":{"x":41667.84415563366,"y":31522.410064016763},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"e8e96f57-041e-4c0d-a2bf-5a8e444636b1","savedPayload":{"position":{"x":41667.84415563366,"y":31522.410064016763},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Delete Dashboard Time Machines","templateTarget":{"type":"Template Target","name":"New Template Target","id":"1cbc9a0e-d00e-4506-9a33-5fbcb3ed8900","savedPayload":{"position":{"x":41818.05356628126,"y":31755.042846552373},"targetPosition":{"x":41614.02097354356,"y":31680.97605960732},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Dashboard","name":"Super Action Generated","id":"64fa2a31-21ea-4b56-a625-dc4082876a89"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Dashboard') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Dashboard.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n\n let nodesToDelete = []\n for (let k = 0; k < target.timeMachines.length; k++) {\n let timeMachine = target.timeMachines[k]\n for (let i = 0; i < timeMachine.timelineCharts.length; i++) {\n let timelineChart = timeMachine.timelineCharts[i]\n if (timelineChart.layersManager !== undefined) {\n for (let j = 0; j < timelineChart.layersManager.layers.length; j++) {\n let layer = timelineChart.layersManager.layers[j]\n if (layer.payload.referenceParent !== undefined) {\n if (layer.payload.referenceParent.payload !== undefined) {\n if (layer.payload.referenceParent.payload.parentNode !== undefined) {\n if (layer.payload.referenceParent.payload.parentNode.payload !== undefined) {\n if (layer.payload.referenceParent.payload.parentNode.payload.referenceParent !== undefined) {\n if (layer.payload.referenceParent.payload.parentNode.payload.referenceParent.id === market.id) {\n \n nodesToDelete.push(timeMachine)\n \n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n for (let i = 0; i < nodesToDelete.length; i++) {\n deleteNode(nodesToDelete[i])\n }\n }\n}","id":"cf8f6b69-70f8-4035-801d-276c1e2d6b5d","savedPayload":{"position":{"x":41760.499195398515,"y":31841.017373526123},"targetPosition":{"x":41614.02097354356,"y":31680.97605960732},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"c78e76fc-311b-4ac7-942f-af9629ea8b76","savedPayload":{"position":{"x":41614.02097354356,"y":31680.97605960732},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Delete Market Data Products","templateTarget":{"type":"Template Target","name":"New Template Target","id":"2d36e591-3314-4a0c-b04d-6372e961959d","savedPayload":{"position":{"x":41662.60051045396,"y":31954.075050489493},"targetPosition":{"x":41503.55623477179,"y":31806.85723421229},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Data Mines Data","name":"New Data Mines Data","id":"bf04ccea-266d-4115-b50e-fefdf29b873a"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Data Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Data Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n\n let nodesToDelete = []\n for (let e = 0; e < target.exchangeDataProducts.length; e++) {\n let exchangeDataProducts = target.exchangeDataProducts[e]\n if (exchangeDataProducts.payload.referenceParent !== undefined) {\n if (exchangeDataProducts.payload.referenceParent.id === exchange.id) {\n for (let i = 0; i < exchangeDataProducts.marketDataProducts.length; i++) {\n let marketDataProducts = exchangeDataProducts.marketDataProducts[i]\n if (marketDataProducts.payload !== undefined) {\n if (marketDataProducts.payload.referenceParent !== undefined) {\n if (marketDataProducts.payload.referenceParent.id === market.id) {\n nodesToDelete.push(marketDataProducts)\n }\n }\n }\n }\n if (exchangeDataProducts.marketDataProducts.length === nodesToDelete.length) {\n nodesToDelete.push(exchangeDataProducts)\n }\n }\n }\n }\n\n for (let i = 0; i < nodesToDelete.length; i++) {\n deleteNode(nodesToDelete[i])\n }\n }\n}","id":"168466d3-1446-4b45-a647-ad962d1d5f2c","savedPayload":{"position":{"x":41578.48746317018,"y":32010.157336419907},"targetPosition":{"x":41503.55623477179,"y":31806.85723421229},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"f23edd8e-b0f9-4531-9550-69cdb0616bcc","savedPayload":{"position":{"x":41503.55623477179,"y":31806.85723421229},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}},{"type":"Template Script","name":"Delete Session References","templateTarget":{"type":"Template Target","name":"New Template Target","id":"4fe33613-3b67-4e0f-a4b4-6caa4e6dd163","savedPayload":{"position":{"x":41443.711470549744,"y":32077.739391028543},"targetPosition":{"x":41353.18735100165,"y":31880.891142726974},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":4,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false},"referenceParent":{"type":"Trading Mines Data","name":"New Trading Mines Data","id":"29ca14e5-dabe-470a-be64-ed7996bd1e55"}}},"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"templateScriptConstructor = function () {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction) {\n /* Validations */\n\n if (templateScript.templateTarget.payload.referenceParent.type !== 'Trading Mines Data') {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent of type Trading Mines Data.')\n return\n }\n return true\n }\n\n function runScript(superAction, templateScript) {\n let target = templateScript.templateTarget.payload.referenceParent\n\n let nodesToDelete = []\n for (let e = 0; e < target.exchangeTradingProducts.length; e++) {\n let exchangeTradingProducts = target.exchangeTradingProducts[e]\n if (exchangeTradingProducts.payload.referenceParent !== undefined) {\n if (exchangeTradingProducts.payload.referenceParent.id === exchange.id) {\n for (let i = 0; i < exchangeTradingProducts.sessionReferences.length; i++) {\n let sessionReference = exchangeTradingProducts.sessionReferences[i]\n let marketDataProducts = sessionReference.marketDataProducts\n if (marketDataProducts !== undefined) {\n if (marketDataProducts.payload !== undefined) {\n if (marketDataProducts.payload.referenceParent !== undefined) {\n if (marketDataProducts.payload.referenceParent.id === market.id) {\n nodesToDelete.push(sessionReference)\n }\n }\n }\n }\n }\n if (exchangeTradingProducts.sessionReferences.length === nodesToDelete.length) {\n nodesToDelete.push(exchangeTradingProducts)\n }\n }\n }\n }\n for (let i = 0; i < nodesToDelete.length; i++) {\n deleteNode(nodesToDelete[i])\n }\n }\n}","id":"f2cc52fd-cea8-437f-aa7d-a4d1100bb92e","savedPayload":{"position":{"x":41344.40711731363,"y":32097.37996261368},"targetPosition":{"x":41353.18735100165,"y":31880.891142726974},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":3,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"f8ffadd5-8eda-4c4e-be1c-c49b98045b42","savedPayload":{"position":{"x":41353.18735100165,"y":31880.891142726974},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"javascriptCode":{"type":"Javascript Code","name":"New Javascript Code","code":"/*\nMaster Script\n*/\nfunction newNewMasterScriptInstance() {\n let thisObject = {\n runValidations: runValidations,\n runScript: runScript\n }\n return thisObject\n\n function runValidations(superAction, masterScript) {\n /* Validations */\n if (superAction.payload.parentNode.type !== 'Market') {\n superAction.payload.uiObject.setErrorMessage('Super Action Parent Node needs to be of type Market.')\n return\n }\n for (let i = 0; i < masterScript.templateScripts.length; i++) {\n let templateScript = masterScript.templateScripts[i]\n\n if (superAction.payload.parentNode.type !== 'Market') {\n superAction.payload.uiObject.setErrorMessage('Super Action Parent Node needs to be of type Market.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Market needs to be a child of Exchange Markets.')\n return\n }\n if (superAction.payload.parentNode.payload.parentNode.payload.parentNode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Exchange Markets needs to be a child of an Exchange.')\n return\n }\n if (templateScript.javascriptCode === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Script must have a child Javascript Code.')\n return\n }\n if (templateScript.templateTarget === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Script must have a child Template Target.')\n return\n }\n if (templateScript.templateTarget.payload.referenceParent === undefined) {\n superAction.payload.uiObject.setErrorMessage('Template Target must have a Reference Parent.')\n return\n }\n try {\n let templateScriptConstructor\n\n eval(templateScript.javascriptCode.code)\n\n let executionResult = true\n let templateScriptInstance = templateScriptConstructor()\n\n if (executionResult === true) {\n executionResult = templateScriptInstance.runValidations(superAction)\n }\n\n if (executionResult !== true) { return false }\n } catch (err) {\n console.log(err.stack)\n superAction.payload.uiObject.setErrorMessage(err.message)\n return false\n }\n }\n\n return true\n }\n\n function runScript(superAction, masterScript) {\n let market = superAction.payload.parentNode\n let exchange = superAction.payload.parentNode.payload.parentNode.payload.parentNode\n\n for (let i = 0; i < masterScript.templateScripts.length; i++) {\n let templateScript = masterScript.templateScripts[i]\n\n try {\n let templateScriptConstructor\n\n eval(templateScript.javascriptCode.code)\n\n let executionResult = true\n let templateClone\n let templateScriptInstance = templateScriptConstructor()\n\n if (executionResult === true) {\n templateClone = templateScriptInstance.runScript(superAction, templateScript)\n }\n\n if (executionResult !== true) { return false }\n } catch (err) {\n console.log(err.stack)\n superAction.payload.uiObject.setErrorMessage(err.message)\n return false\n }\n }\n\n return true\n }\n}\n/*\nEnd Manster Script\n*/","id":"a9538a7f-32dd-4068-8af6-0f8a83f6f3c7","savedPayload":{"position":{"x":41186.32467320293,"y":31891.49809390885},"targetPosition":{"x":41242.73749253987,"y":31466.604853288718},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":2,"arrangementStyle":0},"uiObject":{}}},"id":"c25d0331-8ac0-4834-aa77-743487455d45","savedPayload":{"position":{"x":41890.17716491845,"y":31643.150249965292},"targetPosition":{"x":40847.785430914875,"y":31041.241941751345},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"id":"1dd2a75d-7d97-4994-8c95-b392d933b1c1","savedPayload":{"position":{"x":40847.785430914875,"y":31041.241941751345},"targetPosition":{"x":39643.041459281856,"y":31041.13836154292},"floatingObject":{"isPinned":true,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"S"}}},"id":"17b5ea06-62d8-4a79-b0ba-f9d3b997c17f","savedPayload":{"position":{"x":39643.041459281856,"y":31041.13836154292},"targetPosition":{"x":39643.041459281856,"y":31041.13836154292},"floatingObject":{"isPinned":true,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}} \ No newline at end of file +{"type":"Super Scripts","name":"Masters","config":"{ \n\"codeName\": \"Masters\"\n}","scriptsLibrary":{"type":"Scripts Library","name":"New Scripts Library","masterScripts":[],"id":"1dd2a75d-7d97-4994-8c95-b392d933b1c1","savedPayload":{"position":{"x":40191.05941020691,"y":31040.94023966275},"targetPosition":{"x":39643.041459281856,"y":31041.13836154292},"floatingObject":{"isPinned":true,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":"S"}}},"id":"17b5ea06-62d8-4a79-b0ba-f9d3b997c17f","savedPayload":{"position":{"x":39643.041459281856,"y":31041.13836154292},"targetPosition":{"x":39643.041459281856,"y":31041.13836154292},"floatingObject":{"isPinned":true,"isFrozen":false,"isCollapsed":true,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false,"shortcutKey":""}}} \ No newline at end of file