This is a page to host personal projects that I have created using R. The page itself is built using the shiny package with a bootstrap layout and is written entirely in R.
This page is hosted on a DigitalOcean server running Shiny Server Open Source with an Rstudio backend. The web applications are built on the Shiny framework. PDF rendering is accomplished using Rmarkdown with custom LaTeX formatting.
This Shiny app was designed to provide the predicted home price and recent comparable sales for homes in Spokane County, WA. Predicted property values are calculated using both a standard regression model and a random forest model. The property location is displayed using a leaflet widget and the sales price is predicted and graphed for a +/- 6 month window. The data table contains comparable recent sales (if any) for the property and can be modified using the additional input widgets to specify distance, price difference, etc. The report style and generate report button will create a PDF flyer for the property of interest with a list of recent relevant sales (dynamically generated) and the corresponding list of additional comparable properties (these are not based on the user input widgets, but are instead determined programatically).
Sales and property information were obtained and compiled from the publicly available records from the Spokane County Assessor's office. Geospatial data were obtained by reverse geocoding property addresses using the US Census Bureau API to obtain the longitude and latitude of each property. The data for recent sales were fitted using both linear regression and random forest models and the values for all properties were predicted using the current date. All data and predicted prices are stored using MySQL and calculated daily using updated models. PDF property reports are generated from Rmarkdown templates using custom LaTeX formatting.
This Shiny app was designed to provide marketing mail for real estate prospects using dynamic content for each property. The input widgets allow for selection of a specific neighborhood (county designation) along with filtering by the previous sales date predicted sales price of the property. The Listings or Buyers widget allows for the user to subset mailing address based on likely home owner (Listings), renter (First-time Buyers), or rental property owner (Property Owners). The report style provides different mailer styles and custom banners for each agent. The specific information for recent home sales is dynamically generated for each property based on a optimization of predicted sales price, geographical location, and property details to enhance engagement and elicit a "Wow, you will never believe what the house right down the street that is exactly like ours just sold for" reaction.
All data were obtained and modeled as described under the section for "Predictive Modeling for Home Prices". User input for neighborhood, sales date, etc. are passed as parameters to the template selected. Templates were constructed using Rmarkdown with custom LaTeX formatting to produce the dimensional output (flyer vs. postcard) for PDF printable mailing media. The "Recent Home sales in your area" content is dynamically generated for each property based on a combination of the predicted sales price of the property and the geographical proximity of the mailer property and recent sales locations.
To perform a time series analysis to identify stocks that are currently displaying a cup and handle price pattern. Daily price rates were obtained for all NASDAQ listed stocks for a 1-year period (2018-11-08 to 2019-11-08) and analyzed for the detection of stocks displaying the cup and handle pattern in the past 30 days (prior to 2019-11-08). The results of the analysis are displayed below and contain price charts for each stock that was detected to contain a cup and handle with the the period of interest. The cup top (blue), cup bottom (yellow), handle top (green), and handle bottom (red) are labeled along with the fitted line (yellow) used to calculate the points
Daily stock prices were obtained for all NASDAQ listed stocks using the BatchGetSymbols package. The daily price data for each stock were processed using a smoothing spline. The cup top, cup bottom, handle top, and handle bottom were identified using peak and valley detection for the fitted values of the time series. Stock prices and results were stored in SQLite database and HTML reports were generated using RMarkdown for results meeting the parameters of interest (i.e. a handle occurring in the previous 30 days).
Ph.D. in Behavioral Neuroscience
B.S. in Psychology, Minor in Biology