Na noite passada, descobri que o meu programa de negociação automática na Polymarket comprou secretamente 37 ordens, gastando $110.
Os logs do programa mostram "Posição: 0". Mas ao abrir a Polymarket, todas as seis mercados de previsão do tempo estavam com as minhas posições. O que se passa? Após fazer uma ordem, a API informa ao programa que "não foi possível comprar", então o programa não registra. Mas na realidade, o dinheiro já foi gasto. Depois, o programa trava por causa de outro bug e o gestor de processos reinicia-o automaticamente. Após a reinicialização, o programa verifica — "Ei, sem posições, vou comprar de novo". Falha → Reinício → Compra de novo → Nova falha. Ciclo repetido 34 vezes. O mais irónico é que, em outra estratégia, já tinha implementado a lógica correta de confirmação de execução. Quando escrevi isso, não revi o meu próprio código. Três lições: • Não confiar em respostas instantâneas de qualquer API como resultado final, é preciso confirmação dupla • O mecanismo de reinício automático não possui proteção contra duplicação = transforma um pequeno bug numa explosão em cadeia • Uma solução correta já existente no seu próprio repositório de código é muito mais barata do que repetir os erros Felizmente, consultei a previsão do tempo e a maior parte das posições deve conseguir recuperar os ganhos. Mas isso é sorte, não habilidade.
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
Na noite passada, descobri que o meu programa de negociação automática na Polymarket comprou secretamente 37 ordens, gastando $110.
Os logs do programa mostram "Posição: 0". Mas ao abrir a Polymarket, todas as seis mercados de previsão do tempo estavam com as minhas posições.
O que se passa?
Após fazer uma ordem, a API informa ao programa que "não foi possível comprar", então o programa não registra. Mas na realidade, o dinheiro já foi gasto.
Depois, o programa trava por causa de outro bug e o gestor de processos reinicia-o automaticamente. Após a reinicialização, o programa verifica — "Ei, sem posições, vou comprar de novo".
Falha → Reinício → Compra de novo → Nova falha. Ciclo repetido 34 vezes.
O mais irónico é que, em outra estratégia, já tinha implementado a lógica correta de confirmação de execução. Quando escrevi isso, não revi o meu próprio código.
Três lições:
• Não confiar em respostas instantâneas de qualquer API como resultado final, é preciso confirmação dupla
• O mecanismo de reinício automático não possui proteção contra duplicação = transforma um pequeno bug numa explosão em cadeia
• Uma solução correta já existente no seu próprio repositório de código é muito mais barata do que repetir os erros
Felizmente, consultei a previsão do tempo e a maior parte das posições deve conseguir recuperar os ganhos. Mas isso é sorte, não habilidade.