🏠

Researcher Take Home Fall 2023

👏 Congrats on completing Part 1 of the application! After completing Part 2, you will receive additional steps via email. The instructions are outlined below.

You must complete either the General Research, Algorithmic Trading Team, or Investment Team take home by September 9th at 11:59pm.

Of course, we are first and foremost students so we do not expect you to pour hundreds of hours into the take home. Instead, we ask you to spend at most 4-6 hours on this.

💡
We are not looking exclusively for people who are extremely knowledgeable about these topics, we are also looking for people who are able to pick up new concepts quickly with an interest in the space

Please submit your completed take home as a .pdf file here.

Completing the team-specific (Algo Trading, Investment) take home option is only required for those interested in joining that team. If you complete a team-specific take home, you do not need to also complete a General Research take home.

🧠 General Research

Possible Skills to Demonstrate: Deep Research, Technical Writing

This team is looking for researchers interested in pouring over articles online and capable of writing engaging articles.

  1. Explain a complex topic simply

The topic should be related to technology and be something you learned outside of class.

When explaining the topic, assume we are a 0 in understanding & take us to a 4! So:

  1. Keep things simple.
  2. Build up your explanations from first principles — assume we know nothing, introduce/explain foreign words, & guide us as we learn.
  3. Be personable — crypto can be scary, so IB researchers have to make these topics approachable!

The explanation can be in a format of your choice: blog post, video, tweet thread(s), commentary supplemented with other resources or anything else you think would work!

  • The objective of this exercise is to be engaging & understandable — so pick what you feel most comfortable with. Remember, this is meant to be shared with newbies.

Here is an amazing example by @Jiya Maheshwari

📈 Trading Team

Possible Skills To Demonstrate: Algorithms, Machine Learning

The algorithmic trading team welcomes applicants with an interest in the market and an understanding of algorithms for high frequency trading.

💡
You are tasked with drafting a pseudocode for a basic market-making algorithm. Following this, you will describe how you would adjust this algorithm to handle different market situations. You will also answer some basic questions about machine learning models

Creating a simple market-making algorithm requires understanding of trading, market dynamics, and programming. Market making typically involves continuously quoting both a buy (bid) and a sell (ask) price for an asset, profiting from the bid-ask spread, and also adjusting to market conditions. Here is a rudimentary outline for such an algorithm.

We are providing you with some helper functions to help aid the process

GetRealTimePrice() Retrieves the latest market price

GetOrderBook() Returns the current order book containing the best bid and best ask price

IncreaseSize() and DecreaseSize() Adjust the size of the orders based on the current inventory position

DefaultSize() returns the standard order size if no adjustments are needed

PlaceOrder(price, size, type) Places an order with the specified price, size, and type(buy/sell)

ScheduleNextRun(function, interval) Schedules the next iteration of the main market-making function

You will also be given some constant variables as well

target_spread = CONSTANT_VALUE //e.g. 0.01 for 1 cent spread on a stock

inventory_target = CONSTANT_VALUE //desired inventory size

max_position = CONSTANT_VALUE //maximum allowed position

current_position = 0 initializes current inventory size, starts at 0

Part 1 : Pseudocode

Using the given information, draft pseudocode for a market-making algorithm that posts bid and ask orders based on the target spread and manages inventory based on the inventory_target

Part 2 : Adjustments for Market Situations

Describe how you would adjust the algorithms behavior in the following scenarios:

  1. Increasing Volatility: The asset’s price starts moving more erratically and unpredictably
  2. Low Liquidity: There are fewer market participants, leading to larger gaps in the order book.
  3. News Event: An external news event is anticipated to have a major impact on the asset’s price in the short-term
  4. One-sided Market: Most traders are either buying or selling, but not both, leading to a skew in the order book
  5. Price difference across exchanges: Algorithm detects different prices for same asset across different exchanges
  6. Technical Glitch: The data feed goes down momentarily or the data becomes unreliable
Your responses for this section should be formatted as follows:

