BESS revenue backtest setup
Historical LMP slice, volatility summary, and storage revenue prompts.
Claude + ChatGPT prompt
Gridleaf dataset: Historical LMP Analytics Tool: gridkit_historical_lmp Sources: CAISO OASIS, PJM Data Miner, ERCOT MIS, Gridleaf historical store Source readiness: Historical hourly store / Backtest setup Query contract: - Title: Historical LMP study query contract - Primary entity: ISO market node - Time grain: Hourly source, daily/monthly aggregates - Visualization mode: Time series + statistics - Inputs: market (enum, required) e.g. CAISO; node (string, required) e.g. SP15; date_range (time-range, required) e.g. 2021-2025; aggregation (enum, optional) e.g. daily - Example queries: Show five years of daily CAISO SP15 LMP history.; Compare SP15 and NP15 volatility for a storage revenue screen. Analysis plan contract: - Version: gridleaf-analysis-plan.v2 - Dataset: Historical LMP Analytics (historical-lmp) - Tool: gridkit_historical_lmp - Workflow: BESS revenue backtest setup - Output: Time series + statistics - Result preview: Historical LMP study result (Average LMP) - Query contract: Historical LMP study query contract (Hourly source, daily/monthly aggregates) - Metrics: Average LMP, Volatility, Negative-price frequency, BESS spread - Sources: CAISO OASIS, PJM Data Miner, ERCOT MIS, Gridleaf historical store - Source readiness: Historical hourly store (Backtest setup) - Source caveats: Historical LMP is not a live dispatch or trading signal.; Node mappings, holidays, and daylight-saving transitions should be checked before financial modeling. - Source next actions: Confirm node identity and market before running a revenue model.; Pair historical prices with asset constraints before BESS valuation. - Steps: Pick node and horizon -> Summarize volatility and spreads -> Generate BESS follow-up prompts Result preview contract: - Title: Historical LMP study result - Chart: Annual average - Primary metric: Average LMP - Fields: market_node, period, average_lmp, volatility, negative_price_frequency - Example rows: CAISO SP15: $42.10/MWh (6.4% negative); ERCOT Houston: $38.70/MWh (3.2% negative); PJM Western Hub: $44.80/MWh (1.1% negative) Dataset insight packet: - Version: gridleaf-dataset-insight.v1 - Contract key: dataset_insight - Dataset: Historical LMP Analytics (historical-lmp) - Tool: gridkit_historical_lmp - Workflow: BESS revenue backtest setup - Visualization: Time series + statistics - Fields: market_node, period, average_lmp, volatility, negative_price_frequency - Rows: CAISO SP15: $42.10/MWh (6.4% negative); ERCOT Houston: $38.70/MWh (3.2% negative); PJM Western Hub: $44.80/MWh (1.1% negative) - Source readiness: Historical hourly store (Backtest setup) - Next queries: Show five years of daily CAISO SP15 LMP history.; Compare SP15 and NP15 volatility for a storage revenue screen.; Show five years of daily SP15 LMP history.; Where is basis risk highest for a storage project? Show five years of daily CAISO SP15 LMP prices and congestion risk. Summarize the revenue, basis, and BESS follow-up questions I should take into Claude. Return a concise analytical memo, call out source freshness and caveats, and suggest the next Gridleaf portal query. Analysis playbook: BESS revenue backtest setup Outcome: Historical LMP slice, volatility summary, and storage revenue prompts. Workflow steps: 1. Pick node and horizon 2. Summarize volatility and spreads 3. Generate BESS follow-up prompts Playbook prompt: Set up a BESS revenue backtest using historical LMP data. Start with CAISO SP15 daily history, summarize volatility, negative-price frequency, and spread opportunity, then create the Claude follow-up prompt for storage revenue modeling.