diff --git a/Projects/Superalgos/GIFs/Docs/design-space/Thumbs.db b/Projects/Superalgos/GIFs/Docs/design-space/Thumbs.db
index e92d7696e..322d973b9 100644
Binary files a/Projects/Superalgos/GIFs/Docs/design-space/Thumbs.db and b/Projects/Superalgos/GIFs/Docs/design-space/Thumbs.db differ
diff --git a/Projects/Superalgos/GIFs/Docs/design-space/backups-01.gif b/Projects/Superalgos/GIFs/Docs/design-space/backups-01.gif
index bdae841ea..4fdc6ea29 100644
Binary files a/Projects/Superalgos/GIFs/Docs/design-space/backups-01.gif and b/Projects/Superalgos/GIFs/Docs/design-space/backups-01.gif differ
diff --git a/Projects/Superalgos/GIFs/Docs/design-space/backups-02.gif b/Projects/Superalgos/GIFs/Docs/design-space/backups-02.gif
index bca3454f0..55786fadd 100644
Binary files a/Projects/Superalgos/GIFs/Docs/design-space/backups-02.gif and b/Projects/Superalgos/GIFs/Docs/design-space/backups-02.gif differ
diff --git a/Projects/Superalgos/GIFs/Docs/design-space/backups-03.gif b/Projects/Superalgos/GIFs/Docs/design-space/backups-03.gif
index af385d904..5cb568f06 100644
Binary files a/Projects/Superalgos/GIFs/Docs/design-space/backups-03.gif and b/Projects/Superalgos/GIFs/Docs/design-space/backups-03.gif differ
diff --git a/Projects/Superalgos/GIFs/Docs/design-space/clones-01.gif b/Projects/Superalgos/GIFs/Docs/design-space/clones-01.gif
index 2bc905a1f..4a5c56c3c 100644
Binary files a/Projects/Superalgos/GIFs/Docs/design-space/clones-01.gif and b/Projects/Superalgos/GIFs/Docs/design-space/clones-01.gif differ
diff --git a/Projects/Superalgos/GIFs/Docs/design-space/clones-02.gif b/Projects/Superalgos/GIFs/Docs/design-space/clones-02.gif
index e963d51fe..9d2c71826 100644
Binary files a/Projects/Superalgos/GIFs/Docs/design-space/clones-02.gif and b/Projects/Superalgos/GIFs/Docs/design-space/clones-02.gif differ
diff --git a/Projects/Superalgos/GIFs/Docs/design-space/shapes-node-references.gif b/Projects/Superalgos/GIFs/Docs/design-space/shapes-node-references.gif
new file mode 100644
index 000000000..36e096b04
Binary files /dev/null and b/Projects/Superalgos/GIFs/Docs/design-space/shapes-node-references.gif differ
diff --git a/Projects/Superalgos/Icons/Thumbs.db b/Projects/Superalgos/Icons/Thumbs.db
index 1d6084f5a..9d05c308e 100644
Binary files a/Projects/Superalgos/Icons/Thumbs.db and b/Projects/Superalgos/Icons/Thumbs.db differ
diff --git a/Projects/Superalgos/PNGs/Docs/charts/Thumbs.db b/Projects/Superalgos/PNGs/Docs/charts/Thumbs.db
index 1981778b1..623ea54c9 100644
Binary files a/Projects/Superalgos/PNGs/Docs/charts/Thumbs.db and b/Projects/Superalgos/PNGs/Docs/charts/Thumbs.db differ
diff --git a/Projects/Superalgos/Schemas/Docs-Concepts/references.json b/Projects/Superalgos/Schemas/Docs-Concepts/references.json
new file mode 100644
index 000000000..e30f9565c
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Concepts/references.json
@@ -0,0 +1,12 @@
+{
+ "type": "References",
+ "definition": {
+ "text": "Write the definition for this Concept."
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "Left click and select the pencil button to enter edit mode."
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/contributing-to-superalgos-002-how-to-contribute-icons.json b/Projects/Superalgos/Schemas/Docs-Topics/contributing-to-superalgos-002-how-to-contribute-icons.json
index b5ae51307..c03848649 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/contributing-to-superalgos-002-how-to-contribute-icons.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/contributing-to-superalgos-002-how-to-contribute-icons.json
@@ -483,7 +483,32 @@
},
{
"style": "Text",
- "text": "Files inherit the name of the node, asset, exchange, or whatever the icon represents, and are named in lower case, each word separated by a hyphen, and with a lower-case extension. For example, the PNG file for the Initial Take Profit node is initial-take-profit.png."
+ "text": "Files inherit the name of the node, asset, exchange, or whatever the icon represents, and are named in lower case, each word separated by a hyphen, and with a lower-case extension. ",
+ "updated": 1615462236475
+ },
+ {
+ "style": "Text",
+ "text": "For example:",
+ "updated": 1615462266490
+ },
+ {
+ "style": "List",
+ "text": "In the case of nodes, the PNG file for the Managed Take Profit node is managed-take-profit.png",
+ "updated": 1615462396196
+ },
+ {
+ "style": "List",
+ "text": "In the case of assets, the name of the file must is the literal name of the asset. For instance, for Bitcoin, it is bitcoin.png; for Tether it is tether.png; and so on...",
+ "updated": 1615462488610
+ },
+ {
+ "style": "List",
+ "text": "In the case of an exchange, again, the literal name of the exchange is used, as it is listed in the CCXT library. for instance, Binance is binance.png.",
+ "updated": 1615462532995
+ },
+ {
+ "style": "Text",
+ "text": ""
}
]
}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/design-space-003-nodes-menu.json b/Projects/Superalgos/Schemas/Docs-Topics/design-space-003-nodes-menu.json
index 88a3880a3..69a49d1b6 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/design-space-003-nodes-menu.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/design-space-003-nodes-menu.json
@@ -18,15 +18,8 @@
},
{
"style": "Text",
- "text": "The design space functions under the paradigm of a self-organizing workspace in which nodes tend to find their place guided by certain laws of physics, and constrained by their chain relationships."
- },
- {
- "style": "Text",
- "text": "This self-organizing paradigm saves users the effort of maintaining the arrangement of nodes in a logical manner, in particular when manipulating or creating new nodes."
- },
- {
- "style": "Text",
- "text": "However, there will be times in which you will want to override this self-organizing nature. The following menu options are tools that will help you manipulate the arrangement of nodes, overriding the physics that affect their floating nature."
+ "text": "The design space functions under the paradigm of a self-organizing workspace in which nodes tend to find their place guided by certain arrangement properties that you may control from the node's menu.",
+ "updated": 1615313209746
},
{
"style": "Subtitle",
@@ -134,10 +127,25 @@
"updated": 1610041765847
},
{
- "style": "Subtitle",
+ "style": "Anchor",
"text": "Arrangement Style",
"updated": 1610041884085
},
+ {
+ "style": "Subtitle",
+ "text": "Arrangement Style",
+ "updated": 1615491355364
+ },
+ {
+ "style": "Text",
+ "text": "The following options affect how a node is arranged around or in relation to its parent.",
+ "updated": 1615491622552
+ },
+ {
+ "style": "Important",
+ "text": "The current implementation of this feature is not optimal, and the behavior of some of these options is hard to predict. If you are a developer, this may be a good opportunity to iterate on the existing code and take this feature to a more usable state.",
+ "updated": 1615491609266
+ },
{
"style": "Include",
"text": "Superalgos->Concept->Set Node Arrangement to Concave->Definition",
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/how-to-001-detach-and-attach-nodes.json b/Projects/Superalgos/Schemas/Docs-Topics/how-to-001-detach-and-attach-nodes.json
index 2979bf659..d684849c5 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/how-to-001-detach-and-attach-nodes.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/how-to-001-detach-and-attach-nodes.json
@@ -3,8 +3,8 @@
"pageNumber": "1",
"type": "Detach and Attach Nodes",
"definition": {
- "text": "To detach a node, click on the detach button on the node's menu. To attach a node, right-click it and drag it closer to the node you wish to attach it to. Release the right-click when the target node is highlighted.",
- "updated": 1609948586650
+ "text": "To detach a node, click on the detach button on the node's menu. To attach a node, right-click the node and drag it closer to the node you wish to attach it to. Release the right-click when the target node is highlighted.",
+ "updated": 1615545397469
},
"paragraphs": [
{
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/introduction-007-references.json b/Projects/Superalgos/Schemas/Docs-Topics/introduction-007-references.json
index 9eb15c375..47c81d420 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/introduction-007-references.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/introduction-007-references.json
@@ -9,8 +9,7 @@
"paragraphs": [
{
"style": "Title",
- "text": "Direction",
- "updated": 1609950210690
+ "text": "Direction"
},
{
"style": "Text",
@@ -18,7 +17,12 @@
},
{
"style": "Text",
- "text": "For example, a session establishes an outgoing reference with a trading system. This allows the session to access the information within the whole trading system hierarchy, including strategies. At the trading system level, the same reference is viewed as an incoming reference."
+ "text": "For example, a Backtesting Session establishes an outgoing reference with a Trading System. This allows the session to access the information within the whole trading system hierarchy, including strategies. At the trading system level, the same reference is viewed as an incoming reference.",
+ "updated": 1615795085518
+ },
+ {
+ "style": "Note",
+ "text": "A node may produce only one outgoing reference, however, it may take several incoming references."
},
{
"style": "Title",
@@ -30,11 +34,18 @@
},
{
"style": "Text",
- "text": "Examples of internal references may be found in the data mine and crypto ecosystem hierarchies. For example, let’s briefly look into one such case within a plotter module:"
+ "text": "Examples of internal references may be found in the Data Mine and Crypto Ecosystem hierarchies. For example, let’s briefly look into one such case within a Plotter Module.",
+ "updated": 1615795128743
},
{
"style": "Text",
- "text": "The capture below shows the shapes node and several offspring nodes: on one hand, several polygons; on the other hand, the chart points node."
+ "text": "The capture below shows the Shapes node and several offspring nodes: on one hand, several Polygon nodes; on the other hand, the Chart Points node.",
+ "updated": 1615795168459
+ },
+ {
+ "style": "Gif",
+ "text": "GIFs/Superalgos/Docs/design-space/shapes-node-references.gif",
+ "updated": 1615796201734
},
{
"style": "Text",
@@ -42,12 +53,32 @@
},
{
"style": "Text",
- "text": "This means that the node shapes feature several internal references."
+ "text": "This means that the node Shapes feature several internal references.",
+ "updated": 1615796711778
},
{
"style": "Note",
- "text": " The backup, clone and share operations make different uses of the properties of references. We will cover the three of them extensively so that you may make the most of these features.",
- "updated": 1609950276151
+ "text": "The backup, clone and share operations make different uses of the properties of references. We will cover the three of them extensively so that you may make the most of these features.",
+ "updated": 1615796558622
+ },
+ {
+ "style": "Title",
+ "text": "Graphical Representation",
+ "updated": 1615796579270
+ },
+ {
+ "style": "Text",
+ "text": "References are graphically represented with faint grey dotted lines, but they are not visible by default. References become visible when you hover the mouse pointer on a node that has a reference, or when activating the display of all references with the following key combination: ",
+ "updated": 1615827008604
+ },
+ {
+ "style": "Text",
+ "text": "Ctrl + Shift + Alt + Key-R"
+ },
+ {
+ "style": "Note",
+ "text": "For references to be visible, both nodes involved in the reference must be visible.",
+ "updated": 1615796621593
},
{
"style": "Anchor",
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-001-backups.json b/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-001-backups.json
index 5f55de85f..4a4179904 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-001-backups.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-001-backups.json
@@ -14,19 +14,23 @@
},
{
"style": "Text",
- "text": "When you back up a single node, a structure of nodes, a complete hierarchy or even the workspace, all existing references are stored in the resulting JSON file."
+ "text": "When you back up a Node, a structure of nodes, a complete hierarchy, or even the Workspace, all existing references are stored in the resulting JSON file.",
+ "updated": 1615823255327
},
{
"style": "Text",
- "text": "When you restore a workspace backup, the current workspace is discarded entirely and replaced with the backup. Now, let’s see what happens when you restore anything other than a workspace, that is, any of the data structures contained in the workspace."
+ "text": "When you restore a workspace backup, the current workspace is replaced with the backup.",
+ "updated": 1615820832685
},
{
"style": "Text",
- "text": "In particular, what we want to analyze is what happens with each type of reference that may be present in the structure."
+ "text": "Now, let’s see what happens when you restore anything other than a workspace, that is, any of the data structures contained in the workspace. What we want to analyze is what happens with references that may be present in the structure, in particular, with the different types of references.",
+ "updated": 1615820914384
},
{
- "style": "Text",
- "text": "What happens with each type of reference when the back up is restored varies depending on one factor: the original structure is present in the workspace, or instead, it has been deleted prior to restoring the backup."
+ "style": "Success",
+ "text": "When a backup is restored, what happens with each type of reference varies depending on one factor: Is the original structure present in the workspace? Or has the structure been deleted before restoring the backup?",
+ "updated": 1615823276285
},
{
"style": "Title",
@@ -34,11 +38,13 @@
},
{
"style": "Callout",
- "text": "Outgoing references are kept no matter if the original structure of nodes still exists or not."
+ "text": "Outgoing references are kept intact no matter if the original structure of nodes still exists or not.",
+ "updated": 1615821071450
},
{
"style": "Text",
- "text": "For example, in a task set up for running a testing session, the trading bot process instance references the trading bot Multi-Period process, and the session references a trading sytem."
+ "text": "For example, in a Task set up to run a Backtesting Session, the Trading Process Instance references the Trading Bot Multi-Period process, the Trading System Reference references a Trading System, and the Trading Engine Reference references the Trading Engine. These are all outgoing references relative to the structure of nodes that make up a Task.",
+ "updated": 1615823380296
},
{
"style": "Gif",
@@ -47,11 +53,13 @@
},
{
"style": "Text",
- "text": "As the capture above shows, when restoring the backup of a task, both outgoing references are maintained, even when the original task has not been deleted."
+ "text": "As the capture above shows, when restoring the backup of a Task, the three outgoing references are maintained, even when the original task has not been deleted.",
+ "updated": 1615821379213
},
{
- "style": "Text",
- "text": "This means that restoring a back up is a viable way to duplicate structures of nodes with outgoing references when you expect outgoing references to be preserved."
+ "style": "Success",
+ "text": "This means that restoring a backup is a viable way to duplicate structures of nodes with outgoing references when you expect outgoing references to be preserved.",
+ "updated": 1615821244593
},
{
"style": "Title",
@@ -63,7 +71,8 @@
},
{
"style": "Text",
- "text": "Let’s take a trading system as an example. Trading systems usually have several incoming references originating at different testing and live trading sessions."
+ "text": "Let’s take a Trading System as an example. Trading systems usually have several incoming references originating at different testing and live trading sessions.",
+ "updated": 1615821415989
},
{
"style": "Gif",
@@ -72,11 +81,13 @@
},
{
"style": "Text",
- "text": "The capture above shows that restoring a backup of a trading system when the orginal definition is still in the workspace causes the incoming references to be lost."
+ "text": "The capture above shows that restoring a backup of a trading system when the original definition is still in the workspace causes the incoming references to be lost. This is because the backup is restored with new IDs on each node.",
+ "updated": 1615822161951
},
{
"style": "Text",
- "text": "However, as the capture below shows, if the original structure of nodes is deleted before the backup is restored, then the incoming references are restored as well."
+ "text": "However, as the capture below shows, if the original structure of nodes is deleted before the backup is restored, then the incoming references are restored as well. This is because deleting the original structure releases the IDs of the nodes involved and allows recreating the structure with the same IDs each of the nodes used to have.",
+ "updated": 1615822180175
},
{
"style": "Gif",
@@ -89,11 +100,13 @@
},
{
"style": "Text",
- "text": "Internal references are kept internally only when the original structure of nodes is deleted before restoring the backup. If the original structure of nodes is present, then the references will point to the original nodes on the original structure of nodes."
+ "text": "Internal references remain to be internal references only when the original structure of nodes is deleted before restoring the backup. If the original structure of nodes is present, then the references will point to the original nodes on the original structure of nodes.",
+ "updated": 1615822737609
},
{
"style": "Text",
- "text": "Let’s see what happens when we restore a backup of a shapes node without deleting the original node first:"
+ "text": "Let’s see what happens when we restore a backup of a Shapes node without deleting the original node first:",
+ "updated": 1615822610298
},
{
"style": "Gif",
@@ -102,7 +115,8 @@
},
{
"style": "Text",
- "text": "As expected, the references from vertices in the restored backup do not point to the points in the same structure, but instead point to the original points in the original strucutre."
+ "text": "As expected, the references from vertices in the restored backup do not point to the points in the same structure, but instead, point to the original points in the original structure.",
+ "updated": 1615823436326
},
{
"style": "Text",
@@ -113,6 +127,11 @@
"text": "GIFs/Superalgos/Docs/design-space/backups-05.gif",
"updated": 1611490016934
},
+ {
+ "style": "Success",
+ "text": "To understand this behavior you must consider —again— what happens with the IDs of the nodes involved! In the first case, when you delete the structure of nodes before the backup is restored, the IDs are freed so that when the backup is restored, the nodes may be restored with the same IDs they used to have. This allows for the references to be kept as they used to be. In the second case, the IDs are already taken and the nodes are created with new IDs. This results in the references pointing to the original nodes, instead of the ones that were restored from the backup.",
+ "updated": 1615823179782
+ },
{
"style": "Title",
"text": "Conclusion"
@@ -123,8 +142,8 @@
},
{
"style": "Text",
- "text": "However, the tool’s particular behavior when restoring a backup without deleting the original structure may be of use in certain ocassions. In such cases, the backup feature behaves differently than the clone feature.",
- "updated": 1611490099609
+ "text": "However, the tool’s particular behavior when restoring a backup without deleting the original structure may be of use on certain occasions. In such cases, the backup feature behaves differently than the clone feature.",
+ "updated": 1615823501537
},
{
"style": "Text",
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-002-clones.json b/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-002-clones.json
index e68515103..ead2c981c 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-002-clones.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/productivity-tools-002-clones.json
@@ -3,8 +3,8 @@
"pageNumber": "2",
"type": "Clones",
"definition": {
- "text": "The clone feature is designed to produce copies of data structures when you need to replicate nodes and expect the copies to behave similarly to the original.",
- "updated": 1611490308337
+ "text": "The clone feature is designed to produce copies of data structures when you need to replicate structures of nodes and expect the copies to behave similarly to the original.",
+ "updated": 1615832633335
},
"paragraphs": [
{
@@ -17,8 +17,9 @@
"text": "We will analyze the case of clones under the same lens we analyzed how backups work: we will study how clones treat outgoing, incoming and internal references."
},
{
- "style": "Text",
- "text": "Unlike with backups, clones behave in the same way independently of the existence of the original structure of nodes in the workspace, therefore, we will not make such distinction in the following paragraphs."
+ "style": "Note",
+ "text": "Unlike backups, clones behave in the same way independently of the existence of the original structure of nodes in the workspace, therefore, we will not make such distinction in the following paragraphs.",
+ "updated": 1615832413196
},
{
"style": "Title",
@@ -34,7 +35,8 @@
},
{
"style": "Text",
- "text": "The same example as with backups apply: cloning a task running a session produces a copy of the task with the trading bot process instance maintaining the reference to the trading bot Multi-Period process, and the session maintaining the reference with the corresponding trading system."
+ "text": "The same example as with backups apply: cloning a Task running a Backtesting Session produces a copy of the Task with the Trading Process Instance maintaining the reference to the Trading Bot Multi-Period process, Trading Session Reference maintaining the reference to the corresponding Trading System, and the Trading Engine Reference keeping the reference to the Trading Engine hierarchy.",
+ "updated": 1615832824246
},
{
"style": "Gif",
@@ -51,7 +53,8 @@
},
{
"style": "Text",
- "text": "Let’s go back to the example of a trading system, like we did when exploring backups:"
+ "text": "Let’s go back to the example of a Trading System, like we did when exploring backups:",
+ "updated": 1615838266411
},
{
"style": "Gif",
@@ -72,7 +75,8 @@
},
{
"style": "Text",
- "text": "Going back to the shapes node example, the capture below shows how restonring a clone keeps internal references intact:"
+ "text": "Going back to the shapes node example, the capture below shows how restoring a clone keeps internal references intact:",
+ "updated": 1615838297924
},
{
"style": "Gif",
diff --git a/Projects/Superalgos/Schemas/Docs-Topics/troubleshooting-006-perception-issues-my-system-gets-slow.json b/Projects/Superalgos/Schemas/Docs-Topics/troubleshooting-006-perception-issues-my-system-gets-slow.json
index bb380a529..aa37281b4 100644
--- a/Projects/Superalgos/Schemas/Docs-Topics/troubleshooting-006-perception-issues-my-system-gets-slow.json
+++ b/Projects/Superalgos/Schemas/Docs-Topics/troubleshooting-006-perception-issues-my-system-gets-slow.json
@@ -56,7 +56,8 @@
},
{
"style": "Text",
- "text": "Make sure you set the time scale to manual mode and adjust it so that fewer candles are displayed on the screen. Try switching the time frame box to the higher time frames so that candle density decreases."
+ "text": "Make sure you set the Time Scale to manual mode and adjust it so that fewer candles are displayed on the screen. Try switching the time frame box to the higher time frames so that candle density decreases.",
+ "updated": 1615810255059
},
{
"style": "Text",
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-001-tutorial-step-back-to-school.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-001-tutorial-step-back-to-school.json
new file mode 100644
index 000000000..101d55d1d
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-001-tutorial-step-back-to-school.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "1",
+ "type": "Tutorial Step - Back to School!",
+ "definition": {
+ "text": "I hear my friend the Welcome tutorial showed you around and mesmerized you with a few cheap tricks... What a show-off!",
+ "updated": 1615310208456,
+ "icon": {
+ "name": "tutorial",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Note",
+ "text": "Well, now it's time to work!",
+ "updated": 1615310150633
+ },
+ {
+ "style": "Text",
+ "text": "Learning Superalgos is quite an endeavor! Not because it's difficult, but because the system is vast, extremely flexible, and is built on a new paradigm that is not obvious in the beginning..."
+ },
+ {
+ "style": "Callout",
+ "text": "But don't worry! If you pay attention and do all available tutorials, you will be able to tackle the learning curve like a champ!",
+ "updated": 1615308273598
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-002-tutorial-step-from-the-ground-up.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-002-tutorial-step-from-the-ground-up.json
new file mode 100644
index 000000000..f5808ee98
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-002-tutorial-step-from-the-ground-up.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "2",
+ "type": "Tutorial Step - From the Ground Up",
+ "definition": {
+ "text": "To be fair, my welcoming friend taught you many of the basic operations that you need to know to move around and feel comfortable with the interface...",
+ "updated": 1615311043130,
+ "icon": {
+ "name": "tutorial",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "With me, you are going to complete your basic education! Once you finish this tutorial, you will be ready to start learning how to build your own Trading System... That's what all is about after all, right?",
+ "updated": 1615459292734
+ },
+ {
+ "style": "Callout",
+ "text": "We will focus on completing the overview of the interface, dealing with workspaces, backups, plugins, and more!",
+ "updated": 1615311348229
+ },
+ {
+ "style": "Success",
+ "text": "Let's get on with it!",
+ "updated": 1615311356804
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-003-tutorial-step-lets-start-with-the-menu.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-003-tutorial-step-lets-start-with-the-menu.json
new file mode 100644
index 000000000..96b2ea4a9
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-003-tutorial-step-lets-start-with-the-menu.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "3",
+ "type": "Tutorial Step - Let's Start With the Menu",
+ "definition": {
+ "text": "The left-hand side of a node's menu is common to most nodes. The right-hand side, however, is specific to the type of node!",
+ "updated": 1615315122923,
+ "icon": {
+ "name": "unpinned-node",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Note",
+ "text": "Let's take a close look at the left-hand side!",
+ "updated": 1615313694440
+ },
+ {
+ "style": "Text",
+ "text": "The design space functions under the paradigm of a self-organizing workspace in which nodes tend to find their place guided by certain arrangement properties that you may control from the node's menu."
+ },
+ {
+ "style": "Callout",
+ "text": "Click the pin button on the top-left corner of the Session Base Asset node. Now drag the node away and release it! Now drag and release any other node without pinning it. See the difference?",
+ "updated": 1615315170878
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-004-tutorial-step-pinned-nodes-cant-dance.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-004-tutorial-step-pinned-nodes-cant-dance.json
new file mode 100644
index 000000000..8b0f441ab
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-004-tutorial-step-pinned-nodes-cant-dance.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "4",
+ "type": "Tutorial Step - Pinned Nodes Can't Dance",
+ "definition": {
+ "text": "When a node is pinned, it becomes fixed to a position regardless of the setting of the rest of the arrangement properties!",
+ "icon": {
+ "name": "pinned-node",
+ "project": "Superalgos"
+ },
+ "updated": 1615315595276
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "You may pin a node, a structure of nodes, and even the complete hierarchy. Let's try something else...",
+ "updated": 1615316007384
+ },
+ {
+ "style": "Callout",
+ "text": "Pin the Trading Parameters node and drag it away!"
+ },
+ {
+ "style": "Note",
+ "text": "Notice how all offspring nodes follow the parent node. However, the Session Base Asset node remains in position! Before we move on, unpin all nodes to keep the workspace in order!",
+ "updated": 1615316147113
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-005-tutorial-step-mary-go-round.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-005-tutorial-step-mary-go-round.json
new file mode 100644
index 000000000..8e02bb8b8
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-005-tutorial-step-mary-go-round.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "5",
+ "type": "Tutorial Step - Mary Go Round",
+ "definition": {
+ "text": "By default, nodes are locked to a rotational symmetry around their parent node. The symmetry may span 360 degrees or less, depending on the setting!",
+ "updated": 1615316869620,
+ "icon": {
+ "name": "set-angle-to-parent-node-to-360-degrees",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "When you click on the Angle to Parent node button, you cycle among five different settings: 360, 180, 90, and 45 degrees, plus the option to dissable the rotational symmetry.",
+ "updated": 1615459469714
+ },
+ {
+ "style": "Callout",
+ "text": "Take a quick look at the setting selected on each of the offspring of the Lightning Strike Backtesting Session node: Trading Parameters, Trading System Reference, and the Trading Engine Reference. They are all set to 180 degrees, right?",
+ "updated": 1615317622421
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-006-tutorial-step-180-degrees.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-006-tutorial-step-180-degrees.json
new file mode 100644
index 000000000..843618bc1
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-006-tutorial-step-180-degrees.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "6",
+ "type": "Tutorial Step - 180 Degrees",
+ "definition": {
+ "text": "When all offspring nodes are set to 180 degrees angle, each node takes a slot in a fraction of a circumference spanning 180 degrees, normal to the parent.",
+ "updated": 1615319473489,
+ "icon": {
+ "name": "set-angle-to-parent-node-to-180-degrees",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "But what happens if one of the offspring nodes has a different Angle to Parent setting? Let's run an experiment!",
+ "updated": 1615459555706
+ },
+ {
+ "style": "Callout",
+ "text": "Click once on the Trading Parameters Angle to Parent setting and exit the menu!"
+ },
+ {
+ "style": "Text",
+ "text": "The node takes a slot in a smaller angle — 90 degrees! Do the same with the Trading System Reference and Trading Engine Reference nodes!",
+ "updated": 1615318799392
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-007-tutorial-step-nodes-independence.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-007-tutorial-step-nodes-independence.json
new file mode 100644
index 000000000..564a8ba83
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-007-tutorial-step-nodes-independence.json
@@ -0,0 +1,33 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "7",
+ "type": "Tutorial Step - Node's Independence",
+ "definition": {
+ "text": "Notice how you changed the Angle to Parent setting on different siblings and each of them reacted to the new setting independently from the rest!",
+ "updated": 1615319889017,
+ "icon": {
+ "name": "set-angle-to-parent-node-to-90-degrees",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "You control the position of each node from within the node's menu. Not the parent node nor the siblings may affect the position... save for this cool exception:",
+ "updated": 1615459643749
+ },
+ {
+ "style": "Callout",
+ "text": "Go to the Lightning Strike Backtesting Session and select Add Missing Children from the right-hand side of the menu!"
+ },
+ {
+ "style": "Success",
+ "text": "Notice how the Social Bots node inherited the Angle to Parent setting from its closest sibling!",
+ "updated": 1615322906744
+ },
+ {
+ "style": "Text",
+ "text": ""
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-008-tutorial-step-free-range-nodes.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-008-tutorial-step-free-range-nodes.json
new file mode 100644
index 000000000..eba935364
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-008-tutorial-step-free-range-nodes.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "8",
+ "type": "Tutorial Step - Free-range Nodes",
+ "definition": {
+ "text": "When you select the option to cancel the Angle to Parent setting, the node is free to take any angle relative to its parent and siblings!",
+ "updated": 1615473919848,
+ "icon": {
+ "name": "remove-angle-to-parent-node",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Open the menu of the Trading Parameters node, select the option to cancel the Angle to Parent setting, and move the node in any direction!",
+ "updated": 1615474082667
+ },
+ {
+ "style": "Note",
+ "text": "As you can see, the node stays where you leave it, and the dotted line connecting to its parent turns yellow. Notice that both the angle to the parent node and the distance become arbitrary.",
+ "updated": 1615474122131
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-009-tutorial-step-controlling-distances.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-009-tutorial-step-controlling-distances.json
new file mode 100644
index 000000000..3c4c8d49b
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-009-tutorial-step-controlling-distances.json
@@ -0,0 +1,46 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "9",
+ "type": "Tutorial Step - Controlling Distances",
+ "definition": {
+ "text": "The next option in the menu controls the distance from the node to its parent. Clicking on the button cycles through options.",
+ "icon": {
+ "name": "set-distance-to-parent-node-to-one",
+ "project": "Superalgos"
+ },
+ "updated": 1615474588252
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "The distance from a node to its parent is set relative to the distance from the parent to its parent node. The available options are:",
+ "updated": 1615474735608
+ },
+ {
+ "style": "List",
+ "text": "Pink: 0.25X",
+ "updated": 1615474784140
+ },
+ {
+ "style": "List",
+ "text": "Orange: 0.5X"
+ },
+ {
+ "style": "List",
+ "text": "Green: 1X"
+ },
+ {
+ "style": "List",
+ "text": "Blue: 1.5X"
+ },
+ {
+ "style": "List",
+ "text": "Red: 2X"
+ },
+ {
+ "style": "Text",
+ "text": "Let's say that you choose the green option. The distance from the node to its parent will be the same distance that separates the parent node from its parent!",
+ "updated": 1615475003479
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-010-tutorial-step-play-with-the-tape.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-010-tutorial-step-play-with-the-tape.json
new file mode 100644
index 000000000..9397beae0
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-010-tutorial-step-play-with-the-tape.json
@@ -0,0 +1,33 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "10",
+ "type": "Tutorial Step - Play With The Tape!",
+ "definition": {
+ "text": "Try the different distance settings of the Lightning Strike Trading System Reference node! Go ahead! Click the tape button!",
+ "icon": {
+ "name": "trading-system-reference",
+ "project": "Superalgos"
+ },
+ "updated": 1615476811627
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "Pretty straightforward, right? Now, what happens when the node you are adjusting has offspring of its own?",
+ "updated": 1615476877641
+ },
+ {
+ "style": "Callout",
+ "text": "Let's find out! Click the Distance to Parent button once on the Trading Parameters node!"
+ },
+ {
+ "style": "Note",
+ "text": "Because you increased the distance separating the Trading Parameters node from the Backtesting Session node, the offspring of the Trading Parameters node also increased proportionally!",
+ "updated": 1615476086180
+ },
+ {
+ "style": "Text",
+ "text": ""
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-011-tutorial-step-how-about-the-hierarchy.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-011-tutorial-step-how-about-the-hierarchy.json
new file mode 100644
index 000000000..82cd32b83
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-011-tutorial-step-how-about-the-hierarchy.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "11",
+ "type": "Tutorial Step - How About The Hierarchy?",
+ "definition": {
+ "text": "The reason why the distance to the parent node is relative to the distance of the parent to its parent is so that you may affect long structures of nodes!",
+ "updated": 1615477794893,
+ "icon": {
+ "name": "set-distance-to-parent-node-to-one-and-a-half",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Click once on the Distance to Parent button of the Network node!",
+ "updated": 1615477834548
+ },
+ {
+ "style": "Text",
+ "text": "Wow! See? These tools allow you full control over how you visually organize hierarchies!",
+ "updated": 1615478179417
+ },
+ {
+ "style": "Success",
+ "text": "Try canceling the Distance to Parent setting on the Testing Trading Tasks node! As you can see, you may set any arbitrary distance to the parent node, but the angle to the parent remains fixed.",
+ "updated": 1615478515588
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-012-tutorial-step-arrangement-style.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-012-tutorial-step-arrangement-style.json
new file mode 100644
index 000000000..26d047137
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-012-tutorial-step-arrangement-style.json
@@ -0,0 +1,54 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "12",
+ "type": "Tutorial Step - Arrangement Style",
+ "definition": {
+ "text": "The button cycles through several arrangement options that affect where a node is placed in relation to its parent.",
+ "icon": {
+ "name": "set-node-arrangement-to-concave",
+ "project": "Superalgos"
+ },
+ "updated": 1615491939732
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "In the drawing, the orange dot represents the parent node, and the blue dots represent the node adopting the specific arrangement style.",
+ "updated": 1615492521130
+ },
+ {
+ "style": "List",
+ "text": "Concave: This is the default style. The node adopts a slot on a circumsference around its parent node.",
+ "updated": 1615492168857
+ },
+ {
+ "style": "List",
+ "text": "Convex: The slot is on a convex curve.",
+ "updated": 1615492208853
+ },
+ {
+ "style": "List",
+ "text": "Vertical-Right: On a vertical line to the right.",
+ "updated": 1615492432352
+ },
+ {
+ "style": "List",
+ "text": "Vertical-Left: The slot is on a vertical line to the left.",
+ "updated": 1615492424255
+ },
+ {
+ "style": "List",
+ "text": "Horizontal-Bottom: On a horizontal line below.",
+ "updated": 1615492441259
+ },
+ {
+ "style": "List",
+ "text": "Horizontal-Top: The slot is on a horizontal line above.",
+ "updated": 1615492346954
+ },
+ {
+ "style": "Text",
+ "text": ""
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-013-tutorial-step-shall-we-improve-this-.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-013-tutorial-step-shall-we-improve-this-.json
new file mode 100644
index 000000000..9c97a8097
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-013-tutorial-step-shall-we-improve-this-.json
@@ -0,0 +1,15 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "13",
+ "type": "Tutorial Step - Shall We Improve This?",
+ "definition": {
+ "text": "If you experiment with this feature, you will notice that the behavior of each of the settings is not clear or predictable.",
+ "updated": 1615492937986
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "Left click and Edit to enter edit mode and change this text. ENTER to write new paragraphs. ESC to exit edit mode. Then you can use doscs.save to save your changes and app.contribute to send it to the main repository."
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-013-tutorial-step-shall-we-improve-this.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-013-tutorial-step-shall-we-improve-this.json
new file mode 100644
index 000000000..954044c09
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-013-tutorial-step-shall-we-improve-this.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "13",
+ "type": "Tutorial Step - Shall We Improve This?",
+ "definition": {
+ "text": "If you experiment with this feature, you will notice that the behavior of each of the settings is not clear or predictable.",
+ "updated": 1615492937986,
+ "icon": {
+ "name": "set-node-arrangement-to-concave",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Important",
+ "text": "The current implementation of this feature is not optimal, and the behavior of some of the options is hard to predict. If you are a developer, this may be a great opportunity to iterate on the existing code and take this feature to a more usable state!",
+ "updated": 1615493927202
+ },
+ {
+ "style": "Callout",
+ "text": "Feel free to try this feature, but you will most likely want to go back to the default setting!",
+ "updated": 1615493850572
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-014-tutorial-step-freeze.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-014-tutorial-step-freeze.json
new file mode 100644
index 000000000..7c37d5fdc
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-014-tutorial-step-freeze.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "14",
+ "type": "Tutorial Step - Freeze!",
+ "definition": {
+ "text": "The freeze button makes sense under very specific circumstances: when physics are activated at the level of the Design Space.",
+ "updated": 1615543120064,
+ "icon": {
+ "name": "freeze-structure-of-nodes",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "The Design Space offers some customization features, one of which is activating the physics of the universe. When physics is on, the whole space becomes alive!",
+ "updated": 1615544003132
+ },
+ {
+ "style": "Note",
+ "text": "We won't go into that rabbit hole at this point as it's not in the basic education curriculum!",
+ "updated": 1615544598765
+ },
+ {
+ "style": "Text",
+ "text": "The freeze option freezes the node’s chain connections with its parent and offspring and connecting lines turn blue. Freezing releases CPU resources when physics animations are on, as the system stops calculating nodes' positions and status.",
+ "updated": 1615544553909
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-015-tutorial-step-lets-talk-backups.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-015-tutorial-step-lets-talk-backups.json
new file mode 100644
index 000000000..7df801462
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-015-tutorial-step-lets-talk-backups.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "15",
+ "type": "Tutorial Step - Let's Talk Backups",
+ "definition": {
+ "text": "Backups are very powerful, and there are multiple use cases! When you click on the backup button, the node and its offspring are saved on a JSON file!",
+ "updated": 1615546227075,
+ "icon": {
+ "name": "backup-entity",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "You may want to backup a structure of nodes to safeguard your work or to keep a copy of the structure in its current state.",
+ "updated": 1615546257502
+ },
+ {
+ "style": "Callout",
+ "text": "Take a backup of the Lightning Strike trading system and check your downloads folder!",
+ "updated": 1615546438350
+ },
+ {
+ "style": "Note",
+ "text": "The file is downloaded by the browser and stored in the default Downloads folder. If you take multiple backups of the same file, the browser renames the file with sequential numbers.",
+ "updated": 1615546360738
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-016-tutorial-step-working-with-versions.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-016-tutorial-step-working-with-versions.json
new file mode 100644
index 000000000..2e0616286
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-016-tutorial-step-working-with-versions.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "16",
+ "type": "Tutorial Step - Working With Versions",
+ "definition": {
+ "text": "Let's say you want to test a strategy with different sets of parameters, so you take a backup of the Trading Parameters node!",
+ "updated": 1615571330616,
+ "icon": {
+ "name": "hand-drag",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "Go ahead and take the backup! Now that you have a backup of all Trading Parameters, you may change any of them knowing that you can always go back to your backup! If you are on Chrome, the backup must be visible in the bottom-left corner of the browser window.",
+ "updated": 1615571301913
+ },
+ {
+ "style": "Callout",
+ "text": "Now drag the backup file and drop it in the Design Space! That's how you restore a backup!",
+ "updated": 1615571393497
+ },
+ {
+ "style": "Text",
+ "text": "Easy right? In the next step, I'll show you how to get back to using the original version!",
+ "updated": 1615571399267
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-017-tutorial-step-detaching-and-attaching.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-017-tutorial-step-detaching-and-attaching.json
new file mode 100644
index 000000000..1bb3dc126
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-017-tutorial-step-detaching-and-attaching.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "17",
+ "type": "Tutorial Step - Detaching and Attaching",
+ "definition": {
+ "text": "Now follow my lead! We are not really going to test the strategy with different parameters... we are just simulating a use case!",
+ "icon": {
+ "name": "detach-node",
+ "project": "Superalgos"
+ },
+ "updated": 1615571995273
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "Let's pretend we modified the Trading Parameters and now we want to go back to using the original ones. We already have the backup in the design space — detached from the hierarchy — and we need to replace the existing Trading Parameters node with the backup.",
+ "updated": 1615572909121
+ },
+ {
+ "style": "Callout",
+ "text": "Go to the Trading Parameters node that is currently in use — the one attached to the Backtesting Session node — and click the Detach Node button. The node separates from the hierarchy! You may now move it to the side!",
+ "updated": 1615572965552
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-018-tutorial-step-attaching-the-backup.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-018-tutorial-step-attaching-the-backup.json
new file mode 100644
index 000000000..98d0874d1
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-018-tutorial-step-attaching-the-backup.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "18",
+ "type": "Tutorial Step - Attaching The Backup",
+ "definition": {
+ "text": "Now we need to attach the backup of the Trading Parameters node to the Backtesting Session. How do we do that?",
+ "icon": {
+ "name": "mouse-right-click",
+ "project": "Superalgos"
+ },
+ "updated": 1615573035743
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Right-click on the Trading Parameters node and pull it closer to the Backtesting session node! Release when you see an orange ring surrounding the Backtesting Session node!"
+ },
+ {
+ "style": "Text",
+ "text": "That's it! The backup of the Trading Parameters node is restored and back in use.",
+ "updated": 1615573476475
+ },
+ {
+ "style": "Note",
+ "text": "Notice that you may delete the second Trading Parameters node if you wish, or you can keep it on the side for later use.",
+ "updated": 1615573597034
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-019-tutorial-step-irrelevant-nodes.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-019-tutorial-step-irrelevant-nodes.json
new file mode 100644
index 000000000..69100b02e
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-019-tutorial-step-irrelevant-nodes.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "19",
+ "type": "Tutorial Step - Irrelevant Nodes",
+ "definition": {
+ "text": "Nodes that are not attached to a hierarchy are not computed. They exist in the workspace, but they don't affect the workings of the system at any level.",
+ "updated": 1615575416918,
+ "icon": {
+ "name": "detach-node",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "This means that you may keep as many structures of nodes detached from hierarchies, for as long as you wish, keeping them at hand for later use, or for whatever reason.",
+ "updated": 1615580307483
+ },
+ {
+ "style": "Success",
+ "text": "A common scenario is keeping multiple versions of certain definitions while building strategies, so that you may test a set of rules and switch to other rules for the next run. You may even keep multiple versions of entire strategies!",
+ "updated": 1615575707975
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-021-tutorial-step-nodes-attaching-rules.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-021-tutorial-step-nodes-attaching-rules.json
new file mode 100644
index 000000000..92d2620a5
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-021-tutorial-step-nodes-attaching-rules.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "21",
+ "type": "Tutorial Step - Nodes' Attaching Rules",
+ "definition": {
+ "text": "Click the help button on the Trading Parameters node to access the node's Docs page. I'm going to show you something...",
+ "icon": {
+ "name": "help",
+ "project": "Superalgos"
+ },
+ "updated": 1615580946356
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Scroll the page all the way to the bottom until you find the Trading Parameters Attaching Rules title.",
+ "updated": 1615583276420
+ },
+ {
+ "style": "Text",
+ "text": "Each node may be attached to certain node types. These attaching rules are listed on the node's page in the Docs.",
+ "updated": 1615583315164
+ },
+ {
+ "style": "Success",
+ "text": "When there are several nodes that may accept the connection, each candidate displays a grey ring indicating their readiness to take the attachment. Only the candidate closer to the node to be attached is highlighted in orange.",
+ "updated": 1615582903959
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-022-tutorial-step-dealing-with-references.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-022-tutorial-step-dealing-with-references.json
new file mode 100644
index 000000000..97954025f
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-022-tutorial-step-dealing-with-references.json
@@ -0,0 +1,39 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "22",
+ "type": "Tutorial Step - Dealing with References",
+ "definition": {
+ "text": "References are how a node may obtain information about another otherwise unrelated node. This is a crucial concept so pay attention!",
+ "updated": 1615797468978,
+ "icon": {
+ "name": "delink-node",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Read this page carefully! If you are not a developer, you may want to read it twice until it sinks in!",
+ "updated": 1615797106813
+ },
+ {
+ "style": "Text",
+ "text": "In brief, references have...",
+ "updated": 1615797242493
+ },
+ {
+ "style": "List",
+ "text": "a direction: outgoing or incoming,",
+ "updated": 1615797236023
+ },
+ {
+ "style": "List",
+ "text": "and a scope: internal or external."
+ },
+ {
+ "style": "Note",
+ "text": "The later concept —references' scope— is crucial to understand the differences between Backups and Clones.",
+ "updated": 1615797959970
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-023-tutorial-step-lets-see-some-references.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-023-tutorial-step-lets-see-some-references.json
new file mode 100644
index 000000000..86db0f1f1
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-023-tutorial-step-lets-see-some-references.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "23",
+ "type": "Tutorial Step - Let's See Some References",
+ "definition": {
+ "text": "Notice the two nodes under the Backtesting Session: Trading System Reference and Trading Engine Reference. Why do we need these nodes?",
+ "updated": 1615798435799,
+ "icon": {
+ "name": "trading-system-reference",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "The Backtesting Session needs to reference the Trading System so that it may obtain the rules for trading. It must also reference the Trading Engine so that it may store information relative to the trading session. However, a node may establish only one outgoing reference!",
+ "updated": 1615798936552
+ },
+ {
+ "style": "Note",
+ "text": "That is why these nodes exist: they are an aid to the Backtesting Session node so that each of them may reference one node!",
+ "updated": 1615798882867
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-024-tutorial-step-visualizing-references.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-024-tutorial-step-visualizing-references.json
new file mode 100644
index 000000000..b61183182
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-024-tutorial-step-visualizing-references.json
@@ -0,0 +1,35 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "24",
+ "type": "Tutorial Step - Visualizing References",
+ "definition": {
+ "text": "When you hover the mouse pointer over a node with an outgoing reference, the reference becomes visible.",
+ "icon": {
+ "name": "key-r",
+ "project": "Superalgos"
+ },
+ "updated": 1615804514428
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "But there's also a way to make all references visible!",
+ "updated": 1615804582821
+ },
+ {
+ "style": "Callout",
+ "text": "Hit the following key combination: Ctrl + Shift + Alt + Key-R",
+ "updated": 1615804638167
+ },
+ {
+ "style": "Text",
+ "text": "Now you can see the references going out from both the Trading System Reference node and the Trading Engine Reference node.",
+ "updated": 1615805161269
+ },
+ {
+ "style": "Success",
+ "text": "Right-click to access the Design Space map and notice other references that may be visible.",
+ "updated": 1615805249449
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-025-tutorial-step-establishing-references.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-025-tutorial-step-establishing-references.json
new file mode 100644
index 000000000..b59ab0a83
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-025-tutorial-step-establishing-references.json
@@ -0,0 +1,34 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "25",
+ "type": "Tutorial Step - Establishing References",
+ "definition": {
+ "text": "At some point, you will need to establish a reference, so let's do some basic training to develop the formidable skills required!",
+ "updated": 1615806228297,
+ "icon": {
+ "name": "delink-node",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Click the delink button on the menu of the Trading System Reference node!",
+ "updated": 1615806300267
+ },
+ {
+ "style": "Note",
+ "text": "You just broke the reference! But don't worry... we'll recreate it in the next steps!",
+ "updated": 1615806406944
+ },
+ {
+ "style": "Text",
+ "text": "To establish a reference, follow the same process you use to attach a node. That is, right-click on the node where the reference will originate, drag it close to the node with which the reference will be established, and release the click once the orange ring shows up!",
+ "updated": 1615806699660
+ },
+ {
+ "style": "Text",
+ "text": ""
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-026-tutorial-step-lets-get-on-with-it.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-026-tutorial-step-lets-get-on-with-it.json
new file mode 100644
index 000000000..568a35e85
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-026-tutorial-step-lets-get-on-with-it.json
@@ -0,0 +1,37 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "26",
+ "type": "Tutorial Step - Let's Get On With It!",
+ "definition": {
+ "text": "The tricky bit is when the destination node is far away from the originator node, maybe even in different hierarchies!",
+ "updated": 1615807480540,
+ "icon": {
+ "name": "mouse-right-click",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "These UI tricks may make your life easier:",
+ "updated": 1615807543929
+ },
+ {
+ "style": "List",
+ "text": "Use the design space map as many times as required to find your way from node to node."
+ },
+ {
+ "style": "List",
+ "text": "Pin the node you are going to move across the design space, so that you may drop it at any point to check the design space map for directions."
+ },
+ {
+ "style": "List",
+ "text": "Use Ctrl / Cmd + arrow keys to drag the node across the screen after clicking on it with the mouse. Keep keys pressed and the node flies!",
+ "updated": 1615807572088
+ },
+ {
+ "style": "List",
+ "text": "Remove the pin once the reference is established so that the node goes back to its place."
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-027-tutorial-step-is-it-done.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-027-tutorial-step-is-it-done.json
new file mode 100644
index 000000000..a48351d31
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-027-tutorial-step-is-it-done.json
@@ -0,0 +1,37 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "27",
+ "type": "Tutorial Step - Is It Done?",
+ "definition": {
+ "text": "If you haven't yet, go ahead and establish a reference from the Trading System Reference to the Lightning Strike Trading System!",
+ "updated": 1615808208398,
+ "icon": {
+ "name": "trading-system",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "You may find this technique to establish a reference to be a bit clumsy or impractical. If you have a better idea or know how to improve it, feel free to open a feature request issue. Make sure you consider the following:",
+ "updated": 1615808367637
+ },
+ {
+ "style": "List",
+ "text": "In a complex workspace, there may be hundreds of nodes that may be able to accept a reference."
+ },
+ {
+ "style": "List",
+ "text": "The reference must be established unequivocally from a specific node to another specific node.",
+ "updated": 1615808355918
+ },
+ {
+ "style": "Success",
+ "text": "In the meantime, let me assure you it's not that hard once you do it a couple of times!"
+ },
+ {
+ "style": "Text",
+ "text": ""
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-028-tutorial-step-one-last-point.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-028-tutorial-step-one-last-point.json
new file mode 100644
index 000000000..beafb21fe
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-028-tutorial-step-one-last-point.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "28",
+ "type": "Tutorial Step - One Last Point!",
+ "definition": {
+ "text": "Pretty much like with Node Attaching Rules, nodes that may establish references also have rules in that regard.",
+ "icon": {
+ "name": "trading-system-reference",
+ "project": "Superalgos"
+ },
+ "updated": 1615809225061
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Go to the Trading System Reference node menu, click the help button, and scroll to the bottom of the page!",
+ "updated": 1615809494186
+ },
+ {
+ "style": "Note",
+ "text": "If you are a developer, you may want to know that Node Attaching Rules and Node Referencing Rules are defined in the AppSchema.json file in the Schema folder of a Project.",
+ "updated": 1615809761275
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-029-tutorial-step-back-to-backups.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-029-tutorial-step-back-to-backups.json
new file mode 100644
index 000000000..ea633a1ac
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-029-tutorial-step-back-to-backups.json
@@ -0,0 +1,40 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "29",
+ "type": "Tutorial Step - Back to Backups!",
+ "definition": {
+ "text": "Now that you understand references, we can go deeper into Backups, and maybe even discuss the differences with Clones!",
+ "updated": 1615813066430,
+ "icon": {
+ "name": "backup-entity",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "You've got some more reading to do! Please, read this page carefully and let the info sink in!",
+ "updated": 1615824048748
+ },
+ {
+ "style": "Text",
+ "text": "In summary:",
+ "updated": 1615823794165
+ },
+ {
+ "style": "List",
+ "text": "Outgoing references: They're always kept intact.",
+ "updated": 1615824080941
+ },
+ {
+ "style": "List",
+ "text": "Incoming references: They're kept only when the original structure is deleted before restoring the backup.",
+ "updated": 1615824088439
+ },
+ {
+ "style": "List",
+ "text": "Internal references: They remain internal, only when the original structure is deleted first.",
+ "updated": 1615824106579
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-030-tutorial-step-hammering-backups-home.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-030-tutorial-step-hammering-backups-home.json
new file mode 100644
index 000000000..01de06d4c
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-030-tutorial-step-hammering-backups-home.json
@@ -0,0 +1,30 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "30",
+ "type": "Tutorial Step - Hammering Backups Home",
+ "definition": {
+ "text": "Let's go over the same examples that you just read about so that you learn this by heart!",
+ "icon": {
+ "name": "backup-entity",
+ "project": "Superalgos"
+ },
+ "updated": 1615824452275
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Take a backup of the Lightning Strike Task and restore it without deleting the original task. Then repeat the operation but deleting the original task before restoring the backup.",
+ "updated": 1615826657582
+ },
+ {
+ "style": "Text",
+ "text": "Verify that, in both cases, the outgoing references originating at the Trading System Reference and the Trading Engine Reference nodes are preserved.",
+ "updated": 1615826714283
+ },
+ {
+ "style": "Success",
+ "text": "Remember that outgoing references are always preserved!",
+ "updated": 1615826789684
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-031-tutorial-step-back-it-up-again.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-031-tutorial-step-back-it-up-again.json
new file mode 100644
index 000000000..ee2799cf0
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-031-tutorial-step-back-it-up-again.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "31",
+ "type": "Tutorial Step - Back It Up Again!",
+ "definition": {
+ "text": "I told you I was going to hammer home this topic! Let's try the second example!",
+ "updated": 1615827182099,
+ "icon": {
+ "name": "backup-entity",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Take a backup of the Lightning Strike Trading System! Restore the back without deleting the original. Then repeat the restore operation but deleting the original trading system first!",
+ "updated": 1615827877645
+ },
+ {
+ "style": "Text",
+ "text": "Verify how the incoming references are preserved only in the second case!"
+ },
+ {
+ "style": "Success",
+ "text": "Remember that, for incoming references to be preserved, you must delete the original structure of nodes before restoring the backup!",
+ "updated": 1615827931407
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-032-tutorial-step-one-last-backup.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-032-tutorial-step-one-last-backup.json
new file mode 100644
index 000000000..41a266018
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-032-tutorial-step-one-last-backup.json
@@ -0,0 +1,29 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "32",
+ "type": "Tutorial Step - One Last Backup!",
+ "definition": {
+ "text": "Let's try the third example! Notice the references flowing from polygon vertices to points under the Chart Points node!",
+ "icon": {
+ "name": "backup-entity",
+ "project": "Superalgos"
+ },
+ "updated": 1615828736799
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "Take a backup of the Shapes node and restore it on the side without deleting the original. Then repeat, but deleting the original before restoring the backup!",
+ "updated": 1615828883417
+ },
+ {
+ "style": "Callout",
+ "text": "Notice that in the first case, references point to the original points turning into external references! On the contrary, in the second case, references remain internal!"
+ },
+ {
+ "style": "Success",
+ "text": "Remember that references remain internal only when you delete the original structure first!",
+ "updated": 1615828954919
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-033-tutorial-step-no-need-to-memorize.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-033-tutorial-step-no-need-to-memorize.json
new file mode 100644
index 000000000..4122a3787
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-033-tutorial-step-no-need-to-memorize.json
@@ -0,0 +1,25 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "33",
+ "type": "Tutorial Step - No Need to Memorize",
+ "definition": {
+ "text": "I hope you got to grasp the intricacies of backups and how references are affected in each particular restoration case!",
+ "updated": 1615831565379,
+ "icon": {
+ "name": "docs-warning-style",
+ "project": "Superalgos"
+ }
+ },
+ "paragraphs": [
+ {
+ "style": "Text",
+ "text": "You don't need to memorize the individual cases. Instead, if you understand the underlying mechanism involving references, then you may deduce the behavior on each case!",
+ "updated": 1615838818500
+ },
+ {
+ "style": "Note",
+ "text": "Remember that each node has a specific ID! When a reference is established, both nodes involved have a unique ID. Outgoing references do not depend on the node's ID, but incoming references do! If the backed up node may be restored with the same ID, incoming references will persist; otherwise, they will change or be lost!",
+ "updated": 1615831079650
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-034-tutorial-step-what-about-clones.json b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-034-tutorial-step-what-about-clones.json
new file mode 100644
index 000000000..3a56c9a8b
--- /dev/null
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/basic-education-034-tutorial-step-what-about-clones.json
@@ -0,0 +1,39 @@
+{
+ "tutorial": "Basic Education",
+ "pageNumber": "34",
+ "type": "Tutorial Step - What About Clones?",
+ "definition": {
+ "text": "Clones differ from backups in that the feature is designed to replicate data structures so that the copies resemble the original.",
+ "icon": {
+ "name": "clone-entity",
+ "project": "Superalgos"
+ },
+ "updated": 1615839114130
+ },
+ "paragraphs": [
+ {
+ "style": "Callout",
+ "text": "Read this page carefully!",
+ "updated": 1615839024514
+ },
+ {
+ "style": "Text",
+ "text": "In summary:",
+ "updated": 1615839074979
+ },
+ {
+ "style": "List",
+ "text": "Clones behave in the same way whether the original is present upon restoration or not.",
+ "updated": 1615839267941
+ },
+ {
+ "style": "List",
+ "text": "Incoming references are always discarded."
+ },
+ {
+ "style": "Success",
+ "text": "Feel free to test the Clones feature! We'll move on to other topics without further due!",
+ "updated": 1615839231992
+ }
+ ]
+}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/install-a-new-market-001-tutorial-install-a-new-market.json b/Projects/Superalgos/Schemas/Docs-Tutorials/install-a-new-market-001-tutorial-install-a-new-market.json
index ecfeb3578..b35f182bd 100644
--- a/Projects/Superalgos/Schemas/Docs-Tutorials/install-a-new-market-001-tutorial-install-a-new-market.json
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/install-a-new-market-001-tutorial-install-a-new-market.json
@@ -26,13 +26,10 @@
"style": "List",
"text": "3. Installing the market "
},
- {
- "style": "Text",
- "text": "Let's get on with it!"
- },
{
"style": "Callout",
- "text": "When you click the Next button below, you will go to the Exchange Assets node under Binance, in the Crypto Ecosystem hierarchy."
+ "text": "When you click the Next button below, you will go to the Exchange Assets node under Binance, in the Crypto Ecosystem hierarchy. You may learn how to install a market in this exchange so that you may do the same in your exchange of choice later on.",
+ "updated": 1615202737286
}
]
}
\ No newline at end of file
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/testing-a-trading-idea-the-other-stages-025-tutorial-step-the-tricks-of-the-trade.json b/Projects/Superalgos/Schemas/Docs-Tutorials/testing-a-trading-idea-the-other-stages-025-tutorial-step-the-tricks-of-the-trade.json
index 1813185b5..03194e3c5 100644
--- a/Projects/Superalgos/Schemas/Docs-Tutorials/testing-a-trading-idea-the-other-stages-025-tutorial-step-the-tricks-of-the-trade.json
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/testing-a-trading-idea-the-other-stages-025-tutorial-step-the-tricks-of-the-trade.json
@@ -7,7 +7,8 @@
"project": "Superalgos",
"name": "mouse-pointer"
},
- "text": "Establishing a reference is kid's play! The only 'challenge' here is that the node to be referenced is far away from the originator."
+ "text": "Establishing a reference is kid's play! The only \"challenge\" here is that the node to be referenced is far away from the originator.",
+ "updated": 1615805937875
},
"paragraphs": [
{
diff --git a/Projects/Superalgos/Schemas/Docs-Tutorials/welcome-to-superalgos-022-tutorial-step-hungry-for-more-info.json b/Projects/Superalgos/Schemas/Docs-Tutorials/welcome-to-superalgos-022-tutorial-step-hungry-for-more-info.json
index 176afeabb..65a4e2c47 100644
--- a/Projects/Superalgos/Schemas/Docs-Tutorials/welcome-to-superalgos-022-tutorial-step-hungry-for-more-info.json
+++ b/Projects/Superalgos/Schemas/Docs-Tutorials/welcome-to-superalgos-022-tutorial-step-hungry-for-more-info.json
@@ -12,7 +12,8 @@
{
"language": "IT",
"text": "Non mi addentrerò in ogni dettaglio mentre proseguiamo, ma se hai bisogno di più info su un nodo il pulsante di help sul menu ti porta direttamente alla relativa documentazione.",
- "updated": 1614790878931
+ "updated": 1614790878931,
+ "style": "Definition"
}
]
},
@@ -24,7 +25,8 @@
{
"language": "IT",
"text": "La documentazione di un nodo può includere una o più delle seguenti sezioni:",
- "updated": 1614790910243
+ "updated": 1614790910243,
+ "style": "Text"
}
]
},
@@ -35,7 +37,8 @@
{
"language": "IT",
"text": "Definizione: descrive il nodo o la sua funzione",
- "updated": 1614790956373
+ "updated": 1614790956373,
+ "style": "List"
}
]
},
@@ -46,31 +49,34 @@
{
"language": "IT",
"text": "Contenuto: descrive come funziona il nodo",
- "updated": 1614791022017
+ "updated": 1614791022017,
+ "style": "List"
}
]
},
{
"style": "List",
- "text": "Configuration: some node may have one.",
- "updated": 1610614516774,
+ "text": "Configuration: some nodes may have one.",
+ "updated": 1615304462606,
"translations": [
{
"language": "IT",
"text": "Configurazione: alcuni nodi ne hanno una",
- "updated": 1614791040416
+ "updated": 1614791040416,
+ "style": "List"
}
]
},
{
"style": "List",
- "text": "Technical: the rest of the infor is usually of a technical nature, oriented to developers.",
- "updated": 1610614574015,
+ "text": "Technical: the rest of the info is usually of a technical nature, oriented to developers.",
+ "updated": 1615304469703,
"translations": [
{
"language": "IT",
"text": "Info tecniche: il resto delle informazioni sono solitamente di natura tecnica, principalmente per gli sviluppatori.",
- "updated": 1614791106174
+ "updated": 1614791106174,
+ "style": "List"
}
]
},
@@ -81,7 +87,8 @@
{
"language": "IT",
"text": "Clicca il pulsante di help sul nodo Data Tasks!",
- "updated": 1614791129195
+ "updated": 1614791129195,
+ "style": "Callout"
}
]
}
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/Delete.txt b/Projects/TensorFlow/Icons-SVG-Sources/Delete.txt
new file mode 100644
index 000000000..e69de29bb
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/activation-function.svg b/Projects/TensorFlow/Icons-SVG-Sources/activation-function.svg
new file mode 100644
index 000000000..d0803975d
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/activation-function.svg
@@ -0,0 +1,18 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/artificial-neural-network.svg b/Projects/TensorFlow/Icons-SVG-Sources/artificial-neural-network.svg
new file mode 100644
index 000000000..6b1d4d3e4
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/artificial-neural-network.svg
@@ -0,0 +1,16 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/basic-layers.svg b/Projects/TensorFlow/Icons-SVG-Sources/basic-layers.svg
new file mode 100644
index 000000000..6d3dfc047
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/basic-layers.svg
@@ -0,0 +1,6 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/dense-layer.svg b/Projects/TensorFlow/Icons-SVG-Sources/dense-layer.svg
new file mode 100644
index 000000000..90582f435
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/dense-layer.svg
@@ -0,0 +1,57 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/dimensionality-units.svg b/Projects/TensorFlow/Icons-SVG-Sources/dimensionality-units.svg
new file mode 100644
index 000000000..68530c889
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/dimensionality-units.svg
@@ -0,0 +1,11 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/dtype.svg b/Projects/TensorFlow/Icons-SVG-Sources/dtype.svg
new file mode 100644
index 000000000..4ade34285
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/dtype.svg
@@ -0,0 +1,50 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/execution-environment.svg b/Projects/TensorFlow/Icons-SVG-Sources/execution-environment.svg
new file mode 100644
index 000000000..5fd8a7aad
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/execution-environment.svg
@@ -0,0 +1,12 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/layers-api.svg b/Projects/TensorFlow/Icons-SVG-Sources/layers-api.svg
new file mode 100644
index 000000000..8860e2ac5
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/layers-api.svg
@@ -0,0 +1,9 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/machine-learning.svg b/Projects/TensorFlow/Icons-SVG-Sources/machine-learning.svg
new file mode 100644
index 000000000..50a6ef6c0
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/machine-learning.svg
@@ -0,0 +1,16 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/model.svg b/Projects/TensorFlow/Icons-SVG-Sources/model.svg
new file mode 100644
index 000000000..816beac6d
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/model.svg
@@ -0,0 +1,26 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/nodejs-backend.svg b/Projects/TensorFlow/Icons-SVG-Sources/nodejs-backend.svg
new file mode 100644
index 000000000..50a14f3cd
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/nodejs-backend.svg
@@ -0,0 +1,25 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/output-layer.svg b/Projects/TensorFlow/Icons-SVG-Sources/output-layer.svg
new file mode 100644
index 000000000..724b04d3e
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/output-layer.svg
@@ -0,0 +1,13 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/sequential-layer.svg b/Projects/TensorFlow/Icons-SVG-Sources/sequential-layer.svg
new file mode 100644
index 000000000..5bc2ae739
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/sequential-layer.svg
@@ -0,0 +1,35 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/sequential-model.svg b/Projects/TensorFlow/Icons-SVG-Sources/sequential-model.svg
new file mode 100644
index 000000000..98f0a61a1
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/sequential-model.svg
@@ -0,0 +1,14 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/supervised-learning.svg b/Projects/TensorFlow/Icons-SVG-Sources/supervised-learning.svg
new file mode 100644
index 000000000..305b2189a
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/supervised-learning.svg
@@ -0,0 +1,16 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/tensorflow-library.svg b/Projects/TensorFlow/Icons-SVG-Sources/tensorflow-library.svg
new file mode 100644
index 000000000..2023869f4
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/tensorflow-library.svg
@@ -0,0 +1,10 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/tensorflow-project.svg b/Projects/TensorFlow/Icons-SVG-Sources/tensorflow-project.svg
new file mode 100644
index 000000000..2d4a46b06
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/tensorflow-project.svg
@@ -0,0 +1,10 @@
+
diff --git a/Projects/TensorFlow/Icons-SVG-Sources/trainable.svg b/Projects/TensorFlow/Icons-SVG-Sources/trainable.svg
new file mode 100644
index 000000000..9420b9e6a
--- /dev/null
+++ b/Projects/TensorFlow/Icons-SVG-Sources/trainable.svg
@@ -0,0 +1,8 @@
+
diff --git a/Projects/TensorFlow/Icons/activation-function.png b/Projects/TensorFlow/Icons/activation-function.png
new file mode 100644
index 000000000..b918d273b
Binary files /dev/null and b/Projects/TensorFlow/Icons/activation-function.png differ
diff --git a/Projects/TensorFlow/Icons/basic-layers.png b/Projects/TensorFlow/Icons/basic-layers.png
new file mode 100644
index 000000000..991892a3f
Binary files /dev/null and b/Projects/TensorFlow/Icons/basic-layers.png differ
diff --git a/Projects/TensorFlow/Icons/dense-layer.png b/Projects/TensorFlow/Icons/dense-layer.png
new file mode 100644
index 000000000..74344c99e
Binary files /dev/null and b/Projects/TensorFlow/Icons/dense-layer.png differ
diff --git a/Projects/TensorFlow/Icons/dimensionality-units.png b/Projects/TensorFlow/Icons/dimensionality-units.png
new file mode 100644
index 000000000..868a7db79
Binary files /dev/null and b/Projects/TensorFlow/Icons/dimensionality-units.png differ
diff --git a/Projects/TensorFlow/Icons/dtype.png b/Projects/TensorFlow/Icons/dtype.png
new file mode 100644
index 000000000..540d4ea17
Binary files /dev/null and b/Projects/TensorFlow/Icons/dtype.png differ
diff --git a/Projects/TensorFlow/Icons/layers-api.png b/Projects/TensorFlow/Icons/layers-api.png
new file mode 100644
index 000000000..dd28e51e6
Binary files /dev/null and b/Projects/TensorFlow/Icons/layers-api.png differ
diff --git a/Projects/TensorFlow/Icons/output-layer.png b/Projects/TensorFlow/Icons/output-layer.png
new file mode 100644
index 000000000..969f9a87f
Binary files /dev/null and b/Projects/TensorFlow/Icons/output-layer.png differ
diff --git a/Projects/TensorFlow/Icons/sequential-layer.png b/Projects/TensorFlow/Icons/sequential-layer.png
new file mode 100644
index 000000000..29d327998
Binary files /dev/null and b/Projects/TensorFlow/Icons/sequential-layer.png differ
diff --git a/Projects/TensorFlow/Icons/sequential-model.png b/Projects/TensorFlow/Icons/sequential-model.png
new file mode 100644
index 000000000..02b22e2e8
Binary files /dev/null and b/Projects/TensorFlow/Icons/sequential-model.png differ
diff --git a/Projects/TensorFlow/Icons/trainable.png b/Projects/TensorFlow/Icons/trainable.png
new file mode 100644
index 000000000..f3168f977
Binary files /dev/null and b/Projects/TensorFlow/Icons/trainable.png differ