Adjustment: In this case the algorithm should …

Reasoning: Because …

Part 3: Machine Learning Model

You are developing an algorithm which involves training a machine learning model based on the history of a cryptocurrency/stock price data. This algorithm also involves having to remember that data of a certain crypto/stock, in order to predict the next price movement of the same crypto/stock.

What are the best machine learning models you would utilize for this task and why?

Final Instructions/Evaluation Criteria

Instructions:

  1. Your pseudocode should be clear, logical, and easy to follow
  2. You don’t need to write an actual functioning code, but it should be comprehensive enough that a developer can convert it into one
  3. For Part 2, provide a brief explanation, maximum one paragraph per scenario detailing the adjustments and reasoning for said adjustments
  4. For part 3, provide a written response of at least 2 paragraphs

Evaluation Criteria:

  1. Understanding of market-making principles
  2. Clarity and logic of pseudocode
  3. Ability to adapt and react to different market scenarios
  4. Understanding of Machine Learning Principles
  5. Overall presentation and organization of ideas

💸 Investment Team

Possible Skills To Demonstrate: Technical Writing, Deep Research, Fundamental Analysis

The investment team is looking for researchers who possess a strong interest in blockchain and Web 3 investment research, and we are seeking candidates who can conduct thorough due diligence on the financial metrics of various tokens and protocols.

As a part of this application process, we ask that you prepare a report that analyzes a token you believe holds promise and growth potential.

We recognize the time limitations, so we ask that you offer concise due diligence insights and ensure the report stays within a 750-1000 word limit (max).

The intention is to provide you with insight into our investment assessment process and offer a preview of our team's methodology. A list of potential metrics is provided below for consideration in your due diligence report. Moreover, we've included a sample report from a past semester for guidance. It's important to note that the example report shared was the result of an entire semester's work. While we don't anticipate such depth, your report should provide a basic understanding. We eagerly anticipate reviewing your submissions!

Here is an example project from last semester :

Mettalex DEX BreakdownMettalex DEX Breakdown

💡
Examples of Potential Metrics to Consider in Your Report:
  1. Introduction
    • Explain why you're evaluating this cryptocurrency.
    • Briefly introduce the cryptocurrency and its importance.
  2. Project Overview
    • Describe what this cryptocurrency project is all about.
    • Explain what it wants to achieve and why it matters.
  3. Technology and Innovation
    • Talk about the technology behind the cryptocurrency.
    • Highlight any cool features or new ideas it brings.
  4. Token Utility
    • Explain what the cryptocurrency's token is used for.
    • Describe how people can use it for transactions or other things.
  5. Market and Competition
    • Discuss where this cryptocurrency stands in the market.
    • Mention who its competitors are and what sets it apart.
  6. Team and Partnerships
    • Introduce the main people behind the project.
    • Tell if they have any important partnerships.
  7. Tokenomics
    • Explain how the cryptocurrency's tokens are given out.
    • Discuss any plans to control how many tokens there are.
  8. Roadmap and Achievements
    • Share what the project has done and plans to do.
    • Talk about any big milestones it has reached.
  9. Community and Adoption
    • Mention how many people are interested in this cryptocurrency.
    • Tell if any businesses or groups are using it.
  10. Risk Assessment
    • Say what problems or challenges the cryptocurrency might face.
    • Suggest how they could handle these issues.
  11. Conclusion
    • Summarize the most important things you found.
    • Give your opinion on whether it's a good idea to invest in this cryptocurrency.

📒 Final Notes & Submission Logistics

Worry about the quality of the content, not the length. Again, this is for us to get a gauge on how you approach explaining complex topics to new people.

We ask to not spend more than 4-6 hours on this assignment.

Upon completion, submit it using this link. Please complete and submit by September 9th at 11:59 pm.

You are always welcome to reach out to [email protected] if you have any questions.

We won’t answer questions if we think you should be able to figure out the answer on your own, but you’re free to ask!

Best of luck!

Illini Blockchain Researchers