npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@steerprotocol/steer-toolset

v1.7.1

Published

Backtesting toolset for Steer Protocol

Downloads

77

Readme

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 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