Skip to content
Erickson, John Stephen edited this page Dec 14, 2022 · 11 revisions

DeFi Survival Analysis Toolkit

LIVE APP: https://inciteprojects.idea.rpi.edu/defitoolkit/app/defitoolkit/

The DeFi Survival Analysis Toolkit is a web-based dashboard which serves to facilitate the understanding of how users are behaving within DeFi protocols and how user-level behaviors within DeFi protocols change through time. Specifically, it enables this exploration of the decentralized finance (DeFi) protocol ecosystem via survival analysis. Currently, the toolkit is centered around the dynamic creation of survival-analysis plots. In its current state, these include Kaplan-Meier survival plots, tables with descriptive statistics to compare cross-deployment/protocol values, and forest plots of hazard ratio values with survival data from Aave V2 and V3 markets.

This resource was specifically introduced as a supplementary resource to the 2022 paper

Toolkit Status

This toolkit is still a work-in-progress, with numerous updates to the analyses and DeFi protocol data available in the app planned for the near future. As such, we would appreciate users to report any issues with the toolkit via GitHub Issues.

Implementation and Deployment

The DeFi Survival Analysis Toolkit is an open source R project freely available with full documentation via this GitHub repository. This application is implemented using the R language and environment for statistical computing and graphics, incorporating best practices and using well-known packages whenever possible. R was chosen as our programming foundation for its powerful environment for statistical computing and graphics, as well as its ease of integration into front-end interactive user interfaces through the R Shiny platform.

The live version of this application is deployed on our Dockerized Data INCITE ShinyProxy server, and fully equipped for multi-user concurrent access.

Live app here: https://inciteprojects.idea.rpi.edu/defitoolkit/app/defitoolkit/

DeFi Toolkit Shiny App Deployment

The DeFi Toolkit app is deployed utilizing the ShinyProxy open source middleware platform. ShinyProxy enables the large-scale deployment of R-based web apps to 1000's of concurrent users by leveraging Docker-based containers. "Dockerization" also allows the DeFi Toolkit to be shared via DockerHub with anyone wishing to run the app themselves, without having to implement an R-based infrastructure including R, RStudio and Shiny.

The DeFi toolkit employs an ad hoc continuous integration/continuous deployment approach:

  • The production GitHub repository is polled daily to check for updates
  • When updates are detected, changes are pulled to the production server and the Docker image is rebuilt
  • The new Docker image is re-deployed automatically via ShinyProxy
  • The new Docker image is also pushed to Data INCITE's public DockerHub repository where it may be pulled by anyone wishing to run the app, on a local machine or within their organization via ShinyProxy.

Acknowledgements

The DeFi Survival Analysis Toolkit was created by undergraduate and graduate students in the Data INCITE Lab at Rensselaer Polytechnic Institute, with generous support from the Rensselaer Institute for Data Exploration and Applications (IDEA), and a grant from the Center for Research toward Advancing Financial Technologies (CRAFT). This project was directed by Kristin P. Bennett, John S. Erickson, and Oshani Seneviratne, with primary implementation by Michael Giannattasio and Aaron Green, and help from Data INCITE Undergraduate Students Christopher C. Cammilleri, Kacy Adams, Leyi Lin, Shuyu Meng, Kris Tu, Matthew Uryga, Ken Wang, Yu-Kai Wang, and Conor Flynn.

How to Cite this App

Please use our GitHub link https://github.rpi.edu/DataINCITE/DeFi_App for now.