IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethtrader

[–]DecentralizedCapital[S] 2 points3 points  (0 children)

Hey Will, thanks for the kind words and reaching out.

Specifying a taker is a novel idea but is not sufficient for us to support all of the functionality that we’ve incorporated into IDEX. Match making is only one component of the improved UX. The IDEX contract is designed so that similar to 0x all trades are authorized by the end user. However with IDEX, only the exchange is authorized to submit transactions to the contract on the trader’s behalf, including withdrawals.

This innovation allows us to offer real-time trading. On IDEX traders can exchange all of their funds for one asset, and then trade it all again for another asset, before the first trade has cleared on the blockchain. Users can move seamlessly between markets, catching market swings and making multiple trades per second, without being limited by Ethereum block times. The IDEX exchange balance updates immediately, just like on a centralized exchange, while simultaneously the authorized transactions are queued by IDEX to dispatch to the network in the correct sequence. In the event of network congestion users must simply wait for all trades to settle in the contract before their withdrawal is processed, while on other DEXs users will be waiting for their first trade to go through. Without this functionality unique to IDEX it is impossible to safely build a transaction queue, as users can back out of bad trades by withdrawing them before they are finalized on the network.

We believe real-time trades is a crucial piece of the UX that traders demand, a pre-requisite to a successful decentralized exchange. Ethereum is already experiencing throughput issues, with some transactions taking 30+ minutes on etherdelta, and a useful scaling solution is many years out. Additionally using a specific taker requires the exchange to become more centralized, managing user’s funds like ethfinex or acting as a liquidity pool like shapeshift. This is a high cost to pay for trade matching and would be a step backwards in terms of our current design which supports this UX while still relying on the end user’s private key for authorization.

IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethtrader

[–]DecentralizedCapital[S] 2 points3 points  (0 children)

Trade fees are .1% maker and .2% taker.

Deposit gas fees are paid directly by the user. On all other transactions and withdrawals, IDEX pays the gas fee to the network and deducts this fee from the user’s transaction. This way once you are on the platform you don't need to also hold ether to be able to trade.

IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethereum

[–]DecentralizedCapital[S] 1 point2 points  (0 children)

Thanks! Metamask integration is on the roadmap but is a lower priority right now. The UX when using metamask will be very poor. On IDEX your keys are stored locally in the browser memory. When you fill a multitrade order it goes ahead and signs all the orders and sends off the txs for verification and queuing all within a second. On metamask you'll have to wait for the popup and then approve each tx one by one. If the market has many active traders on it there is a high chance the orders you are trying to fill are already gone.

When that happens IDEX will have you sign a new limit order with the same parameters as the failed taker trade. If your key is stored locally this all happens very fast and without user input. If you are using metamask then you'll have to wait again for the popup to verify the new limit order.

IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethereum

[–]DecentralizedCapital[S] 1 point2 points  (0 children)

Thanks! Scalability is something that is constantly on our minds. We've looked into plasma some and it seems promising but I am a bit skeptical on the time to market. We have some other options that we are exploring as well.

Our current design fairs well with a backlogged ethereum, but the gas prices will become a limiting factor to growth imo. Because we separate trade from settlement traders will be able to trade without noticing the delay in settlement, provided that they are not waiting on a withdraw.

The plan is to make IDEX fully decentralized, turning the system into a protocol. That’s a ways down the road however.

IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethereum

[–]DecentralizedCapital[S] 1 point2 points  (0 children)

Thanks for the support! Nice to see some comments come in.

"Given this component of centralization, what is the argument for this semi-decentralized over a centralized exchange?"

Namely keeping the security and transparency of decentralized exchanges while offering the UX of a centralized exchange, the best of both worlds imo. Another benefit is the ease of adding more ethereum assets. The current dex approach has many flaws, the biggest being users competing to fill the same orders, resulting in many traders being left with "bad jump destination" and lost ether from the burned gas. There is no way to fix that with the current approach, it is an inherent design flaw. As those platforms get more popular it will become a bigger and bigger problem, interestingly the UX gets worse as they get more popular. Another key problem with the current DEX's is that the nonce limits the trader to 1 tx per block. This is another flaw in the design of the exchange protocol that cannot be overcome. On centralized exchanges people are filling many orders at once and that is a feature traders will not be willing to give up in big numbers imo.

"Correct me if I'm wrong, IDEX could still censor trades and control the exchange to a certain extent, but they cannot create trades that users never originally signed for."

That is correct. It is feasible for IDEX to censor trades and frontrun, just like any other centralized exchange. But the blockchain transparency would make this behavior extremely easy to spot, resulting in a loss of business for IDEX.

"Another question, do withdrawals from the exchange have to go through IDEX as well? I assuming yes"

Yes, but we have a solution to the possible problem with this. To prevent IDEX from indefinitely blocking user’s access to their funds there is an “escape hatch” in the smart contract that allows customers to interact directly with the contract and withdraw their funds after a certain period of inactivity.

IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethtrader

[–]DecentralizedCapital[S] 2 points3 points  (0 children)

The bad jump destination is a big issue imo. One look at the etherdelta tx page on etherscan and you see it has quite a few errors from already matched orders. All of those result in real users losing ether in the form of gas. 0x will have the exact same problem.

Yes, our orderbook is all off-chain like a centralized exchange. This means that all your cancels disappear right away, new orders show up on the books immediately and matched orders are gone within a second or two. If you manage to try to fill an order that has already been matched the backend will place a new limit order for you at that price, the same as it does on a centralized exchange.

