outsmartchad / solana-trading-cli

High-performance modules for develop Solana Trading Bots: CLI, gRPC bots, and low-latency integrations with Jito, bloXroute, Jupiter, and DEXes
MIT License
260 stars 118 forks source link
algo-trading command-line-tool decentralized-exchange developer-tools grpc high-frequency-trading meteora orca raydium solana tradingbot

Table of Contents

๐Ÿš€ About

Solana Trading Client is a free, highly efficient library designed to facilitate rapid development and deployment of custom trading strategies across multiple Solana decentralized exchanges (DEXs). It emphasizes low-latency performance, flexibility, and real-time data processing, utilizing cutting-edge infrastructure and well-established software design principles. These features ensure the following benefits:

The library is built with modularity and extensibility in mind, employing software design patterns that promote:

Designed for seamless integration into existing trading systems, the Open-Source Low-Latency Trading Bot provides a robust foundation for both novice algo-traders and experienced quantitative analysts. Its open-source nature encourages community contributions and continuous improvement, ensuring the bot evolves alongside the fast-paced world of decentralized finance.

โญ Key Features

Token Creation and Multi-DEX Support

Create your own Solana SPL tokens on mainnet via Pump.fun and swap tokens across multiple decentralized exchanges:

Exchange Documentation
Jupiter CLI & trading functions guide
Raydium CLI & trading functions guide
Orca CLI & trading functions guide
Meteora CLI & trading functions guide
Pump.fun Integrated support

Low-Latency Infrastructure

Accelerate transaction finality using Jito and bloXroute for lightning-fast trades. Both capable of pushing your trasaction faster then any other service provider on the market

Provider Description
Jito Fast trascation and optimizes transaction ordering and execution specifically
Bloxroute Fast trascation and accelerates transaction propagation

Real-Time Market Data

Fetch critical metrics for any liquidity pool in real-time with RPC calls:

Advanced Trading Tools

Utilize our local limit order and TP/SL module with zero dependencies. Explore the documentation

All commands

Here

Open-Source Bots

Leverage our cutting-edge, open-source trading bots:

Bot Name Features Source
gRPC Pump.fun Sniper Bot Ultra-low latency (0.4-2 seconds) View source
gRPC Copy Bot Replicate successful trading strategies View source
gRPC Raydium Sniper Bot Optimized for Raydium DEX View source

Extensibility

Our comprehensive toolkit provides everything you need to create your own custom trading bot, tailored to your unique strategies and requirements.

๐Ÿ› ๏ธ Installation

Follow these steps to get your development environment set up:

  1. Clone the repository

    git clone https://github.com/outsmartchad/solana-trading-cli.git
  2. Navigate to the project directory

    cd solana-trading-cli
  3. Install the correct Node.js version

    nvm install
    nvm use
  4. Install dependencies

    npm install
  5. Run the test script

    ts-node test.ts

Installation Prerequisites

Troubleshooting

If you encounter any issues during installation, please check our FAQ or open an issue.

๐Ÿšจ Set Up

Before you begin, ensure you have completed the following steps:

1. Environment Configuration

  1. Locate the template file:

    src/helpers/.env.example
  2. Copy this file and rename it to .env in the same directory.

  3. Open the .env file and add the following required information:

    • Mainnet wallet secret key (required)
    • RPC endpoint (required)
    • Custom Jito fee (if needed)
  4. Optional configurations:

    • Devnet wallet secret key
    • Shyft API key

2. API Keys and Wallet Setup

3. Final Check

โš ๏ธ Security Note: Never share or commit your .env file or any private keys. The .env file is included in .gitignore for your safety.

For any issues with configuration, please refer to our Troubleshooting Guide or open an issue.

๐Ÿค Feedback and Contributions

We've made every effort to implement all the main aspects of solana trading in the best possible way. However, the development journey doesn't end here, and your input is crucial for our continuous improvement.

[!IMPORTANT] Whether you have feedback on features, have encountered any bugs, or have suggestions for enhancements, we're eager to hear from you. Your insights help us make the Solana Trading Client library more robust and user-friendly.

Please feel free to contribute by submitting an issue, joining the discussions, or joining our discord. Each contribution helps us grow and improve.

We appreciate your support and look forward to making our product even better with your help!

How to Contribute

Apply Latest Changes from remote repo

โœ… Credits

โ€ผ๏ธ Disclaimer

This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.

Use at your own risk. The authors take no responsibility for any harm or damage caused by the use of this software. Users are responsible for ensuring the suitability and safety of this software for their specific use cases.

By using this software, you acknowledge that you have read, understood, and agree to this disclaimer.

If you think this project is useful, please give us a star๐ŸŒŸ, it will help us a lot.

Discord channel: https://discord.gg/hFhQeBCqWX

It is a work in progress, if you have any suggestions or any problems, please let us know!

Stay tuned for the updates.๐Ÿค–