We present a stochastic model predictive control (MPC) framework to determine real-time commitments in energy and frequency regulation markets for a stationary battery system while simultaneously mitigating long-term demand charges for an attached load. The framework solves a two-stage stochastic program over a receding horizon that maximizes the expected profit and that factors in uncertainty of the load, energy prices, and regulation prices and dispatch signals. We use a Ledoit-Wolf covariance estimator to generate load and price scenario profiles from limited historical data. We benchmark the performance of stochastic MPC against that of perfect information MPC and deterministic MPC for different prediction horizon lengths and demand charge discounting strategies. We use real load data for a typical university campus and price and regulation data from PJM. We find that stochastic MPC can recover 83% of the ideal value of the battery, which we define as the expected savings obtained by installing the battery and operating it under perfect information MPC. In contrast, deterministic MPC can only recover 73% of this ideal value. We also find that operating the battery under stochastic MPC improves the battery payback period by 12.1% while operating it under perfect information improves it by 27.9%.