Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

BryanFrontend/bolt

Repository files navigation

 ██████╗ ██████╗ ██╗ ████████╗
 ██╔══██╗██╔═══██╗██║ ╚══██╔══╝
 ██████╔╝██║ ██║██║ ██║ 
 ██╔══██╗██║ ██║██║ ██║ 
 ██████╔╝╚██████╔╝███████╗██║ 
 ╚═════╝ ╚═════╝ ╚══════╝╚═╝ 

A 1,000ドル memecoin trading experiment. Fully logged. Fully open.

Python License X / Twitter Status


What is Bolt?

Bolt is a transparent, self-contained trading experiment built around a fixed 1,000ドル wallet.

It does not use trading bots, APIs, or automated execution. Every trade is manually entered via CLI and logged to a flat CSV. Every position is tracked in a local JSON file. The point is visibility — knowing exactly where the money is, how it got there, and what the portfolio looks like at any given moment.

The experiment started with three memecoin positions:

Token Entry Price Capital Allocated
PENGUIN 0ドル.00012 326ドル
WHITEWHALE 0ドル.00031 339ドル
WOJAK 0ドル.000087 335ドル

All positions are tracked in data/wallet.json. All trades are appended to data/trades.csv.


How the Experiment Works

┌─────────────────────────────────────────────────────────┐
│ │
│ 1,000ドル STARTING CAPITAL │
│ │ │
│ ▼ │
│ ┌─────────┐ run.py buy TOKEN 300 │
│ │ CLI │ ──────────────────────► core/trader.py │
│ └─────────┘ │ │
│ ▼ │
│ core/wallet.py │
│ (state manager) │
│ │ │
│ ┌─────────────────┤ │
│ ▼ ▼ │
│ data/wallet.json data/trades.csv │
│ (positions) (full history) │
│ │
└─────────────────────────────────────────────────────────┘

Every command flows through run.pycore/trader.pycore/wallet.py. The wallet file stores live state. The trades CSV stores an append-only history. Nothing is ever overwritten — only appended.


Architecture

bolt/
│
├── run.py ← CLI entrypoint (all commands go here)
│
├── core/
│ ├── wallet.py ← Load, save, mutate wallet state
│ ├── portfolio.py ← Compute metrics, validate trades
│ └── trader.py ← Execute buys and sells
│
├── config/
│ └── settings.py ← Constants: capital, max position size, flags
│
├── data/
│ ├── wallet.json ← Live wallet state (positions + balance)
│ └── trades.csv ← Append-only trade log
│
└── utils/
 └── logger.py ← CSV writer for trade history

Data Flow

run.py buy WOJAK 300
 │
 ▼
core/trader.py → execute_buy()
 │
 ├── core/portfolio.py → validate_trade()
 │ Checks: sufficient balance? within max position size?
 │
 ├── core/wallet.py → add_position()
 │ Updates wallet.json (deducts balance, appends position)
 │
 └── utils/logger.py → log_trade()
 Appends row to trades.csv

Setup

Requirements: Python 3.11+

git clone https://github.com/BryanFrontend/bolt.git
cd bolt
pip install -r requirements.txt

CLI Commands

Show Portfolio Dashboard

python run.py
# or
python run.py portfolio

Output:

 ██████╗ ██████╗ ██╗ ████████╗
 ...
╭──────────────── ⚡ BOLT WALLET ─────────────────╮
│ Starting Capital: 1,000ドル.00 │
│ Available Balance: 0ドル.00 │
│ Total Invested: 1,000ドル.00 │
│ Total Value: 1,000ドル.00 │
│ PnL: 0ドル.00 │
╰─────────────────────────────────────────────────╯
 Open Positions
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Token Invested Entry Price Alloc% Date
──────────────────────────────────────────────────
PENGUIN 326ドル.00 0ドル.00012000 32.6% 2026年03月09日
WHITEWHALE 339ドル.00 0ドル.00031000 33.9% 2026年03月09日
WOJAK 335ドル.00 0ドル.00008700 33.5% 2026年03月09日

Buy a Token

python run.py buy PENGUIN 300
Executing BUY — PENGUIN — 300ドル.00
✓ Bought 300ドル.00 of PENGUIN. Remaining balance: 700ドル.00

Sell a Token

# Close full position
python run.py sell WOJAK
# Partial close
python run.py sell WOJAK 150

View Trade History

python run.py trades
 Trade History
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Timestamp Token Side Amount Balance
───────────────────────────────────────────────────────────
2026年03月09日T00:00:00Z PENGUIN BUY 326ドル.00 674ドル.00
2026年03月09日T00:00:00Z WHITEWHALE BUY 339ドル.00 335ドル.00
2026年03月09日T00:00:00Z WOJAK BUY 335ドル.00 0ドル.00

Config

config/settings.py

STARTING_CAPITAL = 1000 # Fixed starting balance
MAX_POSITION_SIZE = 0.35 # Max 35% of capital per trade
LOG_TRADES = True # Toggle CSV logging on/off

Bolt enforces MAX_POSITION_SIZE on every buy. If you try to put more than 35% into a single token, the trade is rejected before it touches the wallet.


Wallet State

data/wallet.json

{
 "starting_balance": 1000,
 "available_balance": 0,
 "positions": [
 {
 "token": "PENGUIN",
 "amount_usd": 326,
 "entry_price": 0.00012,
 "timestamp": "2026年03月09日"
 }
 ],
 "trade_history": [...]
}

Trade Log

data/trades.csv

timestamp,token,amount_usd,price,side,wallet_balance
2026年03月09日T00:00:00Z,PENGUIN,326,0.00012,BUY,674
2026年03月09日T00:00:00Z,WHITEWHALE,339,0.00031,BUY,335
2026年03月09日T00:00:00Z,WOJAK,335,0.000087,BUY,0

The CSV is append-only. Nothing is ever deleted. Every state change leaves a record.


Why This Exists

Memecoin trading is mostly noise. The goal of Bolt is to cut through that by forcing discipline through constraints:

  • Fixed capital. No reloading.
  • Max 35% per position. No all-ins.
  • Every trade logged. No selective memory.
  • Public repository. No hiding the losses.

The experiment runs until the wallet hits zero or until it makes something meaningful. Either way, the data is here.


Follow the Experiment

Updates, new positions, and commentary posted on X.

@BryanFrontend


License

MIT. Use it, fork it, run your own version.


Built by @BryanFrontend

About

No description, website, or topics provided.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /