diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/cover.jpg b/docs/blog/posts/basic-concepts-of-crypto-trading/cover.jpg new file mode 100644 index 00000000..1b9446f7 Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/cover.jpg differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/cover.webp b/docs/blog/posts/basic-concepts-of-crypto-trading/cover.webp new file mode 100644 index 00000000..23b24916 Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/cover.webp differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/image_1.jpg b/docs/blog/posts/basic-concepts-of-crypto-trading/image_1.jpg new file mode 100644 index 00000000..d9a37608 Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/image_1.jpg differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/image_2.jpg b/docs/blog/posts/basic-concepts-of-crypto-trading/image_2.jpg new file mode 100644 index 00000000..2ca0cc42 Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/image_2.jpg differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/image_3.jpg b/docs/blog/posts/basic-concepts-of-crypto-trading/image_3.jpg new file mode 100644 index 00000000..31ce05ca Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/image_3.jpg differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/image_4.jpg b/docs/blog/posts/basic-concepts-of-crypto-trading/image_4.jpg new file mode 100644 index 00000000..17e76b41 Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/image_4.jpg differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/image_5.jpg b/docs/blog/posts/basic-concepts-of-crypto-trading/image_5.jpg new file mode 100644 index 00000000..096b0484 Binary files /dev/null and b/docs/blog/posts/basic-concepts-of-crypto-trading/image_5.jpg differ diff --git a/docs/blog/posts/basic-concepts-of-crypto-trading/index.md b/docs/blog/posts/basic-concepts-of-crypto-trading/index.md new file mode 100644 index 00000000..af279fd0 --- /dev/null +++ b/docs/blog/posts/basic-concepts-of-crypto-trading/index.md @@ -0,0 +1,243 @@ +--- +date: 2022-01-01 +authors: + - foundation +categories: + - Academy +tags: + - Market Making Basics +--- + +# Basic Concepts of Crypto Trading + +![cover](cover.webp) + +### Order Book + +An **order book** is the list of orders that an exchange uses to record the interest of buyers and sellers for a particular financial market. A matching engine uses the book to determine which orders can be fully or partially executed. + +Example of an order book on AscendEx where the prices in red indicate sell orders and the prices in blue indicate buy orders. + + + +![Order book image](image_1.jpg) + +### Liquidity + +The order book is **very liquid** when a great amount of orders is stored in each buy and sell side of the order book. In such a situation a market order produces only a small price adjustment. On the contrary, if the order book is **not liquid**, there are only a few orders on the buy and sell side and there is a very large average gap in price between adjacent orders. In this case, even a market order with a small volume can produce a dramatic price fluctuation of several ticks. Markets perform better when they are more liquid. + + +### Limit and market orders + +#### Limit orders + +A **limit order** is an order that you place on the order book with a specific limit price. The limit price is determined by you. The trade will only be executed if the market price reaches your limit price (or better). Therefore, you may use limit orders to buy at a lower price or to sell at a higher price than the current market price. + +[What is a Limit Order?](https://academy.binance.com/en/articles/what-is-a-limit-order?ref=blog.hummingbot.org) +[Limit Order Video](https://www.youtube.com/watch?v=pQMKqnzmydk&ref=blog.hummingbot.org) + +#### Market orders + +A **market order** lets you purchase or sell a financial asset instantly at best price currently available. Market orders take prices from limit orders on the order book. This means you can’t be 100% sure of the price you will get. Slippage can occur when you get a price different from what you expected. + +[What is a Market Order?](https://academy.binance.com/en/articles/what-is-a-market-order?ref=blog.hummingbot.org) +[Market Order Video](https://www.youtube.com/watch?v=pQMKqnzmydk&feature=emb_imp_woyt) + +### Bid-ask spread + +![Bid-ask spread image](image_2.jpg) + +*Depth Chart of the buy (green) and sell (red) orders* + +*Source: [Bid-ask spread](https://river.com/learn/terms/b/bid-ask-spread/?ref=blog.hummingbot.org)* + +The bid-ask spread is the difference between the highest price a buyer is willing to pay for an asset and the lowest price a seller is willing to accept. These prices are reflected as bids and asks on an order book, placed by market makers as limit orders. + +Price takers will place market orders to buy or sell an asset, and in doing so they accept the best bid or best ask determined by the market maker. + +In Hummingbot, the `bid_spread` is the % how far from the mid price you want your buy orders are placed. While `ask_spread` is for your sell orders. + +Mid price is **NOT** the price that you see in the middle of the orderbook - that's the last trade price. + +Mid price is the average price of the best bid and ask. Which means: + +``` +mid_price = (best_bid + best_ask) / 2 +``` + +your order prices are calculated as follows: + +``` +hbot_bid_price = mid_price * (1 - bid_spread) +hbot_ask_price = mid_price * (1 + ask_spread) +``` + +and spread equation is: + +``` +(|bid_price-mid_price|/bid_price)*100 +or +(|ask_price-mid_price|/ask_price)*100 +``` + +where |x| is the sign of abosulte value. + +### Slippage + +Slippage is financial loss during trading as a result of market inefficiencies and illiquidity. Slippage occurs when an illiquid market experiences a sudden, large change in demand or supply, resulting in losses for the buyer or seller. + +[Learn more about slippage](https://river.com/learn/terms/s/slippage/?ref=blog.hummingbot.org) + + + +## What is Market Making? + +### Market Makers and Market Takers + +**Market Makers** add liquidity to an exchange’s order book by placing limit orders, or orders to buy or sell at a specific price that is not immediately filled. Makers place orders that are not immediately matched by an existing order. Without limit orders sitting on an order book, there would be little liquidity for a given pair as an exchange would be trying to match buy and sell market orders as they are placed. These Market Makers are crucial for maintaining price stability, as they fill up an order book with limit orders at different levels. Makers are typically rewarded with lower fees for providing liquidity to the market in the form of buy/sell limit orders. + +**Market Takers** take liquidity, as in they place market orders to immediately buy or sell. Market orders are orders to take the best available price in the current market. Takers take the price that they want and in doing so, they are “taking” volume off of an order book. They place orders that are filled immediately by buy or sell orders already sitting on the books. Taker market orders are designed to never land on an exchange’s order book, as they are filled by the exchange’s matching engine as they are placed. Thus, taker fees are typically higher because their orders are filled immediately. + +[![What are Makers and Takers?](https://img.youtube.com/vi/vw7iBwcFB9c/0.jpg)](https://www.youtube.com/embed/vw7iBwcFB9c) + +It can be assumed that every taker’s market order is filled by a maker’s limit order but this is not always the case. You can place a limit order to "cross" and take an order from the orderbook so it becomes a taker. + +![Crossing the orderbook image](image_3.jpg) + +**For example:** + +In this orderbook, the best bid is 405.49 and 405.54 best ask price. + +Placing a limit order would normally put your orders in the book and wait for someone to fill that order. + +But if you place a limit **buy** order with the price of 405.54, since it has a matching **sell** order it would immediately take it. + +You can try doing this on your own to see it + +In short, + +A **market maker** is + + any person that posts a buy or sell offer on the order book, providing liquidity to that specific market. + +A **market taker** is any are accepting the prices offered on the order book is called a market taker. + +[![Market Makers and Takers](https://img.youtube.com/vi/vsBoyW-M0Aw/0.jpg)](https://www.youtube.com/embed/vsBoyW-M0Aw) +[![Market Makers and Takers](https://img.youtube.com/vi/jmq9TkoXN_o/0.jpg)](https://www.youtube.com/embed/jmq9TkoXN_o) + +### Market Making vs Arbitrage + +To learn more about the difference between Market Making and Arbitrage: + +[What is Arbitrage?](../what-is-arbitrage/index.md) + +### Market Making vs Bitcoin Mining vs Liquidity Pools + +How is market making different from bitcoin mining and liquidity pools? + +- **Bitcoin mining** is the most traditional sense of it. You use computing power to produce hashes, or solve hard math problems. This expense of energy proves to the world that a transaction was real. +- **Market making** is similar to liquidity mining. Market making is traditionally done by larger firms in large exchanges. Traditionally, market makers add liquidity to an exchange’s order book by placing limit orders, or orders to buy or sell at a specific price that is not immediately filled. Market making in liquidity pools is very different (see below). +- **Liquidity pools** are found only in decentralised exchanges. Uniswap is an example. This is how decentralised exchanges solve the issue of market making. The first generation of decentralized exchanges still have order books, but newer ones like Uniswap use other methods such as automated market making. The market makers in exchanges with order books constantly put in bids to buy or sell. However, since there is no order book in many modern decentralised exchanges with liquidity pools, liquidity providers simply put their assets into the pool and this allows for people to buy and sell from that pool. +- **What is liquidity mining then?** +- Liquidity mining is essentially performing the role of a market maker, however, it uses a computer to constantly change the orders. That is where it got the name mining from, as it uses computational power like mining bitcoin does – but far far less so don’t worry too much about your power bill! As opposed to liquidity pools, it’s more active. You need a machine to be running to execute the commands and then you also need to give it instructions on how to set orders. However, the returns can also be greater as well though there are greater risks. + +That is where the **Hummingbot software** comes in. The software acts as a layer to automatically execute an algorithm that you set for trading. It sounds complicated but it can be as easy as “set buy orders at 1% below the current price and sell orders 1% above”. There are far more options, but this is just the jist. + + +## Trading terminologies 101 + +### Trading Pairs + +In cryptocurrency, the term “trading pairs” describes a trade between one type of cryptocurrency and another. For example, the “trading pair” ETH/BTC. + +With ETH/BTC you can buy Ethereum with Bitcoin, or sell Ethereum for Bitcoin. + +[What are "Trading Pairs" in Cryptocurrency?](https://cryptocurrencyfacts.com/what-are-trading-pairs-in-cryptocurrency/?ref=blog.hummingbot.org) + +### Base and Quote Assets + +![Base and Quote Assets image](image_4.jpg) + +[Currency pairs: base and quote currencies, and types of pairs.](https://fbs.com/analytics/guidebooks/currency-pairs-base-and-quote-currencies-majors-and-crosses-15?ref=blog.hummingbot.org) + +### Minimum order size + +Minimum order size is the smallest amount of cryptocurrency that you can buy or sell in the exchange. + +[Trading Rules | Binance](https://www.binance.com/en/trade-rule?ref=blog.hummingbot.org) + +Hummingbot's minimum order size is denominated in base asset. If a certain exchange uses quote asset in their list of minimum order size, you may also find this crypto converter calculator useful. + +[Cryptocurrency Converter and Calculator Tool | CoinMarketCap](https://coinmarketcap.com/converter/?ref=blog.hummingbot.org) + +### Figuring out minimum order size with Postman + +Some exchanges have no web pages where you can view the minimum order size. For example in KuCoin, you have to use an application like Postman to get REST API data. See doc below : + +[KuCoin - hummingbot docs](../../../exchanges/kucoin/index.md) +[https://hummingbot.org/exchanges/kucoin/](../../../exchanges/kucoin/index.md) + +[![Postman API tutorial for beginners](https://img.youtube.com/vi/FjgYtQK_zLE/0.jpg)](https://www.youtube.com/embed/FjgYtQK_zLE) + +### Trading Fees + +Whenever you execute trades (taking an order or when someone fills your orders) there are corresponding fees deducted from the total amount. Fees vary from exchanges. + +[Fee Schedule | Binance](https://www.binance.com/en/fee/schedule?ref=blog.hummingbot.org) + +### Stable Coins, Fiat Currencies and ERC20 Tokens + +#### Stablecoins + +Stablecoins are cryptocurrencies that attempt to peg their market value to some external reference. Stablecoins may be pegged to a currency like the U.S. dollar or to a commodity's price such as gold. + +Examples: +- USD Tether / USDT +- True USD / TUSD +- Paxos Standard / PAX +- USD Coin / USDC +- Binance USD / BUSD + + +#### Fiat currencies + +A fiat currency is a national currency that is not pegged to the price of a commodity such as gold or silver + +. The value of fiat money is largely based on the public’s faith in the currency’s issuer, which is normally that country’s government or central bank. + +Examples : +- US Dollar / USD +- Australian Dollar / AUD +- Euro / EUR +- Pound Sterling / GBP +- Russian Rubble / RUB +- Turkish Lira / TRY + +[What Is Fiat Currency? | Binance Academy](https://academy.binance.com/en/articles/what-is-fiat-currency) + +#### ERC20 Tokens + +[An Introduction to ERC-20 Tokens | Binance Academy](https://academy.binance.com/en/articles/an-introduction-to-erc-20-tokens) + +![ERC20 Tokens image](image_5.jpg) + +## How to trade crypto: an introduction + +Now, we can get into some practical tips on crypto trading in general as an introduction. The following article by Hummingbot trader Tsalkapone is a good starting point. In the article, you will learn about practical tips for: +- Make Create an account in a crypto exchange +- Determine your trading method +- Fund your account +- Pick a token to invest in +- Analyze market trends and indicators +- Choose your strategy + +[How to trade crypto: an introduction by trader Tsalkapone](https://www.notion.so/How-to-trade-crypto-an-introduction-by-trader-Tsalkapone-42f0aa9be23f421a9bc2906e7e218323?ref=blog.hummingbot.org) + +## Helpful Tasks + +Here are some helpful tasks for you to understand the basics of crypto trading. If you find it helpful, feel free to go through these tasks. +- Sign up for a Binance, Ascendex, KuCoin, or Gateio account +- Create a LIMIT buy order of a cryptocurrency (eg.ETH) using USDT and notice where your orders are placed in the order book +- Create a LIMIT buy order with the best price in the orderbook and allow the order to get filled +- Execute a MARKET sell order of a cryptocurrency (eg. ETH) for USDT +- Create a LIMIT order to "cross" the orderbook and take existing orders \ No newline at end of file diff --git a/docs/blog/posts/how-to-trade-crypto/cover.jpg b/docs/blog/posts/how-to-trade-crypto/cover.jpg new file mode 100644 index 00000000..7dc1fbc2 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/cover.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/cover.webp b/docs/blog/posts/how-to-trade-crypto/cover.webp new file mode 100644 index 00000000..e644ce63 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/cover.webp differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_1.jpg b/docs/blog/posts/how-to-trade-crypto/image_1.jpg new file mode 100644 index 00000000..6b56b90a Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_1.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_10.jpg b/docs/blog/posts/how-to-trade-crypto/image_10.jpg new file mode 100644 index 00000000..1604f7f7 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_10.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_11.jpg b/docs/blog/posts/how-to-trade-crypto/image_11.jpg new file mode 100644 index 00000000..194ce502 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_11.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_2.jpg b/docs/blog/posts/how-to-trade-crypto/image_2.jpg new file mode 100644 index 00000000..7ce5e368 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_2.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_3.jpg b/docs/blog/posts/how-to-trade-crypto/image_3.jpg new file mode 100644 index 00000000..c6963d49 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_3.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_4.jpg b/docs/blog/posts/how-to-trade-crypto/image_4.jpg new file mode 100644 index 00000000..0a6ae870 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_4.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_5.jpg b/docs/blog/posts/how-to-trade-crypto/image_5.jpg new file mode 100644 index 00000000..17b35119 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_5.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_6.jpg b/docs/blog/posts/how-to-trade-crypto/image_6.jpg new file mode 100644 index 00000000..4de7bb76 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_6.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_7.jpg b/docs/blog/posts/how-to-trade-crypto/image_7.jpg new file mode 100644 index 00000000..01b9e068 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_7.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_8.jpg b/docs/blog/posts/how-to-trade-crypto/image_8.jpg new file mode 100644 index 00000000..01b9e068 Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_8.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/image_9.jpg b/docs/blog/posts/how-to-trade-crypto/image_9.jpg new file mode 100644 index 00000000..7c4458fa Binary files /dev/null and b/docs/blog/posts/how-to-trade-crypto/image_9.jpg differ diff --git a/docs/blog/posts/how-to-trade-crypto/index.md b/docs/blog/posts/how-to-trade-crypto/index.md new file mode 100644 index 00000000..14a7e8b5 --- /dev/null +++ b/docs/blog/posts/how-to-trade-crypto/index.md @@ -0,0 +1,211 @@ +--- +date: 2022-03-12 +authors: + - community +categories: + - Academy +tags: + - Market Making Basics + - Community Posts +--- + +# How to Trade Crypto + +![cover](cover.webp) + +*by Tsalkapone* + +Crypto trading has been in a frenzy lately and many investors are looking for ways to participate in the crypto market. There are several ways to gain profit from cryptocurrency and various methods to do so. If you exclude crypto mining from the equation, which is a whole different method of crypto-acquiring process, the steps that one would need to follow to enter the crypto market are the following: + +- Make an account in a crypto exchange +- Determine your trading method +- Fund your account +- Pick a token to invest in +- Analyze marketing trends and indicators +- Choose your strategy + +In this topic we will elaborate each of the steps mentioned above presenting the main aspects that a new trader should take into consideration before making a decision. + + + +### **Step 1: Create an account in a crypto exchange** + +Picking the right crypto exchange to open an account is a crucial factor for your crypto investment. Of course, the term “right” doesn’t apply to this choice as there is arguably no exchange that excels all others in all aspects to be considered. + +When picking a crypto exchange you need to compare the following essential factors: + +- Transparency +- Trading fees (taker and maker, altcoins and stablecoins) +- Funding and withdrawal fees +- Volume and exchange token discounts +- Total trading volume & liquidity +- Total crypto assets + +When picking a crypto exchange it is important to pick a widely known exchange or at least a transparent one. Don’t pick an exchange due to its low fees. Make sure there is efficient support (not just chat bots), a way to communicate, a valid address mentioned in its site and do look it up for comments or reviews. Cryptocurrency attracts many scammers as well and you should be able to distinguish a possible one. + +At this point you have to consider trading fees as a “taker” or “maker”. + +A “taker” is a trader that places an order that is immediately filled in its entirety and you pay a “taker fee” for this. When you are a “taker” you take the price you want, right now, by buying or selling limit orders sitting on the books or market price. Usually a taker’s fee is higher than a maker’s. + +A “maker” is a trader that places an order that doesn’t fill immediately (like a limit order). When you “make” an order you place an order and wait for it to be filled partially or fully. This terminology comes from the fact that placing limit orders on the books helps to “make the market”. + +Also, beware to check for respective fees for altcoins and large market cap assets since many exchanges distinguish fees into these categories as well. + +When it comes to fees you shouldn’t neglect the funding and withdrawal fees. You don’t want to see unexpected fees when you liquidate your profits. + +Apart from fees, another essential factor for choosing an exchange is the average **liquidity** and trading **volume**. The higher the numbers of these two factors the better. High liquidity and trading volume mean more traffic, more trades and more volatility which conclude in a better market environment for someone who wants to trade. + +Another variable for a better trading environment is the **variety of coins**. It goes without saying, that the more crypto assets (coins) an exchange offers for trading the more trading opportunities you have. + +A nice spot place to check for these factors can be found in the following link: + +[CoinMarketCap – Exchanges ranking](https://coinmarketcap.com/rankings/exchanges/?ref=blog.hummingbot.org) + +As we live in the Age of Information I strongly recommend you do a deep research when it comes to exchanges. Read thoroughly, if possible, their terms and conditions of service, watch for the small print, check the supported funding methods of each exchange and whether the exchange offers a debit/credit card. Furthermore, verify the legitimacy of trading crypto assets in your country and whether the exchange has law limitations or your profits are susceptible to taxation. Take into consideration that some exchanges may require identification documents to allow you withdrawals or trading. + +[Forbes – Best Crypto Exchanges](https://www.forbes.com/advisor/investing/best-crypto-exchanges/?ref=blog.hummingbot.org) + +[Forbes – Cryptocurrency Taxes Advisor](https://www.forbes.com/advisor/taxes/cryptocurrency-taxes/?ref=blog.hummingbot.org) + + +### **Step 2: Determine your trading method** + +Most would think that after you create an account the next step is to fund it and begin trading. Well, yes that’s the reasonable thing to do but the first question to pop up in somebody’s mind at this point would be: “How much money should I begin with?”. In order to answer this question you should determine what your trading method would be. + +There two main trading methods. **Investing and trading**. + +**Investing** is the process of buying a crypto asset (coin) and waiting for its price to rise. Investors are usually geared for the long-term and are not concerned with short-term price movements. In other words, an investor will bet on the long-term potential of a coin when investing in it, with the intention to sell it (and realize a profit) in a couple of years. An investment doesn’t require advanced marketing skills or thorough analysis on marketing indicators and it is the preferred way to trade crypto for many beginners. + +**Trading** on the other hand, is the process of buying and selling crypto assets at a high or low frequency rate (minutes, hours, days or even weeks) depending on the price. The fundamental goal of a trader is to analyze marketing trends and indicators and determine whether to buy or sell a coin with the objective of short-term profits. Market volatility is a critical component of a trader’s decisions and thus they are looking for coins that their prices are extremely volatile in the market. A trader must be able to accept a loss during a trade in favor of a profit in an imminent trade. + +There are two main aspects that separate an investor from a trader. One is technical knowledge. A trader requires more technical knowledge and depth in analysis than an investor which means more research, more study and more monitoring. The other factor is time. A trader needs to sacrifice several hours per day to track prices and trends in order to fulfill profitable trading orders while an investor may periodically (usually once or twice a day) check his investment balance to determine whether it’s the right time to sell his assets. + +Before you decide whether you plan to be a trader or investor the main question you have to answer is how much time you are willing to spend on crypto trading on a daily basis and how deep you want to dive into technical analysis. If you strive to understand how the market works and how prices may change you should avoid crypto trading as it will result in time consumption and rapid losses. + +An investor usually enters with a higher amount than a trader. As the investor expects to accumulate profit over time by waiting for the price to go up this may take a while to happen. + +Let’s use XRP crypto asset as an example. XRP is a famous crypto asset that is being regarded as a one of the best crypto tokens to invest in nowadays. One year ago (March ’21) XRP was valued at 0.445 USD and its price when this article was written was 0.759 USD. The price over a period of a year went up by 70.49% which means that if someone had invested 100 USD back in March ’21, his XRP balance would be valued now at 170.49 USD. If someone had invested 1,000 USD he would now have a balance worthy of 1,704.9 USD. It goes without saying that the higher the amount someone invests the more USD he will gain (or lose) depending on the current price. In order to make a substantial profit as an investor you better start with a high amount. + +On the contrary, a trader may enter the market with as low as 100 USD. As already mentioned the trader’s goal is to make a small profit from daily transactions. Small profit, though, can accumulate really nicely over time. A trader with a daily profit of 5% (a reasonable profit percentage) earns 5 USD per day. If we assume that he continues to trade with 100 USD value and doesn’t add up the daily profits to his investing portfolio this would end up in a 1.925 USD balance in a period of a year. + +To sum up, if you plan to invest in crypto , better use a high amount to enter the market. If your aim is to trade on a daily basis, you may consider entering with a low amount. + + +### Step 3: Fund your account +After you decide what your trading method will be, you will have to fund your account. The most straightforward method to do so is to connect your bank account. But this may not always be the wisest method to do so as they are alternative methods (wire transfers, funding wallets) that the exchange may support and they usually have lower transaction fees. + +Inspect the funding methods carefully and choose the one that will be the most beneficial for you. Watch out for fixed fees apart from percentage fees for every available funding method. + + + +### Step 4: Pick a token to invest in +The first step before starting to make some profit is to pick a crypto asset to invest in. Not every crypto asset is suitable for every trader and strategy and no crypto asset is a golden ticket to guaranteed profit. + +Picking a crypto is a process that needs searching and assessment. In the process, you may decide to change the token you are investing in, or invest in more than one type of token. Nevertheless, the process of picking requires some steps of evaluation. + +If you decide to invest, rather than trade, in crypto you might consider taking some time and reading the **whitepaper** that accompanies it. A whitepaper is a document that is being released during every initial coin offering (ICO) and details a product’s concept, roadmap, and how it plans to grow in the future. In a few words, a whitepaper is a document that consists of the following information: + +- The problem and solution +- Token information and marketplace consideration +- Technical description +- Project timeline +- Team and advisors + +[Whitepaper](https://www.investopedia.com/terms/w/whitepaper.asp?ref=blog.hummingbot.org) is not a crypto terminology and is actually a marketing tool written as sales and marketing documents to entice or persuade potential customers to learn more about or purchase a particular product, service, technology, or methodology. + +[Here](https://bitcoin.org/bitcoin.pdf?ref=blog.hummingbot.org) you will find the iconic Bitcoin’s whitepaper. + +So, a whitepaper is a document presenting a coin’s purpose (problem and solution) and basically, its existence lies in persuading potential customers to invest in it. Is this more important than the market trend? Well, the whitepaper is important to evaluate how strong the purpose of the coin is in terms of attracting new investors. Also, it gives you critical information about the technology behind it, who is backing the project, and who is the creator. Remember talking about XRP previously? A part of its [popularity](https://www.forbes.com/advisor/investing/what-is-ripple-xrp/?ref=blog.hummingbot.org) is attributed to its [whitepaper](https://ripple.com/files/ripple_consensus_whitepaper.pdf?ref=blog.hummingbot.org). + +When it comes to the market trend, an investor wants to see the market moving like this: + +![Market Trend](image_1.jpg) + +When tracking a coin, an investor should always pay attention to the big picture of the price. The price should be assessed in longer periods of time (3 months, 6 months, or a year) as the investor doesn't really care about the current price but whether the price is [uptrend](https://www.investopedia.com/terms/u/uptrend.asp?ref=blog.hummingbot.org) over time. + +On the other hand, a trader uses more versatile techniques to “decipher” the market indicators of a coin. The trading technique is based on the strategy the trader uses. + +Generally, a trader prefers a volatile market with uptrends and [downtrends](https://www.investopedia.com/terms/d/downtrend.asp?ref=blog.hummingbot.org) occurring during the day and tries to find the best time to sell or buy. A trader wants to see a market moving like this: + +![Trader's Market Trend](image_2.jpg) + +The trader speculates the price changes in shorter periods of time (often less than one hour) and makes decisions based on marketing indicators. Usually, he sells when the price is below the average price, based on historical data, and buys when the price is higher. Ideally, a trader should buy at the lowest point of a trough and sell at the highest point of a peak. + +![Trader's Trend Analysis](image_3.jpg) + + + +### Step 5: Analyze market trends and indicators + +![Trader's Trend Analysis](image_4.jpg) + +When trading, there is always the possibility of losing or winning. Anyone can sell high and buy low but what if a coin’s price keeps falling and never rises? What if you bought during an uptrend but the price has fallen since and still didn’t reach the initial price you bought at? How can you predict the best time to buy or sell? + +Analyzing marketing indicators and trends may answer these questions and increase your profit or inform you that it may be the time to walk away from a coin minimizing your losses. + +Generally speaking, the analysis is divided into two big categories: **Fundamental** and **Technical** analysis. + +[Fundamental analysis](https://www.investopedia.com/terms/f/fundamentalanalysis.asp?ref=blog.hummingbot.org) looks at the intrinsic value of an asset by evaluating its financial statements and variables while [Technical analysis](https://www.investopedia.com/terms/t/technicalanalysis.asp?ref=blog.hummingbot.org) is the forecasting of future price movements by analyzing past market data, primarily prices and volume. + +[Marketing indicators](https://www.investopedia.com/terms/m/market_indicators.asp?ref=blog.hummingbot.org) are a subset of technical indicators and are typically comprised of formulas and ratios. They are often represented in the form of lines, areas, or shapes in a diagram but can also be expressed via numbers. [Trend analysis](https://www.investopedia.com/terms/t/trendanalysis.asp?ref=blog.hummingbot.org) is the technique that attempts to predict future price movements based on historical observed data and depends on marketing indicators. + +Whereas trend analysis is often criticized as a bad technical analysis from the aspect that history does not necessarily need to repeat itself and the past does not predict the future, it can come in handy when you are dealing with pricing movements in short periods of time. + +Two of the most used indicators for trend analysis are [Relative Strength Index](https://www.investopedia.com/terms/r/rsi.asp?ref=blog.hummingbot.org) (RSI) and [Moving Average](https://www.investopedia.com/terms/m/movingaverage.asp?ref=blog.hummingbot.org) (MA). + +The **relative strength index (RSI)** is a [momentum indicator](https://www.investopedia.com/investing/momentum-and-relative-strength-index/?ref=blog.hummingbot.org) used in technical analysis that measures the magnitude of recent price changes to evaluate overbought or oversold conditions in the price of a stock or other asset. The RSI is displayed as an oscillator (a line graph that moves between two extremes) and can have a reading from 0 to 100. + +**Moving average** is a calculation used to analyze data points by creating a series of averages of different subsets of the full data set. Moving average (MA) is a stock indicator that is commonly used in [technical analysis](https://www.investopedia.com/terms/t/technicalanalysis.asp?ref=blog.hummingbot.org). In trend analysis, the most famous technique to assess moving averages is [Moving average convergence divergence](https://www.investopedia.com/terms/m/macd.asp?ref=blog.hummingbot.org) (MACD), that shows the relationship between two moving averages of a security’s price. Another essential marketing indicator based on moving averages is [Bollinger Bands](https://www.investopedia.com/terms/b/bollingerbands.asp?ref=blog.hummingbot.org), which is extremely popular among traders in the crypto market. + +Most of the indicators are based on historical data and math equations derived from two simple data: **Price** and **trading volume**. When it comes to these two numbers things are easy. Higher trading volume means higher stability and credibility, and lower trading volume means higher volatility. Higher price means sell, and lower price means buy. + +One of the most useful price charts is the [candlestick chart](https://www.investopedia.com/trading/candlestick-charting-what-is-it/?ref=blog.hummingbot.org). A candlestick chart displays the market’s open, high, low, and close price for a specified period of time, the lowest being one minute. + +![Candlestick Chart](image_5.jpg) + +The candlestick has a wide part, which is called the “read body”. This part represents the price range between the open and the close price of a specific period of time. When the real body is filled in black (or green or other color), it means the close was lower than the open. If the real body is empty (or red or other color), it means the close was higher than the open. The colors may be altered by traders based on their trading platform. + +The candlestick charts form patterns that may indicate bearish behavior (downtrend) or bullish behavior (uptrend). [Bearish and bullish](https://www.investopedia.com/insights/digging-deeper-bull-and-bear-markets/?ref=blog.hummingbot.org) are terms that are used to express a downtrend or an uptrend market behavior respectively and are widely used terms among market articles and traders. Learning how to break down [candlestick patterns](https://www.investopedia.com/articles/active-trading/092315/5-most-powerful-candlestick-patterns.asp?ref=blog.hummingbot.org) is a substantial criterion in understanding the market trends and putting you in a better trading position. + +![Candlestick Chart](image_6.jpg) + +Market makers are the ones to provide liquidity in the market whereas market takers are the ones to take liquidity. Market makers make their profits by charging a spread on the buy and sell price of an asset. The takers pay the asking price for an asset, which is usually higher than the market price. Then, the trade is executed at a bid price. The difference between the market price and the bid-ask price is the spread, which is the profit that the market maker takes in. + +![Candlestick Chart](image_7.jpg) + +Many traders out there are both market makers and takers. When they see a trading opportunity they seize it right away, thus being takers, and when they are awaiting for volatility to occur or expect the price to reach certain levels they place a limit order, thus making them market makers. + + + +### Step 6: Choose your strategy +So, you have picked your trading pair, you have evaluated the indicators and assessed the trend analysis. The last step before you begin making or taking orders is to choose the strategy you plan to follow. Your strategy will vary based on the indicators of a certain period of time and change throughout your trading journey depending on market volatility and trends. But you should have a strategy structure made up in your mind and impose it when the circumstances are met. You don’t want to be that trader who doesn’t know what to do when a [flash crash](https://www.investopedia.com/terms/f/flash-crash.asp?ref=blog.hummingbot.org) occurs. + +There are many strategies one may use to trade and anyone can build his own strategy. Some of the most popular strategies are the following: + +- **Range trading** + +Cryptomarket caps are small enough that they can be manipulated by a single big mover. These moves will systematically attempt to maneuver a coin price up or down causing increased market volatility. When you rage trading, RSI is the most essential indicator to rely on when you are trading. You have to pay attention to overbought and oversold zones in the RSI diagram which will guide you to decide whether to buy or sell. Overbought means that buyers have saturated their need and the stock will probably sell off. Oversold means the opposite. + +![Range Trading](image_8.jpg) + +- **Scalping** + +[Scalping](https://www.investopedia.com/articles/trading/05/scalping.asp?ref=blog.hummingbot.org) is a trading style that specializes in profiting off of small [price changes](https://www.investopedia.com/terms/p/price-change.asp?ref=blog.hummingbot.org) and making a fast profit off reselling. In day trading, scalping is a term for a strategy to prioritize making high volumes off small profits. A scalper may enter a market with one or many orders, make a profit and quickly exit before a fluctuation changes the market’s sentiment on a coin. + +![Scalping](image_9.jpg) + +- **Arbitrage** + +Arbitrage refers to the strategy under which a trader buys an asset in one market (exchange) and sells it in another. Owing to the difference in liquidity and trading volume, traders can find an opportunity to book profit. To adopt this opportunity, you must open accounts on at least two different exchanges and search for coins with considerable differences between prices. + +![Arbitrage](image_10.jpg) + +- **High-Frequency Trading (HFT) and trading bots** + +[HFT](https://www.investopedia.com/terms/h/high-frequency-trading.asp?ref=blog.hummingbot.org) is a kind of algorithmic trading strategy used by [quant traders](https://www.investopedia.com/articles/active-trading/112614/steps-becoming-quant-trader.asp?ref=blog.hummingbot.org). The strategy involves developing algorithms that usually result in the creation of trading bots that help quickly enter, trade, and exit a crypto asset. Developing such bots needs an understanding of complex market concepts and a strong knowledge of mathematics behind market indicators and economics, as well as a certain level of coding skills. If you don’t qualify, though, to build a trading bot you may use a built one. There are many trading bots out there, free and paid, that do a decent job trading on your behalf. These bots are usually customizable to accommodate the user’s strategy. Once the user has completed the bot’s configuration he can use it to trade automatically, monitoring periodically its performance. [Hummingbot](https://docs.hummingbot.org/) is also an open source trading bot that runs on any crypto exchange, centralized or decentralized, offering the user the option to automatically trade using a large variety of strategies or the capability to build his own. + +![Trading Bots](image_11.jpg) + +Crypto currency is attracting more and more investors each day, and although you may read stories about people accumulating huge amounts of profit through trading, you should realize the underlying risks and potential losses that come with crypto trading. + +It’s being said that digital currency is the future of money and many people believe in that, but since only history will prove that right or wrong, you should understand the basics before entering the crypto market and make sure that when you find yourself in a hole, stop digging... diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/cover.webp b/docs/blog/posts/tips-for-handling-different-market-conditions/cover.webp new file mode 100644 index 00000000..389698d3 Binary files /dev/null and b/docs/blog/posts/tips-for-handling-different-market-conditions/cover.webp differ diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/image_1.jpg b/docs/blog/posts/tips-for-handling-different-market-conditions/image_1.jpg new file mode 100644 index 00000000..ff481f20 Binary files /dev/null and b/docs/blog/posts/tips-for-handling-different-market-conditions/image_1.jpg differ diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/image_2.jpg b/docs/blog/posts/tips-for-handling-different-market-conditions/image_2.jpg new file mode 100644 index 00000000..1fe978be Binary files /dev/null and b/docs/blog/posts/tips-for-handling-different-market-conditions/image_2.jpg differ diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/image_3.jpg b/docs/blog/posts/tips-for-handling-different-market-conditions/image_3.jpg new file mode 100644 index 00000000..de1af1fb Binary files /dev/null and b/docs/blog/posts/tips-for-handling-different-market-conditions/image_3.jpg differ diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/image_4.jpg b/docs/blog/posts/tips-for-handling-different-market-conditions/image_4.jpg new file mode 100644 index 00000000..94006adc Binary files /dev/null and b/docs/blog/posts/tips-for-handling-different-market-conditions/image_4.jpg differ diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/image_5.jpg b/docs/blog/posts/tips-for-handling-different-market-conditions/image_5.jpg new file mode 100644 index 00000000..31b399b9 Binary files /dev/null and b/docs/blog/posts/tips-for-handling-different-market-conditions/image_5.jpg differ diff --git a/docs/blog/posts/tips-for-handling-different-market-conditions/index.md b/docs/blog/posts/tips-for-handling-different-market-conditions/index.md new file mode 100644 index 00000000..b9c39b5a --- /dev/null +++ b/docs/blog/posts/tips-for-handling-different-market-conditions/index.md @@ -0,0 +1,71 @@ +--- +date: 2022-03-02 +authors: + - community +categories: + - Academy +tags: + - Community Posts +--- + +# Tips for Handling Different Market Conditions +![cover](cover.webp) + +*by Owen Hobbs* + +In numerous ways, markets can resemble the waves of the ocean. Both have peaks, bottoms, and ultimately return to a midpoint or sea level. The approach one takes to navigate the waves is largely dependent on the weather or market conditions affecting them. In this article, we are going to discuss a few of the ways someone using Hummingbot could navigate the various market conditions such as ranging, uptrend, and downtrend. + + + +## **Range Bound Markets** + +A rangebound, or often referred to as a 'sideways' market, is when the price moves back and forth between a higher and lower price. This constant movement between the lower and higher prices creates a prime opportunity for market makers to come in and capture the spread between the two. A range bound market increases the probability that a market maker�s bid and ask orders are filled, and done so repeatedly. The more often a market maker completes a buy and sell �cycle� (buy low, sell high), the more spread and profits a market maker is able to capture. + +![range-bound-markets](image_1.jpg) + + +## **Calculating Spread** + +As an example of how someone may generate their bid and ask spreads in a rangebound market, one may simply measure the difference from the bottom range to the top range that they are trying to capture. By default, hummingbot places its orders as an offset of the mid_price on each side, therefore we will need to divide this number in half to get an average bid\_spread and ask\_spread. + +For example, let's imagine that we determined the market was ranging between 0.995 and 1.005; thus creating a 1% gap that we would like to capture. By dividing the gap percentage in half we get 0.5%; which is a general value we can apply to bid and ask spreads. Since by default spreads are placed as an offset to the mid_price, the second image below illustrates what these orders may look like on the books. + +![calculating-spread](image_2.jpg) + +## **Order Levels** + +By incorporating more advanced features such as [order_levels](../../../strategy-configs/order-levels.md) and [order_level_spread](../../../strategy-configs/order-levels.md), one could place additional orders at wider spreads in an attempt to capture more volatile moments that exceed the first order level. The [order_level_amount](../../../strategy-configs/order-levels.md) parameter can either increase or decrease the subsequent order size after the first level. This can be used according to one's risk appetite. For example, one may be willing to purchase 100 assets at a tighter spread, but is willing to purchase an additional 150 assets at a wider spread as this is less risky. + +On the other hand, by reducing the original spreads and setting 2 additional order_levels, one could accomplish capturing spread, volatility, and possibly increase their traded volume. Unfortunately, these tighter spreads come with increased risk appetite. See the sample configs + +![order-levels](image_3.jpg) + +## **Trending Markets** + +Similar to range bound markets, trending markets typically fluctuate between highs and lows. The outlier in trending markets is that the price action is either making higher highs or lower lows over a period of time. This places them in one of two categories of either an uptrend or downtrend market. + +## **Offsetting Spreads** + +Since trending markets are no longer testing the same highs and lows, establishing hummingbot spreads tends to be more complex. For example, if we took the same strategy of evenly spaced spreads in a trending market, one side would likely be filled more often than the other. The result of this could limit the effectiveness of capturing spread, offset inventory risk, and overall cost money. + +To further explain, markets that are in an uptrend tend to have more pressure on the ask side than the bid side. If there is more pressure on the ask side, then market makers are more likely to keep selling assets rather than replenishing supply. Meanwhile, markets that are in a downtrend tend to have more pressure on the bid side, likely increasing supply with limited ask orders being filled. + +Therefore, if someone is attempting to capture spread in a trending market, one could simply adjust the spreads based on the amount of buy or sell pressure on that side. As an example, if a market is in an uptrend, one could set their ask orders at a higher spread than the bids. Since ask orders are more likely to be filled in an up trending market, setting a higher price for selling could help offset and mitigate this imbalance. The opposite of this could then be applied in downtrend conditions. + +![offsetting-spreads](image_4.jpg) + +## **Order Delay** + +By default, after an order is filled, Hummingbot immediately replaces the orders on the book. This can be useful in certain situations, however, in times of volatility, this could quickly lead to inventory shifting too far to one side or the other. + +Increasing the [filled_order_delay](../../../strategy-configs/filled-order-delay.md) parameter places a delay between a filled order and when the next order is placed. By increasing the filled_order_delay parameter, it reduces the risk of filling too many orders on one side or the other. + +For example, the market is currently in a downtrend; Let us assume we are applying more sell pressure with tighter spreads. If the market suddenly starts to correct to the upside, it quickly fills our ask orders. + +If filled_order_delay was enabled, this would place a timed delay between each order, limiting the number of orders and amount of added inventory. Please see the sample configs & images below representing this scenario: + +![bid-order-delay](image_5.jpg) + +Unfortunately, there is no win-all strategy for market makers to just plug in. Markets are continuously changing direction, volatility, order depth, etc. Therefore, future and current market makers will need to continue altering their configurations depending on the market conditions present. The goal is though, with enough experience, one will gain the knowledge to quickly adapt to ever changing markets. + + diff --git a/docs/blog/posts/what-is-arbitrage/banana_market.png b/docs/blog/posts/what-is-arbitrage/banana_market.png new file mode 100644 index 00000000..c990487a Binary files /dev/null and b/docs/blog/posts/what-is-arbitrage/banana_market.png differ diff --git a/docs/blog/posts/what-is-arbitrage/cover.webp b/docs/blog/posts/what-is-arbitrage/cover.webp new file mode 100644 index 00000000..253ab0ce Binary files /dev/null and b/docs/blog/posts/what-is-arbitrage/cover.webp differ diff --git a/docs/blog/posts/what-is-arbitrage/index.md b/docs/blog/posts/what-is-arbitrage/index.md new file mode 100644 index 00000000..7bea1acc --- /dev/null +++ b/docs/blog/posts/what-is-arbitrage/index.md @@ -0,0 +1,163 @@ +--- +date: 2020-09-11 +authors: + - coinalpha +categories: + - Academy +tags: + - Market Making Basics +--- + +# What is Arbitrage? + +![cover](cover.webp) + +## Welcome to Hummingbot Academy! + +Last week we published the [first article](../what-is-market-making/index.md) of the **Hummingbot Academy**, covering an introduction to **what is** **Market Making**, and today we discuss Arbitrage in order to answer the following questions: + +- **What is arbitrage?** +- **What do arbitrageurs do?** +- **How to run arbitrage operations?** +- **How do I create my arbitrage robot?** + + + +Here at **Hummingbot Academy** our goal is to help you learn more about **market making** and **arbitrage**, and how to use our [free open-source robot](https://docs.hummingbot.org) to implement your own strategy. + + +### But what is arbitrage? + +The concept of **arbitrage** is pretty simple: + +> Arbitrage is the purchase and sale of an asset in order to profit from a difference in the asset's price between markets. + +To better explain exactly how an **arbitrage** operation happens, let's talk about bananas. Yes, bananas. + +![Photo by Adam Jones (http://adamjones.freeservers.com/)](banana_market.png) + +Picture a small town, where a big part of its economy is based on bananas production, with a lot of farms selling their crop on the local market. + +This result in a lot of bananas being sold locally, and naturally due to the high offer, they are pretty cheap to buy, let's say for $0.50/kg. + +A few kilometers away lies a big city, but most of its economy is based on industry, therefore there aren't many banana farms surrounding it. + +But citizens of that big city still want to eat fruit to have good health, which creates a big demand for bananas, and they are willing to pay $0.65/kg. + +It's pretty clear to see there is an opportunity here, and a merchant could buy bananas from the small town, sell on the big city, and profit $0.15 (without accounting the transportation costs) for each transported kilogram. + +The merchant (arbitrageur) in this case is doing an arbitrage operation: buying and transporting bananas (the asset) from one market and selling it on another market for a profit, while reducing his risk by locking his profits if both sides of the deal are closed at the same time. + +### Isn't it the same as a market making operation? + +Although the basic concept of both operations is pretty similar (buy low and sell high with a small profit margin), the key difference is the 'where' the market maker and the arbitrageur look for deals. + +> 💡 The market maker [like a pawnshop owner](../what-is-market-making/index.md) operates on a single place, **making** buy and sell offers on the same market. The arbitrageur (like a merchant transporting goods between towns), operates on more than one place, **taking** buy and sell **offers** from two (or more) different markets. + +The way each one affects the markets is also different because while a market maker is providing liquidity, reducing **bid-ask spread** and **slippage**, while the **arbitrageur** is removing liquidity from two markets (usually from a high-liquidity market and a low-liquidity market), but pushing the prices to **converge** on the same level on both places. + +### Markets inefficiencies and arbitrage on financial markets + +Around the world, there are a lot of different financial markets where a variety of assets are being traded on a daily basis. + +Every major city or country usually has its own financial exchange were all kind of investors meet to buy and sell different financial instruments. + +We have NASDAQ and NYSE on New York, CME and CBOE on Chicago, JPX on Japan, SSE on China, FRA in Germany, B3 in Brazil, and the list goes on and on. + +And even though there was a huge evolution in the information technology, the sheer amount of exchanges and the distance between each one still leads to so-called market inefficiencies. + +To illustrate this, we will take a look at the Dollar-Yen (USD-JPY) prices on two different markets. + +Let's assume that at some point in time, the order book of a New York and a Japan exchanges are exactly the same: + +![](spread1.png) + +Then, an investor decides to send a order to buy 360 JPY on the Japan Exchange at market price. + +What will happen next is that there will be a new Ask price on the Japan Exchange book, and usually, the Market Makers will create new Bid orders on the book to fill the spread gap that was created by that order: + +![](spread2.png) + +This is when the **arbitrageur** makes his move, buying 100 JPY at the New York exchange at the price 106.207 and selling them **immediately** on the Japan Exchange for 106.29, netting a total profit of 8.70 USD (0.082%) on the trade. + +Eventually, as more **arbitrage** operations happen, the Ask price on the NY exchange will go up until it matches the Ask price on the Japan Exchange. + +> 💡 In the traditional financial markets, there is a huge amount of **arbitrage** competition, with profitability being determined by milliseconds. The companies doing it usually make big investments (billions of dollars) in technology and infrastructure to increase the speed of arbitrage algorithms. + +### Cryptocurrencies and arbitrage opportunities + +With the rise of cryptocurrencies value over the last 10 years, the exchanges landscape followed this growth, and today [Coinmarketcap.com](http://coinmarketcap.com) lists a total of 311 exchanges where 6,974 different cryptocurrencies can be traded. + +This creates a huge amount of opportunities for **arbitrage** operations, due to the big market inefficiency that still exists between all these exchanges with a wide range of volume, liquidity, and spread across all of them. + +But there is a new and interesting factor in the cryptocurrency trading environment that adds an extra layer of possibilities: decentralized exchanges. + +> 💡 **Centralized Exchange (CEX)**: All the assets in the custody of the exchange, and the user's balance is controlled by the exchange.
+**Decentralized Exchange (DEX)**: All the assets are in the custody of their owners, and the exchange function as a way for buyers and sellers to execute a trade between their private wallets. + +The CEX model is a reflection of what already exists in the traditional financial markets and this kind of tried-and-true service has been offered in the cryptocurrency space for a very long time. We can say that there is already a lot of competition doing arbitrage operations, especially among the bigger exchanges, and as time goes by, it is getting harder to find good opportunities. + +On the other hand, the concept of a DEX is relatively new and there are a lot of projects with different models and levels of decentralization being developed. + +As a matter of fact, AMM (Automated Market Makers) decentralized protocols like Uniswap actually rely on arbitrageurs to adjust their internal prices to match other external exchanges. + +This opens up a wide array of opportunities for profitable arbitrage. + +So, if you are looking for these opportunities, be sure to check the of the decentralized exchanges that are operational today. + +> 💡 Usually, all exchanges charge a fee on each trade operation, so be sure to consider the cost of executing the trade when planning your arbitrage strategy. +DEXes also present an extra layer of cost to be considered, because depending on how the transactions are processed, there might be some added cost like blockchain transaction fees. + +### Automated trade and arbitrage + +There are two key components on completing a profitable arbitrage trade: + +- Find two markets with profitable price discrepancies; +- Take the market offers listed on the book before anyone else. + +In theory, it is possible to capitalize on **arbitrage** opportunities through the manual process of checking the price of an asset across different exchanges and type your order size and price to close the deal. + +But by the time you are ready to click the button to complete the trade, it is most likely that another person already took the order you were looking at, and the trade won't be profitable anymore. + +The use of algorithmic trade robots has become an essential component of arbitrage operations in today's markets because of the speed it can execute both components listed above, by constantly looking for profitable trades and executing them at the exact moment they are detected. + +> 🐦 You can create an **arbitrage** strategy on Hummingbot using the `create` command and then typing `arbitrage` when asked what is the strategy you want to use. + +### The risks of arbitrage + +The concept of **arbitrage** operations is really simple: buy low on one market, sell high on another *at the same time.* + +When successful, this operation eliminates one big risk when it comes to investing: volatility risk. + +Arbitrageurs don't have to worry about the price movements or try to find the market direction, and they will only trade if they know they can buy in one place at a lower price and immediately sell it at another place at a higher price. + +But as it happens with all trading strategies, **arbitrage** isn't completely risk-free. + +The majority of the risk lies upon the trade **execution** (how fast can you close the trade before someone else) and the **market liquidity** (not enough orders available on the markets with the price you are looking to trade). + +If you think about the banana's merchant, he could have problems while traveling from one city to another (slow truck, flat tire, etc), and by the time he reaches the big city, the price people were willing to pay could be lower, reducing his profits or even close the trade at a loss. + +To some degree, arbitrageurs can mitigate the **execution risk** and create some advantages, for example by investing heavily in reliable infrastructure, or moving his operation closer to the exchange servers. + +Also, as arbitrage gets increasingly competitive, opportunities become increasingly hard to come by. **Arbitrageurs** may search for opportunities for long periods of time but are not guaranteed to find them. + +As with any other type of trade, be sure to understand the risks and test your strategy before putting your assets at risk. + +> 🐦 With Hummingbot you can enable the **paper trading mode** using the command `paper_trading`, which allows you to test your strategy in a **real-time simulated environment**, without the need to put your capital at risk. + +Another important risk you must consider is related to where you are executing your trades: + +- **Central Exchanges** have the custody of your assets, and your access to them can be denied for any reason (hacks, scams, etc), so be sure to research the exchange reputation and security systems; +- **Decentralized Exchanges** operations rely on the smart contracts to control the trade flow and bugs or flaws on the code can lead to big problems like funds being locked or stolen, therefore it is important to understand the if the program behind the DEX doesn't have major flaws. Even if you don't understand the code language, look around the web for information about possible vulnerabilities. + +### Join our community + +And this concludes our introduction to arbitrage, a really simple strategy that take advantage of market inefficiencies to find profitable trades. Next week we will cover Cross-exchange market making, which is a mix of market making and arbitrage. + +If you want to learn more, make sure to follow our blog updates for new articles every week. + +While you wait for the next post, remember to join our [Discord server](https://discord.hummingbot.io/), a place where our community talks about **market making** and **arbitrage**, and all the possible ways you can use Hummingbot to improve your trading strategies. + +Also, if there is any specific topic you want us to cover on the Hummingbot Academy, contact our team on Discord, or send an email to academy@hummingbot.io. + +See you soon, and I wish you all a profitable trading session! \ No newline at end of file diff --git a/docs/blog/posts/what-is-arbitrage/spread1.png b/docs/blog/posts/what-is-arbitrage/spread1.png new file mode 100644 index 00000000..d141e92c Binary files /dev/null and b/docs/blog/posts/what-is-arbitrage/spread1.png differ diff --git a/docs/blog/posts/what-is-arbitrage/spread2.png b/docs/blog/posts/what-is-arbitrage/spread2.png new file mode 100644 index 00000000..24062aa0 Binary files /dev/null and b/docs/blog/posts/what-is-arbitrage/spread2.png differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/cover.webp b/docs/blog/posts/what-is-cross-exchange-market-making/cover.webp new file mode 100644 index 00000000..6d595fa1 Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/cover.webp differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/guitars.jpg b/docs/blog/posts/what-is-cross-exchange-market-making/guitars.jpg new file mode 100644 index 00000000..57494f4e Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/guitars.jpg differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/image2.png b/docs/blog/posts/what-is-cross-exchange-market-making/image2.png new file mode 100644 index 00000000..da2c828b Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/image2.png differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/image3.png b/docs/blog/posts/what-is-cross-exchange-market-making/image3.png new file mode 100644 index 00000000..13994425 Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/image3.png differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/image4.png b/docs/blog/posts/what-is-cross-exchange-market-making/image4.png new file mode 100644 index 00000000..35e6b044 Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/image4.png differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/image5.png b/docs/blog/posts/what-is-cross-exchange-market-making/image5.png new file mode 100644 index 00000000..3185af3f Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/image5.png differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/image6.png b/docs/blog/posts/what-is-cross-exchange-market-making/image6.png new file mode 100644 index 00000000..7fa8624d Binary files /dev/null and b/docs/blog/posts/what-is-cross-exchange-market-making/image6.png differ diff --git a/docs/blog/posts/what-is-cross-exchange-market-making/index.md b/docs/blog/posts/what-is-cross-exchange-market-making/index.md new file mode 100644 index 00000000..c814c43a --- /dev/null +++ b/docs/blog/posts/what-is-cross-exchange-market-making/index.md @@ -0,0 +1,217 @@ +--- +date: 2020-09-23 +authors: + - coinalpha +categories: + - Academy +tags: + - Market Making Basics +--- + +# What is Cross Exchange Market Making? + +![cover](cover.webp) + +Welcome back to our Educational Center, where we aim to help you to learn more about [market making](../what-is-market-making/index.md), [arbitrage](../what-is-arbitrage/index.md), and everything related to algorithmic trading. + +Today we will talk about one of the core strategies that can be used with [hummingbot](https://hummingbot.org): **cross-exchange market making**. + +The objective of this article is to help you understand: + +- **What is the cross-exchange market making strategy?** +- **What is the difference between cross-exchange market making and arbitrage?** +- **How is cross-exchange market making different from pure market making?** +- **Why and when should I use this strategy?** + + + +If you already understand how [arbitrage](../what-is-arbitrage/index.md) and [pure market making](../what-is-inventory-risk/index.md) work, cross-exchange market making ("XEMM") becomes really simple: it's simply a hybrid of the two. + +![](./guitars.jpg) + + +### So what is cross-exchange market making? + +Here's a simple explanation of the concept of cross-exchange market making: + +1. My friend Alice wants to sell her guitar and she's offering it for $100. +2. I go around to all of my other friends and tell them that **I am selling** a guitar for *$110* +3. If one of my friends, say Bob, agrees, I immediately buy the guitar from Alice for $100 and sell it to Bob for $110. + +Pretty neat right? I made $10 of profit selling something I didn't own by simply doing a back-to-back, simultaneous buy and sell of the guitar. + +**Wait... that sounds a lot like arbitrage, so what's the difference?** + +OK, here's how this situation would be for arbitrage: + +1. My friend Alice wants to sell her guitar and she's offering it for $100. +2. I go around and try to find if someone, anyone, **is offering to buy** a guitar for some price higher than $100. After looking around, I find an ad posted by my other friend Carol; **she wants to buy** a guitar and is willing to pay $110. +3. Great, I immediately buy the guitar from Alice for $100 and sell it Carol for $110. + +Did you notice the subtle difference? For step #2 in cross-exchange market making, I was the one proactively telling people **I had something to sell** and **I was setting my price**. Does this concept sound familiar? In the transaction with Bob, **I was the maker** and Bob was the taker. + +On the other hand, for step #2 in arbitrage, I was simply going around and searching to find if *someone else* had already said they wanted to buy a guitar at a higher price. In the arbitrage scenario, **Carol was the maker**, and **I was the taker**. + +In my transaction with Alice in both scenarios, I was a taker: I accepted her offer for a guitar and her price. + +> 💡 An arbitrageur acts as "**taker/taker**"; he is the taker on the buy *and* the sell transaction. Arbitrage is more *passive* because an arbitrageur just monitors prices and searches for opportunities to act on. On the other hand, a cross-exchange market maker acts as "**maker/taker**"; he proactively tries to create trade opportunities by creating maker orders on one side of the trade. + +### What does this have to do with market making? + +In our previous article on [pure market making](../what-is-market-making/index.md), we explained that a market maker is someone who places both bid and ask orders in order to facilitate trading. You can see that in the cross-exchange market making example above, I am acting as a **maker**, offering a guitar to sell and specifying a price. So that's one half of what a market maker does. + +But I can also do the same transaction for the buy side. I have another friend, Dave, who wants to buy a guitar, but he is only willing to pay $95. At this price, he and Alice can't trade, because his budget of $95 is below Alice's asking price of $100. Since I know that I can sell a guitar to Dave, at the same time I'm going around trying to sell Alice's guitar, I can go around offering *to buy* another guitar that I can sell to Dave. + +Now I have both sides: I can offer to buy a guitar for $85 and sell a guitar for $110. I am now acting as a market maker. The interesting thing about **cross-exchange market making** that you may have noticed is: + +- I don't even own a guitar in the first place; if someone wants to buy a guitar from me, I just buy the one from Alice to sell them and, +- I don't even need to have the money to buy a guitar on the buy side; if someone wants to sell me a guitar for $85, I can pay for that purchase by selling that same guitar immediately to Dave! + +> 💡 In **cross-exchange market making**, a trader acts as a normal market maker on one exchange (the "*maker exchange*"), creating buy and sell orders. However, the trader eliminates the inventory risk usually associated with market making by using another exchange (the "*taker exchange*") to simultaneously offset (or "*hedge*") any trades filled on the maker exchange. + +That is why we mentioned earlier that cross-exchange market making kind of looks like **a combination of pure market making + arbitrage**. + +### So how does this translate to order book markets? + +A financial environment where the same asset is traded in different marketplaces is susceptible to what is known as **market inefficiency**, where the information about the value of the asset takes some time to dissipate to all the exchanges. + +This can be easily noticed by looking at the differences between bid and ask prices offered on each order book, as can be seen on the screenshot of the BTC/USDT order book on two different exchanges at the moment in time: + +![](./image2.png) + +Bid prices: + +- Exchange A: $10,475.97 +- Exchange B: $10,476.40 + +Ask Prices + +- Exchange A: $10,475.98 +- Exchange B: $10,476.60 + +Applying the cross-exchange market making concept on the situation above: + +1. I use one exchange (Exchange A) as my taker exchange. In the example above, Alice and Dave, collectively, acted as my "taker exchange". Basically, I need one exchange where there are buy and sell orders created by other people. Using the above situation, the best bid price on Exchange A for Token A is currently $10,475.98 and the best sell price is $10,475.98. +2. On another exchange (Exchange B), I act as maker and create orders. Since I know that I can sell as a market taker for $10,475.97 and buy for $10,475.98 on Exchange A, I place a buy order for BTC for $10,474,97 and sell order for $10,476.98 on Exchange B. +3. If my buy order on Exchange B is filled, then I immediately sell Token A on Exchange A for a $1.00 profit. If my sell order on Exchange B is filled, then I immediately buy BTC on Exchange A for a $1.00 profit. + +You can see that the only term I set here is my profit margin of $1. The price of the order I place on Exchange B will always be based on the market price offered on Exchange A. + +For example, if the ask price on Exchange A falls to $10,400.00, then I would adjust my price ask offer on Exchange B to $10,401.00 (= $10,400.00 + $1): + +###### (Exchange B maker price) = (Exchange A taker price) + (profit margin) + +Notice that $1 may not be a realistic margin; more likely margins would be more in the low percentages or even fractions of percentages. But even at lower margins, why would this strategy work? + +> 💡 As with arbitrage, the potential to generate "risk-free" profits through **cross-exchange market making strategies** happens due to market inefficiencies. The highly fragmented nature of the crypto markets (different types such as CEX/DEX, different regions/jurisdictions, the sheer number of different exchanges) lends itself to even more market inefficiencies. + +### Why would anyone trade on Exchange B if the prices on Exchange A are better? In other words, what makes cross-exchange market making possible? + +Here are some examples: + +- *Some people may not be able to open an account or don't want to open an account on Exchange A (market fragmentation)*: for example, Exchange A might be a centralized exchange requiring KYC, while Exchange B is a DEX. Users of Exchange B may even know that they are getting worse pricing, but they just don't want to go through the hassle of setting up an account on Exchange A +- *Exchange B doesn't get information as quickly as Exchange A*: the crypto markets can move awfully quickly, and it doesn't always reach every exchange at the same time. Prices may have moved on Exchange A but traders on Exchange B don't yet know about it. As an example, exchange B is a DEX with on-chain order books. Updating order books through blockchain transactions may result in lag. + +### Practical considerations: deploying cross-exchange market making strategy in the financial markets + +Now that you understand the fundamental concept of **cross-exchange marketing making**, we now consider the practical implications of deploying this strategy in the real-world. The example at the beginning of this article assumes that: + +- I can easily move the guitar or Token A between people or exchanges instantaneously and, +- I can place orders for something even if I didn't yet have the item (i.e., I can offer to sell a guitar I didn't know yet, or I could offer to buy a guitar even though I didn't have the money). + +However, in financial markets, moving assets between exchanges take time (e.g. requiring a certain number of block confirmations in the case of cryptocurrencies) and you need to have assets on the exchange in order to place orders (at least currently, in the spot market). + +Capturing "risk-free" arbitrage opportunities is highly competitive, so these opportunities may be few and far between and are typically very short-lived. By the time we identified an opportunity, transacted on one exchange, transferred assets to another exchange, and then did the second part of the trade (the "hedge"), it's highly likely the opportunity may have already disappeared. So how do we solve this? + +### Inventory equilibrium model + +One way to address this operational inefficiency is to maintain an inventory on both exchanges. + +This might sound contradictory to what was explained in the above examples since one of the goals of the **cross-exchange market making** strategy is to avoid exposure to inventory risk, but let me explain it further. + +![](./image3.png) + +The figure above shows the state of the market maker's account at the moment he starts the operation. As you can see, he begins with a total inventory of 20 units of the Token A, split across two exchanges. + +This will allow the trader to create a position on the Exchange B order book, locking his minimum profit at 1% (101 * 1.01 = 102.01). + +> 💡 Reminder: If the Best Offer price on Exchange A changes, the **market maker** will change his Ask Offer price on Exchange B, to guarantee the 1% profit. If on Exchange A the price rises to 105, he would change his Ask price on Exchange B to 106. + +Now, let's see what happens the moment his sell offer is taken by another buyer: + +![](./image4.png) + +At the exact moment his maker order is filled on the Exchange B, he will become a taker of the Best Offer on Exchange A. As you can see in the figure above, the total amount of Token A on both exchanges is still the same (20), while his total USD balance has increased by $1. + +### Rebalancing + +A cross-exchange market maker from time to time may also need to rebalance his assets between exchanges. In the example above, if the market keeps trading in this same direction and the trade occurs 9 more times, the market maker would end up having only tokens on Exchange A and only USD on exchange B. In such a case, the trader would have to transfer some tokens from Exchange A to Exchange B, and some USD from Exchange B to Exchange A in order to continue running the strategy. + +### Trading and asset transfer fees + +A cross-exchange market maker needs to account for trading and asset transfer fees when setting his target profit margin for trades. + +### Risks of cross-exchange market making + +> ⚠️**Arbitrage** and **cross-exchange market making** are often considered and described as "risk-free" because these strategies *largely* mitigate the main risk associated with market making: **inventory risk**. The main risk that remains is execution risk. + +**Execution risk** + +The markets move pretty fast. As with what happens on arbitrage operations, the trader has to consider the speed and reliability of executing his trade orders. In the example above, as soon as his trade is filled and Exchange B, he needs to immediately perform the offsetting trade on Exchange A before someone else takes that order or before that market maker adjusts his or her price. + +Therefore, the execution risk lies on how fast and how reliable is the connection between the trader terminal and the exchanges. + +This risk can be mitigated by using better infrastructure (e.g. cloud with reliable connections), lots of testing to ensure trading bot reliability, and choosing reliable exchanges. + +**Market/volatility risk**: although limited as compared to pure market making. + +As explained above, we need to deploy an inventory equilibrium model in order to have assets available on exchanges in order to take action on trading opportunities. This introduces some amount of market risk because a cross-exchange market maker does have to have some amount of inventory. + +However, the main difference in cross-exchange market making, vs. pure market making strategy, is that **the inventory exposure will stay constant over time**. In the example above, the market maker keeps a constant amount of Token A balance (20 tokens) but uses this balance as a tool to try to grow the market maker's USD balance. + +> 💡 Because deploying a cross-exchange market making strategy in the real-world requires some *fixed amount* of inventory, it does expose the market maker to some amount of market risk. However, since the inventory amount is fixed and finite, cross-exchange market making has a similar risk profile as a buy-and-hold strategy; but unlike buy-and-hold, the inventory is deployed to try to generate incremental, additive returns without a fundamental change in risk profile. + +This materially lowers the risk as compared to pure market making, because a cross-exchange market maker is avoiding large swings in inventory amounts. + +> 🐦To create a **cross-exchange market making** strategy on hummingbot, use the command `create` followed by `cross_exchange_market_making`. + +### Liquidity mirroring: another application of cross-exchange market making + +As mentioned above, there is a lot of fragmentation in the cryptocurrency markets, which has led to large disparities in liquidity. For example, some exchanges may be much more active and liquid (such as centralized or established, widely-used exchanges) versus others (such as decentralized exchanges, or newly created exchanges). + +Let's take a look, for example, at Travala (AVA) the most traded token on Binance DEX, and compare its bid-ask market spread with the centralized Binance.com, as shown on [Coingecko](https://www.coingecko.com/pt/moedas/travala#markets): + +![](./image5.png) + +Binance DEX has less liquidity and lower trade volume than Binance.com which is reflected in a bid-ask spread on Binance DEX that is nearly 5x that on Binance.com. + +A cross-exchange market maker could take advantage of this situation by posting offers on Binance DEX with his maker spread lower than the prevailing bid-ask market spread. This would put his orders in a good position and first in line to be taken by other participants. + +For example, let's say the market maker set his bid-ask spread at 4%: + +- Binance DEX **maker** ask spread = 2% +- Binance CEX **market** ask spread = 0.6% + +If another participant takes the market maker ask offer on Binance DEX (selling the asset), he will, at the same moment, take the best ask order offered on Binance CEX (re-buying the asset at a lower price), locking an instant profit of (2%-0.6%) = 1.4% + +> 💡 This strategy also has the effect of 'transferring liquidity' from a more liquid exchange (remove liquidity by taking orders) to a less liquid exchange (increasing liquidity by making orders) and reduce spreads. Cross-exchange market making is also known as "*liquidity mirroring*" or "*liquidity porting*". + +### Comparing strategies + +With today's article, we presented all three strategies that can be implemented with Hummingbot ([pure_market_making](../what-is-market-making/index.md), [arbitrage](../what-is-arbitrage/index.md), cross_exchange_market_making), and each one has its own characteristics, advantages, and disadvantages. + +Here is a comparison between these strategies: + +![](./image6.png) + +There is still a lot more content planned for the Hummingbot Academy that will cover the details and inner workings of each one, helping you find and create a strategy that fits better with your trading plans, so make sure to check our blog for updates every week. + +### Join our community + +If you want to learn more, make sure to follow our blog updates for new articles every week. + +While you wait for the next post, remember to join our [Discord server](https://discord.hummingbot.io/), a place where our community talks about **market making** and **arbitrage**, and all the possible ways you can use Hummingbot to improve your trading strategies. + +Also, if there is any specific topic you want us to cover on the Hummingbot Academy, contact our team on Discord, or send an email to [academy@hummingbot.io](mailto:academy@hummingbot.io). + +See you soon, and I wish you all a profitable trading session! diff --git a/docs/blog/posts/what-is-inventory-risk/cover.webp b/docs/blog/posts/what-is-inventory-risk/cover.webp new file mode 100644 index 00000000..aa06081a Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/cover.webp differ diff --git a/docs/blog/posts/what-is-inventory-risk/image1.png b/docs/blog/posts/what-is-inventory-risk/image1.png new file mode 100644 index 00000000..2e463dea Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image1.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image10.png b/docs/blog/posts/what-is-inventory-risk/image10.png new file mode 100644 index 00000000..d7267766 Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image10.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image3.png b/docs/blog/posts/what-is-inventory-risk/image3.png new file mode 100644 index 00000000..d92bb1ff Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image3.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image4.png b/docs/blog/posts/what-is-inventory-risk/image4.png new file mode 100644 index 00000000..78901b1b Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image4.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image5.png b/docs/blog/posts/what-is-inventory-risk/image5.png new file mode 100644 index 00000000..881e114b Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image5.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image6.png b/docs/blog/posts/what-is-inventory-risk/image6.png new file mode 100644 index 00000000..f23b9eb0 Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image6.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image7.png b/docs/blog/posts/what-is-inventory-risk/image7.png new file mode 100644 index 00000000..0d3cf34b Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image7.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image8.png b/docs/blog/posts/what-is-inventory-risk/image8.png new file mode 100644 index 00000000..f22b1ffc Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image8.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/image9.png b/docs/blog/posts/what-is-inventory-risk/image9.png new file mode 100644 index 00000000..301354fb Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/image9.png differ diff --git a/docs/blog/posts/what-is-inventory-risk/index.md b/docs/blog/posts/what-is-inventory-risk/index.md new file mode 100644 index 00000000..69ecc80c --- /dev/null +++ b/docs/blog/posts/what-is-inventory-risk/index.md @@ -0,0 +1,239 @@ +--- +date: 2020-10-14 +authors: + - coinalpha +categories: + - Academy +tags: + - Market Making Basics +--- + +# What is Inventory Risk? +![cover](cover.webp) + + +Hello again Hummingbot community! + +Today we will start to talk about what I consider the most important factor that is part of all types of trading operations: **risk and risk management.** + +As one of the biggest investors of our time once said: + +"Risk comes from not knowing what you're doing." ~ Warren Buffett + +![Source: https://www.azquotes.com/quote/40644](./image3.png) + +All kinds of financial operations have varying degrees of risk, and market making is no different. + +While it seems more exciting to imagine and project future gains and fantasize about being the next Warren Buffet, the reality and less glamorous part of investing, and arguably the most important part, is trying to figure out what can go wrong and how to mitigate losses that can result. + + +There is a lot to cover about risk and risk management, but today we will focus on one major risk related to market making: **inventory risk.** + +Here is what we’ll cover in today's article: + +- **What is inventory value?** + +- **What is inventory risk?** + +- **How to mitigate inventory risk with Hummingbot** + + + + +And as always, you are welcome to join the #trader-chat on our [Discord](https://discord.com/invite/hummingbot) to discuss with the community how to improve your market making strategy. + +### What is Inventory risk? + +As a market maker, your main role is to provide liquidity to other market participants. + +You are providing a service to other traders, offering to buy and sell assets from and to everyone else, while getting paid to do so through the spread size between your bid and ask offers (orders to buy low, sell high). + +To be able to provide this service, the market maker must hold some amount of assets in inventory in order to create orders and make trades, and this inventory has a value associated with it. + +**Inventory Value** + +As any market participant already knows, the prices of assets are constantly changing, and all traders must have a way to track if they are making profit or not. + +One simple way to track performance is to compare the total value of the assets owned by the trader. + +For example, let’s assume that you currently own 0.46820424 BTC and 14.6426 ETH: + +**Day 1 Inventory** + +![](./table1.PNG) + +On the first day, the current value of your assets is $10,000. Even though you don't actually own any USD and only own BTC and ETH, you have the ability to convert your BTC and ETH to $10,000 at current market prices. + +**Inventory value can fluctuate due to changes in market prices because the value of the assets relative to the benchmark asset can change** + +If you haven’t traded (HODL!), on day 2 you would still have the same amount of BTC and ETH from the starting portfolio. + +**Day 2 Inventory** + +![](./table2.PNG) + +However, since the USD prices for these assets changed, the **inventory value** has gone down to $9,761.38. The BTC value went up, while the ETH value went down. + +Inventory value is the current value of all assets held in a portfolio, quantified to some chosen benchmark or reference asset (e.g. USD). + +Choosing the benchmark reference asset for determining value varies by investor. For example, investors from the U.S. may use USD, whereas an investor in Europe may choose Euro. This is because, at least currently, most of their costs (food, rent) are still denominated in USD (or Euro), and fiat is still the benchmark for their assets and buying power. + +### Inventory risk in trading + +The main objective of a market maker is to increase his total inventory value over time. The more common and general approach to investing is trying to buy assets that will appreciate in value in the future. This is “directional” investing, buying “cheap” assets and betting that the price of an asset will eventually go up. + +In contrast, a market maker tries to increase portfolio value over time by capturing incremental bid-ask spreads and accumulating them over time. The market maker continually offers to simultaneously buy and sell assets, offering to be at a slightly lower price than he is offering to sell. If the market maker is able to complete a buy and sell, they are able to capture some of this difference, the “bid-ask spread”. The more times a market-maker can complete this cycle of buy and sell, the more profits they are able to accumulate. + +As I mentioned in the [first academy article](../what-is-market-making/index.md), the ideal situation for a market maker is when the price is moving without a trend: + +![](./image6.png) + +When prices are trading within a range, the more likely a market maker's buys and sells being filled with equal frequency, and the more likely the market maker is able to accumulate incremental profits. + +The trouble begins when the prices start to trend in one direction. + +For example, if the price starts to trend downward, his buy orders will start to be filled, but not the sell orders: + +![](./image8.png) + +_Source: Our community member @Christian Feldmann_ + +The consequence of this situation is that the market maker will begin to increase the inventory of the asset that is losing value, resulting in total **inventory value** decreasing over time. + +Eventually, the price could come back to a profitable level and the market maker would be able to sell his inventory at a profitable price. But the problem is that, if this situation persists and the price keeps dropping, all the market maker inventory will be locked on one side. + +At some point, the market maker will have to decide between stopping his operation and wait for better prices or start selling his inventory at a loss to keep his operation going. + +This similar to a retail store manager started to increase his inventory, buying more products from suppliers at better prices, but his customers aren't very interested in buying his products. + +Even though the market maker creates both buy and sell orders, there’s no guarantee that both sides will be filled. In the example above, the bids keep getting filled but the sells never get filled. This also exposes the market maker to the risk of swings in the amount of inventory held. For example, the market maker might accumulate assets losing value; conversely, the market maker might end up selling off assets that are appreciating in value. + +> **Inventory risk** is the probability a market maker can't find buyers for his inventory, resulting in the risk of holding more of an asset at exactly the wrong time, e.g. accumulating assets when prices are falling or selling too early when prices are rising. + +### Inventory risk management with hummingbot + +Inventory risk is the main risk of market making. That’s why Hummingbot allows a lot of strategy customization designed to mitigate inventory risk and why our team continues to work on even more features around this. + +This flexibility allows the market maker to mitigate his operational risks in a lot of different ways, and make adjustments that fit his major strategy. + +Here are a few examples on how the **inventory risk** can be controlled: + +**History command** + +The `history` command displays historical trades as well as a summary of changes in the total asset amounts since the bot started. + +It's a good way to visualize how much the inventory changed on each side, and compare with the total value. + +**Inventory skew** + +Using `config inventory_skew_enabled` the bot will change the `order_amount` on every new order, to rebalance the total inventory size. + +The target proportion of each asset on the inventory can be defined through the command `config inventory_target_base_pct` and how much the inventory can deviate from this proportion using `config inventory_range_multiplier`. + +![Inventory Image](./image4.png) + +As can be seen above, there is more BTC than USDT on the inventory, and the bot is selling more than buying. + +This parameter can be used as inventory protection, for example, if the market maker spots a trend forming in one direction: if the BTC price is trending up, the market maker could start to accumulate more BTC, setting `config inventory_target_base_pct` to 70. + +Also, it is particularly useful, if you are trading a non-USD pair, (ETH-BTC for example), where the trader can evaluate the value of each asset paired with USD, and adjust the inventory skewness, if you think one of the assets will have a higher value in the future. + +![Inventory Image](./image9.png) + +> Inventory skew is like an ongoing pendulum balancing act; once a trader accumulates more of one asset, Hummingbot adjusts order sizes (smaller buys, larger sells) to try to get back to the target holding amount, and vice versa. + +Inventory skew aims to minimize the risk of inventory amounts swinging around too much. Trying to maintain a target ratio such as 50% helps to ensure that the market maker can continue to quote both bid and ask sides and capture bid-ask spreads. + +**Filled Order Delay** + +Through the `filled_order_delay` parameter, the market maker is able to set a delay time for the bot to create subsequent new orders once a previous order has been filled. + +For example, with a filled_order_delay = 300 when an order created by the bot is filled, the next pair of orders will only be created 300 seconds later. + +This helps to manage periods when prices are trending. For example, in the diagram below, in a case when prices are trending down, bid orders keep getting filled once orders are refreshed. + +![Inventory Image](./image10.png) + +If this is repeated and continues to go on, the market maker could quickly end up accumulating large amounts of the asset within a matter of just a few order refresh cycles. In the example above, the trader has bought assets 5 times. + +By introducing a delay between filled orders and placing new orders, this spaces out orders and dampens the potential accumulation of assets, allowing for some time for price trends to stabilize. + +![Inventory Image](./image1.png) + +You can see above, since the bid order in period 1 was filled, the bot didn’t place orders in periods 2, 3, and 4. So in this downward price trend, the bot only bought twice (periods 1 and 5) whereas when filled order delay was not enabled, the bot would have bought in all five periods. + +**Hanging Orders** + +Hanging orders is a function that instructs Hummingbot to treat buys and corresponding sell orders created at the same time as a pairing. If one side gets filled, the bot keeps the other side of the pairing outstanding, creating the opportunity and possibility for that side to eventually get filled: + +![Inventory Image](./image7.png) + +In the example above, the buy order for period 1 was filled. But since hanging orders mode was enabled, the original sell order from period 1 is not canceled during the refresh cycle (period 2) and remains outstanding. Meanwhile, the bot continues its operation of creating new orders (see periods 2 through 5). In the example, prices changed direction, and eventually at some point in the time, the hanging sell order was filled, around period 5. + +The benefit of this strategy is that it creates the possibility of the pairings to be “completed” and balanced. In the example above, hanging orders allow the trader to match the buy and sell **eventually**, while locking in the bid-ask spread. + +**Ping Pong** + +The ping pong strategy is another strategy that tries to keep buys and sells balanced. It does so by creating orders only on the opposite side of an order that has been filled. For example: + +![Inventory Image](./image5.png) + +Because the buy order from period 1 was filled, the bot stops placing buy orders and only places sell orders (periods 2-4). Only when a sell order is eventually filled (period 4) will the bot resume creating both buy and sell orders (period 5). + +**Adjust spread on one side to follow a price trend** + +Usually, the market makers apply the same `bid_spread` and `ask_spread`. This is great on sideways markets, because the price will be moving inside a range, and naturally the inventory will tend to be at a 50/50 rate, and the market maker will profit from the spread. + +But like we said above, it gets problematic during a trending market, as the inventory may start to accumulate on the side of the less valuable asset. + +An option to mitigate this is to tighten the spread on one side, to increase the probability of those orders being filled first. + +Example: + +Mark, the market maker started his operations on the BTC-USDT with bid_spread = 0.5 and ask_spread = 0.5. But the price started trending up, so he changed his parameters to bid_spread = 0.1 and ask_spread = 0.9. + +That way, his total spread is still the same (1%), but his buy offers now have a higher chance to be filled before the sell offers. + +**Scripts** + +Hummingbot has a built-in script function, where you can create your own custom strategy, and the bot will adjust the parameters based on any strategy you want. + +All you need is know how to code on Python, create a .py file integrated with Humminbot code base, and activate the script through config script_enabled command (you can find more information about scripts [here](../../../scripts/index.md). + +You could even create a script that replicates an Automated Market Making logic, as [this reddit user asked](https://www.reddit.com/r/Hummingbot/comments/j6u8x0/amm_on_hummingbot/). + +Our developer team is working on a lot of improvements for the scripts module, because this is the main way Hummingbot users will be able to implement their customized strategies. + +### Wrapping up + +Becoming a trader these days is really easy. + +But being a good trader, that’s another story. + +What I realized after these years studying financial markets is that the main thing that separates good traders from bad traders is how much they know about risk and how they manage it. + +A good strategy isn’t only about finding the best way to make money, but also about knowing what to do when the market moves against your plan. + +Understanding the risks associated with each type of trading operation is essential to finding a sustainable and profitable strategy. + +The major risk associated with market making is the inventory risk. Understanding and learning ways to mitigate it should be a priority for everyone looking to operate as a market maker on any market. + +This article covered an explanation about the topic, and some practical ways to manage this risk using hummingbot, but this is such an important topic that there is a huge amount of research papers about it, like [Dealing with the Inventory Risk: A Solution to the Market Making Problem](https://www.researchgate.net/publication/51957950_Dealing_with_the_Inventory_Risk_A_Solution_to_the_Market_Making_Problem) and [Market making with asymmetric information and inventory risk](https://www.sciencedirect.com/science/article/abs/pii/S0022053116000065), and eventually, we will talk more about this topic in a close future. + +Also, with the recent rise of the Automated Market Maker protocols (liquidity pools like Uniswap), liquidity mining, and everything related to Decentralized Finance (DeFi), it is really important to understand the risks if you are looking to be a passive market maker. + +So, stay tuned on our blog, because soon we will publish an article comparing what are the key differences between these protocols and the traditional order book market making. + +See you all next week. + +### Join our community + +If you want to learn more, make sure to follow our blog updates for new articles every week. + +While you wait for the next post, remember to join our [Discord server](https://discord.hummingbot.io/), a place where our community talks about **market making** and **arbitrage**, and all the possible ways you can use Hummingbot to improve your trading strategies. + +Also, if there is any specific topic you want us to cover on the Hummingbot Academy, contact our team on Discord, or send an email to [academy@hummingbot.io](mailto:academy@hummingbot.io). + +See you soon, and I wish you all a profitable trading session! + +See you all next week! diff --git a/docs/blog/posts/what-is-inventory-risk/table1.PNG b/docs/blog/posts/what-is-inventory-risk/table1.PNG new file mode 100644 index 00000000..6b37af9c Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/table1.PNG differ diff --git a/docs/blog/posts/what-is-inventory-risk/table2.PNG b/docs/blog/posts/what-is-inventory-risk/table2.PNG new file mode 100644 index 00000000..b2ea43cd Binary files /dev/null and b/docs/blog/posts/what-is-inventory-risk/table2.PNG differ diff --git a/docs/blog/posts/what-is-market-making/chart_depth.png b/docs/blog/posts/what-is-market-making/chart_depth.png new file mode 100644 index 00000000..a7efb433 Binary files /dev/null and b/docs/blog/posts/what-is-market-making/chart_depth.png differ diff --git a/docs/blog/posts/what-is-market-making/cover.webp b/docs/blog/posts/what-is-market-making/cover.webp new file mode 100644 index 00000000..590d7d13 Binary files /dev/null and b/docs/blog/posts/what-is-market-making/cover.webp differ diff --git a/docs/blog/posts/what-is-market-making/graph1.png b/docs/blog/posts/what-is-market-making/graph1.png new file mode 100644 index 00000000..eb6a8c19 Binary files /dev/null and b/docs/blog/posts/what-is-market-making/graph1.png differ diff --git a/docs/blog/posts/what-is-market-making/graph2.png b/docs/blog/posts/what-is-market-making/graph2.png new file mode 100644 index 00000000..5ae1db58 Binary files /dev/null and b/docs/blog/posts/what-is-market-making/graph2.png differ diff --git a/docs/blog/posts/what-is-market-making/index.md b/docs/blog/posts/what-is-market-making/index.md new file mode 100644 index 00000000..004487e9 --- /dev/null +++ b/docs/blog/posts/what-is-market-making/index.md @@ -0,0 +1,186 @@ +--- +date: 2020-09-03 +authors: + - coinalpha +categories: + - Academy +tags: + - Market Making Basics +--- + +# What is Market Making? + +![cover](cover.webp) + +## Welcome to Hummingbot Academy! + +If you reached this page, there is a high probability that you have been asking one of these questions: + +- **What is a market maker?** +- **What do market makers do?** +- **How can I become a market maker?** +- **How do I create a market making robot?** + +Then you are on the right place! + +Here at [Hummingbot](https://hummingbot.org/), our goal is to help you learn more about market making and how to use our free open-source robot to implement your own strategy. + + + +### But what is a Market Maker? + +> A market maker (MM) is a firm or individual who actively quotes two-sided markets in a security, providing bids and offers (known as asks) along with the market size of each. ([source](https://www.investopedia.com/terms/m/marketmaker.asp)) + +If the above quote didn't made any sense to you, imagine a pawnshop: + +![Image credit: Steve Sutherland](pawn.jpg) + +Let's say that Susan has an old guitar, doesn't have much time to play anymore, and could use some cash; meanwhile in another part of town, Mike has been learning to play his friend's guitar and now thinks that he is good enough to invest some cash to buy his own, but a brand new one might be too expensive. + +Although we have two people that could close a deal, it might be difficult for them to find each other, or even to agree on a reasonable price for that guitar. + +This is where the pawn shop enter the picture: + +Instead of looking around for someone that wants to buy a guitar, Susan could sell her guitar to the pawnshop, and Mike could go there knowing that he would find one. + +The pawnshop owner is providing a **service** to both Susan and Mike. He offers an easy way to sell/buy what they want (**providing liquidity**) and a fair price, based on the demand for used guitar in the town (**spread reduction**). + +The pawnshop will be paid for this service by the difference in price he paid to Susan and the price he received from Mike (**spread size**). + +> 💡 A **market maker,** like a pawnshop owner, provides the same kind of service in financial markets. He provides **liquidity** and helps to **reduce bid-ask spread sizes**, taking his profits from the difference between his buy and sell orders (**spread**). + +### How does market making happen in financial markets? + +A financial market isn't much different from the real economy open markets. Every day, millions of people access some kind of trading platform, looking to close deals among a wide range of assets, including company shares, bonds, oil, gold, contracts, and **cryptocurrencies**. + +But instead of thousands of people gathering in the same place, holding signs and/or screaming for how much they are buying or selling something, **financial assets markets** use an **order book,** where all **buy and sell offers** are aggregated in the same place: + +![Source: Bittrex](order_book.png) + +The order book is nothing more than a list of all buy and sell offers (with quantities and prices) available across all market participants. + +In the picture above, we can see the BTC/USD pair **order book.** If someone is looking to **buy** Bitcoin right now, he/she will have to pay $12,022.230 (the lowest ask price) and there is 0.578 BTC available at that price. + +But if someone wants to **sell** Bitcoin immediately, he/she will have to accept the price of $12,016.32 (the best bid price) for up to 0.016 BTC. + +> 💡 The difference between the lowest of offer prices and the highest of demand prices for a good or asset is called **spread.** + +Technically, any person that posts a buy or sell offer on the **order book** is acting as a market **maker**, while those who are accepting the prices offered on the **order book** is called a market **taker**. + +Acting as a **market maker** is conceptually similar to participating in the market as the "pawnshop owner", creating offers to buy an asset at a low price, and selling it at a higher price **as fast as possible** and **as many times as possible**. + +> 💡 While the most common trading/investing strategy looks to profit from big price changes, a professional market maker is trying to capitalize on smaller but more consistent price swings between two price levels. + +Most **traders and investors** want to see the market moving like this: + +![](graph1.png) + +While market makers love to see market prices moving like this: + +![](graph2.png) + +The price of an asset doesn't change at a constant flow but as waves, and while traders and investors are trying to find out if the sea is moving towards high or low tide, the market maker is watching the smaller waves on the beach. + +### Bid-ask spread vs market maker spread + +Looking at the state of the **order book** on the picture we saw earlier, a **market maker** could post two offers: + +- Buy 1 Bitcoin for $12,016.320 (Bid price) +- Sell 1 Bitcoin for $12,022.230 (Ask Price) + +When other market participants accept these prices, and a deal happens on both orders, the market maker will have a profit of $5.91 on this transaction. + +This is also known as the market **Bid-Ask spread**, and in this example above, it's the $5.91 profit the **market maker** received for completing both sides of the operation: + +(12,022.23-12,016.32) / 12,016.32 = 0.049% + +Some exchanges even offer a way to visualize the ask-bid spread in real-time (along with the **book depth**, which is the accumulated size of all orders posted on the **order book**): + +![Source: Binance](chart_depth.png) + +But this doesn't mean that a **market maker** must use always use this exact bid and ask prices. + +A **market maker** must still consider other factors when deciding what is going to be his **operational spread**, including: + +- Market bid-ask spread; +- Transaction costs (including exchange fees and/or transfer fees); +- Trade volume; +- Market volatility; +- Operational costs (electric bills, cloud server costs, etc.); +- Any other costs related to the trading operation. + +There is no right or wrong answer to how big or small the **market maker spread** should be, and in the end, the spread is just a part of the **market maker strategy**. + +> 🐦 You can change your spread percentage on Hummingbot with the commands `config ask_spread` for sell orders and `config bid_spread` for buy orders. + +### What goes into a strategy? + +Being a profitable **market maker** isn't only about choosing a **spread size,** starting to send limit orders to the order book, and then turning around and forgetting about it. + +Before starting a market making operation, you must ask yourself some questions: + +- Should I keep the spread fixed all the time? Should I change it depending on market conditions? +- What should the size of my orders be? +- What should I do when there is a price trend in the market, or if there is no clear trend? +- How am I going to detect the market direction? +- How long should my orders stay on the book? +- If one side of the operation is filled, should I keep the opposing order until it is filled? +- Do I want to accumulate more of one asset over time, or do I want to always have a 50/50 balance? +- What should I do if there is price spike? +- Should I care about the average buying cost? +- When should I stay out of the market and for what reason, or should I trade all the time? +- What can I lose, and how much am I putting at risk? + +The answers to these questions determine your actions (and reactions) based on the market conditions and will ultimately define your **strategy**. + +A good **market making strategy** is nothing more than planning ahead on how you will react to market changes. + +But before you get scared with all of these questions and give up on market making, here is a tip: + +> 💡 **Start Small.** Don't try to have all the answers to your strategy beforehand, but focus on one parameter at a time, testing and watching what happens in different market situations. +Over time, add another parameter and do more testing and watch how all the pieces are working together. + +You are not going to find a cookie cutter, ready-to-use, one-size-fits-all and always profitable strategy/parameters just simply lying around, but after some time, you will start to understand the good and the bad of each **strategy**, and after experimenting with some of them will find one that fits your goals. + +> 🐦 On Hummingbot, you can combine different settings in different ways using the `config` command to build a wide variety of strategies. Check out the [pure market making reference guide](https://docs.hummingbot.org/strategies/pure-market-making/) to see what each parameter is used for. + +### Automated trading and market making + +So, trading robots... That is probably another reason why you are reading this article; you are not just looking to become a **market maker**, you are looking to setup a **market making robot** to do all of the hard work. + +After all, [Hummingbot](https://hummingbot.org/) is an **open-source trading robot**, available for **free** to anyone who wants to start an **automated trading strategy**. + +While it is possible to do **market making** operations manually, a **trading robot** allows your strategy to be executed in a precise way, remove the emotional factor (greed and fear), and even create safety measures for better risk control. + +But not all robots are made equal, and depending on what kind of strategy you are going to use (high-frequency, low-frequency, trend following, grid, straddle, quant... there are a lot of possibilities), one bot might do a better job than others. + +After all, a trading robot is a tool and we must use the right tool for the job. + +[Hummingbot](https://hummingbot.org/) is a great choice for algorithmic **market making** for the **cryptocurrency** markets because it is **focused** on this kind of trading operation. + +But no matter what robot you choose to use, it's always important to remember: + +> 🐦 What defines the **profitability** of a trading operation is the **strategy**. The algorithm is only the strategy translated into computer instructions and executed in an automated way. + +### A quick note on profit and risk + +**Market making is not a risk-free, always profitable trading operation.** + +Like any other trade activity, running a robot to **capitalize on market imperfections** comes with its own set of **risk/reward** features. + +Therefore, before you start using real funds, make sure that you understand what the mechanics of this type of trading are and what kind of **risks** you will be exposing yourself to. + +> 🐦 With Hummingbot you can enable the **paper trading mode** using the command `paper_trading`, which allows you to test your strategy in a **real-time simulated environment**, without the need to put your capital at risk. + +### Join our community + +This is only the first article of the Hummingbot Academy and there are a lot more articles to come where we will talk about other topics related to **market making** and **arbitrage** trading, including some **strategy analysis**. Our objective is to help you learn how to become a better market **maker/arbitrageur**. + +If you want to learn more, make sure to follow our blog updates for new articles every week. + +While you wait for the next post, remember to join our [Discord server](https://discord.gg/hummingbot), a place where our community talks about **market making** and **arbitrage**, and all the possible ways you can use Hummingbot to improve your trading strategies. + +Also, if there is any specific topic you want us to cover on the Hummingbot Academy, contact our team on Discord, or send an email to academy@hummingbot.io. + +See you soon, and I wish you all a profitable trading session! + diff --git a/docs/blog/posts/what-is-market-making/order_book.png b/docs/blog/posts/what-is-market-making/order_book.png new file mode 100644 index 00000000..01ca3e7e Binary files /dev/null and b/docs/blog/posts/what-is-market-making/order_book.png differ diff --git a/docs/blog/posts/what-is-market-making/pawn.jpg b/docs/blog/posts/what-is-market-making/pawn.jpg new file mode 100644 index 00000000..35b97389 Binary files /dev/null and b/docs/blog/posts/what-is-market-making/pawn.jpg differ