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.
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.
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
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
.
See LICENSE
.
Fuse's dApp is developed by David Lucid of Rari Capital. Find out more about Rari Capital at rari.capital.