How I owned a prop shop at 20 y.o.

Table of contents

Prop shop (short for “proprietary trading shop”) is a group of people that uses their own capital to make a profit by following trading strategies.

Discovering trading (and how I got scammed)

My journey with trading started around 2013. As a broke 12-year-old with an interest in multiplayer FPS games, and with strict Asian parents who were against anything that was online, I didn’t have many video game options. So, Team Fortress 2 (TF2) it was.

TF2 is a free, multiplayer, FPS game; and I loved it. The game was free to play, but it had some powerful in-game items which could be bought in exchange for real money. I was hooked, so hooked that I had to get a weapon called “Your Eternal Reward” (and a bunch of other silly-sounding items). This was only possible with a credit/debit card, which I didn’t own but my parents owned.

After a few weeks of playing TF2, I managed to convince my dad to buy a few in-game items with my birthday and Eid savings. Initially, he was against online transactions since he didn’t want to end up in jail, but perhaps I nagged him too much to the point that he thought maybe jail wasn’t too bad. So, I paid him 16.36 USD and got my virtual items.

Steam order's receipt
My Steam purchase of 16.36 USD on the 6th of April, 2014. This is equivalent to 21.58 USD in 2024.

I remember having this “lightning-struck” feeling in my body when the transaction went through. It was like an electric shock touching every single nerve, and hormones rushing through my blood vessels. I had to share this feeling and happiness with my friends; so the next day, I mentioned my brilliant purchase to some of my classmates! At first, they thought I was joking. When I asked why, they replied with “You know that you can get all those weapons from the Steam market for pennies?”.

Something inside me died that day.

When I went back home, I snuck into my computer and started searching the items I bought on the Steam market. They were right, and I felt gutted…

Overdose's price chart
I had bought a weapon called "Overdose" for 2.49 USD. The better version of it was sold for 0.12 USD a day later on the Steam market.

It wasn’t all sorrows and prayers; I had bought the experience of feeling great (and shit) and obtaining the information of a cheaper market (i.e., the Steam market)!

My first profitable trade

Steam market is an exchange owned by Steam (a digital video game store and game development company) where video game players list their in-game items for sale, and others buy it.

TF2 key's price chart
Some statistics of one of the most popular TF2 items (i.e., TF2 Key).

This was the first time when I was introduced to trading lingo like:

  • buy/sell orders
  • market
  • marketplace/exchange
  • fees

After discovering the Steam market, I found new games that had more and cooler in-game items, and one of them was Counter-Strike: Global Offensive (CS:GO). Due to its high similarity to TF2, but slightly more enjoyable (to me), CS:GO quickly became my new favourite game. In my free time, I would look at cool-looking weapons in CS:GO, and dream of having and playing with them.

Glock-18 fade's price chart
My first ever dream weapon in CS2 (formerly known as CS:GO). When I started playing the game, this Glock was priced at 70.00 USD. As of April 2024, the last sale price is 1,435.99 USD.

Not only I would browse these items, but I would also look for opportunities to make a profit to obtain these items; and that is when I discovered my first trading strategy (the parameters were different time zones, different economies of countries, high demand to supply ratio, and many other parameters that I forgot). An average player in the Eastern Hemisphere was looking to make a quick buck by selling their items as soon as possible (which resulted in undercutting each other), meanwhile, the average player in the Western Hemisphere just wanted to obtain the items. Once the cheaper-priced items were bought by the Europeans and East coast players, the prices would start rising until the players in the Eastern Hemisphere players started selling again. This trend would create a daily window of opportunity to make a profit.

Revolution case's price chart
Median sale price for a popular in-game item CS:GO. In this example, the highest bids are between 05:00-09:00 GMT. The max sale price difference in a single day is 10% (which is 0% profit after paying the market fees).

I tested this strategy for a bit with a few items, and managed to make profit! But the money that I was making from this strategy wasn’t enough to satisfy me since I made only a penny of profit after clicking on 20 virtual buttons. I needed a bigger plan…

The hunt to find a bigger opportunity

The Steam market had cheap CS:GO items, and not-so-cheap CS:GO items.

Why is item X expensive?”

According to my analysis at the time, the main factors that affected the item’s price were:

  1. It is hard to get:
    • the probability of getting the item is low.
    • the item is very new.
    • the item is discontinued/no longer obtainable.
    • the item has a special meaning/history.
  2. It is a popular item:
    • in a match, every player always has a knife in one of their weapon slots. So, the knife is a popular item.
  3. It is good-looking.

The items didn’t have (almost) any advantage. The weapons were simply painted in various colours, so people referred to them as a “skin”. Skins weren’t the only item in CS:GO, there were other items like stickers which could be placed on any skin.

My first long-term investment

One day, I stumbled upon a very expensive sticker.

AK-47 with Titan (holo) Katowice 2014 stickers
4 "Titan (holo) Katowice 2014" stickers on an "AK-47 Blue Laminate" weapon skin. "Titan" is the name of a known team that competed in one of the official tournaments called "Katowice" in 2014, and "holo" is a variant that makes the sticker look shinier than normal.

This sticker was expensive. To give you a bigger picture, an average sticker was priced at 0.50 USD, but the holo stickers in the 2014 Katowice collection were being sold at 30 USD. Who would pay such a price for a virtual item!? Apparently some people thought it was worth that much.

(As of April 2024, the last sale price of the “Titan holo Katowice 2014” sticker is 70,545.74 USD.)

My aim was clear, I started looking into ways of obtaining these stickers. Not long after, I found out that the player had to unbox a sticker capsule to get these stickers. That meant I would pay some money to buy a capsule, see what is in it by unboxing it (unboxing is an irreversible action), and hope I would get a sticker that was more expensive than the capsule itself. It almost felt like I was going to bet against a computer that was designed to make itself get richer. So, I didn’t bother with unboxing capsules.

Instead of unboxing capsules, I started buying the stickers themselves.

Buy orders of MLG Columbus 2016 stickers
My first long-term investment was a sticker called "MLG Columbus 2016". I bought 7 of them in April 2016, and paid 1.61 TRY (0.57 USD at the time) for each on average. As of April 2024, the last sale price of 1 MLG Columbus 2016 sticker is 10.32 USD. I sold some of them, but the rest of these stickers are still in my inventory.

I continued making similar short and long-term investments with CS:GO items. Some paid off, some didn’t. I continued investing and trading until PayPal decided to halt operations in Turkey around mid-June 2016. That meant I could no longer easily trade with international users and had to find an alternative payment method. This is when I discovered “Bitcoin”.

Bitcoin

Bitcoin is a digital currency that uses cryptography to enable peer-to-peer Bitcoin transfers using the internet. When I was trading CS:GO items, some buyers and sellers offered payments in Bitcoin. It is easy to send and receive, so that’s why some traders prefer using them.

After learning what Bitcoin was, I started investigating about the source of Bitcoin just like the stickers. Unlike stickers, Bitcoin’s source wasn’t some capsule; but funnily enough, it still involved working with probabilities. The Bitcoin algorithm rewarded problem solvers (called miners) with Bitcoin for guessing a correct output given some complex calculation.

Around the same time, one of my classmates also mentioned Bitcoin and how we could make money by using our computers to become miners. Since we had the new GTX 10-series graphics cards, and assuming the only cost was electricity (which was paid by my parents) and a bit of the card’s lifespan, we could make 7 USD a day! For comparison, my monthly pocket money was around 25 USD, so 7 USD a day was a huge deal! To have deeper discussions about making money with Bitcoin, we created a WhatsApp group.

Bitcoin WhatsApp group
The WhatsApp group that my classmate had created. Unfortunately, the messages were lost while I was transferring my WhatsApp messages to one of my old phones. On the day he created the group, the closing price of 1 BTC was 2,863.20 USD.

After a few months, we started making 20 USD a day, that was a lot of money for a secondary school student! We had plans to buy more computational power (using more graphics cards), but we weren’t the only smart ones around, because all the graphics cards on the market were either sold or was very expensive. So, we continued our operations as usual; until the bubble burst on 17 December 2017 when 1 BTC was priced at 20,089.00 USD. We didn’t really talk much about Bitcoin after that day.

Getting the foot in the door, and meeting VCs

Fast-forward a few years to 2020. I was studying at a university, but face-to-face teaching was cancelled because of COVID-19. As a result, I was living with my parents, studying, and playing video games all day. I was bored and wanted to pick something up that involved using computers and preferably money.

After a few not-so-successful ventures, by building custom keyboards for clients, I started reading about trading. Learning about trading made me feel good, curious, alive! As I was learning, I came across a small Twitch channel that had only 5-10 live viewers. I enjoyed his content, the way he spoke, and the way he taught; so I stuck with him for a while.

A few days later, I started seeing the channel growing, and the chat getting out of hand, so I asked him to become a moderator to maintain a happy environment, automate some of his manual work and maybe discover an opportunity for something that I don’t know. My wish was granted.

Moderator bot's message that send automatically
I configured a moderation bot to send a brief message about the group's description and rules, so the new joiners and the existing users would be notified about what is going on in this group and how it is moderated.

