Roff is a webapp that integrate deep neural network machine learning model to forecast security prices based on financial report data. Roff is designed to be user-friendly and intuitive, with a clean and modern user interface.
The application is built on top of the Laravel PHP framework, and utilize Laravel Breeze as authentication module.
Roff retrieves its data from SimFin, and the DNN model requires its data as input to make predictions.
To get this app to work, the necessary environment must be installed first.
Roff requires
- A local host webserver (e.g., XAMPP)
- Local python3 environment (with numpy, pandas, tensorflow)
- Composer
- Node.js
- SimFin Account
- An existing SMTP service
After setting up the environment, follow the steps below:
- Copy your simfin api key, e.g., ROFF/app/Http/Controllers/StockController.php under store() and dashboard(), find them by searching "YOUR_API_KEY"
- Under the project directory, run
composer install npm install php artisan key:generate npm run build - To setup database, with your server on, run
php artisan migrate - Setup up your own STMP service and database connection in the generated .env file
- With python installed, remember to run pip install commands to install python modules:
pip install numpy pip install pandas pip install tensorflow - Github seems to keep making changes to the saved keras DNN model therefore to ensure the python model works, under Roff/public/roff_model/..., delete the roff_model folder. Then there is a zip file also named roff_model in the same folder, extract that folder and make sure its structures as such: Roff/public/roff_model/roff_model/assets
- To start the application, run:
php artisan serveThe webapp depend on your setups should be opened via: http://127.0.0.1:8000
Roff is open-sourced software licensed under the MIT license.
