DocumentationGuide for Raspberry Pi

Raspberry Pi Support

1. Strategy Deployment via AlgoMesh GUI

Using the AlgoMesh Desktop GUI workspace, users can configure technical indicators, set up data feeding paths, and associate target strategy logic without writing complex database scripts manually. For more information kindly look into its documentation. Once configured, you can download a generated JSON configuration file. This JSON file acts as a portable blueprint of your setup, which the lightweight database engine can load on startup to initialize and run the strategies headlessly in resource-constrained environments like a Raspberry Pi.

2. Structure of the Exported JSON Configuration

The exported JSON represents the visual canvas graph state from the AlgoMesh editor (nodes and connection edges). It maps data streams, indicators, math filters, and output order executions into a portable structure that the Raspberry Pi engine compiles. To run your pipeline you need this. Below is given one example of such type of json.

Exported JSON Blueprint
{
  "pair": "BTC/USD",
  "nodes": [
    {
      "id": "price-node-1",
      "type": "custom",
      "data": {
        "label": "Crypto Price",
        "group": "data",
        "params": {
          "symbol": "BTCUSDT",
          "dataType": "trades"
        }
      }
    },
    {
      "id": "rsi-node-2",
      "type": "custom",
      "data": {
        "label": "RSI",
        "group": "technical",
        "params": {
          "period": 14,
          "tick": 100
        }
      }
    },
    {
      "id": "logic-node-3",
      "type": "custom",
      "data": {
        "label": "Greater Than (>)",
        "group": "logic",
        "params": {
          "constantB": 70.0
        }
      }
    },
    {
      "id": "order-node-4",
      "type": "custom",
      "data": {
        "label": "Buy Order",
        "group": "output",
        "params": {
          "type": "market",
          "size": 100
        }
      }
    }
  ],
  "edges": [
    {
      "id": "edge-1-to-2",
      "source": "price-node-1",
      "target": "rsi-node-2",
      "animated": true
    },
    {
      "id": "edge-2-to-3",
      "source": "rsi-node-2",
      "target": "logic-node-3",
      "animated": true
    },
    {
      "id": "edge-3-to-4",
      "source": "logic-node-3",
      "target": "order-node-4",
      "animated": true
    }
  ]
}

3. Running the JSON on Raspberry Pi

After forming pipeline through GUI and generating its JSON. You can follow below steps to execute it.

Step 1: Run download.exe

Open up your PI and execute this exe file on your PI. Without running this you will not be allowed to execute main.exe file.

Terminal Command
./download.exe

Step 2: Run main.exe

You will be provided with main.exe file you just need to run it.

Terminal Command
./main.exe

Step 3: Final step

After running main.exe it will open up nanodb shell where you just have to run below given command. And after this your pipeline will be up and running. Here all you need to provide is absolute path to your json file and symbol on which you want to receive your data. Here, the pipeline will be running until you close the nanodb shell.

Terminal Command
nanoVaultDb> BUILD GRAPH STRATEGY FROM "./path-to-json-file" ON BINANCE SYMBOL 0;
build : build
graph : graph
strategy : strategy
FROM : from
STRING : "./path-to-json-file"
on : on
binance : binance
SYMBOL : symbol
NUMBER : 0
SEMICOLON : ;
END_OF_FILE : 
[makeNodes] Starting nodes parse. Total count = 4
[makeNodes] Parsed node ID: order-1, groupStr: output
[makeNodes] Parsed node ID: order-2, groupStr: output
[makeNodes] Parsed node ID: order-3, groupStr: output
[makeNodes] Parsed node ID: order-4, groupStr: output
[buildTopologicalSort] Sorted 4 nodes: order-4(7) -> order-3(7) -> order-2(7) -> order-1(7) -> END
{"suceess" : true}
nanoVaultDb>