Sibyl Market: stock
predictions by investors
One of the project’s objectives is to create an online community where stockholders with similar investment strategies approaches can connect.
The first challenge was choosing a representative name compatible with the app’s personality. After exhaustive research and brainstorming, we got inspired by Greek mythology, Sibyl representing female prophets and oracles.
Once we clarified the product’s vision and defined the core elements, we started sketching & wireframing. The overall objective in this phase was to piece together a clear picture of the app’s flow and how the proposed ideas merge.
- A user account containing i. The number of predictions completed
ii. A ranking score determined by the accuracy of the forecasts
iii. Live coverage over the prediction evolution
We chose React for development and Redux & Redux-Saga for state management. For the backend, we used
Firebase and Firebase Analytics to track the users’ activity. This way we can identify if they encounter roadblocks through
navigation, which screens register high levels of activity, and other relevant data.
For registering, we implemented authentication by email and password with Google, Facebook and Apple. This aspect is a plus for the user experience, offering easy registering and multiple options to choose from.
We integrated push notifications for completed forecasts. In this regard, we developed a logical process of data analysis. A user can set predictions daily when the stock market is open (an aspect that differs for every time zone). With Cloud Friction
the registered data is analyzed and when a forecast is completed, the user receives a notification on his phone.
A forecast is considered done either when the period since it was made has passed or when it’s accomplished (the price has evolved as the user predicted, even though the number of days for which it was set has not passed). Further on, there are three ways a forecast is considered completed: when it’s won (the predicted direction is good and increased/decreased by
at least as much as the user predicted), almost (the direction is good, but did not reach the threshold predicted by the user)
or lost (if the direction is wrong).
Our team succeeded in implementing all core functionalities within the established deadline. In our development process,
we used the Scrum methodology, with 2-week sprints, and a daily stand-up.