Claude-skill-registry eptr2-price-analysis
Query and analyze Turkish electricity market prices including MCP (PTF/Piyasa Takas Fiyatı), SMP (SMF/Sistem Marjinal Fiyatı), WAP (Ağırlıklı Ortalama Fiyat), and imbalance prices. Use when asking about electricity prices, market clearing prices, day-ahead prices, system marginal prices, weighted average prices, or price comparisons in Turkey's energy market. Triggers on: PTF, SMF, GÖP fiyat, GİP fiyat, elektrik fiyatı.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/eptr2-price-analysis" ~/.claude/skills/majiayu000-claude-skill-registry-eptr2-price-analysis && rm -rf "$T"
manifest:
skills/data/eptr2-price-analysis/SKILL.mdsource content
Turkish Electricity Price Analysis with eptr2
Overview
This skill helps you query and analyze electricity market prices from Turkey's EPIAS Transparency Platform using the eptr2 Python library.
Quick Start
from eptr2 import EPTR2 # Initialize with environment variables (recommended) eptr = EPTR2(use_dotenv=True, recycle_tgt=True) # Get Market Clearing Price (MCP/PTF) mcp = eptr.call("mcp", start_date="2024-07-29", end_date="2024-07-29") print(mcp)
Available Price Endpoints
| Call | Alias | Description (EN) | Description (TR) |
|---|---|---|---|
| | Market Clearing Price (Day-Ahead) | Piyasa Takas Fiyatı |
| | System Marginal Price | Sistem Marjinal Fiyatı |
| - | Weighted Average Price (Intraday) | Ağırlıklı Ortalama Fiyat |
| - | Positive/Negative Imbalance Prices | Dengesizlik Fiyatları |
| - | Interim MCP (before finalization) | Kesinleşmemiş PTF |
| - | Combined MCP, SMP and Imbalance | PTF, SMF ve Dengesizlik |
Composite Function for Comprehensive Pricing
For complete price and cost analysis including imbalance costs:
from eptr2.composite import get_hourly_price_and_cost_data df = get_hourly_price_and_cost_data( eptr, start_date="2024-07-29", end_date="2024-07-29", include_wap=True, # Include IDM weighted average price add_kupst_cost=True # Calculate KUPST deviation costs )
Output Columns
| Column | Description |
|---|---|
| Datetime in ISO format (+03:00 timezone) |
| Market Clearing Price (TL/MWh) |
| System Marginal Price (TL/MWh) |
| Weighted Average Price (TL/MWh) |
| Enerji Açığı (deficit), Enerji Fazlası (surplus), Dengede (balanced) |
| -1 (deficit/up-regulation), 1 (surplus/down-regulation), 0 (balanced) |
| Positive imbalance price (TL/MWh) |
| Negative imbalance price (TL/MWh) |
| Positive imbalance cost = MCP - pos_imb_price |
| Negative imbalance cost = neg_imb_price - MCP |
| KUPST unit deviation cost |
Common Use Cases
1. Daily Price Comparison (MCP vs SMP)
mcp_df = eptr.call("mcp", start_date="2024-07-29", end_date="2024-07-29") smp_df = eptr.call("smp", start_date="2024-07-29", end_date="2024-07-29") # Merge for comparison import pandas as pd comparison = mcp_df.merge(smp_df, on="date", suffixes=("_mcp", "_smp"))
2. Intraday vs Day-Ahead Price Analysis
# Day-ahead price mcp_df = eptr.call("mcp", start_date="2024-07-29", end_date="2024-07-29") # Intraday weighted average price wap_df = eptr.call("wap", start_date="2024-07-29", end_date="2024-07-29") # Compare DAM vs IDM comparison = mcp_df.merge(wap_df, on="date") comparison["dam_idm_spread"] = comparison["price"] - comparison["wap"]
3. Imbalance Price Analysis
imb_df = eptr.call("imbalance-price", start_date="2024-07-29", end_date="2024-07-29") # Returns: positiveImbalancePrice, negativeImbalancePrice columns
Date Format
Always use ISO format:
YYYY-MM-DD (e.g., "2024-07-29")
Authentication
Set credentials in
.env file:
EPTR_USERNAME=your_email@example.com EPTR_PASSWORD=your_password
Then initialize with:
eptr = EPTR2(use_dotenv=True, recycle_tgt=True)
For More Details
- See api-reference.md for complete endpoint documentation
- See examples.md for additional code examples