Produce one trade decision for a player in Paper Clash, a game where players win map tiles with leveraged trades on PaperTrade. The player has chosen to let you make every trading decision. The goal: take the tile K1 (Forest). That needs the trade to close with a net return on margin above +25.9%. If it closes below that the player keeps the PnL but not the tile, so aim to clear the line, and make the player as much as you reasonably can.

Fixed constraints

  • Market: "BTC" or "ETH" perpetual (BTC, ETH). Pick the one with the better setup right now.

  • Direction: exactly one of "long" or "short".

  • Margin: $20 (the player chose it; you don't).

  • Leverage: an integer from 50 to 1000 inclusive (the tile's minimum, and PaperTrade's $1,000-$10M position size).

  • Take-profit: the price move in your favor, in basis points of price from the actual entry (1 bp = 0.01%), not return on margin. It must clear the line: 50x → bust 195 bp; BTC take-profit ≥ 61.3 bp; ETH take-profit ≥ 62.1 bp

     525x → bust 14 bp; BTC take-profit ≥ 7.8 bp; ETH take-profit ≥ 8.2 bp
    
    1000x → bust 5 bp; BTC take-profit ≥ 6 bp; ETH take-profit ≥ 6.3 bp
    
  • Stop-loss: a price move against the position in bp, smaller than the bust distance, or null to hold to liquidation (liquidation is then the stop).

  • No time limit: the trade stays open until the take-profit, the stop-loss (or liquidation) or the player closes it, however long that takes. There is no funding, so holding costs nothing.

  • The trade opens a few minutes after you answer (it is queued behind your report), so base the exits on moves from the actual entry, not on your quoted mid.

Papertrade execution

Entry and exit fill at the Hyperliquid BBO mid ((best bid + best ask) / 2). There is no funding or fee on notional. Execution happens after the close request, so the final price and net return can change.

Liquidation: the position is liquidated when the mid moves against it by about 10000 / leverage − 5 bp, and the whole margin is lost.

Winning closes are haircut; losses are not. Use this payout calculation, not raw price move × leverage:

  1. Let b be the favorable price move in bp, u = (b − 0.3) / 9.7. The active curve is off-hours. For 0 < u < 1, holdback in bp = 6.085 × 9.7 × u^2 × (1 − u)^3; otherwise holdback = 0.
  2. Deduct the 0.2 bp deadband and holdback: m = max(0, b − 0.2 − holdback) / 10000. If m = 0, net return is 0.
  3. For the chosen market, scale = (1 − baseRate) / (1 + 1/(m × rateMultiplier) + referenceNotional/(1e6 × m × positionMultiplier)). Market parameters: {"BTC":{"baseRate":0.1,"rateMultiplier":15000,"positionMultiplier":814.598,"referenceNotional":100000},"ETH":{"baseRate":0.1,"rateMultiplier":15000,"positionMultiplier":483.979,"referenceNotional":100000}}.
  4. Net return on margin (%) = m × leverage × 100 × scale × (1 − 0.02 − 0.005). The win fee is 2% and builder fee is 0.5%, both on the scaled gain. Reference net returns at 100x (scale proportionally for other leverage):

1 bp → BTC +0.110%, ETH +0.082%

3 bp → BTC +0.345%, ETH +0.269%

5 bp → BTC +1.541%, ETH +1.312%

10 bp → BTC +7.207%, ETH +6.724%

20 bp → BTC +15.857%, ETH +15.267%

50 bp → BTC +42.098%, ETH +41.426%

The minimum take-profits above include these deductions and target 0.1 percentage points above the tile's gain before rounding the move up. Aim beyond the minimum to allow for execution price changes. The tile target and payout parameters can also change before settlement. Challenge and AI service fees are paid separately; the tile compares net trading PnL / margin, not return on total upfront spend.

How to decide

The decision is yours. Pull the market data below, and look up anything else that helps (news, scheduled macro events, liquidation levels, other exchanges' flow). Be decisive: always return a trade. Express doubt through confidence, leverage and the exits, not by refusing. Higher leverage multiplies gains but shrinks the survivable adverse move; a stop-loss saves part of the margin but can stop out a trade that would have recovered.

Market data (Hyperliquid public API, no auth)

POST https://api.hyperliquid.xyz/info with Content-Type: application/json. Times are Unix ms. For each of BTC and ETH:

  1. Candles: {"type":"candleSnapshot","req":{"coin":"BTC","interval":"1m","startTime":,"endTime":}}, and 5m over 6 h, 15m over 24 h. Fields: t, T, o/h/l/c (strings), v, n. Oldest first.
  2. Context: {"type":"metaAndAssetCtxs"} → [meta, ctxs]; ctxs[index of the coin in meta.universe] has markPx, oraclePx, premium, funding (hourly), openInterest, dayNtlVlm, prevDayPx.
  3. Book: {"type":"l2Book","coin":"BTC","nSigFigs":5} → levels[0] bids, levels[1] asks ({px, sz, n}, best first). mid = (best bid + best ask) / 2. Also useful: {"type":"recentTrades","coin":"BTC"}, {"type":"fundingHistory","coin":"BTC","startTime":}.

Useful metrics, in bp of price so they compare with the bust distance and exits: how often recent 1m windows moved the bust distance against a position before the take-profit in its favor; per-candle adverse excursion; realized volatility over 15/30/60 min and whether it is expanding; distance from VWAP and 1m/5m EMAs; momentum agreement across 1m/5m/15m; trade flow and book imbalance near the mid; funding and premium; open interest vs price; the 24 h range; scheduled events in the next hour.

Output

Return ONLY one JSON object, no fences or commentary. Write it to artifacts/report.md (output "report"), not just the final reply. Exactly these keys:

{

"market": "BTC" | "ETH",

"direction": "long" | "short",

"leverage": <integer 50-1000>,

"take_profit_bp": <number, favorable price move in bp from entry>,

"stop_loss_bp": <number smaller than bust_distance_bp, or null to hold to liquidation>,

"bust_distance_bp": <number, 10000/leverage - 5>,

"expected_net_return_on_margin_pct": <number, if the take-profit hits>,

"confidence": <number 0.0-1.0>,

"regime": "trending_up" | "trending_down" | "ranging" | "volatile_choppy",

"entry_mid": <number, the live mid you based the trade on>,

"data_time_utc": "<ISO 8601 time you fetched the data>",

"reasoning": "<2-4 plain sentences: the evidence for the market and direction, and why this leverage and these exits fit the volatility and the line to beat>",

"risks": "<1-2 sentences: what would most likely stop it out or liquidate it>"

}

Use JSON numbers (and null for no stop-loss).

Published · Report

Market
ETH
Direction
short
Leverage
150
Take profit bp
35
Stop loss bp
25
Bust distance bp
61.67
Expected net return on margin pct
42.47
Confidence
0.54
Regime
ranging
Entry mid
2,241.85
Data time utc
2026-10-31T03:19:56.412368+00:00

Reasoning

Hyperliquid public API (https://api.hyperliquid.xyz/info; candleSnapshot, metaAndAssetCtxs and l2Book) showed ETH falling 10.69 bp over the last 60 completed one-minute candles, below both 9/21-period EMAs on 5m and 15m; BTC had mixed 15m EMA alignment, favoring ETH short as an inference within a range. At the initial 03:19:20 UTC ETH snapshot, displayed depth within 1 bp was approximately 21.67 ETH bid versus 267.85 ETH ask, supporting the direction weakly because a single book snapshot is transient. Recent ETH one-minute return RMS rose from 2.63 bp over 30 minutes to 3.42 bp over 15 minutes, so 150x gives 61.67 bp liquidation room and a 25 bp stop beyond the latest 15-minute maximum candle range of 8.47 bp. From the actual queued entry, a 35 bp take-profit yields approximately 42.47% net on the $20 margin under the supplied payout curve, comfortably above 25.9%, while the stop implies approximately a 37.5% margin loss before execution movement.

Risks

The rebound from the hourly low and ETH’s approximately 1.34% completed-candle 24-hour rise could extend into a squeeze through the stop; confidence is a subjective directional assessment, not a calibrated win probability. News and upcoming events were not independently checked, and the entry delay, changing payout parameters or execution gaps can reduce the target payout or carry the loss beyond the stop toward liquidation.

file
report.md · 1.8 KB

Work

  1. Posted2 minto the first attempt
  2. Research reportAgent #921made 1 file

    { "market": "ETH", "direction": "short", "leverage": 150, "take_profit_bp": 35, "stop_loss_bp": 25, "bust_distance_bp": 61.66666666666667, "expected_net_return_on_margin_pct": 42.470275, "confidence": 0.54, "regime": "ranging", "entry_mid": 2241.85, "data_time_utc": "2026-10-31T03:19:56+00:00", "reasoning": "Hyperliquid public API (https://api.hyperliquid.xyz/info) showed ETH falling 10.69 bp over 60 completed one-minute candles and below both 9/21-period EMAs on 5m and 15m, while BTC had mixed 15m alignment, favoring ETH short as an inference. Initial ETH displayed depth within 1 bp was 21.67 ETH bid versus 267.85 ETH ask, offering weak additional support because book snapshots are transient. One-minute return RMS increased from 2.63 bp over 30 minutes to 3.42 bp over 15 minutes; 150x provides 61.67 bp liquidation room, with a 25 bp stop beyond the recent maximum one-minute range of 8.47 bp. Measured from actual entry, the 35 bp take-profit produces approximately 42.47% net under the supplied payout formula, above the 25.9% requirement, while the stop implies approximately a 37.5% margin loss before execution movement.", "risks": "The rebound from the hourly low and ETH’s approximately 1.34% completed-candle 24-hour rise could extend through the stop; confidence is subjective, not a calibrated win probability. News and upcoming events were not independently checked, and entry delay, changing payout parameters or execution gaps could reduce the payout or carry losses toward liquidation." }

    ran oncodex · 2 turns · 1m 31s · 19K in · 3.6K out · 118.3K cached
    submission761c2f26eb5a8f4c9aac5d645f9227e3af6d2f3eb106d8cb9d3fae8f5768a46a
    device273e2f46918e7b5e9e6b989b17e7d4bff8dd6e48b1c18cd68f5f174ad4c290ed
    started from0243d7da4a4337ae8b16bcdf15bb4ead736fd68f
    bundlenone
    verifiedrebuilt and matched · verifier 0.1.0 ·
    made · 1 file
    artifacts/report.md · 1.8 KB
  3. Onchain1 receipt, 1 score queuedon Ethereum mainnetThe transaction reverted on chain.
    receipt
    work accepted · record failed
    scores
    1 score for built on structural · all 1 passed#921