Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create an arbitrage contract for the sETH/ETH Uniswap Pool #188

Closed
kaiynne opened this issue Aug 7, 2019 · 5 comments
Closed

Create an arbitrage contract for the sETH/ETH Uniswap Pool #188

kaiynne opened this issue Aug 7, 2019 · 5 comments

Comments

@kaiynne
Copy link
Contributor

kaiynne commented Aug 7, 2019

The Synthetix foundation is running a trial to reward arbitraging the sETH/ETH Uniswap pool if the ratio falls below 99/100. The foundation is funding this arbitrage pool with 144k SNX initially during the trial. We need someone to write a contract that enforces the arbitrage pool mechanism on-chain without manual intervention.

The contract will:

  1. Allow a user to send ETH to the contract if the sETH/ETH ratio is below 99/100 &
  2. there is sufficient SNX remaining in the contract at the current exchange rate
  3. Convert the ETH to sETH via Uniswap up to the 99/100 ratio or the ETH is exhausted
  4. Convert the sETH to SNX at the current exchange rate
  5. Send the SNX to the wallet that sent the ETH

The sETH/ETH ratio can be read directly from the Uniswap contract, but the SNX/ETH ratio should be read from the Synthetix exchange rates contract on mainnnet.

We expect the contract to be deployed to Ropsten/Kovan testnet and tested with your support before the foundation deploys it to mainnet.

We do not require a front end for this contract as it will eventually be integrated into our Mintr dApp.

Resources and links:

Arbitrage Pool Announcement
sETH Uniswap Pool Contract Address
Synthetix Discord
Synthetix Dev Portal

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This issue now has a funding of 20000.0 SNX attached to it as part of the Synthetixio fund.

@gitcoinbot
Copy link

gitcoinbot commented Aug 9, 2019

Issue Status: 1. Open 2. Cancelled


Work has been started.

These users each claimed they can complete the work by 1 week, 1 day from now.
Please review their action plans below:

1) solexplorer has applied to start work (Funders only: approve worker | reject worker).

I will create the contract which will be fully compliant to your requirements.
My step will be to create the contract which will fetch the price of sETH and when it reaches the ratio of 99:100, the user( that bought the Synths on the open market) will be able to profit from arbitrage.
2) sanchaymittal has applied to start work (Funders only: approve worker | reject worker).

I will create this contract employing test-driven development to ensure the security of the contract. I'm a consensus certified blockchain developer and worked with hyperledger foundation.
3) jwtkat has been approved to start work.

I will create a contract that achieves the five outlined steps.
4) uivlis has applied to start work (Funders only: approve worker | reject worker).

Hi, there! Will follow your specifications. Plus, I've done something similar in the past, it was a contract that used the Bancor protocol to convert some token to ETH in the background.

Learn more on the Gitcoin Issue Details page.

@nanspro
Copy link

nanspro commented Aug 13, 2019

@kaiynne i am interested in taking this one!! I wonder why it is traditional? It should be cooperative as that way it'll take less time to finish it and multiple people can collaborate. If by any chance this becomes available or you accept multiple contributors then let me know :)
I have good experience with solidity, vyper and i am familiar with the security considerations that need to be taken in these languages. So i'll write a safe and easy to understand code. ETA 3weeks

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Cancelled


The funding of 20000.0 SNX (7644.0 USD @ $0.38/SNX) attached to this issue has been cancelled by the bounty submitter

@Synthetixio Synthetixio deleted a comment from gitcoinbot Aug 30, 2019
@Synthetixio Synthetixio deleted a comment from gitcoinbot Aug 30, 2019
@Synthetixio Synthetixio deleted a comment from gitcoinbot Aug 30, 2019
@Synthetixio Synthetixio deleted a comment from gitcoinbot Aug 30, 2019
@Synthetixio Synthetixio deleted a comment from gitcoinbot Aug 30, 2019
@kaiynne
Copy link
Contributor Author

kaiynne commented Aug 30, 2019

Just a note that this work was actually completed and paid, but the contributor was unable to submit the work via Gitcoin due to an issue with github so it had to be paid manually. We are very happy with the submitted work!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants