jedibot is an application that aims to do beneficial actions on the Ethereum blockchain for the DeFi ecosystem while earning a profit for the user.

Related tags

Spring Boot jedibot
Overview

jedibot License: MIT Build Status Coverage

jedibot is an application that aims to do beneficial actions on the Ethereum blockchain for the DeFi ecosystem while earning a profit for the user. These actions include maintaining the DAI peg, providing liquidity and liquidating undercollateralized assets.

Getting started

Prerequisites

    $ echo $JAVA_HOME
    C:\Program Files\Java\jdk-14.0.1
    $ mvn -version
    Apache Maven 3.6.3

Installing

  • mvn install

Configuration

  • Update the configuration file ./config.properties
infuraProjectId=
password=
wallet=
transactionsRequireConfirmation=true
playSoundOnTransaction=true
uniswapBuyProfitPercentage=0.5
uniswapSellProfitPercentage=0.5
minimumEthereumReserveUpperLimit=0.20
minimumEthereumReserveLowerLimit=0.10
minimumEthereumNecessaryForSale=1.0
minimumDaiNecessaryForSaleAndLending=250.0
minimumFlipAuctionProfit=50.0
minimumGasPrice=1000000000
maximumGasPrice=30000000000
testProperty=true

Make sure to never commit your config.properties file!

  • Make git stop tracking your config file git update-index --skip-worktree ./config.properties
  • Make git start tracking your config file again git update-index --no-skip-worktree ./config.properties

Compile

  • mvn clean compile assembly:single

Running the tests

  • All Tests mvn clean test
  • Unit Tests mvn clean test -DskipITs
  • Integration Tests mvn clean failsafe:integration-test

Run

  • Either just run it in the IDE of your choice
  • or execute the compiled application java -jar jedibot-0.1-jar-with-dependencies.jar and make sure it has access to the config.properties file

Logs

You will find the logs in ./logs.

Current features

  • sells DAI, if DAI > $1.00 on Oasis oasis.checkIfSellDaiIsProfitableThenDoIt(balances);
  • buys DAI, if DAI < $1.00 on Oasis oasis.checkIfBuyDaiIsProfitableThenDoIt(balances);
  • sells DAI, if DAI > $1.00 on Uniswap uniswap.checkIfSellDaiIsProfitableThenDoIt(balances);
  • buys DAI, if DAI < $1.00 on Uniswap uniswap.checkIfBuyDaiIsProfitableThenDoIt(balances);
  • earns interest on Compound, if there has been no market action for a while compoundDai.lendDai(balances);
  • bids on flip auctions, if the auctions offer cheaper ETHflipper.checkIfThereAreProfitableFlipAuctions(balances);

Contribute

Feel free to open merge requests.

Developer Guide

License

This project is licensed under the MIT License - see the LICENSE file for details

You might also like...

A Spring Boot Camel boilerplate that aims to consume events from Apache Kafka, process it and send to a PostgreSQL database.

SPRING-BOOT CAMEL BOILERPLATE This is a Spring-Boot Camel Application model that you can use as a reference to study or even to use in your company. I

Apr 4, 2022

PluginHooker is a Bukkit plugin that aims to provide an ultimately simple and better method to hook Bukkit events.

PluginHooker PluginHooker is a Bukkit plugin that aims to provide an ultimately simple and better method to hook Bukkit events. Localization 简体中文 Feat

Nov 23, 2022

This Web Application Allows A user to upload a two minutes Video. It uses Server Side Capabilities of Nodejs and Spring Boot .

This Web Application Allows A user to upload a two minutes Video. It uses Server Side Capabilities of Nodejs and Spring Boot .

VideoStreamingApplication Purpose Of This Application These days trend of short videos are on rise youtube recently realsed "Shorts" . So , taking ins

Nov 13, 2022

The state-of-the-art Dashboard of Apache RoccketMQ provides excellent monitoring capability. Various graphs and statistics of events, performance and system information of clients and application is evidently made available to the user.

RocketMQ Dashboard How To Install With Docker get docker image mvn clean package -Dmaven.test.skip=true docker:build or docker pull apacherocketmq/ro

Dec 30, 2022

Authentication and authorization for application, api and user