Bitcoin was picking up, we had more viewers than ever; everyone was in a good mood. As the group grew, we started configuring more bots to maintain our other social media groups, and started hosting famous Twitch streamers from Turkey. The business was booming!

At one point, the head moderator (a close friend of the Twitch streamer) added me to a small chat group of 3 other people. At first, I didn’t understand what was going. Then, he explained that he and the other 2 investors had a trading strategy which they wanted to run with 6,000 USD per person. The problem was they didn’t trust anyone to implement it; so they asked me in return of some % of the profit. Perhaps this was the opportunity that I wasn’t expecting?

The trading strategy and its implementation

⚠️ Disclaimer: It has been more than 2 years since our strategy was profitable for the last time, so good luck to anyone who wants to implement it to make some profit.

In 2021, initial coin offerings (ICOs) were in high demand. A new project and the project’s coins were released every day, and many people bought these coins. I am not entirely sure what was the buyers thought process when buying into these projects, maybe they thought that project and coin was going to be the next big thing?

Anyway, our trading strategy was to be one of the first people to buy the coin at its open price, and sell it after everyone bought it. It may sound like “front running”, but it’s not because we never used private information; all the information we used was publicly available on the blockchain. So, people called it “sniping”.

1-minute candle chart
1-minute candlestick chart of some ICO event. This was one of the first ICOs that we participated in using our custom sniper bot.

I started my research by asking many questions to the VCs and trying to understand the requirements. Once I was confident with our aim, I started looking for similar products that solved our problem. After researching for a bit, I found something that could be potentially useful, but we didn’t know how good it was, and it was priced at 2,000 USD. So, that solution was out of the question.

I accepted that I had to code the strategy from scratch, that’s why they asked me to take the job in the first place after all. That also meant I was going to spend hours reading documentation about how the Ethereum network works.

The more I read, the more questions I had:

  • What is the Ethereum network?
  • How do I connect to the network?
  • How do I deploy some code on the network?
  • How do I execute my deployed code on the network?

and many more relevant and irrelevant questions…

After solving lots of implementation details and running tests, the proof of concept was finally ready! As a result, the bot had a file where it stored the buy order’s parameters, and a slick command-line-interface to activate the strategy:

Sniping bot's environment file
The file that we saved the buy order's parameters.
Sniping bot's activation mechanism
The command-line-interface that viewed the buy order's details, and activated the strategy.

I gave the great news to the rest of the team, the bot was ready! They congratulated me and said the bot’s first trade was going to be for an ICO event that was going to take place in 12 hours; so, we waited.

12 hours later

This was the moment of truth, was our proof of concept going to profit in a live environment? We edited our parameters, entered the buy order’s details, and started monitoring.

and 3…2…1…

Bot finding the monitored order
When the bot found the "liquidity" order that it was looking for, it placed a buy order. The transaction went through, and we received the tokens.

We did it, the first version worked! But there was a problem, the transaction went through 51 seconds after finding the monitored transaction. This delay put us at a huge disadvantage and made us one of the last buyers. So, I ran some tests to diagnose the root cause of the delay.

According to my findings, the bot’s connection with the Ethereum network was weak. I tested a few node/server providers that provided entrance to the network, but they were all very slow. So, we decided to create our own node and join the network, and that’s what I set up.

Bot's steps
A post-trade analysis of my explanation of the strategy. The buy order was placed 3 seconds later after the liquidity was added.

We did it again! Our buy order was placed in the next block after the liquidity was added! That’s one of the best possible scenarios that could have happened.

As we started making a profit, our competitors started making a profit; it looked like there was a big pie and everyone was fighting to get a bigger slice.

Q: The project manager created a coin that only he had permission to sell. How can we detect it, and cancel the buy order as we make it?

  • A: Create a honeypot detection mechanism in the bot.

Q: The competition is too high, how can we block other traders’ orders?

  • A: Fill up the block with fake transactions so others can’t place orders in the same block as you.

Q: We are still falling behind, how can we improve our strategy?

  • A: Bribe the miners (yes, that was a common thing and it’s legal).

Q: Transactions are getting more expensive, how can we make them cheaper?

  • A: Optimise the transaction by using gas tokens (e.g., Chi).

and we solved many more problems until we couldn’t beat a few traders who ordered their transactions right after liquidity was added; which made our trades no longer profitable, so we stopped running the strategy.

Our run lasted 6 months. We made some losses, and we made some profit. I certainly learned a lot of things about trading, the Ethereum network, coding practices and managing clients. After running this project, I created an exchange, which deserves its own blog post.

updated_at 26-04-2024