henriquepgomide / caRtola

Extração de dados da API do CartolaFC, análise exploratória dos dados e modelos preditivos em R e Python - 2014-22. [EN] Data munging, analysis and modeling of CartolaFC - the most popular fantasy football game in Brazil. Data cover years 2014-23.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Algoritmo Valorização - Vamos fazer engenharia reversa do algoritmo de valorização dos jogadores em 2018?

henriquepgomide opened this issue · comments

Existem alguns sites (e.g., Guru e Olheiro FC) que afirmam que estimam a valorização dos jogadores do cartola. Vamos fazer engenharia reversa e disponibilizar o algoritmo do sistema de valorização do Cartola FC?

Caso descubramos, proponho-me a disponibilizar o algoritmo de forma gratuita e aberta no site - https://www.cartolapfc.com.br para a comunidade de cartoleiros.

@henriquepgomide, só para ficar mais claro, a valorização significa o que exatamente para você:

  • estimar o preço do jogador na próxima rodada ;
  • estimar a variação de preço do jogador na próxima rodada; ou
  • apenas se a variação de preço vai ser positiva/negativa?

Perfeito, Henrique. Valeu!

Boa tarde pessoal.
Finalmente achei alguem disposto a trocar ideias sobre o algortimo do Cartola.
Ando estudando o algoritmo da primeira rodada e algumas dúvidas surgiram.
Vcs sabem se há inflação dos preços dos jogadores? Ou seja, o somatório das valorizações ao longo do ano é sempre zero (ou próxima)?
Fiz um plot de Pontos da 1 Rodada / preço inicial versus Valorização / preço inicial e obtive uma reta.
Interessante é que o coeficiente angular é 0,69, que é o menor preço de jogador aceito pelo Cartola e o coef. linear é -0,31 que é o complemento de 0,69 até 1.
Isso tudo é coincidência?

outra coisa, tem disponível aqui no github um cara que automatizou mais ainda, seguindo essa idéia que eu apresentei pra vcs, e fez uma fórmula que bate muito bem, segue o repo dele

https://github.com/joaoabcoelho/ModeloCartoletas

opa, então, eu ja conhecia esse repo, usei algumas vezes quando nao tinha os dados de alguma rodada lá em 2017 (fiz o site no meio de 2017), engraçado que um amigo tava pedindo o repo que postei no post acima, fui procurar no google e acabei achando essa discussão, que bom que ajudei então..

sobre o tutorial, to meio sem tempo, mas o q eu recomendo (foi o q eu fiz) é modelar orientado a objetos todos os dados que vcs já tem de 2018, em 2 classes: Atleta e Scout.. sendo que cada Atleta tem sua lista de Scouts, para que vc consiga filtrar os atletas que dão "match" na situação de quem você quer prever a valorização.. usei o caso do Gabigol porque foi o mais interessante nessa rodada: ele jogou a rodada 1 e 2, ficou de fora da 3 e 4.. eu tenho uma classe "Atleta2018" que eu pergunto pra cada instância dela: esse atleta jogou a 1 e 2, ficou de fora da 3 e 4, mas depois jogou a 5? Se essa classe responde TRUE, eu pego os scouts dele até a rodada 5 (pq eu quero a valorização na rodada 5), e adiciono na minha regressão linear, se não eu ignoro e vou pro próximo..

Boa sorte aí na empreitada, desculpa se não posso ajudar mais do que isso, mas ta bastante corrido aqui infelizmente.

Grande abraço!

boa tarde

como anda o projeto de vocês?

muito me interessa, e posso ajudar.

queria um algorítimo sobre os possíveis melhores jogadores da próxima rodada.

grande abraço

Oi, @luisfgpadilha

o modelo pro algoritmo de valorização está bem razoável atualmente. O que nós precisamos de ajuda atualmente é com o modelo de predição dos scores dos jogadores numa próxima rodada. Recentemente, venho mudando a abordagem de redes neurais normais pra redes recorrentes (LSTM), que você pode conferir aqui. Eu venho treinando modelos usando LSTM, mas até agora o resultado não foi bom o suficiente. Se você pudesse ajudar nisso, seria de grande valia. O que acha? Topa?

Sobre essa questão da valorização, queria chamar a atenção pra esse estudo que fiz: https://medium.com/cartolaanalitico/a-f%C3%B3rmula-de-valoriza%C3%A7%C3%A3o-8064b82b0f0

Me parece que é a formulação correta pro algoritmo real do Cartola. A partir daí seria só uma questão de descobrir as variáveis necessárias pra calcular a valorização.

[Atualização]: Acredito que consegui chegar na fórmula exata usando esse esquema. Atualizei no artigo acima. Mistério solucionado.

excelente trabalho, @joaoabcoelho! Parabéns 👏 👏

Fantástico trabalho, @joaoabcoelho! Posso indicar seu post no Medium no README do repositório?

Fantástico trabalho, @joaoabcoelho! Posso indicar seu post no Medium no README do repositório?

Claro, sem problema algum.