Dynamic Market Maker

Since PrUn’s market is dynamically driven by players, price naturally wants to fluctuate. A fixed market maker (MM) would however hard clamp fluctuations within a predetermined range, while still providing infinite supply/demand. This would eventually lead to everyone relying on MM (such as b-fabs & MCG or MM cash printers).

A dynamic MM could however soft clamp fluctuations when supply & demand are at balance and allow price shifting when imbalance occurs, at the same time providing infinite supply/demand when market is not fully established (e.g. early game).

The dynamic MM would track amount of commodity traded with it and adjust its listing price once certain trade amount is reached, in some cases a separate condition have to be met (to prevent player intentionally manipulating MM price for profit). So here’re the rules I got for MM:

  • Set a threshold unique to the commodity with MM orders.
  • Do not adjust when weekly production of a commodity by all players is less than the threshold;
  • Do not adjust when weekly trade amount is less than the threshold;
  • Track amount of commodity that’s traded with MM and total trade amount within a week;
  • Increase in MM sell & decrease in MM buy: above 25% of trade amount was with MM would trigger a price change of 5%, above 50% triggers a change of 10%, above 75% triggers a change of 20%;
  • decrease in MM sell & increase in MM buy: if no trade was made with MM in last 4 weeks, MM price change to 2% away from the order directly in front of MM;
  • MM prices are independent across different CX.

Dynamic MM would be a beneficial feature for everyone, except for those relying on MM cash printers. (I personally don’t like this source of income since it’s a steady stream of cash without need to interact with players.) So in this universe, dynamic MM maybe would only applies to lower tier commodities.

2 Likes

I am a proponent of having the currently listed mm’s operate on a function similar to this. BSE, OVE, MCG, etc, etc. The “money printer” mm’s (IDC, LIS, AIR, etc) I would be careful about doing this on due to inelastic supply and velocity of production making people unhappy if prices change too much.

However, in my opinion, your listed process is too complicated. Too many variables. Weekly trading volume is not relevant, only prices are. The point is to have supply always available if there is a temporary shortage from the players. We also should not be modeling on universe production, this is a simple supply\demand backstop on the public cx’s.

It should be a simple so people can easily understand the logic - a given price is the default for a commodity is the default. If “x” units are bought from the mm during a period of time, it adjusts upward by some percentage amount (let’s say 5%) for the next period of time. If “x” number of units again trade at this new price, it adjusts another 5% higher again. If no units are traded during a period of time, the price adjusts the opposite direction. It cannot adjust lower than the default resting price. This logic continues perpetually, and is inverse for bid-mm’s (oxygen, BSE, RAT, DW, etc, etc).

(I personally don’t like this source of income since it’s a steady stream of cash without need to interact with players.)

I somewhat agree, but to a limited fashion. We’ve seen an explosion in cx trade with the viability of mm’s shifting away from IDC and into a variety of other products. Intermediate products like TRN, SEN, AL, SI and many others have seen trade volumes multiply as people outsource different steps of the chain and the economy has grown. I think these results have been quite positive, and at the end of the day, there needs to be some form of NPC monetary inflation generated in some process.

The only truly pvp inflation mechanism would be a negative trading tax, where all trade generates inflation - but this could be instantly and endlessly exploited so I’m not aware of any non-NPC options to generate new currency into the game.

1 Like

Your simpler logic might have an issue with price oscillation, since the increment in either way is the same. It could find a spot that going higher triggers downwards adjustment and lowering triggers upwards adjustment, and can occur for natural resources & lower tier commodities’ MM buy orders: losing $2 per unit vs earning $2 but wait a while. But I do agree mine is complicated and hard to understand.

Faction contracts? They sometimes would literally hand out free money + MATs. I don’t know if it alone would be enough to keep a slight inflation.

The marketmaker orders adjust independently. On items where there is both a buyer and a seller (RAT, DW, BSE, etc) one being adjusted wouldn’t move the other.

It could find a spot that going higher triggers downwards adjustment and lowering triggers upwards adjustment, and can occur for natural resources & lower tier commodities’ MM buy orders: losing $2 per unit vs earning $2 but wait a while.

I’m sorry I don’t quite understand this description. How does going higher trigger a downward adjustment?

Faction contracts? They sometimes would literally hand out free money + MATs. I don’t know if it alone would be enough to keep a slight inflation.

Well that’s arguably worse than items sold to a mm, because it’s just free money being sent out for nothing. At least with mm’s there’s items, who have complex supplychains and introduce demand into the economy and stimulate trade among those intermediate steps.

For example a MAT X is in huge oversupply such that only buy order is MM. Cost for one unit of X is $100 so as long as MM price drops below $100 selling X is pure loss.

Since the mechanism is simple so everyone knows MM price would increase if no trade is made, when MM drops below $100, sellers can just hold their X to limit trade amount, tricking the algorithm, then wait for price increase to say $105 and now there’s a $5 profit. This would result in MM price and trade to oscillate between “above $100 and massive trade amounts” and “below $100 and no trading”

I don’t know how likely this would happen, MAT NA is in huge oversupply and MM price is already a noticeable loss but trades are still being made with MM constantly.

The major difference in mine and yours is mine is very unlikely to return to a price that’s same or better than starting point (higher for MM buy and lower for MM sell), it always leaves a gap between the order in front of it. So as long as that order remains untouched the MM wouldn’t respond. Acting as a damper thus preventing oscillation. A damping system must be included in any implementation of dynamic MM even if it complicate things.

Also I think I used “trade volume” instead of “trade amount” in original post by mistake :melting_face:.

NA isn’t good to use as an example since it is merely a byproduct. Nobody produced NA by choice and the sales are just people disposing of something that they have no use for and that they know will never rise in price. (Yes, NA is used to make other things but since there is an oversupply people who produce it have more than they need and people who don’t produce it know they can get it for pennies over the MM price).

yea I can’t think of another MAT that’s over supplied to a point where only MM order exists, so myself also doubt if that would actually happen.

CBS: all CX; CBM at MOR/BEN/HOR; SP at MOR. ADR at ANT (and soon at MOR as only 4 non-MM trades are up)

Be careful when you say “over supplied to a point where only MM order exists” because the opposite of that statement “the market is so thin that there are no non-MM orders” is also true.

Maybe let some MM (in highly traded goods) be dynamic - but for MM designed to encourage some activity in markets which are very thin (I would add some to the Electronic Systems and Electronic Devices categories personally) those would not change dynamically because this would be counter to the goal of encouraging people to make more of these items.

At the moment most the items on these lists (energy, electronic systems) are expensive to make, and without consistant demand there is no real supply. The only times they are made are when someone puts up a high enough bid to get someone interested in buying - or they are handled inside a corporation . So MM in these areas are designed to encourage supply in the market. For the energy systems, this has direct knock-on effects on the BE and LI markets as well - because those are major input. Frankly, that is all that LI is used for. If the MM are affected in the energy systems, then the LI market will be affected directly. Now the gateway need for maintaince might help some - but we have to see how the market responds.

SO in short - I have no problem with experimenting with some of the MM to be dynamically prices - i would limit that to items that have a large active market (DW, RAT, etc) (frankly people will sell NA at a price of zero because they have piles of it and it takes up space - because there is no way to get rid of unwanted inventory). But for those MM that are in thinly traded goods and are there to encourage production of goods with thin demand - those MM should NOT be dynamically priced because that is not why those MM exist.

2 Likes