
Viktor Bodnar
133 posts


@polymaster how many open positions do you hold at the same time for a more stable income? and can you share your average roi per day?
English

CPI 数据公布的瞬间,概率和方向同时反转。这恰恰说明这类算法更适合做市,而非赌方向。
原因在于:从时序角度看,模型输出的概率只在当下那一刻有意义,很难外推数小时。而特征工程中的历史数据(如日历特征)对概率的边际影响极其微弱——它们能捕捉的是统计规律,而无法定价"今日 CPI 在当前经济环境下的具体冲击"。更关键的是,突发事件在发生前只是以概率被市场定价,发生后才会被实际反映在价格中,这类非连续跳变本身就超出了模型的预测边界。
不过,算法也捕捉到了一个我曾经推演过的现象:市场价格相对真实概率存在凸性偏差。人们对高赔率和反转方向的博弈偏好,会在部分时刻将二元期权价格推离其隐含概率所对应的合理水平。


中文

最近蛰伏了几周来研究 SPX 开盘方向的定价。目前模型在盘前三小时的方向判断上连续三天命中了结算方向——听起来不错——但实际上这个时间点市场本身的隐含概率已经很准了:大部分时候市场价格本身就足以揭示市场最终的价格(俗称尾盘),我的模型定价也和市场定价高度趋同。回测下来一个月真正能打出 edge 的窗口也就几天,所以这并不是一个“印钞机”策略,更像是耐心等低效定价出现再下注,或者是用来消除部分“尾部风险”。尚不确定一个月实盘收益能否 cover 那些很贵的美股数据各类指标的实时 API订阅,这也从侧面说明了预测市场追求的更加精确的定价最终是靠各类服务商提供越来越专业且基础成本不菲的服务为代价的。而提供商的卷利润的过程,才是真正让预测市场价格越发具备发现性的过程。
今天盘前三小时开始后我会在这条下面实时贴一下模型输出和市场价格的对比。
中文

@polymaster I would like to hear your advice, we have reduced the number of positions to 25 now, in our marketmaking bot for liquidity farming. and it has actually become breakeven. that is, the rewards cover the losses. but I would like to earn) so the question is:
English

@ViktorBodnar89 yes, only a few of them (after testing many and losing money)
English


@polymaster Do you classify markets according to some of your own criteria, or do you participate selectively only in those where, based on your experience, you already know the price behavior? In other words, you don’t scale up to many markets, but instead work only with a few of them?
English

yes, it can run stably, but only if you have an edge in the specific market you're trading and do risk control strictly. You can't just drop a fixed algorithm into a random market and expect all time positive returns. The edge comes from understanding the market's characteristics — its volatility pattern, what drives price moves, how informed the flow is — and tuning your strategy accordingly. Without that, no amount of technical "algorithm" can simply win.
English

@polymaster So, do I understand correctly? The main focus should be precisely on your orders not getting triggered. Market making as such is practically impossible for the majority of events…
English

Hey Viktor, I run into this exact problem all the time — adverse selection hits way harder than people expect. Honestly, the losses from getting picked off often dwarf the liquidity rewards you're farming. So over time I've realized market selection is everything. You really need to understand the characteristics of each market you're making:
1. Sudden crash-type markets (e.g. "Will Cloudflare go down?"): These can go from 5% to 95% in seconds when an outage actually happens. For these, I run a separate monitoring bot that watches external signals — the moment something triggers, it pulls all my quotes before informed traders can pick them off.
2. Slow trending markets (e.g. JD Vance 2028 nomination lately): These shift gradually over days or weeks as sentiment evolves. Here I adjust my quotes very slowly — think hourly — and keep my spread wide. You're not trying to be tight; you're just collecting rewards while staying out of the way of the drift.
3. Tight-spread, range-bound markets: These are actually the friendliest for MM. You post slightly wider than the market, and when one side gets filled (with +1 spread or even more), you immediately post the other side at (100 - filled price +/-spread). Worst case you break even, best case you pocket the spread on top of rewards. In an idealized case — say a range-bound up/down market with enough volatility — you can sell both sides at 51 or better at different points in time as the price oscillates. Of course the midpoint drifts, so it won't always be a clean 50/50 split, but as long as the market swings back and forth, you get opportunities to fill both sides above 50 (or anyother midpoint price), pocketing the spread plus rewards.
The real takeaway is: there's no one-size-fits-all MM config. Each market type needs its own parameter set — spread width, quote update frequency, inventory limits, and what external signals to watch. The bot that survives is the one that knows which game it's playing.
Keep building — sounds like you've got a solid practice already.
English

@polymaster Hello! We’ve built, in our opinion, a really solid bot for farming rewards on Polymarket. It does a good job finding the right markets/pools, protects its orders well, and when some orders get filled, it tries to rebalance them — often selling into profit.
English

@securezer0 Do you have statistics on how many arbitrage opportunities in $ your bot finds per day?
English

@ViktorBodnar89 $350,000 All time estimate
Just realised the mistake 😭
English

My Polymarket Arbitrage Trading Bot Just Got A Huge New Upgrade!
+ 7,000,000 Markets Analysed
+ 6,000 Matches Identified
+ $350,00 in +EV Arbs
This new upgrade is a Game Changer!
HOW IT WORKS
The bot is scanning thousands of markets looking for Live Arbitrage Opportunities
Everyday hundreds of mispricings are identified where YES + NO < $1
When I see one I want to trade, I’ll open it on AlertPilot and use the calculator to check how much I should be buying
I then go to Polymarket & the other platform and enter my buys exactly how the bot instructed
I already shared my wallet address with the bot earlier, so it immediately registers my new positions
Now the bot scans 24/7 checking if my positions can be sold
The math is simple:
I bought YES + NO < $1
I will sell YES + NO > $1
As soon as that’s possible, I got a notification
I close my positions, locking in the profit
And I wait for a new arbitrage alert!
Sound easy? Because it is
Anyone can copy the strategy with AlertPilot
English

Code: HAM334
(Id recommend desktop over mobile for now)
-> checkprice.com
-> sign in top right
-> enter code
-> deposit funds via transfer, wallet, or moonpay cross chain swaps
English
Viktor Bodnar retweetledi

@securezer0 Through your bot, is it possible to sort events by time and only look for opportunities there?
English

@securezer0 A good opportunity. But how do we can exit with profit from it without waiting until the end?
English

@securezer0 Yes, but it could take weeks or months, right?
English
Viktor Bodnar retweetledi

@ViktorBodnar89 Because the historical chart data isn't granular enough to see this spread. Thats why the bot exists.
English