多树AUTH / MT-AUTH 用户,应用,API管理中心 MT-AUTH是一款基于Spring Boot, OAuth2与事件驱动的角色的权限管理(RBAC)系统,通过集成Spring Cloud Gateway实现了API鉴权,缓存,跨域,CSRF防护,特殊字符过滤等常用功能 项目特点 基于事

Dec 14, 2022

The application consists of a web page with a list of some movies. The page allows user interaction through ratings of movies listed in the web app.

The application consists of a web page with a list of some movies. The page allows user interaction through ratings of movies listed in the web app.

DSMovie About the project https://matheus-maia-alvarez-dsmovie.netlify.app/ DSMovie is a full stack web and mobile application built during the Spring

Jul 21, 2022

BurritoSpigot is a fork of TacoSpigot 1.8.9 that offers several enhancements to performance as well as bug fixes. while offer extra APIs and support for plugins

🌯 BurritoSpigot 🌯 BurritoSpigot is a fork of TacoSpigot 1.8.8 that offers several enhancements to performance as well as bug fixes. while offer extr

Dec 20, 2022

Collection of homework assignments I did for myself and for others while as an undergrad @ UNLV.

Collection of homework assignments I did for myself and for others while as an undergrad @ UNLV.

Mona Lisa Collection of homework assignments I did for myself and for others while as an undergrad @ UNLV. If you have questions or concerns please fe

May 10, 2022

WordleCompanion - A tool to help you determine those hard-to-guess words while doing your daily Wordle puzzles.

A tool to help you determine those hard-to-guess words while doing your daily Wordle puzzles. How it works Enter the 5-letter word you

Jan 22, 2022
Owner
我是高天才!
我是高天才!
Android Application for a user’s favorite Movies, TV shows and Anime while keeping up to date with the latest releases.

MovieDroid Native Android Application for organized and categorized list of a user’s favorite movies and TV shows while keeping up to date with the la

PEC ACM CSS 20 Dec 26, 2022
Java implementation of Beacon Chain for Ethereum 2.0, and its Backend API and full Infrastructure.

hailong Implementation of the Ethereum 2.0 Beacon Chain. Based on the (evolving) specification. Build Instructions Install Prerequisites 1) Java 11 Ub

我是高天才! 14 Feb 6, 2022
Build criterion and ecosystem above multi-model databases

ShardingSphere - Building a Criterion and Ecosystem Above Multi-Model Databases Official Website: https://shardingsphere.apache.org/ Stargazers Over T

The Apache Software Foundation 17.8k Jan 9, 2023
SlimeVR-Server - Server app for SlimeVR ecosystem

SlimeVR Server Server app for SlimeVR ecosystem Server orchestrates communication between multiple sensors and integrations, like SteamVR. Sensors imp

null 362 Dec 31, 2022
I had too much coffee and decided to mirror my actions by writing too many programs in Java.

Raging Coffee Table of Contents Description Running the Programs Extra Dependencies Roadmap Further Reading Known Issues Resources Contributions Descr

Thoroughfare by the Brooks 20 Dec 15, 2022
MarioCash is a trust-based multi-dimensional blockchains built with a vision to connect everything and any blockchain networks.

MarioCash We will change the world by blockchain. What is mariocash? MARIOCASH is a trust-based multi-dimensional blockchains (branches) built with a

Brantley·Williams 23 Mar 10, 2022
BlockChain Pipeline using Jenkins for DevOps

BlockChain Pipeline for Jenkins This project is inspired by the work of Redback and Microsoft teams for developing the process using VSTS. I've chosen

Brantley·Williams 11 Jun 8, 2022
A blockchain system to manage monetary transactions between the different nodes of a decentralized network.

Blockchain under a clear vision A blockchain system to manage monetary transactions between the different nodes of a decentralized network. Authors @s

SamDik 3 Jun 9, 2022
A java library for working with the Solana blockchain.

solanaj Updated version of p2p-org/solanaj Solana blockchain client, written in pure Java. Solanaj is an API for integrating with Solana blockchain us

paymennt 13 Dec 10, 2022
A web interface for viewing market data from Project Serum, on the Solana blockchain.

serum-data A web interface for viewing market data from Project Serum, on the Solana blockchain. Building Requirements (if not using Docker) Java 17 M

Michael Morrell 36 Jan 1, 2023