Skip to content

DASMAC-com/dropset-alpha

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dropset Workspace

dropset is an on-chain order book program built for Solana.

🧱 Workspace Overview

dropset-interface

The program’s external interface: instruction schemas, account layouts, and shared state types. This crate is client-agnostic and can be imported by both on-chain and off-chain consumers.

instruction-macros

A procedural macro crate that generates strongly-typed instruction builders, account context structs, and validation scaffolding.

instruction-macros-impl

The implementation crate for instruction-macros. Handles all the parsing, validation, and token generation logic for the procedural macros.

dropset-program

The Solana on-chain program.

dropset-client

A lightweight Rust client for local testing, benchmarking, and integration with RPC services. Provides helpers for sending transactions and fetching parsed state via the JSON RPC API.

dropset/services

The faucet, maker, and taker bots below are prototype services intended for experimentation and testing, not production use.

faucet service

A faucet service intended to send base and quote mint tokens associated with a dropset market to an address upon request.

It's obviously only intended to run on a Solana test network like localhost, devnet, or testnet.

See faucet/README.md for more info.

maker-bot

A market-making bot implementing a naive version of the Avellaneda-Stoikov model for a dropset market.

See maker-bot/README.md for more info.

taker-bot

A taker bot that periodically sends random market orders to a dropset market.

See taker-bot/README.md for more info.

▶️ Running

⚡ Benchmarks

See cu-bench/README.md for details on what is measured and why.

bash cu-bench/dropset/run-bench.sh
bash cu-bench/manifest/run-bench.sh
bash cu-bench/phoenix/run-bench.sh

🧪 Faucet Service and Market Maker/Taker Bots (experimental)

See each service's README.md for how to run it:

📚 Documentation

You can generate and open the full internal documentation (including private items and doc-hidden modules) using:

cargo doc --open --no-deps --document-private-items

💻 Viewing on wsl

If you're on Windows Subsystem for Linux cargo doc --open won't automatically work. You must convert the doc target path to a Windows path first, and then manually open it in your browser.

If you're using chrome.exe for example, at the repository root you could run:

# Build the docs first
cargo doc --no-deps --document-private-items

# Set the docs path as a Windows path
DOCS_PATH=$(wslpath -w target/doc/dropset_program/index.html)

# Open the docs in Chrome
chrome.exe "$DOCS_PATH"

# ---
# As a copy pastable one-liner
cargo doc --no-deps --document-private-items && \
  chrome.exe "$(wslpath -w target/doc/dropset_program/index.html)"

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages