Skip to content

Latest commit

 

History

History
167 lines (145 loc) · 6.03 KB

README.md

File metadata and controls

167 lines (145 loc) · 6.03 KB

📟 JUPITER PYTHON CLI 🪐

banner_video.mp4




📖 Introduction

Jupiter Python CLI is a Command Line Interface (CLI) where you can use Jupiter features including a Sniper Bot.

⚠️ Disclaimer

Please note that I'm not responsible for any loss of funds, damages, or other libailities resulting from the use of this software or any associated services.
This tool is provided for educational purposes only and should not be used as financial advice, it is still in expiremental phase so use it at your own risk.

✨ Quickstart

This project has been made for Python 3.11

🛠️ Installation

💾 Clone this repository

git clone https://github.com/0xtaodev/jupiter-python-cli

💻 Create a virtual environnment

python -m venv venv

🌐 Activate Virtual Environnement

.\venv\Scripts\Activate.ps1

▶️ Start CLI

python main.py

🗺️ CLI Overview

📟 CLI
│
├── 🪐 Jupiter Exchange
│   ├── Swap
│   ├── Limit Order
│   │   ├── Open Limit Order
│   │   ├── Display Canceled Orders History
│   │   └── Display Filled Orders History
│   ├── DCA
│   │   ├── Open DCA Account
│   │   └── Manage DCA Accounts
│   ├── Token Sniper
│   │   ├── Add a token to snipe
│   │   ├── Watch token
│   │   └── Edit tokens
│   └── Change wallet
├── 💳 Manage Wallets
│   ├── Add wallet
│   ├── Edit wallet name
│   └── Delete wallet(s)
├── 🔧 CLI settings
│   ├── Solana RPC URL Endpoint
│   ├── Discord
│   └── Telegram
├── ❓ About
└── 🔚 Exit CLI

🤖 Sniper Bot

In top of most of the Jupiter features that you can use, you are also able to snipe token.
Please note that Sniper Bot is experimental and subject to change as there might be issues that I didn't see.

⚙️ How it works

Every second, the bot will send a GET request to Jupiter API Quote.
If there is a route available for this token, it will then execute it.
Please note that only tokens with sufficient liquidity and on-chain metadata are listed in Jupiter API: min. 250$ liquidty and buy/sell price impact are below 30%.
When these criteria are met, it will take a few minutes to automatically add the token.

🆕 Add a token to snipe

  • Token/Project name
  • Token Address
  • Amount ($) to buy
  • Take Profit ($)
  • Stop Loss ($)
  • Slippage (%)

If token has a launch date:

  • Month
  • Day
  • Hours
  • Minutes

🔭 Watch token

You can watch your trading position by selecting the token.

✍🏻 Edit tokens

You can modify token info as follow:

  • Name
  • Address
  • Selected Wallet
  • Buy Amount
  • Take Profit
  • Stop Loss
  • Slippage
  • Launch date
  • Delete

🗨️ Q&A

Where are my private keys?

Your private keys are stored in wallets.json.

Is there any fees when swapping using CLI?

There are no additional fees when performing swaps via the CLI; the costs should be the same as using the Jupiter UI.

Does sniper bot remains running if I close the CLI?

If you close the CLI, the sniper bot will stop running.

Is it possible to swap any tokens?

You can only swap tokens that are listed on Jupiter based on their criterias.

🚨 Known bugs

ImportError: sync_native from spl.token.instructions

  1. Go to https://github.com/michaelhly/solana-py/tree/master/src/spl/token and download instructions.py
  2. In your packages folder, replace spl/token/instructions.py with the one you just downloaded.

Sometimes 0.01 is added when typying numbers

Invalid DCA Accounts listed (and cannot be deleted)

Discord Webhook or Telegram API not being added in config.json

Duplicating menus when resizing the window

Sniper Bot: it's taking 10-20 seconds to get real trade position info after a swap route is found and executed

📝 TO-DO

  • Clean up code ⚡
  • Add docstrings 📑
  • Display tokens owned 🪙
  • Favorite tokens displayed in first tokens for swap/limit orders/dca... ⭐
  • Wallet Duplication detection
  • Display message when swap failed (slippage error...)
  • Disable swap / limits orders / etc, if not enough $SOL to cover the tx fees
  • Give possibility to exit current choice (swap, limit order, dca, donation...) 🏃🚪
  • Adjust Wallets ID when one is deleted
  • Bridge 🌉
  • Perpetual 💸

🤝 Contributions

If you are interesting in contributing, fork the repository and submit a pull request in order to merge your improvements into the main repository.
Contact me for any inquiry, I will reach you as soon as possible.
Discord Twitter

👑 Donations

This project doesn't include platform fees. If you find value in it and would like to support its development, your donations are greatly appreciated.
You can donate through CLI in About menu.
SOLANA ADDRESS

AyWu89SjZBW1MzkxiREmgtyMKxSkS1zVy8Uo23RyLphX