1Downloads
3Views
How It Works
Strategy Blueprint: This bot operates on prediction market contract prices, not traditional stock/crypto data. Backtest results are simulated to illustrate the strategy logic. Real performance depends on execution speed, market liquidity, and platform fees. No guarantees of profit.
The flip side of the YES-side sports arb — same guaranteed profit math, different execution. The Logic: In a binary market, if Team A loses, your NO(A) contract pays $1. If Team B loses, your NO(B) pays $1. One team MUST lose. So if NO(A) + NO(B) < $0.98, you're guaranteed profit. When to use NO-side vs YES-side: Whichever side has the pricing inefficiency. Sometimes the YES orderbook is efficient but the NO orderbook has wider spreads. This bot catches those opportunities the YES-side bot misses. Key differences from YES-side: - Checks NO prices (1 - YES bid price) - Often finds opportunities in less liquid NO orderbooks - Same risk management: Fill-or-Kill orders, max position sizing, daily limits - Can run alongside the YES-side bot for double coverageConfiguration
maxCombinedPrice0.98
minSpreadPct1
maxPositionSize9000
positionPct70
Symbols: polymarket-sports
Source Code
#!/usr/bin/env node
// Polymarket NO-Side Arb — JC Trading Bots
// https://trading.jc.holdings/bot/polymarket-no-side-arb-gwjy
// License: MIT | Free forever | Modify however you want
//
// DISCLAIMER: Not financial advice. Past performance does not guarantee
// future results. Trading involves substantial risk of loss.
// Use at your own risk. No guarantees of profit.
//
// Usage:
// node polymarket-no-side-arb-gwjy.js # Print signals
// ALPACA_KEY=x ALPACA_SECRET=y node polymarket-no-side-arb-gwjy.js # Paper trade
// ALPACA_KEY=x ALPACA_SECRET=y LIVE=1 node polymarket-no-side-arb-gwjy.js # REAL money
// ─── Configuration ─────────────────────────────────────────
const CONFIG = {
"maxCombinedPrice": 0.98,
"minSpreadPct": 1,
"maxPositionSize": 9000,
"positionPct": 70
};
const SYMBOLS = ["polymarket-sports"];
const BOT_NAME = "Polymarket NO-Side Arbitrage";
const DATA_RANGE = "3mo";
// Buy NO contracts on both sides of a binary market.
// Profit is guaranteed in theory: the losing team's NO always pays $1.
// Cost: NO_A + NO_B. If combined < $1.00, the difference is profit.
//
// Why NO-side? Often less liquid → bigger spreads → more arb opportunities.
function evaluate(candles, config) {
const threshold = config.maxCombinedNo || 0.98;
console.log("\n Strategy: Scan NO contracts on Polymarket binary markets");
console.log(" Looking for: NO_A + NO_B < $" + threshold.toFixed(2));
console.log(" When found: Buy NO on BOTH sides");
console.log(" Result: The losing team's NO pays $1.00. Profit = $1.00 - cost");
console.log(" Profit is guaranteed in theory — one team MUST lose.\n");
return { action: "hold", reason: "Blueprint — implement Polymarket API for live scanning" };
}
// ─── Main ───────────────────────────────────────────────────
async function run() {
console.log("\n" + "=".repeat(60));
console.log(" " + BOT_NAME);
console.log(" " + new Date().toISOString());
console.log("=".repeat(60) + "\n");
evaluate([], CONFIG);
}
run().catch(err => { console.error(err); process.exit(1); });Download .js File
Full source code. MIT License. Free forever. Modify and deploy however you want.