Deployment

Starfish Factor Lab is built on DolphinDB Server (recommended version 2.00.14 or higher). The deployment mode of Starfish depends on whether DolphinDB is deployed in standalone or cluster mode. The following instructions assume the DolphinDB installation directory is /home/dolphindb/server. Please replace it with the actual directory during deployment. The deployment can be completed without stopping the DolphinDB process.
Note:
Starfish Factor Lab requires a premium license to use. Please contact technical support.

Standalone Deployment

Follow these steps to deploy Starfish if your DolphinDB Server is deployed in standalone mode.

Extract the Files

Run the following commands to extract the compressed package to /home/dolphindb/server/

cd /home/dolphindb/server/
unzip Starfish_V3.00.0.zip

The extracted files include:

Starfish_V3.00.0.zip
├── modules
│   └── starfish
│       ├── facplfBasic.dom
│       ├── facplf.dom
│       ├── facplfEnv.dom
│       └── facplfRun.dom
├── starfish
│   └── init
│       ├── init.dos
│       └── internalTemplate.bin
├── starfish_manual.pdf
└── web
    └── starfish

Install and Load Plugins

Starfish provides modules such as strategy & backtesting, which rely on Backtest and MatchingEngineSimulator plugins.

Execute the following scripts via GUI, VSCode, Web, or API:

installPlugin("Backtest")
installPlugin("MatchingEngineSimulator")
loadPlugin("Backtest")
loadPlugin("MatchingEngineSimulator")

Initialization

Run init.dos in the init directory to complete the initialization.

Execute the following scripts to initialize for the first-time deployment:

run("/home/dolphindb/server/starfish/init/init.dos")

If you are upgrading from an earlier Alpha version, please contact technical support.

Add Configuration Parameter

After successful initialization, add the following configuration parameter to dolphindb.cfg to ensure successful restart:

preloadModules=plugins::Backtest,plugins::MatchingEngineSimulator

Cluster Deployment

Follow these steps to deploy Starfish if your DolphinDB Server is deployed in cluster mode.

Extract the Files

Run the following commands to extract the compressed package to /home/dolphindb/server/:

cd /home/dolphindb/server/
unzip Starfish_V3.00.0.zip

The extracted files include:

Starfish_V3.00.0.zip
├── modules
│   └── starfish
│       ├── facplfBasic.dom
│       ├── facplf.dom
│       ├── facplfEnv.dom
│       └── facplfRun.dom
├── starfish
│   └── init
│       ├── init.dos
│       └── internalTemplate.bin
├── starfish_manual.pdf
└── web
     └── starfish

Distribute Files

Distribute the extracted files as instructed. You can obtain <HomeDir> using the getHomeDir() function:

  • Place the files from the Starfish modules directory into the DolphinDB server modules directory on all data nodes and compute nodes.
  • Place the files from the Starfish starfish directory into the DolphinDB server <HomeDir> directory on any data node or compute node.

For example, execute the following commands on dnode1 (replace the path according to your actual setup):

cd /home/dolphindb/server/
cp -r starfish ./clusterDemo/data/dnode1/
cp -r modules/starfish ./clusterDemo/data/dnode1/modules/

Install and Load Plugins

Starfish includes modules such as strategy & backtesting, which rely on Backtest and MatchingEngineSimulator plugins.

Execute the following scripts via GUI, VSCode, Web, or API on all nodes (controllers, data nodes, compute nodes):

installPlugin("Backtest")
installPlugin("MatchingEngineSimulator")
loadPlugin("Backtest")
loadPlugin("MatchingEngineSimulator")

Initialization

Run init.dos in the init directory on any data node or compute node to complete the initialization.

Execute the following scripts to initialize for the first-time deployment:

run("/home/dolphindb/server/clusterDemo/data/dnode1/starfish/init/init.dos")

If you are upgrading from an earlier Alpha version, please contact technical support.

Add Configuration Parameter

After successful initialization, add the following configuration parameter in controller.cfg and cluster.cfg on all nodes (controllers, data nodes, compute nodes) to ensure successful restart of nodes:

preloadModules=plugins::Backtest,plugins::MatchingEngineSimulator

Access Starfish Factor Lab

After successful deployment, you can access Starfish via the URL: http://127.0.0.1:8848/starfish/index.html.

127.0.0.1 represents the IP address of the node's server and 8848 is the port number. Please replace them according to your actual setup.

For cluster deployment, you can access from any data node or compute node