Proposal on Gas/Revenue Model

Hey guys,

I had this idea when reading @leoscott’s gas token post, but thought this warranted a separate post instead of replying to theirs.

So gas tokens is already a thing right? We wouldn’t really be standing out by introducing them to WhiteSwap. Furthermore, it seems like they are quite complicated to use, particularly for non-technical users.

But I was thinking, what would be an awesome idea if it could work (need someone with technical knowledge), would be to have the role of the gas token built into WhiteSwap. I’m imagining a system where WhiteSwap calculates the average gas price over the last “x” hours, say 24 or 48 (or a week idk), and then charges users that much as the “gas fee”. It would put that “gas fee” into a pool from which it pays the actual transaction gas fee on behalf of the user.

Obviously when gas prices are higher than average, the pool would be losing funds, and when gas prices are lower than average, it would be gaining funds.

Now what you could do is, instead of charging just the average gas over the last “x” hours, you could charge it with a commission - say 1%. This would ensure a buffer so that the gas fee pool stays afloat during longer periods of increasing gas prices, and any excess from the commission could be paid to liquidity providers and stakers as part of the fee distribution incentive! Furthermore, this could justify us decreasing the swap fee from 0.3% to encourage users to swap!

Essentially we would be selling the service of gas fee stabilization while providing extra liquidity provision incentives and decreasing swap fees for users.

There would lots to work out - for example the commission could be variable, say if you wanted to fix the liquidity provider reward and the pool buffer - and I’m sure other’s would have plenty of great ideas to add.

Now I have no idea if any of this is possible but it seemed like a good idea in my head :slight_smile:

Hope you’re all having a great week!

Well, I think it’s not a bad idea but it definitely has some flaws in it.

We need to understand that arbitrageurs swap on the high gas and if we implement a gas token in order to reduce a transaction fee they will use up all the gas token pool. In fact, normal users won’t get any discount on their transactions…

You know that we can find out who is the real user and who is arbitrageur, right? In Router contract if tx.origin and mssg.sender are identical that means it’s just a user. So in that way we can kick out all of the bad ones and leave only real people. So they won’t use the discount.

@davehut even though your idea is feasible and it could have been used for other projects. However, bear in mind that most of our trading volume is made by arbitrageurs and we can’t just give transaction fee discount only to normal users because arbitrageurs will stop swapping and cause a massive decrease in trading volumes.

Maybe we can somehow make them mine gas tokens? Or maybe not only them, but everyone who uses the WhiteSwap. And give the discount to the real users, so the pool of gas tokens won’t get emptied all the way by arbitrageurs.

Also I think that it would cost a lot of gas, cause the logic and math in the proposal is really complicated. So we gonna pay a fee for that, would it even be that profitable?

@powmyles I agree with you that it would cost us a lot of gas because of the complexity of logic and math in the proposal. And yeah, maybe we can try to make everyone mine gas tokens. It should prevent the pool of gas tokens to be emptied out only by arbitrageurs.

Hey @gpne I think that’s a good idea! It would definitely make some improvements to the team and project. Keep it up. Can you tell me about the 1% commission idea in details? I don’t fully get it. But the part with pools is probably going to work all right.

I’m glad this generated a discussion! A couple of responses:

@andermolly great point about arbitrage - it hadn’t even entered my mind. This gives us more opportunities though! Correct me if I’m wrong, but arbitrageurs couldn’t arbitrage the gas pool when gas prices are high for the same reason that the gas price isn’t already stabilized from arbitrage - because making transactions would still cost them a fee (just not as much as using another DEX).

The role of gas prices in arbitrage is to limit possible margin. In that sense, gas price only determines the spread over which arbitrage is profitable, and thus the volume of arbitrage being undertaken. By stabilizing our transaction fee, we would actually be simultaneously stabilizing our arbitrage volume, as there would be a stable spread over which it is profitable.

You are right in that during periods of high gas prices we would have more arbitrage - but it would be more arbitrage than other DEXs, not more arbitrage than we would have during periods of lower gas prices. This means that during periods of high gas prices, WhiteSwap would actually have an advantage of more accurate swap prices! Although on the flip-side of this, it would have less accurate swap prices during periods of low gas prices.

