Saturday 3:15 PM–4:00 PM in Room 2

High Frequency Trading in MMORPG Markets using Luigi, Pandas, and Scikit-learn

J. Henry Hinnefeld

Audience level:
Intermediate

Description

In this talk I’ll describe the system I developed to implement a basic algorithmic trading strategy in the in-game market of an online, multi-player video game. Using this toy model, I’ll walk through the steps involved in setting up a data pipeline with Luigi, analyzing the resulting data with pandas, and identifying important factors and features with scikit-learn.

Abstract

In this talk I’ll describe the system I developed to implement a basic algorithmic trading strategy in the in-game market of EVE Online, an online, multi-player video game. The system is built on top of three main Python packages: I use

  • Luigi to extract, transform, and load data from an API into a local database
  • pandas to manipulate the downloaded data and generate features
  • scikit-learn to analyze the generated features and identify promising items to trade on the in-game market

I’ll walk through the advantages (and pitfalls) of using each of these tools in this simple model, with a particular emphasis on approaching Luigi pipelines as a novice. Finally, I’ll talk about how the same components used in this toy model might be generalized to real-world applications, and domains beyond finance.

I’ll also briefly touch on how to access EVE Online’s rich economic data. EVE Online offers a particularly appealing sandbox for this kind of economic model building for several reasons. First, the in-game economy is entirely player-driven: all items, commodities, and raw materials exchanged on the market are produced by players, and prices are therefore almost entire determined by supply and demand. Second, the game includes an extensive API which exposes data about current and historical market prices. Finally, the in-game market is completely unregulated, which allows for market manipulations that are forbidden in the real world.