From f64044c5b884f6b1be8c758614d0e49e6ce5fa36 Mon Sep 17 00:00:00 2001 From: Luis Fernando Molina Date: Mon, 8 Feb 2021 14:58:56 +0100 Subject: [PATCH] Learning Engine minimun structure --- .../Learning-Engines/Low-Frequency.json | 2 +- Projects/Superalgos/Schemas/AppSchema.json | 220 ++++++++++++++++-- .../UI/Spaces/Docs-Space/SearchEngine.js | 12 +- 3 files changed, 206 insertions(+), 28 deletions(-) diff --git a/Projects/Superalgos/Plugins/Learning-Engines/Low-Frequency.json b/Projects/Superalgos/Plugins/Learning-Engines/Low-Frequency.json index debd87b6c..4f054957d 100644 --- a/Projects/Superalgos/Plugins/Learning-Engines/Low-Frequency.json +++ b/Projects/Superalgos/Plugins/Learning-Engines/Low-Frequency.json @@ -1 +1 @@ -{"type":"Learning Engine","name":"Low-Frequency","project":"Superalgos","id":"1b545b9a-9adf-4037-b72a-6f52e4cf6267","savedPayload":{"position":{"x":11138,"y":10795.442378864669},"targetPosition":{"x":11138,"y":10795.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":1,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}} \ No newline at end of file +{"type":"Learning Engine","name":"Low-Frequency","project":"Superalgos","learningCurrent":{"type":"Learning Current","name":"New Learning Current","project":"Superalgos","learningEpisode":{"type":"Learning Episode","name":"New Learning Episode","project":"Superalgos","serialNumber":{"type":"Serial Number","name":"New Serial Number","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"2cc4ea2e-0c49-4dc4-be14-5c37dba3d4a3","savedPayload":{"position":{"x":11579.353376181454,"y":11483.233023771927},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"identifier":{"type":"Identifier","name":"New Identifier","config":"{\n\"initialValue\": \"\"\n}","project":"Superalgos","id":"5e87e4cf-d3cf-4ca3-90d0-bcc215ff32df","savedPayload":{"position":{"x":11553.745789630078,"y":11567.649923428959},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"begin":{"type":"Begin","name":"New Begin","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"7073b390-c791-428b-b75d-11d7bef076ee","savedPayload":{"position":{"x":11512.161325536144,"y":11645.44898372349},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"end":{"type":"End","name":"New End","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"f5dc8eea-94d7-41d7-9c44-3b044fa5cbb7","savedPayload":{"position":{"x":11456.198051533946,"y":11713.640430398615},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"beginRate":{"type":"Begin Rate","name":"New Begin Rate","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"f36a352e-9711-490f-9020-84bf3731f93c","savedPayload":{"position":{"x":11388.006604858821,"y":11769.603704400815},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"endRate":{"type":"End Rate","name":"New End Rate","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"0cd1e3ea-f314-4777-9988-bbde66dd2688","savedPayload":{"position":{"x":11310.207544564291,"y":11811.188168494748},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"status":{"type":"Status","name":"New Status","config":"{\n\"initialValue\": \"Not Open\"\n}","project":"Superalgos","id":"1961b061-f041-494f-8c47-004c672c23f3","savedPayload":{"position":{"x":11225.790644907258,"y":11836.795755046123},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"exitType":{"type":"Exit Type","name":"New Exit Type","config":"{\n\"initialValue\": \"No Exit\"\n}","project":"Superalgos","id":"9ffc4653-3d13-4036-b8aa-98e34ea6e497","savedPayload":{"position":{"x":11138,"y":11845.442378864669},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"headOfTheMarket":{"type":"Head Of The Market","name":"New Head Of The Market","config":"{\n\"initialValue\": false\n}","project":"Superalgos","id":"dc3294b4-3754-4154-808a-6531410f6378","savedPayload":{"position":{"x":11050.209355092742,"y":11836.795755046123},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"processDate":{"type":"Process Date","name":"New Process Date","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"a009dbfb-9fce-4787-9461-dc63cb0cdf03","savedPayload":{"position":{"x":10965.79245543571,"y":11811.188168494748},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{}}},"learningEpisodeCounters":{"type":"Learning Episode Counters","name":"New Learning Episode Counters","project":"Superalgos","periods":{"type":"Periods","name":"New Periods","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"74d652d9-7439-4a8f-a66e-588f1cb24686","savedPayload":{"position":{"x":10975.784040048437,"y":12210.957080582268},"targetPosition":{"x":10887.993395141179,"y":11769.603704400814},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"hits":{"type":"Hits","name":"New Hits","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"85c3b8c7-45ed-4edb-9887-704f98a5936b","savedPayload":{"position":{"x":10637.986790282357,"y":12143.765029936958},"targetPosition":{"x":10887.993395141179,"y":11769.603704400814},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"fails":{"type":"Fails","name":"New Fails","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"63dba0bf-57a1-4b4b-9f59-9384bb5786b2","savedPayload":{"position":{"x":10446.640018959724,"y":11857.394349308071},"targetPosition":{"x":10887.993395141179,"y":11769.603704400814},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"userDefinedCounters":[],"id":"d4dd877b-f7b2-43b4-8da1-c733b60490bc","savedPayload":{"position":{"x":10887.993395141179,"y":11769.603704400814},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"learningEpisodeStatistics":{"type":"Learning Episode Statistics","name":"New Learning Episode Statistics","project":"Superalgos","userDefinedStatistics":[{"type":"User Defined Statistic","name":"New User Defined Statistic","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","formula":{"type":"Formula","name":"New Formula","code":"// Type your formula","project":"Superalgos","id":"9a435a42-569e-41da-b44b-7f526cedf1e2","savedPayload":{"position":{"x":10183.405845398163,"y":12350.036533466506},"targetPosition":{"x":10501.603896932109,"y":12031.83848193256},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"e64eb9f2-f221-4670-a8fc-f957e98c11e6","savedPayload":{"position":{"x":10501.603896932109,"y":12031.83848193256},"targetPosition":{"x":10819.801948466054,"y":11713.640430398615},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}}],"id":"a6562658-9ea6-4966-9c11-eb0e61c05738","savedPayload":{"position":{"x":10819.801948466054,"y":11713.640430398615},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"distanceToLearningEvent":{"type":"Distance To Learning Event","name":"New Distance To Learning Event","project":"Superalgos","id":"df0a5981-a8bc-41a9-a185-da0cf851ecc1","savedPayload":{"position":{"x":10763.838674463854,"y":11645.44898372349},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"candle":{"type":"Candle","name":"New Candle","project":"Superalgos","begin":{"type":"Begin","name":"New Begin","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"a084a254-689b-44d5-8dba-d23a7a34ece2","savedPayload":{"position":{"x":10722.254210369922,"y":12017.64992342896},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"end":{"type":"End","name":"New End","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"18e8077e-39f8-4160-80e5-a11367fc2763","savedPayload":{"position":{"x":10550.046665805632,"y":11983.395713059039},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"open":{"type":"Open","name":"New Open","project":"Superalgos","id":"13b92322-64e0-42ea-adb1-ec86c33bed20","savedPayload":{"position":{"x":10404.056158835976,"y":11885.847974962906},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"close":{"type":"Close","name":"New Close","project":"Superalgos","id":"c6573019-dd20-49bf-858b-a697cc607a53","savedPayload":{"position":{"x":10306.508420739843,"y":11739.857467993252},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"min":{"type":"Min","name":"New Min","project":"Superalgos","id":"3b69eda4-a6ef-4134-99be-7e839c8b91f1","savedPayload":{"position":{"x":10272.254210369922,"y":11567.64992342896},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"max":{"type":"Max","name":"New Max","project":"Superalgos","id":"881df28f-3b34-44f9-a4e4-c0ce8f745aaf","savedPayload":{"position":{"x":10306.508420739843,"y":11395.44237886467},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"index":{"type":"Index","name":"New Index","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"9c63040e-47b7-4152-8fca-1c6cb05eb951","savedPayload":{"position":{"x":10404.056158835974,"y":11249.451871895015},"targetPosition":{"x":10722.254210369922,"y":11567.64992342896},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"d2dbd259-087c-4a97-97fb-adca5644c50c","savedPayload":{"position":{"x":10722.254210369922,"y":11567.64992342896},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"cycle":{"type":"Cycle","name":"New Cycle","project":"Superalgos","begin":{"type":"Begin","name":"New Begin","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"3d206944-b1cd-4021-8a32-ce89090445e7","savedPayload":{"position":{"x":10508.249741926704,"y":11891.897451993214},"targetPosition":{"x":10696.646623818546,"y":11483.233023771927},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"end":{"type":"End","name":"New End","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"4242187f-af2d-4e67-9b39-1f43f85d46a4","savedPayload":{"position":{"x":10304.023420635787,"y":11703.112582445558},"targetPosition":{"x":10696.646623818546,"y":11483.233023771927},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"lastBegin":{"type":"Last Begin","name":"New Last Begin","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"1b537fe0-045f-4aeb-a94b-416cb38deedb","savedPayload":{"position":{"x":10249.76581818883,"y":11430.3411949159},"targetPosition":{"x":10696.646623818546,"y":11483.233023771927},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"lastEnd":{"type":"Last End","name":"New Last End","config":"{\n\"initialValue\": 0\n}","project":"Superalgos","id":"37f632a1-a7b2-48b7-90d1-9642c854bc14","savedPayload":{"position":{"x":10366.201494572488,"y":11177.772688282103},"targetPosition":{"x":10696.646623818546,"y":11483.233023771927},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{}}},"id":"94de14c9-e7a2-48d8-b558-c1753a6708d9","savedPayload":{"position":{"x":10696.646623818546,"y":11483.233023771927},"targetPosition":{"x":11138,"y":11395.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":4,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"3d2239d7-fc42-47c7-a71c-08f8dcd4a1e7","savedPayload":{"position":{"x":11138,"y":11395.442378864669},"targetPosition":{"x":11138,"y":11095.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"dcfb0855-7cb2-402f-a960-91abe3eaec2c","savedPayload":{"position":{"x":11138,"y":11095.442378864669},"targetPosition":{"x":11138,"y":10795.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":false,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}},"id":"1b545b9a-9adf-4037-b72a-6f52e4cf6267","savedPayload":{"position":{"x":11138,"y":10795.442378864669},"targetPosition":{"x":11138,"y":10795.442378864669},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"angleToParent":2,"distanceToParent":3,"arrangementStyle":0},"uiObject":{"isRunning":false}}} \ No newline at end of file diff --git a/Projects/Superalgos/Schemas/AppSchema.json b/Projects/Superalgos/Schemas/AppSchema.json index 22c179318..f672db4f3 100644 --- a/Projects/Superalgos/Schemas/AppSchema.json +++ b/Projects/Superalgos/Schemas/AppSchema.json @@ -112,6 +112,12 @@ "relatedUiObject": "Design Space", "actionFunction": "payload.executeAction" }, + { + "action": "Add UI Object", + "label": "Add Docs Space", + "relatedUiObject": "Docs Space", + "actionFunction": "payload.executeAction" + }, { "action": "Delete UI Object", "askConfirmation": true, @@ -3210,33 +3216,21 @@ "autoAdd": true }, { - "name": "episodeBaseAsset", + "name": "learningEpisodeCounters", "type": "node", - "childType": "Episode Base Asset", + "childType": "Learning Episode Counters", "autoAdd": true }, { - "name": "episodeQuotedAsset", + "name": "learningEpisodeStatistics", "type": "node", - "childType": "Episode Quoted Asset", + "childType": "Learning Episode Statistics", "autoAdd": true }, { - "name": "tradingEpisodeCounters", + "name": "distanceToLearningEvent", "type": "node", - "childType": "Trading Episode Counters", - "autoAdd": true - }, - { - "name": "tradingEpisodeStatistics", - "type": "node", - "childType": "Trading Episode Statistics", - "autoAdd": true - }, - { - "name": "distanceToTradingEvent", - "type": "node", - "childType": "Distance To Trading Event", + "childType": "Distance To Learning Event", "autoAdd": true }, { @@ -3460,6 +3454,65 @@ } ] }, + { + "type": "Learning Episode Counters", + "menuItems": [ + { + "action": "Add Missing Children", + "label": "Add Missing Children", + "relatedUiObject": "Learning Parameters", + "actionFunction": "payload.executeAction" + }, + { + "action": "Add UI Object", + "label": "Add User Defined Counter", + "relatedUiObject": "User Defined Counter", + "actionFunction": "payload.executeAction" + }, + { + "action": "Delete UI Object", + "askConfirmation": true, + "confirmationLabel": "Confirm to Delete", + "label": "Delete", + "iconPathOn": "delete-entity", + "iconPathOff": "delete-entity", + "actionFunction": "payload.executeAction" + } + ], + "addLeftIcons": true, + "level": 3, + "attachingRules": { + "compatibleTypes": "->Learning Episode->" + }, + "propertyNameAtParent": "learningEpisodeCounters", + "childrenNodesProperties": [ + { + "name": "periods", + "type": "node", + "childType": "Periods", + "autoAdd": true + }, + { + "name": "hits", + "type": "node", + "childType": "Hits", + "autoAdd": true + }, + { + "name": "fails", + "type": "node", + "childType": "Fails", + "autoAdd": true + }, + { + "name": "userDefinedCounters", + "type": "array", + "childType": "User Defined Counter", + "autoAdd": false + } + ], + "icon": "bitcoin" + }, { "type": "Position Counters", "menuItems": [ @@ -3816,7 +3869,7 @@ "addLeftIcons": true, "level": 3, "attachingRules": { - "compatibleTypes": "->Trading Episode Counters->Episode Base Asset->Episode Quoted Asset->" + "compatibleTypes": "->Trading Episode Counters->Learning Episode Counters->Episode Base Asset->Episode Quoted Asset->" }, "propertyNameAtParent": "fails" }, @@ -3870,7 +3923,7 @@ "addLeftIcons": true, "level": 3, "attachingRules": { - "compatibleTypes": "->Trading Episode Counters->Episode Base Asset->Episode Quoted Asset->" + "compatibleTypes": "->Trading Episode Counters->Learning Episode Counters->Episode Base Asset->Episode Quoted Asset->" }, "propertyNameAtParent": "hits" }, @@ -3924,7 +3977,7 @@ "addLeftIcons": true, "level": 3, "attachingRules": { - "compatibleTypes": "->Trading Episode Counters->Position Counters->Strategy Counters->Order Counters->" + "compatibleTypes": "->Trading Episode Counters->Learning Episode Counters->Position Counters->Strategy Counters->Order Counters->" }, "propertyNameAtParent": "periods" }, @@ -3978,10 +4031,51 @@ "addLeftIcons": true, "level": 3, "attachingRules": { - "compatibleTypes": "->Trading Episode Counters->Position Counters->Strategy Counters->" + "compatibleTypes": "->Trading Episode Counters->Learning Episode Counters->Position Counters->Strategy Counters->" }, "propertyNameAtParent": "userDefinedCounters" }, + { + "type": "Learning Episode Statistics", + "menuItems": [ + { + "action": "Add Missing Children", + "label": "Add Missing Children", + "relatedUiObject": "Learning Parameters", + "actionFunction": "payload.executeAction" + }, + { + "action": "Add UI Object", + "label": "Add User Defined Statistic", + "relatedUiObject": "User Defined Statistic", + "actionFunction": "payload.executeAction" + }, + { + "action": "Delete UI Object", + "askConfirmation": true, + "confirmationLabel": "Confirm to Delete", + "label": "Delete", + "iconPathOn": "delete-entity", + "iconPathOff": "delete-entity", + "actionFunction": "payload.executeAction" + } + ], + "addLeftIcons": true, + "level": 3, + "attachingRules": { + "compatibleTypes": "->Learning Episode->" + }, + "propertyNameAtParent": "learningEpisodeStatistics", + "childrenNodesProperties": [ + { + "name": "userDefinedStatistics", + "type": "array", + "childType": "User Defined Statistic", + "autoAdd": true + } + ], + "icon": "bitcoin" + }, { "type": "Trading Episode Statistics", "menuItems": [ @@ -4052,6 +4146,34 @@ } ] }, + { + "type": "Distance To Learning Event", + "menuItems": [ + { + "action": "Add Missing Children", + "label": "Add Missing Children", + "relatedUiObject": "Learning Parameters", + "actionFunction": "payload.executeAction" + }, + { + "action": "Delete UI Object", + "askConfirmation": true, + "confirmationLabel": "Confirm to Delete", + "label": "Delete", + "iconPathOn": "delete-entity", + "iconPathOff": "delete-entity", + "actionFunction": "payload.executeAction" + } + ], + "addLeftIcons": true, + "level": 3, + "attachingRules": { + "compatibleTypes": "->Learning Episode->" + }, + "propertyNameAtParent": "distanceToLearningEvent", + "childrenNodesProperties": [], + "icon": "bitcoin" + }, { "type": "Stop Loss", "menuItems": [ @@ -5300,7 +5422,7 @@ "addLeftIcons": true, "level": 3, "attachingRules": { - "compatibleTypes": "->Trading Episode Statistics->Position Statistics->" + "compatibleTypes": "->Trading Episode Statistics->Learning Episode Statistics->Position Statistics->" }, "propertyNameAtParent": "userDefinedStatistics", "childrenNodesProperties": [ @@ -15089,6 +15211,54 @@ "propertyNameAtParent": "keys", "isPersonalData": true }, + { + "type": "Docs Space", + "menuItems": [ + { + "action": "Add UI Object", + "disableIfPropertyIsDefined": true, + "propertyToCheckFor": "spaceStyle", + "label": "Add Space Style", + "relatedUiObject": "Space Style", + "actionFunction": "payload.executeAction" + }, + { + "action": "Add UI Object", + "disableIfPropertyIsDefined": true, + "propertyToCheckFor": "spaceSettings", + "label": "Add Space Settings", + "relatedUiObject": "Space Settings", + "actionFunction": "payload.executeAction" + }, + { + "action": "Delete UI Object", + "askConfirmation": true, + "confirmationLabel": "Confirm to Delete", + "actionFunction": "payload.executeAction", + "label": "Delete", + "iconPathOn": "delete-entity", + "iconPathOff": "delete-entity" + } + ], + "isHierarchyHead": true, + "addLeftIcons": true, + "level": 0, + "childrenNodesProperties": [ + { + "name": "spaceStyle", + "type": "node", + "childType": "Space Style", + "autoAdd": true + }, + { + "name": "spaceSettings", + "type": "node", + "childType": "Space Settings", + "autoAdd": true + } + ], + "icon": "bitcoin" + }, { "type": "Design Space", "menuItems": [ @@ -15141,7 +15311,7 @@ "level": 4, "propertyNameAtParent": "spaceStyle", "attachingRules": { - "compatibleTypes": "->Charting Space->Design Space->" + "compatibleTypes": "->Charting Space->Design Space->Docs Space->" }, "editors": { "config": true @@ -15174,7 +15344,7 @@ "level": 4, "propertyNameAtParent": "spaceSettings", "attachingRules": { - "compatibleTypes": "->Charting Space->Design Space->" + "compatibleTypes": "->Charting Space->Design Space->Docs Space->" }, "editors": { "config": true diff --git a/Projects/Superalgos/UI/Spaces/Docs-Space/SearchEngine.js b/Projects/Superalgos/UI/Spaces/Docs-Space/SearchEngine.js index 7e0dfd1d5..f93b642f4 100644 --- a/Projects/Superalgos/UI/Spaces/Docs-Space/SearchEngine.js +++ b/Projects/Superalgos/UI/Spaces/Docs-Space/SearchEngine.js @@ -17,9 +17,17 @@ function newSuperalgosDocsSearchEngine() { } function setUpSearchEngine(callbackFunction) { - //callbackFunction() - //return + let docsSpaceNode = UI.projects.superalgos.spaces.designSpace.workspace.getHierarchyHeadsByType('Docs Space') + if (docsSpaceNode === undefined) { return } + if (docsSpaceNode.spaceSettings === undefined) { return } + let indexContent = UI.projects.superalgos.utilities.nodeConfig.loadPropertyFromNodeConfig(docsSpaceNode.spaceSettings.payload, 'indexContent') + + if (indexContent === false) { + callbackFunction() + return + } + let totalAsyncCallsMade = 0 let totalAsyncCallsFinished = 0