On @powmyles suggestion - I don’t think making users mine gas tokens would be an ideal solution. This is because this whole idea is centered around simplifying transaction fees for non-technical users. I feel that users who would go to the lengths to mine gas tokens could just use regular gas tokens themselves to get better savings on gas prices than what we would provide.

Regarding @fablo’s response - here is what I envisioned with the commission. Say the average gas price over the last 7 days was 50 (random number). We could charge an equivalent of 52 (for a 1% commission), and assuming that our trades are evenly distributed over periods of low and high gas prices, and that the 7-day average gas price stays at 50, then that commission would be stable and increasing the size of the pool, the gains from which could be paid to liquidity providers.

Now the problem I see is that the assumptions of even trade distribution and long-term fixed average gas price are far from realistic. This is why I suggested a variable commission. For example; say you wanted the pool to remain at a size of 1,000,000 (random number), and you wanted to give liquidity providers 0.1% of gas fees. Then you could create some formula to charge slight more than 1% (say, 54 if the average price was 50) during periods of high gas prices and slightly less (say 50) during periods of low gas prices, in such a way that the pool decreases less during high gas prices and increases more during low gas prices and stays roughly around 1,000,000 over a given period of time, all while taking into account a guarantee of 0.1% commission to liquidity providers.

The problem with this idea is that the gas fee we charge would be dependent on our relative transaction volumes during periods of high and low gas prices. The idea relies on people who use WhiteSwap during periods of low gas price effectively subsidizing gas fees for those who use it during periods of high gas price. Theoretically, if WhiteSwap was only used during periods of higher-than-average gas prices, the variable gas fee we charge would just be the same as the regular gas price (plus a little more actually, to account for the 0.1% liquidity provider commission), so we wouldn’t be providing any service. Even if we didn’t have this extreme scenario, our gas fee would still not be as stabilized as we would like - particularly if WhiteSwap was being used through a DEX aggregator.

I’ve toyed with the idea of charging a variable gas fee for arbitrageurs while charging the average gas fee for regular users (thanks to @davehut’s response), but I’m not sure if this would achieve anything. It would effectively exchange the stabilization of arbitrage margin (and swap price accuracy) for stabilization of trading volumes, but I don’t think it would provide any stabilization to the pool.

Of course @longserena also has a point that it might cost more to execute than what we could gain from it.

In short, I’ve boiled it down in my head to the extraction of value (in the form of the liquidity provider commission) from gas price volatility. If DEX aggregators become the norm, then this extraction would render the platform obsolete if it wasn’t accompanied by an equal injection in the form of decreased swap fees. However, you could indeed still do this extraction/injection and give the platform a unique selling point to boost adoption and the value of WSE tokens - you just wouldn’t be making any extra money off trade fees/commissions for liquidity provision.

If aggregators don’t become the norm, then the fee stabilization would become more effective and valuable as more people start using WhiteSwap, and you could extract value from its utility.

Regardless, it could be a great marketing stunt.

Sorry for the long-windedness, I hope it all makes sense. Let me know if I’ve missed something or made a mistake somewhere.

Another brief thought on the aggregator scenario:

The advantage of more accurate swap prices could make WhiteSwap stand out in a DEX aggregator during periods of high gas price (presuming you had no “net extraction” as mentioned above). This would require charging the averaged gas fee for arbitrageurs while charging a variable gas fee for regular users. It would, however, adversely affect the level of fee stabilization through increased trading volume during high gas price periods. (Although if you’re going to have variable fees for regular users anyway then in an aggregator scenario the fee stabilization becomes mostly a marketing stunt).

Hey @gpne your model is good, maybe you can form more certain proposal? Like to clarify everything and maybe eventually make an off-chain voting?

that’s a good idea, @gpne you should do a poll about your proposal

Hi @leoscott

I’m glad you like the idea! :slight_smile:

While I would love to spend time writing up a comprehensive proposal (formulas and calculations included), unfortunately I don’t own and can’t currently afford enough WSE that would justify investing that much time.

If there was a means by which such community participation could be compensated (perhaps with a portion of the Team and Advisors’ 130 million WSE tokens…) I would be more than happy to go through the effort, but I’m not currently prepared to do the Team’s work for them for free.

@fablo Alright, will do. I suppose that’s a Proposal Discussion post?

You can create a poll on Snapshot, also read https://docs.ws.exchange/governance/process