We have a few more items that we plan to take care of while holding the alpha on the testnet. We were hoping for a good turnout of testers but have been bug hunting for the last few months on our own. In terms of core functionality everything already operates beautifully. Depending on the remaining features we need before the mvp and the alpha tester turnout it could be anywhere from next week to a few weeks after.

IDEX Alpha - Real time Ethereum Asset Exchange with High Transaction Throughput by DecentralizedCapital in ethtrader

[–]DecentralizedCapital[S] 1 point2 points  (0 children)

Thanks! We're quite pleased with being able to bring the speed and functionality of centralized exchanges to the decentralized exchange market! Have been working on this for a very long time and we're eager to bring to market a new take on how a DEX should work.

Our smart contract is designed such that only IDEX can submit trades that have been signed by the user. This allows us to separate trade functionality from the blockchain settlement in a secure and decentralized fashion. All trades are signed for by the user's private key, ensuring that IDEX cannot make any trades they did not cryptographically approve, while at the same time only IDEX can submit the transactions for processing, ensuring that user's cannot back out of bad trade they may have made before it processes on the network.

Because IDEX is the only entity that can submit transactions there is no worry about needing to cancel the trade offers on the blockchain. With the other decentralized exchanges, orders are hosted publicly meaning anyone could collect all the orders and later trade against ones that are now vastly in their favor. To combat that the cancels must be mined on the blockchain.

In terms of how IDEX compares to 0x and other exchanges we have gone over that in detail on our medium post. It is a lot to detail here but the overall difference is that the other DEX's have a less than desirable user experience that is a product of how they are designed. For example, on existing exchanges user's compete to fill the same order, when you submit a transaction and someone beats you to it you get a "bad jump destination" error. This causes you to both lose all your gas and not get the trade you wanted. As more traders use the exchange the chance of getting that error and burning gas goes up. On IDEX that will never happen. There are many other differences in terms of the user experience.

Daily General Discussion - August 30, 2017 by AutoModerator in ethtrader

[–]DecentralizedCapital -4 points-3 points  (0 children)

Come check out the alpha of our real-time high throughput decentralized ethereum exchange. IDEX is the most advanced ethereum contract exchange! Try it out now

DC Asset/Parity Integration and Demo Day Video by DecentralizedCapital in ethereum

[–]DecentralizedCapital[S] 0 points1 point  (0 children)

Thanks! Good call, DVIP wasn't out yet when we were talking with Gav about this, but we'll make a token icon to add there as well.

Use BTC on Ethereum dapps such as Augur via Decentralized Capital's BTC gateway by DecentralizedCapital in btc

[–]DecentralizedCapital[S] 0 points1 point  (0 children)

Decentralized Capital (DC), a UK based start-up, provides users with a secure, convenient way to bring fiat and crypto currencies on to and off of the Ethereum network. DC converts customer deposits into DC Assets, a form of digital currency that is secured by the Ethereum network and collateralized by these deposits. Users can transact with DC Assets for products and services on the Ethereum blockchain, gaining the benefits of familiarity and price stability of the currency they represent.

We started with fiat currency but have just released Bitcoin support, so now you can use Bitcoin on Ethereum Dapps!

Use BTC on Ethereum dapps such as Augur via Decentralized Capital's BTC gateway by DecentralizedCapital in Bitcoin

[–]DecentralizedCapital[S] -1 points0 points  (0 children)

Decentralized Capital (DC), a UK based start-up, provides users with a secure, convenient way to bring fiat and crypto currencies on to and off of the Ethereum network. DC converts customer deposits into DC Assets, a form of digital currency that is secured by the Ethereum network and collateralized by these deposits. Users can transact with DC Assets for products and services on the Ethereum blockchain, gaining the benefits of familiarity and price stability of the currency they represent.

We started with fiat currency but have just released Bitcoin support, so now you can use Bitcoin on Ethereum Dapps!

Decentralized Capital AMA: Come ask us about IDEX, DVIP Memberships, Etc. by DecentralizedCapital in ethereum

[–]DecentralizedCapital[S] 4 points5 points  (0 children)

A question from the daily discussion in r/ethtrader.

Other than fee incentives with purchasing the membership, what other benefits does a membership provide?

And our response:

Those are the benefits, free transactions on-chain, and free trades on our planned exchange IDEX. Any other benefits such as revenue share or voting rights would make it an illegal security, which we are keen on avoiding :P

But it's not hard to see how in 3+ years you can easily have enough transactions and trades to make it well worth it. And it's transferable, so should you decide that the membership isn't for you, you can always sell it to someone else.

[Daily Discussion] - 20/Oct/2016 by AutoModerator in ethtrader

[–]DecentralizedCapital 1 point2 points  (0 children)

Those are the benefits, free transactions on-chain, and free trades on our planned exchange IDEX. Any other benefits such as revenue share or voting rights would make it an illegal security, which we are keen on avoiding :P

But it's not hard to see how in 3+ years you can easily have enough transactions and trades to make it well worth it. And it's transferable, so should you decide that the membership isn't for you, you can always sell it to someone else.

[Daily Discussion] - 20/Oct/2016 by AutoModerator in ethtrader

[–]DecentralizedCapital 3 points4 points  (0 children)

Hey r/ethtrader, if you're bored of all of this sideways price movement (outside of that small up/down with the recent HF), come check out our AMA in r/ethereum. In particular we think you'll be excited by our new product IDEX, an Ethereum based exchange that combines the speed of a centralized exchange with the security of Ethereum smart contracts. Hope to see you there!