Add momentum command: BTC 5m/15m Chainlink-market signal trader - #86
Draft
OdinSlayer429 wants to merge 1 commit into
Draft
Add momentum command: BTC 5m/15m Chainlink-market signal trader#86OdinSlayer429 wants to merge 1 commit into
momentum command: BTC 5m/15m Chainlink-market signal trader#86OdinSlayer429 wants to merge 1 commit into
Conversation
Polymarket's btc-updown-5m-*/btc-updown-15m-* markets resolve against Chainlink's BTC/USD TWAP stream. `polymarket momentum run` watches Coinbase's free BTC-USD WebSocket feed as a fast proxy for that signal, deterministically tracks the currently open window, and buys the favored side via a market (FOK) order once the deviation clears a configurable threshold and the order book hasn't already priced it in. Defaults to live trading per user request, with --dry-run to test without a funded wallet. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
momentum command: BTC 5m/15m Chainlink-market signal trader
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
btc-updown-5m-*/btc-updown-15m-*markets resolve "Up"/"Down" against Chainlink's BTC/USD TWAP data stream. This addspolymarket momentum run, which watches Coinbase's free BTC-USD WebSocket feed as a fast, no-auth proxy for that signal (real Chainlink Data Streams access requires a paid subscription) and buys the side it currently favors before Polymarket's own order book has fully repriced.btc-updown-{5m,15m}-<unix slot start>), sits out the first partial window on startup so the reference price is always anchored to a window's true open (never guessed/backfilled), and places at most one market (FOK) buy per window, gated by a configurable minimum deviation, a settle-in delay, a minimum-time-remaining cutoff, and a max entry price so it won't chase an already-priced-in outcome.--dry-runprints signals only and skips wallet auth entirely so it can be tried with no funded wallet.ring,aws-lc-rs) are both present transitively (alloy's HTTP client vs.tokio-tungstenite's TLS), so rustls couldn't auto-select one. Now explicitly installsringas the process-wide default inmain().Why live-by-default
The stake and risk controls (
--stakerequired with no default,--max-entry-price,--min-seconds-remaining,--max-windows) are there so a bad run has bounded downside, but this is deliberately unproven-strategy tooling — see the README caveat.--dry-runis available for anyone who wants to validate signal quality before risking funds.Test plan
cargo check/cargo clippyclean,cargo build --releasesucceeds--dry-runagainst the real, currently-open 5m market: correctly sat out a partial window, caught the next window boundary, fetched the market, captured a reference price, and fired one correctly-gated signal (Down favored (-2.6 bps vs ref $77712.97), ask 0.77) with no crash over a multi-minute run--dry-runomitted) has not been exercised against a funded wallet — recommend a reviewer test with a small--stakebefore merging🤖 Generated with Claude Code