Proposal #6: TORN Liquidity mining program


Offer 120k TORN for a liquidity mining campaign on the Uniswap ETH/TORN pair to last 6 months. Vote now:


After some discussions on this thread, they seem to be a pretty strong support for a TORN liquidity mining campaign. As of now, 89% of the poll participants voted yes.

TORN liquidity are very thin, a $30k swap currently causes more than 2% slippage. As a consequence, it is hard to enter any sizable TORN position.
Moreover, the governance treasury currently have plenty of TORN tokens available to incentivise liquidity.

I think we should go ahead and make a formal proposal to vote on-chain.


According to the poll results, the distribution should be setup as followed: Offer 120k TORN tokens in a liquidity mining campaign to last for 6 months. 120k is about 43% of the currently available TORN token in the treasury and about 2.4% of the total treasury funds vested over 5 years. 6 months would means that the campaign will last until late October 2021.

Target Uniswap pair: 0x0C722a487876989Af8a05FFfB6e32e45cc23FB3A
Campaign duration: 182 days
Reward amount: 120000 TORN token

The contract used for the distribution is very the popular staking contract from Synthetix. It was audited by Sigma Prime in February 2020. This contract was also used by the Uniswap team in their original UNI distribution, Sushiswap, and many more Defi projects. The contract works by depositing Uniswap ETH/TORN LP shares. It distributes a constant amount of token reweard on a per second basis, pro rata to your share in the pool.

It might not be possible to have a UI for depositing, withdrawing and claiming rewards on the main Tornado Cash website. As an alternative, we could requrest it to be added on Zapper or VFat.

The repo for the proposal code can be found here:

The proposal contract was deployed and verified at this address:

Like with previous proposals, someone with 1k TORN needs to submit the vote on-chain before we can start to vote.

Update 1: The proposal is live! Go vote now:

Update2: The proposal was accepted, thank you for voting! The staking contract was deployed here.


I work with the Harvest team regularly. I am sure that they would add a pool for TORN, which would provide a UI for depositing

Given that TORN in the LP pool will be rewarded, but TORN in Governance will not, has thought been given to whether this will make future proposal votes more difficult to pass?


I am not worried about that. The last vote got like 46k votes in total. The quorum is at 25k. Actually, since mining keeps going, we should consider increasing it as some point.


Although there could be enough votes for the future proposals, we should create some kind of incentive for voters, such as distributing part of DAO torns to governance locking pool or addresses who voted before. It is unfair to only reward the LP holders, I think.


Currently there is very little opportunity cost for voters. A small number of sushi alloc points. Adding significant opportunity costs to voting (forgoing liquidity rewards) is likely to have a large impact on voting rates


Hello friends,

This is my first post. Forgive me if this is a noob question as I am relatively new to all the concepts under the DeFi umbrella.

First question, am I understanding this proposal correctly? : We contribute an equal value of BOTH eth and torn to the ETH/TORN uniswap pool, in return we receive LP tokens from uniswap which we will then stake on this proposed contract to receive TORN?

But we are still subject to the possibility of impermanent loss via our funds in the eth/torn pool? If I understand impermanent loss correctly, basically if the ratio of the coins deviates too much, (aka the value of torn increases a lot with respect to eth or vice versa) we can end up losing in total value compared to having kept our original 50/50 eth/torn distribution.

So can we expect the rewarded TORN from the LP token staking to exceed the possible impermanent loss from the pool?

I guess basically I’m asking if there is a scenario where participating in this proposal ends up losing the participate value compared to just holding their torn and eth (and how likely that scenario might be?).

Again sorry if this is a noob question, I am just trying to understand better. I am somewhat new to this community, but have been enjoying reading the discussions on this forum. I was excited to vote for the first time on the last proposal, and look forward to voting on this one as well.


1 Like

Great job Rezan, I’m glad you used an already well-known contract for this.

I just happened to see that the proposal has already been submitted, everyone can now vote here


Hi. You get it wrong. Governance won’t provide liquidity, the governance will reward liquidity providers with the TORN token. 120k TORN will be distributed for 6 months among all the LP.

1 Like

Hi friend,

Your concern about the impermanent loss is totally right. We need to take this risk with the torn reward in return. Maybe the rewarded TORN from the LP token staking can exceed the potential impermanent loss, maybe not.

Above is about the personal decision. Next I want to say something about the project. The introduction of Liquidity mining plays a key role in increasing the liquidity level of torn tokens, at least 10x I think. Afterward, we could do something more to add extra value to torn tokens, such as rewarding torn to voters and distributing possible platform fees to torn holders. Besides, the anonymous DeFi farming could be another blockbuster show. We can look forward to the huge potential of Tornado.Cash in the near future.

1 Like

Does it make sense that we are creating this for the V2 Uniswap contract when V3 is launching in 2 weeks?

Would it be better to wait until the V3 is live?

Or is it possible to update the contact to use V3 once it is live?

1 Like

I’m not an expert, but if I understand the Uniswap V3 mechanics correctly, it’s not for Liquidity mining like this? I’ve seen thoughts on Twitter saying that current LP like programs should stay on V2.

1 Like

This is accurate. V3 uses NFTs to represent your pool share, as everyone’s pool share has different range-tick settings. It’s probably possible to do a full range requirement, so that all of the NFTs have the same properties- but why do something experimental when we have a proven system here, and when we know UNIv2 isn’t going away anytime soon. (Occasionally I still get a bubble saying V1 has better liquidity, though not as often).

Can we put them into Tornado.Cash website? LP holders need it.

I don’t know if that will be possible. But for the first few days, we will have to Ape in with Etherscan.

1 Like

Would be good to have a brief guide on how to deposit LP tokens via Etherscan.

1 Like

stake function with 18 decimals amount, right? there are some txs being reverted due to Fail with error 'ds-math-sub-underflow' and I don’t see a reason why (wanted to check before trying)

edit: those txs were failing because the senders did not approve the staking contract to spend the lp tokens. step by step:

  1. Go to 0x0C722a487876989Af8a05FFfB6e32e45cc23FB3A (TORN/ETH LP) and execute approve with the staking contract address: 0x720fFb58b4965D2C0BD2b827FA8316C2002A98aa. Use any amount as you please, don’t forget to add 18 decimal positions.
  2. After tx is confirmed, go to the staking contract address 0x720fFb58b4965D2C0BD2b827FA8316C2002A98aa and execute stake. Use 18 decimal positions for amount.

Thanks for Viarnes’s guide in the TC community forum so that I can make a mining guide voluntarily with more details. Everyone can check
it at Torn/Eth LP mining guide - Google Docs. If you have found anything wrong, just tell me.


Guys, go upvote on Zapper ! : Add the new TORN/ETH pool | Voters | Zapper

(Connect with multiple accounts & vpn to multiple vote)


Thank you for the helpful reply! One last noob question:

If we stake our LP tokens are we locked in for the full duration of the campaign? Or can we un-stake at any time?

The devs made a UI for depositing into the pool here: Yield Farming Info

It will show you the APY and everything

1 Like