{"id":20162062,"url":"https://github.com/arbprotocol/jupgrid","last_synced_at":"2025-05-07T02:00:24.991Z","repository":{"id":222887131,"uuid":"758619837","full_name":"ARBProtocol/jupgrid","owner":"ARBProtocol","description":"ARB Protocol | Limit Order GridBot Using Jupiter","archived":false,"fork":false,"pushed_at":"2024-06-22T22:15:02.000Z","size":386,"stargazers_count":45,"open_issues_count":0,"forks_count":20,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-24T19:38:56.782Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ARBProtocol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-16T17:53:41.000Z","updated_at":"2024-10-10T23:55:46.000Z","dependencies_parsed_at":"2024-02-16T20:24:11.269Z","dependency_job_id":"beb37106-0183-423a-a803-6aa35d7160d9","html_url":"https://github.com/ARBProtocol/jupgrid","commit_stats":null,"previous_names":["arbprotocol/jupgrid"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARBProtocol%2Fjupgrid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARBProtocol%2Fjupgrid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARBProtocol%2Fjupgrid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ARBProtocol%2Fjupgrid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ARBProtocol","download_url":"https://codeload.github.com/ARBProtocol/jupgrid/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252798832,"owners_count":21805882,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-14T00:23:07.198Z","updated_at":"2025-05-07T02:00:24.957Z","avatar_url":"https://github.com/ARBProtocol.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n## Jupgrid: Decentralized Grid Trading Bot Version 0.5.2 Beta\n\n\n![GitHub last commit](https://img.shields.io/github/last-commit/ARBProtocol/jupgrid) ![GitHub issues](https://img.shields.io/github/issues/ARBProtocol/jupgrid) ![GitHub number of milestones](https://img.shields.io/github/milestones/all/ARBProtocol/jupgrid) ![GitHub stars](https://img.shields.io/github/stars/ARBProtocol/jupgrid?style=social)\n[![Twitter Follow](https://img.shields.io/twitter/follow/arbprotocol?style=social)](https://twitter.com/arbprotocol)\n\nJupGrid is a cutting-edge, fully decentralized cryptocurrency grid trading bot designed to operate on the Jupiter Limit Order Book. It runs locally on your machine, offering a secure and personal way to automate a grid trading bot. This bot places 1 buy and 1 sell order at a time, meaning you can be more capital-efficient!\n\nUse of this bot/script is at your own risk. Use of this bot/script can lead to loss of funds, so please exercise proper due diligence and DYOR before continuing.\n\n## Table of Contents\n\n-   [Features](#features-)\n-   [Installation](#installation-)\n-   [Usage](#usage-)\n-   [Configuration](#configuration-)\n-   [Contributing](#contributing-)\n-   [License](#license-)\n\n## Features ✨\n\n-   **Fully Decentralized Trading:** Operates on the Jupiter Limit Order Book, ensuring full control over your trading data and strategy.\n    [Jupiter Limit Order Book](https://jup.ag/limit/SOL-USDC)\n-   **Local Operation:** Runs on your own machine or a VPS, providing an additional layer of security and privacy.\n-   **Simple Grid Strategy:** Places one buy order and one sell order based on user-defined parameters, optimizing for market conditions, whilst being capital efficient.\n-   **Easy Setup:** Comes with a straightforward installation and setup process, including auto-creation of necessary user files.\n-   **User Prompted Parameters:** Dynamically prompts the user for trading parameters, allowing for flexible and responsive trading setups.\n\n## Installation 🔧\n\nDownload the source code by cloning it:\n\n```bash\ngit clone https://github.com/ARBProtocol/jupgrid\nnpm install\n```\n\n## Usage 🚀\n\n1. **Initial Setup:** Run Jupgrid for the first time to create the necessary user configuration files:\n\n```bash\n    node .\n```\n\nThis will generate a `.env` file where you will fill in your secure data.\n\n2. **Configuration:** Open the `.env` file in a text editor and input your Phantom wallet Private Key, and the URL to your RPC.\n\n3. **Encryption:** Start Jupgrid with `node .` again. This time you will be prompted to enter a password to locally encrypt your private key and RPC connection.\n\n4. **Start JupGrid!** Start JupGrid a 3rd time with `node .` and this time you will be prompted to enter the password you entered previously. You will then be show the start-up prompts, which allow you to modify the following parameters:\n\n    - Token A:\n    - Token B:\n    - Infinity Target Value: (Maximum $ value of Token B you want to hold - Dont set this higher than your TokenA+B value!)\n    - Spread (% difference from current market price to orders):\n    - Stop Loss ($ value for BOTH Token A and Token B - If your wallet hits this value, the script will stop for safety)\n    - Delay (This is used to stop you getting rate-limited by Jupiter API. JupGrid is a \"slow\" bot, and thus doesnt need information every second).\n\nJupgrid will then place one buy and one sell order based on the parameters you have set.\n\n## Configuration ⚙️\n\nThe `.env` file will need to contain your Phantom Wallet Private Key and URL to your RPC connection. Ensure you fill it out before running the bot for the second time:\n\n-   `RPC_URL`=YourRPCURLHere\n-   `PRIVATE_KEY`=YourPrivateKeyHere\n\nOnce these are encrypted, they are no longer human-readable. Please ensure you have other copies of this information saved elsewhere.\n\nThere will also be a `userSettings.json` file created. This will contain data on the parameters you set during setup.\n\n## Contributing 🤝\n\nWe welcome contributions from everyone! To contribute:\n\n1. Fork the project\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Create a new Pull Request\n6. ❤️\n\n#### Follow us on Twitter: [@arbsolana](https://twitter.com/arbprotocol) for more updates.\n\n## License 📄\n\nThis project is licensed under the MIT License - see the `LICENSE` file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farbprotocol%2Fjupgrid","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farbprotocol%2Fjupgrid","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farbprotocol%2Fjupgrid/lists"}