Purchasing BitDegree (BDG) from ForkDelta with Metamask

in #bitdegree7 years ago (edited)

So you missed the BitDegree ICO and want to purchase BDG before it heads to the moon?

Or perhaps you want to sell at 8.5x ICO price right now?


Yes, that is an 8.5x ICO price buy order before token transfers are unlocked. Had I made it to the ICO before its end myself, I would sell 30% of my position at that price.

While getting ready for the BitDegree token unlock tomorrow (12th January 2018 at 14:00 UTC) I stumbled upon a new fork of the EtherDelta exchange.

TL;DR History of EtherDelta, you can skip this section if you're only interested in the guide.

EtherDelta was a big thing in late 2017: a decentralized open-source exchange for etherum tokens, where anyone could trade tokens before they were listed on "real" exchanges. However EtherDelta is more complicated to use than mainstream exchanges and has not been updated to automatically adjust gas prices, leading to laggy transactions during times of etherum main network congestion. These problems combined with an EtherDelta DNS server being hacked in December 2017 lead many users to not touch the exchange again, switching over to exhanges like Binance, Kucoin or coinexchange.io for their altcoin trading. (Shameless referral links for memes and profit 👀)

Forkdelta is a new fork of the original EtherDelta. You can find more info on ForkDelta on Reddit or join the project on GitHub. I could write a full article on ForkDelta, but this time I'll focus on using it to purchase a new, highly hyped coin. An outstanding advantage of ForkDelta is the ability to trade a token without any reviewing or approval process. Anyone can send any etherum token on ForkDelta and start trading right away, ForkDelta providing the interface automatically. When developers notice a new token has begun trading, they can trim the trading pair URL shorter and provide a small writeup on the coin in question.

ForkDelta is currently a new frontend for EtherDelta exchange smart contract plus orderbook and will later become independent.

Guide to purchase BitDegree token (BDG) on ForkDelta

This guide relies on two assumptions:

You have a Metamask etherum wallet.
Download Metamask and set up a new wallet. Metamask is a browser addon etherum wallet that interfaces with websites automatically, avoiding the hassle of creating new accounts and remembering passwords. There are a plenty of excellent guides online. My favourite is Antonio Madeira's guide over on Cryptocompare.

You have etherum available to purchase BDG with.
You can withdraw etherum to your Metamask wallet from any exchange or other etherum wallet. In case this is your first time purchasing cryptocurrency, I suggest using Coinbase, as it is perhaps the most reputable crypto vendor. (Referral link for extra 10$ worth of Bitcoin if you purchase 100$ or more worth of cryptocurrencies.) You can find guides online, for example at buyingeth.com (steps 8 to 13). Be prepared to scan or photo an ID document for the signup process. There are alternatives to Coinbase, but they are less reputable or secure and can charge you more (or less!) for the etherum. After purchasing etherum, make sure to send it to your Metamask wallet address. Some of the guides use myetherwallet instead of Metamask, but metamask is actually easier to use and more secure. I suggest purchasing more etherum than the amount you will buy BDG with, because a part of it will be used for gas fees. While the ForkDelta minimum transaction amount is 0.001 ETH, I would suggest purchasing about 0.03 ETH minimum to not have issues with gas fees.

Got a Metamask wallet with some etherum on it? Great.

1) Open BDG on ForkDelta.

The link to BDG/ETH trading pair on ForkDelta is https://forkdelta.github.io/#BDG-ETH. Your Metamask wallet should be automatically identified by ForkDelta. You can check if the identification worked from the top-right corner of the screen.

2) Send etherum from Metamask to ForkDelta.


Here's a picture of the top-left corner of the trading window. I have no BDG token on my Metamask wallet or on ForkDelta. It is called EtherDelta in the window, because the funds you send over to ForkDelta are stored over EtherDelta's smart contract for now. This will change in the future when ForkDelta has its own new smart contract. I have a balance of 0.020 ETH in my Metamask wallet and 0.009 ETH in the EtherDelta smart contract. I have written 0.005 into the deposit box. Pressing the deposit button will initiate Metamask to send 0.005 ETH to EtherDelta smart contract for my use in trading over ForkDelta.

