Charts Organized

This commit is contained in:
Luis Fernando Molina committed 2020-09-16 12:51:27 +02:00
1 parent c0e0be2ef7
commit 03f13a8e16
9 files changed
+69 -8

No files matched your search

+2
View File
@@ -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,
+16
View File
@@ -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)
}
@@ -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
/*
@@ -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
+3 -2
View File
@@ -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->' +
-2
View File
@@ -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() {
+3 -1
View File
@@ -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}
+42
View File
@@ -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
}
}
}
}
}
+1 -1
View File
@@ -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},Line truncated
{"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":""}}}