Qt Bitcoin Trader is one of our favorite trading tools over here at WallStreetCrypto, it’s open source, fast, doesn’t rely on an exchange’s public platform, and best of all, it’s free! To download the program just visit this link and read this article for everything you need to get started using it right away.
Qt Bitcoin Trader was developed by a programmer known as IGHOR on the bitcointalk.org forums. It is a work in progress and will eventually be replaced by another project called Qt Open Trader, the development team is very active and will often add features upon request. As for the program, in IGHOR’s words,
Qt Bitcoin Trader is open source application that helps you open and cancel Mt.Gox, BTC-e, Bitstamp, BTCChina orders very fast. Real time data monitoring.
Developed on pure Qt, uses OpenSSL.
Api key and secret is protected by password using AES 256 encryption.
Your password must be at least 8 characters and contain letters, digits, and special characters.
Interface Languages: English, Russian, Ukrainian, Spanish, Dutch, Norwegian, German, Chinese, Polish.
I want to develop this Trader App so that it can be configured for any rule and strategy.
And make real time charts on QML or Qt Graphics View.
What I find particularly fantastic about this app is its versatility, its unique ‘rules’ feature probably makes it one of the most diverse and powerful tools available to cryptotraders today.
When you first open the app you’ll be prompted with a screen that looks like the one below. It’ll probably ask you for some account information you don’t have yet so you’ll want to press the little ‘+’ button next to the ‘Profile’ drop down menu.
After that a new window will open up with fields for an ‘API Key:’, ‘Secret:’, ‘Password’, ‘Confirm’, and ‘Profile name:’, along with a drop-down menu for selecting your exchange.
At this point you’re going to hop on your favorite exchange and generate some API keys. In this example we’ll use BTC-e. Click the link to your profile on the top right of the BTC-e page, then navigate to the ‘API keys’ link in the sidebar on your profile.
After that you’ll want to find a little area on the bottom of the page that says ‘Create key’ along with a field for a ‘Key name’ and a button that says ‘Create’. Just enter in any old key name (it really doesn’t matter at all– it’s just for reference later if you have a million API keys like me and you don’t remember what they’re all for).
Once you click ‘Create Key,’ a pair of new keys will be generated with two tick boxes next to them: ‘info’ and ‘trade’– you’re going to want to click both, then click save.
Never give out your API keys, if you ever accidentally give them to someone, or put them into a program that may seem questionable, delete the keys immediately from the exchange website by clicking ‘Disable’. This includes pastebin, etc.
After you’ve generated your API keys go back to Qt Bitcoin Trader and copy and paste them into the ‘Key’ and ‘Secret’ fields. Then just punch in any old password (and write it down) and a name for your profile. Note that your profile name and password should not be the same as your BTC-e account information. After you’ve put in all the required information just click ‘OK’ and you’re ready to go!
Now log into Qt Bitcoin Trader with the password you’ve just created and you should be ready to start trading!
Getting to Know the Platform
For this article, we’ll be starting with the features in the top left of the window and working our way all the way to the right of the column, then starting to the far left of the next column (like you would read a book).
‘BTC-e Account’ just tells you that the exchange this profile trades on is BTC-e, the ‘Fee’ column below that tells you the fee on the exchange you’re trading on, but the ‘Symbol’ drop-down menu is another thing that makes Qt Bitcoin Trader awesome!
Qt Bitcoin Trader can trade on all pairs on the exchange, that’s right, the search is over–every pair! Even better you can leave open orders on multiple pairs! So say you want to sell some Bitcoin for $850 dollars, but at the same time buy some Litecoin for $20, well you can have open orders on both pairs as the same time, and there is no limit to how many pairs you can have orders open for.
Ehem, excuse my balance I, uhm, mostly trade on Bitfinex these days. Anyway this is pretty straight forward: ‘Balance’ displays your balance for the two relevant currencies you’re trading on. So on the BTC/USD pair you will see your Bitcoin balance on top and your USD balance on the bottom, or for the XPM/BTC pair you would see XPM on the top and BTC on the bottom. The two little audio buttons next to your balances are toggles for audio alerts. If you have these on, whenever you’re balance for the currency you turned it on for changes you’ll hear a little noise.
Total at Buy/Sell and Total at Last Price Conversion Rates
I included these two windows in one section because they do the same thing but give you an idea of the outcome of different ways you may choose to buy or sell.
The first window ‘Total at Buy/Sell Price’ tells you how much USD (in this example) you would receive if you sold your entire Bitcoin balance into the first limit buy order on the orderbook at the top. Just below that it tells you how much Bitcoin you would receive if you spent your entire USD balance buying Bitcoin from the the first limit sell order on the orderbook.
The second window, ‘Total at Last Price’ tells you something very similar but with a little twist. The top part tells you how much USD you would receive if you sold your Bitcoin at the last price someone sold Bitcoin for, and the bottom part tells you how much you would receive if you bought Bitcoin at the last price someone bought Bitcoin for.
So to put things in perspective, if you’re in a position that’s already profitable enough that you’re not worried about a couple nickels and dimes, or you’re in an emergency ‘bail-out’ situation, the first window may give you a more realistic outlook as to what you should hope to receive. If you’ve got plenty of time to buy or sell and small price differences matter to you then the second window may give you more relevant conversion information.
The ‘Market’ info window is another little nuance to Qt Bitcoin Trader that makes it one of my all-time favorite trading programs. This window gives your real time pricing information continually fetched from your exchange in a fraction of a second. This is like it’s wired in directly to the matrix.
Going through the ‘Sell’ column, the first window displays the last sell price the particular financial instrument (in this example Bitcoin) sold for. If you’re looking to sell in a hurry, realistically I would expect to sell at or below this price. The ‘High’ price tells you the highest price the financial instrument (Bitcoin) was sold for that day, and the ‘Last Price’ tells you the price the last Bitcoin sold for.
In the ‘Buy’ column, the first window displays the last price the financial instrument (Bitcoin) sold for. The ‘Low’ tells you the lowest price the financial instrument (Bitcoin) sold for that day, and the ‘Volume’ tells you how many Bitcoin in total have been bought and sold so far that day.
Sparing you the technical jargon, programs like Qt Bitcoin Trade communicate with exchanges via an Application Programming Interface (API) the ‘API Lag’ tells you how long your exchange is taking to respond to Qt Bitcoin Trader, usually this should be a fraction of a second. If it’s longer, either BTC-e has decided they don’t like you and blacklisted your IP address, or their API is down–which happens all the time.
Your Open Orders
Your open orders is a lot like what it sounds. This is a log of your limit orders that have not been executed, or that were just executed and will be removed from the log soon.
Each order has four attributes ‘#’, ‘Date’, ‘Type’, ‘Status’, ‘Amount’, ‘Price’, and ‘Total’. The orders are logged in the order in which you put them in so all the # tells you is which orders were placed more recently and which ones were placed later. The Date tells you the date and time the exchange received your order and successfully added it to the orderbook. The Type tells you whether the order was an ask or a bid, which is a goofy way of saying rather or not you put in an order to buy or sell. The Amount tells you how much of the financial instrument (Bitcoin) you said you wanted when you put in a buy or bid order, or tells you how much you said you wanted to sell when you put in an ask or sell order. The Price is how much you said you wanted to pay for the financial instrument (Bitcoin) in the case of a bid order. For an ask order, the Price tells you how much you said you wanted to sell the financial instrument for when you put in the order. Finally, the Total tells you how much you’re going to end up spending on that order if it executes, or it tells you how much your going to end up getting if it’s an ask order.
At the bottom of the window you’ll notice a column labeled Total, the first window in this column tells you how much of the first currency in the pair (in this case Bitcoin) you have tangled up in orders. The second window tells you how much of the second currency in the pair (USD) you have tangled up in orders.
Finally the ‘Cancel’ buttons are used to cancel orders. If you have a bunch of orders that you need to get rid of in a pinch you can use the ‘All’ button to cancel every one of your open orders, even if the order isn’t on the pair Qt Bitcoin Trader is currently set to trade on. Or if you only want to cancel one, or a few of your orders but leave the rest of them open you can click individual orders, then click the ‘Selected’ button.
My Orders Log
The ‘My Orders Log’ tab is a record of all of your recent orders, not just done through Qt Bitcoin Trader, but all of the orders done through the exchange. The ‘Last Buy Price’ displays the last price you bought Bitcoin for and the ‘Last Sell Price’ is the last price you sold a Bitcoin for. As you can see my last trade didn’t go all that well, but hopefully yours will!
The Order Book is a pretty straightforward window that has become standard even on BTC-e’s web platform. The API Lag window displays the same information as the other API Lag window mentioned earlier in the tutorial. The little ‘Sell orders <-> Buy orders’ button is a purely cosmetic addition and will just swap the Sell and Buy order columns around. The Detach button simply detaches this window into its own little separate popup window.
If you need an explanation on how an Order Book works please refer to our 101 page here.
A few little things worth noting are the Group by Price drop down menu and the Rows to Display drop down. The Group by Price drop down allows you to group order within a certain price range. So say if you choose 0.005 from this drop down, this means that all orders within 0.005 USD from each other will be grouped up into a single order in the order book. The Rows to Display drop down will let you choose how many rows of orders to display, which may be useful if you’re only interested in orders within a few dollars from the ticker price.
The Last Trades window is also very similar to something you would find on another platform with a few nifty little additions. This window gives you a running list of all the recent trades successfully executed on the exchange. The Date tells you the date and time the order was executed, the Amount tells you the amount of the financial instrument that was bought or sold, the Price $ tells you how much the financial instrument was bought or sold for, and the Total $ tells you how much value in USD the transaction was worth. This window gives you a good idea of what people have been buying or selling a financial instrument in the last few minutes.
Another neat little addition to this window is the 10 min. Volume which tells you how much of the particular financial instrument (Bitcoin) has been traded in the last 10 minutes, and the window next to it tells you whether volume is increased or decreased and how much by a percentage relative to the last 10 minutes.
This can be useful as volume is often an indication of the market’s momentum. Increasing volume typically indicates that whatever direction the market is going in, it’ll likely go fast!
Nothing to see here for now, but send IGHOR a donation and maybe he’ll give us some charts soon!!!
The Buy Bitcoin section is another one of the little things that make Qt Bitcoin Trader a fantastic program. The first column has a field for how much USD you would like to spend and two buttons for going All In which will automatically fill out the rest of the order for spending all your USD on BTC and a button for going Half In which will quickly fill out the rest of the form for spending half of your total USD on BTC.
The Price per coin has a field for entering in the price you would like to pay for BTC and two buttons. The first button Buy Price automatically sets the Price per coin to the first limit ask price on the order book, this is handy if you would like to buy in quickly and don’t mind not getting the optimum price. The second button Last Price automatically sets the Price per coin to the last price someone bought Bitcoin for, often this price will be slightly better than the Buy Price, but may execute more slowly, or not at all in fast moving markets.
The Total to BUY tells you how much Bitcoin you will end up receiving for your order. The Zero Profit Price tells you what the minimum price you must sell the Bitcoin you are going to buy for in order to cover fees and have zero net profit or loss. The Zero profit Step tells you the difference between your Price per coin and the Zero profit Price. In this example, if I bought a Bitcoin for 785 then sold it for 3.144 USD more at 788.144 I would net zero profit or loss.
The Generate subsequent sell order column is probably the neatest part of Qt Bitcoin Trader’s whole order system, and will be discussed in more detail in the Tips and Tricks section. For now though, if you enter a percentage into the very last field on the Profit column right next to the Apply button then click Apply, Qt Bitcoin Trader will automatically generate a sell order form to sell Bitcoin at a price where you would earn the percentage you entered.
The Sell Bitcoin area works a lot like the Buy Bitcoin area. In the Total to SELL field you can enter a specific amount of Bitcoin to sell, or use the All In and Half In buttons to quickly fill out an order for all or half of your total Bitcoin. The Price per coin is where you enter in how much you would like to sell your Bitcoin for, and the Sell Price button will automatically fill in the Price per coin field with the price of the highest limit buy order. The Last Price button will automatically fill in the Price per coin field with the last price someone bought or sold a Bitcoin for.
The Zero profit price tells you how much you would have had to have just bought Bitcoin for in order to net zero profit or loss, and the zero profit step tells you the difference between the Price per coin and the Zero profit Price.
The Generate subsequent buy order area works a lot like the Generate subsequent sell order area, you can enter in a percentage and click apply and Qt Bitcoin Trader will fill out a buy order form for the Price per coin you entered minus the percentage you entered.
This area gives you some general settings for Qt Bitcoin Trader. The Language drop down allows you to select from 11 different languages to use the program in.
The Stay on Top check box makes it so Qt Bitcoin Trader will be in the foreground of any other windows you may have open (Browser, Notepad, etc.)
The Close to Tray check box makes it so when you hit the close button Qt Bitcoin Trader will just go to your system tray like your firewall or whatever else you might have running in the background.
The Confirm Open Order check box will make it so Qt Bitcoin Trader will ask you for a confirmation every time you enter in an order. If you’re frequently punching in trades I recommend unchecking this setting.
The New Window button will open a new instance of Qt Bitcoin Trader that you will have to have a new account with a different set of API keys for. This may be useful if you’re simultaneously trading different currency pairs.
Tips and Tricks
Here’s a few rule sets I use to punch through BTC-e’s clumsy order system. I’ve found these rule sets make sure I can get an order executed much more effectively in emergencies.
–If (sell price) goes under (x) cancel all order
–If (sell price) goes under (x) sell (all I have) at (sell price)
–If (sell price) goes under (x) enable all rules
This is a rule set I use for managing stop loss, this works well because the first rule will immediately cancel all orders you have open freeing up any Bitcoin you may have stuck on orders. The second rule will try to sell all the Bitcoin you have into the first limit buy order on the order book. The third rule will enable all rules, sending you back to the first rule and starting the cycle over again. This is done so that your order will keep chasing the market downward, making sure you’re able to sell all your Bitcoin as quickly as possible and don’t get stuck on a limit order while the price quickly falls.
–If (last price) is over (x) spend all I have at (market buy price)
–If (last price) is over (x) cancel all orders
–If (last price) is over (x) enable all rules
This works a lot like the stop loss rule, I like to keep the target price at 1 dollar, that way if I want to quickly buy in I just click Enable/Disable then Enable All Rules. Like the stop loss rule, this will keep making, then cancelling orders, ensuring funds to get stuck in limit orders and you keep chasing the market price till you have bought all the Bitcoin you can afford. Make sure you leave this rule off most of the time, and once you’ve bought in turn it back off.
Generating Sell Orders
If you like spread betting you can use the Generate subsequent sell orders section to quickly fill out sell orders at your price targets. When I want to sell Bitcoin quickly at a marginal rate I enter 0.5%, click apply, then click Half In on the sell area. Then do the same thing at 1%, 1.25%, and 1.5% finally clicking All In at 1.5%. This will help you quickly enter in profitable orders.