XBOT Docs

Group settings

Every setting in the item-group panel — what it changes, its default and how it interacts with the rest.

Settings belong to an item group, not to a bot. Open them with the tune icon on the group header. The panel saves automatically: changes are pushed about half a second after the last edit, there is no confirm step.

The panel has four sections, described below in the same order.

Settings

Calculate prices

Type: switch · Default: on

Master switch for this group's pricing. While it is off, items are never queued for price analysis and undercutting stops. Prices already stored on the items are kept and still used for orders and listings.

Pricing also requires Markup above 0 — both conditions must hold.

Analyze before selling

Type: switch · Default: off

Before a listing is placed, the worker pulls the order book and prices the listing one cent below the highest buy order. Ignored when the price was set manually on the item.

Analyze before ordering

Type: switch · Default: on

Holds a buy order back until the item's price analysis is at most 24 hours old. A fresh analysis is reused as is; a stale one is re-queued and the order goes out on a later tick.

Analysis interval

Type: select · Default: Every day · Values: Disabled, 30 min, 1 h, 2 h, 4 h, 6 h, 12 h, 1 day, 2 days, 1 week

How often items with no active buy order and no listing are pushed back into a full price analysis.

Shorter is not faster

A price calculated in the last 20 minutes is reused, so intervals below 20 minutes gain nothing.

Active analysis interval

Type: select · Default: Every day · Values: same as above

How often items that already carry a buy order are re-analysed. A higher sell price from the new analysis is applied, but never below the Min. markup floor. This interval also gates whether order-book results may switch the item's Buy flag on or off.

Additional

Don't sell tradable items

Type: switch · Default: off

A mode switch, not a filter:

  • On — only non-tradable copies are listed.
  • Off — only tradable copies are listed.

Copies in the other state are never listed at all.

Undercut by a cent

Type: switch · Default: off

Periodically cancels this group's listings and re-lists them one minimal currency unit below the cheapest competitor, never below the Min. markup floor. Requires Calculate prices on and Markup above 0.

Undercut interval

Type: select · Default: Disabled · Values: Disabled, 15 s, 30 s, 1 min, 2 min, 3 min, 4 min, 5 min, 30 min, 1 h, 2 h, 4 h

Minimum time between undercut checks for one item, and the scheduler tick this group is handled by. Undercutting stays off while this is Disabled, even with the switch above turned on.

Delete unconfirmed

Type: switch · Default: on

Cancels sell listings that Steam still reports as awaiting confirmation after 5 minutes. The asset returns to the inventory and the next sell tick lists it again.

Min. markup

Type: number, % · Default: 1

The undercut floor, in percent of the item's buy price. A re-listing happens only while the seller price stays at or above buy price + this percent. Must be above 0 for undercutting to run at all.

Remove listing after

Type: number, days · Default: 0 (off)

Cancels sell listings older than this many days, measured by Steam's own listing date. The asset returns to the inventory and is listed again at a freshly analysed price. 0 disables the sweep.

Profit

Buy algorithm

Type: select · Default: Safe · Values: Maximal, Safe, Average, Low, Buy

Picks how the buy price is derived from the analysis window. The five modes are described in Pricing algorithms.

Buy algorithm, %

Type: number, % · Default: 100

Share of the buy price the buy algorithm produced. 100 keeps it unchanged, 90 bids 10 % lower. A value of 0 is treated as 100.

Outbid the highest buy order by 1 cent

Type: switch · Default: off

After the analysis, if the calculated buy price is above the highest existing buy order, it drops to that order plus one cent. Enabling this also forces an order-book request on every analysis.

Sell algorithm

Type: select · Default: Safe · Values: Maximal, Safe, Average, Low, Buy

Picks how the sell price is derived from the analysis window, independently of the buy algorithm.

Sell algorithm, %

Type: number, % · Default: 100

Share of the sell price the sell algorithm produced. 100 keeps it unchanged, 105 asks 5 % more. The Steam-side price is re-derived from the result, so the fee relation always holds. A value of 0 is treated as 100.

Markup

Type: number, % · Default: 3

The target margin, measured off the sell price: buy = sell − markup % of sell.

Must be above 0 or the group is never analysed. Values of 100 or more break the calculation. Inside the calculation a markup below 1 is clamped to 1.

Analysis period

Type: number, days · Default: 5

Days of Steam price history fed to the algorithms, ending yesterday — today's trades are used only by the trend filters. Values below 1 are treated as 1. If nothing survives the Corridor filter inside this window, the analysis fails and the item is skipped.

Corridor, %

Type: number, % · Default: 85

Outlier filter: trades deviating from the window average by more than this percent are dropped before the algorithms run. 0 disables filtering. The Average algorithm reads the unfiltered history and therefore ignores this setting.

Analysis filters

These settings never change a price. They decide whether an item may be bought.

Order book coefficient

Type: number, × · Default: 1

Queue limit for buy orders: an order is placed only if the quantity already queued at or above your buy price is not greater than daily sales × this coefficient. 0 skips the check.

Sales per day

Type: number · Default: 1

Minimum average daily sales: the volume traded over the Analysis period divided by its days, rounded down. Items below the bar are not ordered, and the order book is not even requested for them. 0 disables the filter.

Position in listing

Type: number · Default: 5

Maximum allowed position of your sell price in the listing queue. If your Steam sell price would land deeper than this, no buy order is placed. 0 skips the check.

Daily trend, %

Type: two numbers (rise limit, drop limit), % · Default: 100 / 100

Blocks ordering when today's average price drifts from the daily average by more than the given percent. 0 disables that side.

Currently a no-op

Both sides compare today's average with itself, so this filter always passes. Use the weekly and monthly trends to gate on price movement.

Weekly trend, %

Type: two numbers (rise limit, drop limit), % · Default: 100 / 100

Blocks ordering when today's average price rises above the 7-day average by more than the left value, or falls below it by more than the right value. 0 disables that side.

Monthly trend, %

Type: two numbers (rise limit, drop limit), % · Default: 100 / 100

Same as above against the 30-day average.

Defaults at a glance

A new group starts with:

SettingDefaultSettingDefault
Calculate pricesonBuy / Sell algorithmSafe
Analyze before sellingoffBuy / Sell algorithm, %100
Analyze before orderingonOutbid highest buy orderoff
Analysis intervalEvery dayMarkup3 %
Active analysis intervalEvery dayAnalysis period5 days
Don't sell tradableoffCorridor85 %
Undercut by a centoffOrder book coefficient
Undercut intervalDisabledSales per day1
Delete unconfirmedonPosition in listing5
Min. markup1 %Daily / weekly / monthly trend100 / 100
Remove listing after0 (off)

On this page