Ario Barin Ostovary

Software Engineering, University of Waterloo

eValuator

ML-powered auction trading system for Hypixel Skyblock. Finds underpriced listings automatically.

Finding a cheap listing in Hypixel Skyblock is only the start. How likely is it to sell after I relist it? Is the expected profit worth the time?

eValuator scans the auction market and estimates the probability of a sale at a given price. If an item is still very likely to sell at a higher price, it is probably underpriced right now. I buy it, relist it, and keep the difference.

eValuator interface screenshot

For the trading system, I use a Random Forest classifier, with features for the pet, its upgrades and how the asking price compares with the market. I score batches of listings together instead of calling the model separately for each one.

The classifier's training task was to distinguish auctions recorded as sold from ones that expired without a buyer. Cancelled listings were left out. That's a sale-versus-expiry estimate, not a prediction of how many hours I'll wait for a buyer.

A classifier can rank listings well without giving reliable probabilities. I follow it with isotonic calibration, which maps the raw scores to observed sale rates. The ranking then combines potential profit with estimated sale probability and adjusts for market volume and volatility. A huge possible profit is less exciting when the item probably won't sell.

I also tried predicting pet prices directly with an MLP. This was one of those attempts:

Failed MLP regression model for pet prices

Pet prices against normalized level, with the MLP's predictions for different candy and held-item inputs.

There are also item details that make two similar-looking pets worth very different amounts. A pet with a Tier Boost can look like a bargain next to a naturally higher-tier pet, but the upgrade path is different. The comparison below shows why that distinction matters.

Raw sell-probability comparison for tier-boosted and natural Legendary Ender Dragon pets

Both are displayed as Legendary Ender Dragons. The left is an Epic pet with a Tier Boost; the right is naturally Legendary. These are raw model probabilities, before calibration.

I built the whole system myself, from collecting and cleaning the data to processing features, training the model, calibrating it, and building the site. Over time I tracked more than 12 million listings, about 40 GB of auction data. I used smaller samples to experiment with features and models.

I don't really play much anymore. I'm mostly interested in the machine learning.