Skip to content

Computes TWAPs for Uniswap V2 pairs and posts to Fuse price oracles.

Notifications You must be signed in to change notification settings

Rari-Capital/fuse-twap-bot

Repository files navigation

Fuse by Rari Capital: Uniswap V2 TWAP Bot

This repository contains the JavaScript source code for the Fuse Uniswap V2 TWAP Bot. See here for the Fuse dApp, here for the Fuse SDK, or here for the Fuse contracts.

How it works

This bot updates on-chain price data for Fuse pools via TWAPs of Uniswap V2 (and SushiSwap) pairs based in ETH. If you are using prices for which others are not reliably posting TWAPs, you will need to run a bot and a redundancy bot; if others are reliably posting TWAPs, simply run your own redundancy bot for additional security. Note that the more often you update the oracle and the more assets you do so for, the ETH you will spend on gas fees. However, also note that infrequent updates to an asset's price could leave room for attackers to profit via arbitrage at the expense of your users.

Installation

You'll want to run the script on the latest Node.js LTS (tested with v12.16.1) with the latest version of NPM.

Install PM2 (process manager) globally: npm i -g pm2

Install fuse-twap-bot dependencies: npm i or npm install

Usage

Configure your environment in ecosystem.config.js.

Start the rebalancer with PM2: pm2 start ecosystem.config.js (for production usage, add --env production)

Stop with PM2: pm2 stop ecosystem.config.js

Check process status with PM2: pm2 list

Find PM2 logs in ~/.pm2/logs.

License

See LICENSE.

Credits

Fuse's dApp is developed by David Lucid of Rari Capital. Find out more about Rari Capital at rari.capital.

About

Computes TWAPs for Uniswap V2 pairs and posts to Fuse price oracles.

Resources

Stars

Watchers

Forks

Packages

No packages published