Prediction markets are a very common thing nowadays even in the world of crypto-currencies but even in this world of decentralized applications there is some sort of authority that users have to rely on in terms of validations. What Chainlink and honeycomb solve is that exact problem. There is no longer a need to trust one singular source of data with the truth, just by using Chainlink's decentralized network of oracles and Honeycomb's extensive service line of API's. I've created a prototype to showcase the possibilities of what this technology is capable of and it's main focus is on solving humanities longest prediction problem which has affected our day to day plans throughout the ages, The Weather!
What it does
This is a prediction market where users can post a question about the future weather conditions of a city such as temperature, sunlight, snowfall etc. Once this question is posted other users can bet on the outcome of the prediction with regards to whether or not it will come true. For Example : "Will the average Degrees Celsius temperature in Malta on 12/12/19 be 14 Degrees Celsius or not?", once this question is posed users can now vote Yes/No on it by betting Ethereum thereby putting money where their mouths are. When the date passes 12/12/2019 the voting is stopped and then the answer can be calculated. The answer is calculated by retrieving data from the World Weather Online API through the use of Chainlinks decentralized oracle network and averaging all the retrieved results out. For example : 3 API's are pinged and the results are [13,14,15] -> the average of these will be 14 therefore the question is true. All the users who voted correctly can now withdraw their Ethereum plus winnings and the losers are left with nothing. This makes it an incentive for people to accurately predict the weather and improve the technology that does so, by creating a market to value such information.
How I built it
I built a Weather Wizard factory which spawns Weather Markets. The Weather Wizard Factory is where the Weather Markets are kept track of while the Weather Markets themselves is where the betting occurs together with node confirmations.
Challenges I ran into
The greatest challenge is catering for all the possible types of questions that can be asked therefore making the smart contracts as generic as possible.
Accomplishments that I'm proud of
I've successfully created/voted/confirmed information on this application. I'm also proud to be contributing to the open source community.
What I learned
I've learned extensively how to use Honeycomb's APIs, their ease of use was very help full in terms of saving costs and time prototyping my applications. I would definitely be using their service to continue working on this project and future projects.
What's next for Weather Wizard
Next steps would be to add more possible predictions and a beautiful UI to cater for the user experience. After that it would be great to expand to more than just Weather predictions to other possible prediction markets such as sporting events.