You can adjust the etherum gas price and limit here. For faster transactions use a higher gas price. The default settings should be good, but boosting the gas price to about 80 will maximize transaction speed whileas dropping the cost to 4-20 range will make it dreadfully slow in case the etherum network is overloaded. I would leave the gas limit as is, as ForkDelta might not accept the transaction with a too low gas limit. You highly probably will not be charged the maximum possible gas amount, but you need to have it in your Metamask wallet to be able to initiate the transfer. My gas fees have ended up between about 0.2$ and 2$ depending on what gas price I used and condition of the etherum network. (That 0.2$ token transfer took three hours. Etherum could use some Raiden Network etc. to help with the scaling issues.) Press "submit" when you are fine with the gas price and limit. If the transaction fails, you will get a popup error about too low gas price. That means you tried the transaction with too low gas limit and/or gas price or did not have enough ETH in your Metamask wallet to cover both the transferred ETH and gas fees. In this step you sent some ETH from your Metamask wallet to the EtherDelta smart contract, where it was allocated for the use of your Metamask wallet address to use for trading within the EtherDelta smart contract.

3) Purchase a sell order or place a buy order for BDG.

The BDG token transferability was unlocked while writing this article, so the sell orders have started coming in.

If you click a sell order (ones on the red) you can buy BDG at the seller's dictated price. A window like this pops up:

Write the amount you want to buy, and press "Buy". A Metamask transaction window will pop up. This zero ETH transaction is a signal to the EtherDelta smart contract that it should exchange an amount of BDG allocated to the seller for an emount of ETH allocated to you within the EtherDelta smart contract. You may have to wait for up to minute or two for a Metamask transaction window to appear. Be patient, the backend is slow! Submit the Metamask transaction. After it is processed, you should see your EtherDelta BDG balance increase from zero to the amount you bought.

In case you want to issue a buy order instead, use the "New Order" box under the orderbook. Write in the amount of BDG you want to buy, the rate of BDG/ETH you want to pay (the ICO price was 0.0001) and ForkDelta will calculate the amount of ETH you have to pay for the order (minimum 0.001 ETH). The final box "Expires" is the time (in etherum blocks) that the buy order will stand before it is automatically cancelled. One etherum block is about 15 seconds, so if you want your order to stand for a day write 5760, for a week write 40320 and 172800 for a month. Then press "Buy". You will receive an error if you don't have enough ETH balance in the EtherDelta smart contract for the buy order. You will see a different sort of a Metamask popup:

Click "Sign" and your buy order will be listed on the ForkDelta orderbook when it is processed, which can take a few minutes. The ETH balance you committed to the buy order will be unusable until the order is cancelled, expired or met. Now you wait until someone hopefully meets your buy order, at which point your EtherDelta BDG balance will increase on the top-left Balance window.

4) Withdraw the BDG tokens from EtherDelta smart contract to Metamask.


I don't have any BDG balance myself in that picture, but you should have some at this point. Write the amount of BDG you want to withdraw (in that example, I pretend to be withdrawing 40 BDG tokens) and click Withdraw. A Metamask transaction window will pop up, asking for gas price and limit like before on step 2). You can use a lower gas price here, because you have already acquired the tokens and are in no hurry to use them. (If you are in a hurry, for example due to exchange arbitrage, use a high gas fee like 60-80.) Submit the Metamask transaction. Congratulations, you have now purchased some BitDegree!

5) Mark BitDegree as a custom token in Metamask so that it shows up.

Open Metamask from the top right corner of your browser, go to Tokens tab and click "Add Token".

From this window, write the BitDegree token tracker adress, which is 0x1961b3331969ed52770751fc718ef530838b6dee. The Token Symbol ("BDG") and Decimals of Precision (18) should be filled automatically. After this, the BitDegree tokens should show up on Metamask Tokens tab after the transfer from EtherDelta smart contract is complete (it can take hours if you were frugal with the gas price). Metamask is an excellent wallet for HODLing BitDegree, but in case you want to sell your BDG, you can send it to an exchange that accepts Bitdegree. However, sending tokens from Metamask has not been implemented yet (it will in the future). Before it is coded in, you have to use Myetherwallet or other etherum wallet frontend to send the tokens onto an exchange (including ForkDelta). If there is enough interest, I can write a guide on that as well

My first major post on steemit, hopefully it was useful to you! 😎

Sort:  

Congratulations @mhyytine! You received a personal award!

1 Year on Steemit

Click here to view your Board

Support SteemitBoard's project! Vote for its witness and get one more award!

Congratulations @mhyytine! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!