@steerprotocol/steer-toolset
TypeScript icon, indicating that this package has built-in type declarations

1.7.0 • Public • Published

Steer Protocol Developer Toolkit

Version Downloads/month License

The Steer toolset is a growing suite of products to help in developing, debugging, and testing bundles for Steer's platform. In its current stages, the app backtester is the primary feature we expect to be used.

Install Locally

Install via npm or yarn

$ npm install -g @steerprotocol/steer-toolset

Confirm installation with

$ steer-toolset (--version)

Strategies (apps)

In Steer's architecture, apps are WebAssembly bundles containing logic for processing optional data and which produce a transaction request for an action to be taken on chain. In this context, strategies are apps configured to interact with one of Steer's Multi Position Concentrated Liquidity Manager Vaults. In the typical automation flow, data connectors are used to provide data to this strategy as inputs; currently we only support recieving the associated pool's trading candles as data inputs for the strategy. Custom data connectors are coming in the near future, but for now (without custom configuration) your strategy should have no data input or one input that takes OHLCV data.

Users can find a strategy on Steer's dapp, clone the template strategy and develop their own logic, or try some of Steer's preset strategies.

For more information reference the documentation: -Introduction to Steer -Writing an app

Running a Backtest

Backtesting Documentation

Once you have a strategy you would like to backtest, you can run the test with the following:

USAGE
  $ steer-toolset app backtest [FILE] [-p <value>] [-s <value>] [-c]

ARGUMENTS
  FILE  File to load strategy from

FLAGS
  -c, --commandLine    Use the command line to run the backtest. Useful if you don't want to run the backtest in a browser. Deprecated as only simple config objects are        supported.
  -p, --pool=<value>   Pool which the strategy will be tested against.
  -s, --sleep=<value>  Sleep setting for pulling historical data in seconds. Useful if pulling large datasets or you
                       don't want to be rate limited.

EXAMPLES
  $ steer-toolset app backtest '../strategy-template-assemblyscript/build/debug.wasm'

After running the command a new browser window should open up connected to a local server where you will configure the app and set up the backtest parameters. Try refreshing or filling out more info if things seem to freeze, it is advised to set in the following order:

Protocol → Chain → Pool → DataSet → CandleSize (appears on the graph) → Strategy Config → Simulation Settings

After this you should see a green button to start the simulation: Start Button

Once the backtest is complete, check the terminal to see the results!

If you have any problems or sugguestions, please report using Gleap. There is a small chat button in the bottom left of the browser pop up, follow the prompts, we greatly appreciate it. Feel free to ask questions in our Discord as well.

steer-toolset doctor

Clear all cache files and supporting modules. This will delete all datasets you have downloaded. This can be done manually by finding the Steer-toolset in your AppData folder for npm modules and deleting files from the data folder.

USAGE
  $ steer-toolset doctor

DESCRIPTION
  Clear all cache files and supporting modules

EXAMPLES
  $ steer-toolset doctor

See code: dist/commands/doctor.ts

Commands

steer-toolset app

Manage strategies for Steer Protocol

USAGE
  $ steer-toolset app

DESCRIPTION
  Manage strategies for Steer Protocol

EXAMPLES
  $ steer-toolset app backtest

See code: dist/commands/app/index.ts

steer-toolset app backtest FILE

Backtest a strategy against a given data connector

USAGE
  $ steer-toolset app backtest [FILE] [-p <value>] [-s <value>] [-c]

ARGUMENTS
  FILE  File to load strategy from

FLAGS
  -c, --commandLine    Use command line to run the backtest. Useful if you don't want to run the backtest in a browser.
  -p, --pool=<value>   Pool which the strategy will be tested against.
  -s, --sleep=<value>  Sleep setting for pulling historical data in seconds. Useful if pulling large datasets or you
                       don't want to be rate limited.

DESCRIPTION
  Backtest a strategy against a given data connector

EXAMPLES
  $ steer-toolset app backtest

steer-toolset doctor

Clear all cache files and supporting modules

USAGE
  $ steer-toolset doctor

DESCRIPTION
  Clear all cache files and supporting modules

EXAMPLES
  $ steer-toolset doctor

See code: dist/commands/doctor.ts

steer-toolset help [COMMAND]

Display help for steer-toolset.

USAGE
  $ steer-toolset help [COMMAND] [-n]

ARGUMENTS
  COMMAND  Command to show help for.

FLAGS
  -n, --nested-commands  Include all nested commands in the output.

DESCRIPTION
  Display help for steer-toolset.

See code: @oclif/plugin-help

steer-toolset job [TYPE_OF_JOB]

describe the command here

USAGE
  $ steer-toolset job [TYPE_OF_JOB] [-n <value>] [-f]

FLAGS
  -f, --force
  -n, --name=<value>  name to print

DESCRIPTION
  describe the command here

EXAMPLES
  $ steer-toolset job

