Install
$ agentstack add skill-asgard-ai-platform-skills-algo-price-elasticity ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Price Elasticity of Demand
Overview
Price elasticity measures the percentage change in quantity demanded for a 1% change in price. Ed = %ΔQ / %ΔP. |Ed| > 1 = elastic (price-sensitive), |Ed| < 1 = inelastic (price-insensitive). Critical for pricing decisions and revenue optimization.
When to Use
Trigger conditions:
- Estimating how a price change will affect unit sales and revenue
- Determining if demand is elastic or inelastic for a product
- Optimizing price for maximum revenue or profit
When NOT to use:
- When you need consumer willingness-to-pay distribution (use Van Westendorp or conjoint)
- When pricing multiple products together (use bundle pricing)
Algorithm
IRON LAW: Elasticity Is NOT Constant Along a Linear Demand Curve
It varies at every price point. At high prices, demand is elastic
(small price increase → big volume drop). At low prices, demand is
inelastic. Always calculate at the SPECIFIC price point of interest.
Revenue-maximizing price is where Ed = -1 (unit elastic).
Phase 1: Input Validation
Collect: price-quantity pairs over time (or across markets). Control for: seasonality, promotions, competitor actions, other confounders. Gate: Minimum 10 price-quantity observations, confounders identified.
Phase 2: Core Algorithm
Point elasticity: Ed = (dQ/dP) × (P/Q) at a specific price point Arc elasticity: Ed = ((Q₂-Q₁)/((Q₂+Q₁)/2)) / ((P₂-P₁)/((P₂+P₁)/2)) between two points Regression method: log(Q) = α + β×log(P) + controls → β is the elasticity (constant elasticity model)
Phase 3: Verification
Check: sign should be negative (price up → quantity down). Cross-validate with holdout periods. Gate: Elasticity is negative, confidence interval is reasonable.
Phase 4: Output
Return elasticity estimate with revenue impact projection.
Output Format
{
"elasticity": -1.5,
"interpretation": "elastic — 1% price increase → 1.5% quantity decrease",
"revenue_impact": {"price_change_pct": 10, "quantity_change_pct": -15, "revenue_change_pct": -6.5},
"metadata": {"method": "log-log regression", "r_squared": 0.82, "observations": 52}
}
Examples
Sample I/O
Input: Price increased 10% from $100 to $110, quantity dropped from 1000 to 850 Expected: Arc elasticity = ((-150/925) / (10/105)) = -1.70 (elastic)
Edge Cases
| Input | Expected | Why | |-------|----------|-----| | Luxury good | May be positive (Veblen) | Higher price → higher perceived value | | Necessity (insulin) | Near zero | Demand barely responds to price | | Perfect substitute available | Very elastic (< -3) | Customers switch immediately |
Gotchas
- Omitted variable bias: Without controlling for advertising, seasonality, and competitor prices, elasticity estimates are biased.
- Short-run vs long-run: Short-run elasticity is typically lower (customers are locked in). Long-run gives them time to find substitutes.
- Cross-price elasticity: Demand for product A may depend on product B's price. Ignoring this in a portfolio context leads to suboptimal pricing.
- Asymmetric elasticity: Consumers may react differently to price increases vs decreases. Don't assume symmetry.
- Small sample noise: With few observations, elasticity estimates have wide confidence intervals. Report intervals, not just point estimates.
Scripts
| Script | Description | Usage | |--------|-------------|-------| | scripts/arc_elasticity.py | Compute arc elasticity and revenue impact | python scripts/arc_elasticity.py --help |
Run python scripts/arc_elasticity.py --verify to execute built-in sanity tests.
References
- For regression-based elasticity estimation, see
references/regression-estimation.md - For cross-price elasticity analysis, see
references/cross-price.md
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: asgard-ai-platform
- Source: asgard-ai-platform/skills
- License: MIT
- Homepage: https://github.com/asgard-ai-platform
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.