DEV Community

FatherSon
FatherSon

Posted on

Fair Value Sweep v2: Potential Upgrades to Turn This Polymarket Trading Bot Strategy Profitable Again

After publishing the initial Fair Value Sweep Strategy for Polymarket Trading Bot, I received strong feedback and ran deeper diagnostics. The corrected backtest (with proper taker fees, rolling realized volatility, and decisive resolution labels) showed the edge had become marginal to slightly negative.

Here are the most promising update paths I’m currently exploring to revive this convergent taker strategy for 5-minute Up/Down markets.

Current Limitations (Recap)

  • Binance lead (~2.4s) still exists, but fees + slippage often erase the small edge.
  • No regime filter → trades in both chop and trend.
  • Static fee buffer doesn’t adapt to liquidity or volatility.
  • Single-slot focus limits compounding.

Potential Upgrade Terms (v2 Ideas)

1. Adaptive Fee & Liquidity Buffer

Instead of a fixed min_edge_after_fees, make the threshold dynamic:

def adaptive_threshold(self, fv: float, best_ask: float, book_depth: float):
    base_buffer = self.base_fee + self.slippage_estimate
    liquidity_factor = 1.0 / (1 + book_depth / self.depth_threshold)
    vol_factor = 1 + (self.current_vol / self.avg_vol) * 0.5

    return fv - (base_buffer * liquidity_factor * vol_factor)
Enter fullscreen mode Exit fullscreen mode

This tightens the required edge in deep books and widens it in thin/volatile conditions.

2. Regime-Aware Sweep (Hybrid with Deep Bid Catch)

Add a lightweight regime filter so the sweeper only activates in favorable conditions:

  • Chop + Moderate Volatility: Full sweep window
  • Strong Trend: Reduce size or disable entirely
  • High Volatility near expiry: Widen buffer or pause

This combines the best of both strategies I’ve been testing.

3. Multi-Exchange Fair Value Ensemble

Don’t rely only on Binance. Blend multiple CEX feeds with weights:

def ensemble_fair_value(self):
    binance_fv = self.compute_fv("binance")
    bybit_fv = self.compute_fv("bybit")
    coinbase_fv = self.compute_fv("coinbase")

    weights = [0.55, 0.30, 0.15]  # based on historical lead time
    return np.average([binance_fv, bybit_fv, coinbase_fv], weights=weights)
Enter fullscreen mode Exit fullscreen mode

Reduces single-feed risk and improves accuracy.

4. Dynamic Position Sizing + Kelly Variant

Replace fixed size with volatility-adjusted Kelly:

def dynamic_size(self, edge: float):
    edge_decimal = edge  # e.g. 0.035 (3.5% edge)
    vol = self.current_vol
    kelly_fraction = (edge_decimal / vol**2) * self.kelly_safety_factor
    return self.bankroll * min(max(kelly_fraction, 0.005), 0.08)  # 0.5%–8% bounds
Enter fullscreen mode Exit fullscreen mode

This scales up during high-conviction sweeps and scales down when edge is thin.

5. Stale Quote Confirmation Layer

Add a short confirmation window (300–800ms) before sweeping:

  • Require the ask to remain stale for N consecutive ticks.
  • Filter out obvious spoofing or rapid maker repricing.

6. Cross-Market Correlation Boost

For correlated assets (e.g., BTC + ETH 5m markets running simultaneously), use joint probability to strengthen conviction.

Updated Performance Target

With these upgrades, the goal is to push the strategy back into +0.80 to +1.40 expected value per entry after fees while maintaining the clean “sweep and hold to resolution” lifecycle.

Integration Remains Seamless

All upgrades plug directly into the modular architecture from my main bot post:

  • Same MarketLifecycle and auto-redeem flow
  • Same capital guard and kill-switch
  • Still runs live: false until live fills confirm +EV

Next Steps in Research

I’m currently implementing v2 with adaptive threshold + regime filter + ensemble fair value. Early paper results (last 7 days) look more stable than the original version.

The core insight remains powerful: CEX feeds lead on-chain books — the question is how to extract that lead profitably after fees and execution realities.

Would you like me to open-source any of these upgraded components once validated?


If you have more questions, please feel free to contact me at any time: https://t.me/FatherSon97

Polymarket #PolymarketTradingBot #TradingBot #FairValueSweep #PredictionMarkets #AlgorithmicTrading #QuantitativeTrading #DeFi #Web3 #CryptoTrading #FinTech #AutomatedTrading #MarketMicrostructure #5MinMarkets #RiskManagement

Top comments (0)