Approximately 10 minutes of downtime is to be expected at Tuesday 18-06-2019 11:00 UTC. There will be a short period where the exchange will remain in ‘Cancel only’ mode, allowing traders to close orders before order matching resumes.
COD (Cancel On Disconnect) after closing websocket connection will close all orders opened using that particular connection. This has been changed from requiring all websocket connections to be closed before a user’s orders were cancelled.
New response field added to ‘private/get_account_summary’ with extended=true parameter: The “referrer_id” field – an optional identifier of the referrer (of the affiliation program), whose link was used by this account at registration. It coincides with the suffix of the affiliation link path after `/reg-`’.
Calling the endpoints: ‘private/cancel_all’,’ /private/cancel_all_by_currency’ and ‘/private/cancel_all_by_instrument’ will now return the total number of cancelled orders instead of “Ok”.
New field added to the response of ‘private/get_stop_order_history’ endpoint: ‘last_update_timestamp’
Added multiple client id/secret management with configurable scope (possibility of creating read-only keys) – More details in the documentation soon.
New subscription channels added:
These channels will contain a list of the user’s changed orders together with a (possibly empty) list of trades related to those orders and a (possibly empty) list of changed positions related to the given trades.
Multiple changes in web UI related to small bugs/inconveniences that were reported recently
Improvements and changes to architecture should significantly reduce spikes in latency during higher loads.
When you first start trading options you can sometimes need reminding of some of the details. This is particularly true if you’re new to Bitcoin options as you are using the asset itself as collateral which changes some of the calculations. We’ve put together a cheat sheet you an use as a quick reference guide to options that covers:
If you checked the patch notes for the May 7th system upgrade you may have noticed this phrase in the list and be wondering what on earth it means. Well it’s not technically a new order type, however it is a change to how market orders react with our trading bandwidths.
The trading bandwidths
For those unfamiliar, Deribit operates with trading bandwidths in place. What this means is that there is an upper and lower price at which trades can be executed on any given instrument. For example on the Bitcoin Perpetual contract the bandwidth is currently set at mark price +/- 1.5%. So if the perpetual is trading at $5,000, the bandwidths will be $4,925 and $5,075.
What these bandwidths do is stop huge deviations away from the current price of the asset (as defined by the mark price). There are a few reasons why large wicks like that can happen:
A large trader trying to push the price around (a stop hunt for example)
An accidental fat finger
A cascade of liquidations and/or stop losses
These are usually just deviations away from the ’real’ price. If there is a genuine move in price across all exchanges, then the index will also be moving bringing the mark price and the bandwidths along with it. In this way the bandwidths are designed to only stop unnatural spikes in price.
Market orders and trading bandwidths
Market orders will attempt to fill the order at the best price possible, moving deeper and deeper into the order book until it is completely filled, not caring about the price it eventually reaches. So what happens when a market order that is attempting to fill ‘at any price’ runs into one of these bandwidths that stops orders executing outside a certain range? The market order is saying ‘I’ve run out of good prices, I’ll take any price’, and the bandwidth is saying ‘you can’t execute at this price it’s outside the allowable range’.
Previously on Deribit the market order would continue to fill right up to the bandwidth as normal, but then any remaining quantity yet to be filled would be cancelled. While this is normal behavior with a bandwidth system, it is not what most traders expect to happen with a stop loss.
As of this latest update any remaining quantity will no longer be cancelled, instead a limit order for the remaining quantity will be placed into the order book at the bandwidth limit waiting to be filled. In this way it still obeys the bandwidth rules, but is also more in line with what traders want their stop loss order to do.
The system as a whole is still protected from big price spikes and traders stops are safer as they will no longer have portions cancelled for hitting the bandwidth. Win, win!
This change was partially the result of feedback from existing Deribit users.
In the past two days, we have been experiencing technical issues that required unexpected maintenance and caused system downtime. Our system architecture is something we are very proud of, moreover, we continuously strive to offer the best trading experience and minimize downtimes altogether. However, there are situations that are out of our control. Our clients have always put a lot of trust in us, therefore, we believe in full transparency and would like to explain what caused these issues.
Yesterday we experienced a bug in Erlang itself, which could be described as a DOS vulnerability. This was caused by a bot, that (unintentionally) kept sending a series of requests to our platform in such a way, that triggered this vulnerability and brought all our web nodes down. Importantly, the master (matching engine) node was not affected.
Before we managed to locate and hotfix the bug, we experienced this situation twice. Thus, causing two downtimes in a very short period of time. We did, however, manage to restart our web-nodes in less than 10 minutes each time.
Although the bug is within Erlang itself, we have implemented a workaround in our code and have reported the bug to the Erlang team, which will fix the issue.
You can see this bug report here:
In a separate incident today, our most important web node (which is also responsible for load balancing) experienced a Linux kernel panic when handling an interruption from one of its gigabit network cards.
Please note that all other web-nodes (Hermes and Mercury) and master (Matching Engine) node were not affected. This issue was not related to the Erlang vulnerability and was a technical issue. Due to this, we had to reboot the main web-node, again causing downtime.
We are planning to implement a different type of load balancing system, which will have no single point of failure, thus mitigating the risk of this happening ever again.
We take each of these incidents very seriously, and our development team does everything it can to prevent these issues from happening again. We are grateful for your understanding and hope you enjoy trading at Deribit.
We have added the trigger Last Price to our repertoire of stop-order settings
All positions now entered in USD rather than contracts
To create coherence between BTC and ETH (and any future implementation) we changed the size of the orders to the USD value of the order instead of the former contracts. BTC is traded per $10 and ETH per $1
The new API v2 is the tool for the future. Together with the launch of our ETH products we launched a new API. The old API v1 will be supported but will not be upgraded with any future implementation on Deribit.
For stops a trader needs a trigger price. Today Deribit introduces the trigger last-price. On Deribit the mark-price, index-price and last-price can be used as trigger prices. All have their specific usage and a trader can use them specifically for the according scenario. With the introduction of the trigger last-price, this trigger will be set as default. A trader needs to make sure the right trigger is selected when setting up a stop.
The trigger Last-price
The trigger last-price is a direct connection to market movements on our exchange. Just like the name says it triggers on the last traded price. Stop-limits can have the limit orders tight but when a market is moving they do not guarantee to be filled. With a stop market the order guarantees a fill however the price is not guaranteed.The trigger last-price makes sure it will be triggered by the trading events in our orderbook. The danger of the trigger last-price is that wicks caused by fat-fingers, stop-hunts or other deep executions will cause the stop to be triggered, without having the security the overall price of the asset stays on that level.
The trigger Mark-price
As the mark price is calculated with a dampener it follows the orderbook and is not at risk for wicks created by fat finger orders, deep executing stops and other orders. The mark price is calculated as (Mark Price = Deribit Index + 30 seconds EMA (Fair Price — Deribit Index)). It is the mark price that is used for the PNL calculations as well as being used to check any open position for the risk of a possible liquidation. Using this trigger to place a stop to exit before a liquidation can be executed is a safe approach if not placed too tight. However in rapid market movements the mark price will be behind the last traded price due to the dampener so a trader needs to keep in mind that the actual traded price can have a distance from the mark price when their stop is triggered.
The trigger Index-price
The index price is the average of several exchanges. As futures trade on a premium or discount this trigger price needs to be handled a bit different. By using the index as a trigger on futures, this premium or discount can be taken into account automatically. Using the index-price as a trigger for a stop to exit will always trigger relatively late and it is not recommended to use this to exit an position. Please take note that if you use the trigger Index-price while trading a future with a premium or discount the indexprice is not equal to the marketprice, keep this in mind when deciding what trigger to use for futures.
For entries in both futures and perpetual contracts the index-price as trigger is a good tool. In price movements of the asset the average of several exchanges will follow slower due to the nature of being an average. So if a stop is used for opening a position the index price as trigger can be used, for example, to wait for a confirmation of a break out as the average price of all the exchanges we use for our index-price need to be at that level. A trader needs to keep in mind that the orderbook will move before this average is reached and thus placing a limit-order tight to the trigger probably will not be filled.
As Deribit has introduced reduce-only orders a trader can always set-up a combination of stops with the different triggers. Exit stops with reduce-only enabled can be setup with three stops, one with trigger last-price, one with trigger mark-price and one with trigger index-price. Each with their own conditions, if index price reaches X then exit, if mark-price reaches… etc. The first stop that will be triggered will close the position and reduce-only makes sure the other stops won’t open a new position. Of course it is not needed to use one stop to close the complete position. A trader can divide the quantity to execute per stop and like previous example simply choose to close one third.
Deribit has a firm belief in the future of cryptocurrencies, and the important role a liquid option market has in the health and growth of the market as a whole. An options market is comprised of a large number of order books and needs to be capable of handling thousands of requests per second. This is why Deribit has focused so heavily on the underlying technology and developing a platform capable of handling this load.
Product development is also very much centered on what customers will find useful, and indeed it is very common for upgrades to be based directly on customer requests. The telegram group has become an excellent way for traders to have direct access to Deribit staff 24 hours a day and give real-time feedback.
With the recent launch of Ethereum derivatives on Deribit it’s about time we had a look at what else is coming down the pipeline in 2019. So far this year has seen the launch of ETH products (perpetual swaps, futures and options), reduce only stops enabling much more convenient position/risk management and v2.0 of both the UI and API.
So what’s next?
Despite only recently launching v2.0 of the user interface to accommodate new currencies, the next version is already largely developed and should be ready for release in the next couple of months. This will bring a completely customisable layout allowing users to reposition and resize every element of the trading screen. It will also bring a depth chart to the futures and the ability to see the order books, recent trades, current positions and order form on the same page as the option chain without the need for a pop up.
Here’s a sneak peak at the type of screen you will be able to create with the v3 layout. You can create new rows or columns and drag/drop each element wherever you like. And you can even have several elements in the same area using tabs.
And the new option layout will have similar capabilities as shown below.
Mass Quote Protection
There are around 100 different strike price/expiry date combinations on Deribit at any given time, and that’s just for Bitcoin. Then consider that each one of these has both a put and a call, and a bid and ask. That is a lot of instruments that the liquidity providers need to quote on simultaneously.
Mass quote protection allows the market makers to quote larger size on each instrument without being overly exposed to the risk of having every order hit at once. As a simple example say an account is protected for anything over 500 contracts, once 500 contracts of that accounts orders have been hit in a given time period the rest of their orders will be cancelled, allowing them time to hedge or reposition the rest of their orders accordingly.
This will not only protect the liquidity providers from taking on positions too large for them in a short space of time, but will also allow for considerably better liquidity across the whole option chain which will benefit all traders.
Block Trade Functionality
A block trade helps two parties who wish to transact larger size to do so privately without exposing themselves to risk on the public order book. They both agree on a price and this is then executed in full without the need for either party to place the order on the order book. This will make the process of executing large privately arranged trades considerably easier.
The more information available to traders the better decisions they can make. With this in mind Deribit is developing a separate analytics website that will offer a range of new tools based on live data from Deribit. This will include volume, option statistics, historical funding data, equity charts and volatility data. The analytics site will provide all traders with useful data that is relevant to their trading decisions.
Educating users on how to use the platform and also how to trade the derivatives on offer is extremely important to Deribit. Derivatives can have a steep learning curve, particularly options. The goal is to create an education resource that will make Deribit accessible and easy to use for as many people as possible. Reducing any barrier to entry by providing all the resources anyone could need to get the most out of the platform.
Additional Currency Listings
While bitcoin is still king in the cryptocurrency space with a market share of around 50% at time of writing, there is serious and growing demand for additional currencies. The ETH product development brought with it several important upgrades. The new user interface and API have now moved from being a single currency system to supporting multiple currencies. This means adding more currencies in future will be a more streamlined process.
Advanced Order Types
Deribit users already have access to limit orders, market orders, stops (both limit and market), post only, hidden and reduce only order types. But more advanced order types are also planned for the future. Advanced order types such as One Cancels Other (OCO) and trailing stops will give traders even more flexibility in how they structure their trades, and more freedom to step away from the screen knowing their orders will execute exactly as they intend.
The Future On Deribit
With these upcoming features and continued development Deribit intends to remain at the forefront of the crypto derivatives market by giving traders all the tools they need.
And it’s not just the platform itself that is being improved. The Deribit team is also continuing to expand, providing support in more languages, expanding into new markets and developing strategic partnerships and integrations with other companies and software providers.
2019 has been a very successful year so far and there is plenty more to come in the very near future.
San Francisco, March 19 – Caspian, the full-stack crypto trading, portfolio and risk management platform for professional traders and investors, today announced that it has integrated its platform with Deribit, a leading crypto options and futures exchange, to become the first institutional platform to offer both options and futures trading in these asset classes. Caspian adds Deribit to its ecosystem of over 30 major crypto exchanges and liquidity providers.
Caspian’s fully-developed trading and portfolio management system includes an OEMS, PMS, and RMS that covers the entire lifecycle of the trade. The system is the only platform for both options and futures in one interface and connects into all major crypto exchanges and OTC brokers. It is a complete suite of sophisticated trading algorithms, real-time and historical P&L and exposure tracking with industry leading professional customer service.
As crypto trading has been increasingly adopted by institutional investors, so too has the trading of crypto options and futures. Launched in 2016, Deribit provides a highly liquid marketplace for trading Bitcoin options and futures and Ethereum options, futures and Deribit Perpetual. Deribit also offers traders free deposits and withdrawals, up to 100x leverage and competitive trading fees. The Caspian platform connects to Deribit through an advanced API that supports high volumes with ultra-low latency and provides clients with access to the exchange’s full options order book.
“We are excited to be working with Deribit to make the trading of crypto options and futures possible within the institutional community,” commented Robert Dykes, CEO of Caspian. “Our goal at Caspian is to provide crypto traders and investors the same standard of tools and service that exist in the traditional markets and its great knowing that the team at Deribit is working towards the same high standards.”
“Caspian’s comprehensive trading and portfolio management platform provides institutional investors with the market-leading gateway to the crypto markets,” said John Jansen, CEO of Deribit. “We’re thrilled to be working with the team at Caspian.”
Caspian is a full-stack crypto asset management platform tying together the biggest crypto exchanges in a single interface. The platform also offers compliance, algorithms, portfolio management, risk and reporting tools. Led by an experienced team and leveraging the capabilities and resources of two existing, successful financial businesses, Caspian has built a crypto ecosystem that enables sophisticated traders to operate more efficiently and improve their performance.
Deribit launched in June 2016 after several years of development. John Jansen, the original founder teamed up with Marius Jansen and Sebastian Smyczýnski. Deribit started as a Bitcoin Futures and Options trading platform based out of Amsterdam, The Netherlands. Deribit was created as an answer to those in search of a professional fully dedicated cryptocurrencies futures and options trading platform.
Our service enables the user to create a fully liquid marketplace to the same standards as a traditional derivatives market. The framework of the platform has been developed to assure the ability to handle very large numbers of requests with ultra low latency (<1 ms). We developed our own matching engine from scratch and all of our technology is proprietary. We believe in Bitcoin and in the future of cryptocurrencies. We expect millions of traders will be trading cryptocurrencies at any given moment in time soon, and our platform is built with the potential to eventually serve those millions of users at the same time with real time low latency data.
Deribit is the only exchange in the world offering European style cash settled options on Ethereum. We are also working on creating more advanced features such as; block trades and mass quote protection.
As many of our users have requested we have now introduced reduce-only orders on our exchange.
We provide this feature on all of our orders and traders can use reduce-only with market and limit-orders as well as stops. When the trader enables reduce-only the order can only close contracts in a position. The orders will only function as an exit and so, reduce-only ensures less maintenance for traders.
Limit-orders with reduce-only
To make sure we don’t have orders that can’t be filled in the orderbook limit-orders with the reduce-only feature enabled can never exceed the amount of open contracts on the future the reduce-only order is placed. Our system will automatically adjust the quantity of contracts to the quantity of open contracts.
If part of a position is closed by any other means than the reduce-only order, the reduce-only order will be automatically adjusted downwards.
If the trader decides to increase their position before the reduce-only order is executed the quantity of the reduce-only order will not increase as well. The trader will need to adjust this themselves if wanted.
If a trader already has a reduce-only order placed and a new reduce-only order is placed in front of that the quantities will be adjusted so that the open quantity of all reduce-only orders will never exceed the quantity of open contracts. The first reduce-only order that can execute is key, all other reduce-only orders behind that will adjust so that the total quantity of contracts in reduce-only orders will never exceed the quantity of contracts in an open position.
Example of automatic adjusting of reduce-only order:
A trader has a long position on Perpetual BTC/USD of 10.000 contracts with an average price of $3900 and the most recent price is going sideways at $3950.
The trader has a limit-sell (take-profit) with reduce-only set for 5000 contracts at $4100 (order 1).
The trader has a limit-sell with reduce-only set for 5000 contracts at $4050 (order 2).
Now the trader places a limit-sell with reduce-only for 8000 contracts at $4000 (order 3)
As order 3 is the first that can execute this quantity is the key. As there are only 10.000 contracts in an open position for the trader the reduce-only order 2 will adjust to 2000 contracts (10.000 – 8.000). Order 1 will cancel as all contracts in the open position will be closed when both order 1 and order 2 are executed.
Market-orders with reduce-only
A trader may wish to close a position with a market-order. Any quantity can be filled in and the market-order will, when executed, automatically adjust the quantity downwards and only close a position.
Stops with reduce-only
As a stop is not an order in the orderbook until it is triggered a stop can be set up with reduce-only while exceeding the quantity of contracts that is open on the asset. As soon as the stop is triggered the quantity is adjusted downwards to the quantity of open contracts. If it is a stop-market the position will be reduced by the quantity given in the stop but the stop will never open a position. If it is a stop-limit, the limit-order will be adjusted downwards to the quantity of open contracts or if the quantity given in the stop is lower than the open quantity it will use the given quantity.
With the use of a stop (loss) with reduce-only enabled a trader can set up their stop (loss) before their limit entries are filled and ensure the loss exit.
API – close position.
All previous mentioned orders can be set up with the API as well but we have an additional order. The command /private/close_position will close the open order. It can be done both as limit-order as well as market-order. Executing this command will close the position and if it is executed as limit-order it will place a reduce-only order for the open quantity.
A simple example how reduce-only can be used:
A trader opens a long position on the BTC/USD pair with an average price of $3900.
The trader places a limit-sell order with reduce-only with a limit-price of $4000.
The trader sets a stop-loss with reduce-only that triggers a market-sell at $3800.
No matter what the market does the trader knows his position will be closed at either $3800 or $4000 and there is no chance of opening a new position.
If the market would push the price of BTC to $4000 the limit-sell of the trader would close the position in profit. If $4000 gets ultimately rejected and the markets dumps the price to $3750 the stop would trigger but not execute any order as there is no position to reduce.