See code: dist/commands/job/index.ts

steer-toolset plugins

List installed plugins.

USAGE
  $ steer-toolset plugins [--core]

FLAGS
  --core  Show core plugins.

DESCRIPTION
  List installed plugins.

EXAMPLES
  $ steer-toolset plugins

See code: @oclif/plugin-plugins

steer-toolset plugins:install PLUGIN...

Installs a plugin into the CLI.

USAGE
  $ steer-toolset plugins:install PLUGIN...

ARGUMENTS
  PLUGIN  Plugin to install.

FLAGS
  -f, --force    Run yarn install with force flag.
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Installs a plugin into the CLI.
  Can be installed from npm or a git url.

  Installation of a user-installed plugin will override a core plugin.

  e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
  will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
  the CLI without the need to patch and update the whole CLI.


ALIASES
  $ steer-toolset plugins add

EXAMPLES
  $ steer-toolset plugins:install myplugin 

  $ steer-toolset plugins:install https://github.com/someuser/someplugin

  $ steer-toolset plugins:install someuser/someplugin

steer-toolset plugins:inspect PLUGIN...

Displays installation properties of a plugin.

USAGE
  $ steer-toolset plugins:inspect PLUGIN...

ARGUMENTS
  PLUGIN  [default: .] Plugin to inspect.

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Displays installation properties of a plugin.

EXAMPLES
  $ steer-toolset plugins:inspect myplugin

steer-toolset plugins:install PLUGIN...

Installs a plugin into the CLI.

USAGE
  $ steer-toolset plugins:install PLUGIN...

ARGUMENTS
  PLUGIN  Plugin to install.

FLAGS
  -f, --force    Run yarn install with force flag.
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Installs a plugin into the CLI.
  Can be installed from npm or a git url.

  Installation of a user-installed plugin will override a core plugin.

  e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
  will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
  the CLI without the need to patch and update the whole CLI.


ALIASES
  $ steer-toolset plugins add

EXAMPLES
  $ steer-toolset plugins:install myplugin 

  $ steer-toolset plugins:install https://github.com/someuser/someplugin

  $ steer-toolset plugins:install someuser/someplugin

steer-toolset plugins:link PLUGIN

Links a plugin into the CLI for development.

USAGE
  $ steer-toolset plugins:link PLUGIN

ARGUMENTS
  PATH  [default: .] path to plugin

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Links a plugin into the CLI for development.
  Installation of a linked plugin will override a user-installed or core plugin.

  e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
  command will override the user-installed or core plugin implementation. This is useful for development work.


EXAMPLES
  $ steer-toolset plugins:link myplugin

steer-toolset plugins:uninstall PLUGIN...

Removes a plugin from the CLI.

USAGE
  $ steer-toolset plugins:uninstall PLUGIN...

ARGUMENTS
  PLUGIN  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ steer-toolset plugins unlink
  $ steer-toolset plugins remove

steer-toolset plugins:uninstall PLUGIN...

Removes a plugin from the CLI.

USAGE
  $ steer-toolset plugins:uninstall PLUGIN...

ARGUMENTS
  PLUGIN  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ steer-toolset plugins unlink
  $ steer-toolset plugins remove

steer-toolset plugins:uninstall PLUGIN...

Removes a plugin from the CLI.

USAGE
  $ steer-toolset plugins:uninstall PLUGIN...

ARGUMENTS
  PLUGIN  plugin to uninstall

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Removes a plugin from the CLI.

ALIASES
  $ steer-toolset plugins unlink
  $ steer-toolset plugins remove

steer-toolset plugins update

Update installed plugins.

USAGE
  $ steer-toolset plugins update [-h] [-v]

FLAGS
  -h, --help     Show CLI help.
  -v, --verbose

DESCRIPTION
  Update installed plugins.

steer-toolset simulateSlippage

Estimates slippage impacts before and after strategy

USAGE
  $ steer-toolset simulateSlippage [-p <value>] [-f]

FLAGS
  -f, --force
  -p, --pool=<value>  Pool which the strategy will be tested against.

DESCRIPTION
  Estimates slippage impacts before and after strategy

EXAMPLES
  $ steer-toolset simulateSlippage

See code: dist/commands/simulateSlippage.ts

steer-toolset strategy [FILE]

describe the command here

USAGE
  $ steer-toolset strategy [FILE] [-n <value>] [-f]

FLAGS
  -f, --force
  -n, --name=<value>  name to print

DESCRIPTION
  describe the command here

EXAMPLES
  $ steer-toolset strategy

See code: dist/commands/strategy.ts

Readme

Keywords

Package Sidebar

Install

npm i @steerprotocol/steer-toolset

Weekly Downloads

0

Version

1.7.0

License

BUSL 1.1

Unpacked Size

35.7 MB

Total Files

116

Last publish

Collaborators

  • steerguardian