1 pontos por GN⁺ 2024-10-28 | 1 comentários | Compartilhar no WhatsApp

Visão geral

  • Explicação de um projeto que implementou trading algorítmico no Grand Exchange de RuneScape.
  • O Grand Exchange é um mercado onde todos os jogadores podem comprar e vender itens, com um limite de compra por item a cada 4 horas.
  • Todas as ofertas de venda têm uma taxa de 1%, usada pelos desenvolvedores do jogo para controlar a inflação.

Componentes

  • O bot é composto por três aplicações: uma API em JavaScript que interage com o stream de preços de itens em tempo real da OSRS Wiki, um cliente Java que controla o comportamento do personagem e uma API em Python que prevê a rentabilidade de ofertas possíveis.
  • O pipeline de dados é composto por dois cronjobs, que consultam a API da OSRS Wiki a cada 5 minutos e 1 hora, respectivamente, para coletar dados.
  • O objetivo da função de perda do modelo é o ouro gerado por segundo.

Método de referência

  • O método de referência calcula ROI e a proporção de volume com base no spread recente de preços e no volume de negociação dos itens.
  • Calcula-se o Z-score do ROI e o Z-score da proporção de volume de cada item, filtrando os itens cuja média histórica de ouro por segundo foi negativa.

Método de machine learning

  • Foi realizado um experimento de uma semana comparando o método de referência com modelos de regressão Random Forest e rede neural.
  • Os resultados foram ordenados com base no lucro médio por hora.
    • O modelo Random Forest registrou o maior lucro.
    • O modelo de rede neural veio em seguida, e o método de referência registrou o menor lucro.

Conclusão

  • O método de machine learning teve desempenho superior ao método de referência.
  • O modelo Random Forest registrou o maior lucro, em linha com a perda de validação do modelo.

Resumo do GN⁺

  • O trading algorítmico no Grand Exchange de RuneScape é um projeto interessante para entender a economia dentro do jogo e maximizar lucros com machine learning.
  • O fato de o modelo Random Forest ter tido desempenho melhor que a rede neural sugere baixa volatilidade nos dados e previsões de alta frequência com ROI baixo.
  • Este projeto pode ser útil para entender sistemas econômicos dentro de jogos e praticar machine learning.
  • Um projeto com funcionalidade semelhante é o trading algorítmico no mercado de ações.

1 comentários

 
GN⁺ 2024-10-28
Comentários no Hacker News
  • Compartilhamento de experiência usando Google Sheets para analisar dados via a API da wiki. O lucro por hora é baixo. Menciona a necessidade de analisar tendências de preço no nível do mercado e das categorias. Compartilha uma planilha pessoal de lucratividade.

    • Opinião de que "escrever bots é mais divertido do que jogar de verdade". Expressa pesar pelo fato de servidores privados serem encerrados por questões legais.
  • Explica a forma de lucrar, na época de ouro do Runescape, colocando ao mesmo tempo ordens de compra e de venda para o mesmo item raro no GE. Chama isso de "market making".

  • Compartilhamento de experiência de usar o app mobile de World of Warcraft para navegar pela casa de leilões e comprar e vender itens. Relata ter feito engenharia reversa da API e escrito um bot para a casa de leilões. Supõe que esse seja um dos motivos pelos quais o app foi descontinuado.

  • Opinião positiva sobre Runescape. Destaca que é um jogo que continua recebendo atualizações há mais de 20 anos. Há reclamações sobre o sentimento de propriedade da comunidade, mas ainda assim novas armas e quests continuam sendo adicionadas.

  • Compartilhamento de experiência de interagir com Runescape principalmente por meio de programação. Usa bots de cor e bots básicos de clique. Automatiza as partes tediosas do jogo com 100 linhas de código Python usando pyautogui.

  • Compartilhamento de experiência no Hypixel. Monitorava os preços de entrada e saída de várias receitas de crafting e, quando o lucro atingia um certo nível, fazia o crafting. O jogo não era tão profundo e acabou ficando entediante, mas foi divertido enquanto durou.

  • Explica como interagir com a API da OSRS Wiki usando dois cronjobs. Questiona por que os dados são buscados a cada 5 minutos e a cada 1 hora.

  • Compartilhamento de experiência de ter ganho cerca de 1.000 GBP com negociações no Runescape antes da introdução do GE. O método era comprar party hats barato e vender caro. Relata que parou de jogar e vendeu tudo no eBay.

  • Pede desculpas pela falta de entendimento sobre modelagem e questiona se a coleta é de dados de preço em intervalos de 5 minutos ou se o objetivo é encontrar padrões ao longo de vários períodos.

  • Pergunta se alguém fez um experimento parecido no mercado de EVE.