Steven Meeks

Projects

Recent work spanning credit risk, customer targeting, time series forecasting, portfolio optimization, and data visualization.

  • NC State Women’s Tennis Dashboard

    Performance analytics for the NC State Women’s Tennis coaching staff.

    Built an interactive Tableau dashboard for the NC State Women’s Tennis team, presented to an assistant coach for use in player development and match preparation. Worked with point-level match data and film access provided by the team, cleaning and aggregating up to match-level statistics for use in two views: a player page showing individual stat breakdowns and trends, and a team page with leaderboards and broader trends. Presented a dashboard demo to the coaching staff tailored to possible use cases.

    NC State Women’s Tennis Dashboard — preview

    Tableau · SQL · Data Visualization

    View case study →

  • Targeted Marketing Model

    Targeting depth recommendation for a new annuity product launch.

    Targeting the top 10% of customers by predicted purchase probability captures buyers at 1.96× the rate of random selection, nearly doubling marketing yield. Built a logistic regression model on 8,495 commercial banking customers, covering missing-value handling, multicollinearity reduction, forward selection, and lift-based evaluation on a held-out set. Final recommendation to the bank was a tiered targeting policy: top 10% for highest marginal return, top 30% if budget allows, no deeper.

    Targeted Marketing Model — preview

    R · ROCit · caret · Logistic Regression

    View on GitHub →

  • Credit Risk Scorecard

    Score cutoff analysis for a consumer credit application pipeline.

    Recommended score cutoff drives an estimated $8.1M in profit at a 1.9% default rate. Built a full credit scoring pipeline in Python for a simulated retail bank: WoE binning for variable selection, reject inference via hard cutoff to correct for accept bias, oversampling correction to restore population proportions, and PDO/odds scaling anchored at 500 points. Three cutoff scenarios were evaluated against profit, default rate, and acceptance trade-offs.

    Credit Risk Scorecard — preview

    Python · scikit-learn · optbinning · WoE / IV

    View on GitHub →

  • Stock Portfolio Optimization

    Risk-minimizing allocations across five tech equities, with an efficient frontier for varying risk appetites.

    Optimized allocations among five tech equities to minimize daily portfolio risk while meeting a 0.18% daily return target, and mapped the efficient frontier to identify additional portfolio options for varying risk appetites. Built in Python using Gurobi on 2025 daily closing prices pulled via yfinance. Analysis of the full efficient frontier surfaced minimum-risk, max-Sharpe ratio, and max-return portfolios.

    Stock Portfolio Optimization — preview

    Python · Gurobi · yfinance · Quadratic Optimization

    View on GitHub →

  • Energy Load Forecasting

    Daily energy demand forecasts for an Appalachian utility territory.

    SARIMA model forecast daily energy load within 6.81% MAPE, 33% better than the exponential smoothing baseline. Built two competing time series models in R on five years of hourly load data from AEP’s Appalachian Power Territory, aggregated to daily totals. Handled dual seasonality (weekly and yearly) with Fourier terms, applied KPSS testing for differencing decisions, validated with Ljung-Box, and selected the final model via AICc grid search. Forecasts captured both weekly fluctuations and winter peak demand.

    Energy Load Forecasting — preview

    R · SARIMA · ESM · fpp3 / fable

    View on GitHub →