Seasonality & Commodity Pricing

This use case explains how to model seasonality and commodity pricing for agriculture and primary production in Model Reef.

You will:

  • Build seasonal patterns for production and sales.

  • Create price drivers and curves for key commodities.

  • Link seasonal volumes and prices into revenue variables.

  • Use scenarios to test price paths and hedging choices.

Model Reef does not pull live market prices by default. It uses imported or manually maintained price series as drivers for financial forecasts.

When to use this pattern

Use this pattern when:

  • Revenue is driven by commodities or seasonal products.

  • You need to understand the impact of price and seasonal changes on cash.

  • You want to connect agronomic or production plans to financial outcomes.

  • You wish to explore hedging or contracting strategies at a high level.

It is used alongside:

  • Crop Yield Forecasts

  • Livestock Production Modelling

  • Farm Level Working Capital Planning

Architecture overview

Seasonality and commodity pricing modelling uses:

  • Seasonal volume patterns

    • Production or sales concentrated in specific periods.

    • Different patterns for different products or channels.

  • Price drivers and curves

    • Historical or benchmark price series.

    • Forward or scenario based price paths.

    • Basis adjustments for local conditions or quality.

  • Revenue integration

    • Revenue variables per product and location.

    • Blended prices where multiple contracts or grades exist.

  • Scenario and sensitivity views

    • Alternative price and basis paths.

    • Different contracting or hedging shares.

1

Step 1: Build seasonal weight or pattern drivers

In the Data Library, create seasonal pattern drivers for each product, for example:

  • Seasonality Weights - Wheat Sales

  • Seasonality Weights - Cattle Sales

  • Seasonality Weights - Horticulture Product A

Each pattern distributes 100 percent of annual volume across periods (for example months or quarters). For example, you might have:

  • 0 percent from January to August

  • 20 percent in September

  • 30 percent in October

  • 30 percent in November

  • 20 percent in December

Apply these weights to annual or total planned volumes to get per period volumes.

2

Step 2: Create commodity price drivers

Import or define price series for key commodities, such as:

  • Benchmark Price - Wheat - Export Port

  • Benchmark Price - Beef - Grid

  • Benchmark Price - Milk - per Litre

  • Benchmark Price - Cotton - per Bale

You can represent prices as:

  • Historical time series imported from CSV or external sources

  • Forward curves based on current markets

  • Scenario based curves constructed manually

Add basis or quality adjustment drivers where relevant, such as:

  • Local Basis - Wheat - Farm North

  • Quality Discount - Livestock - Lower Grade

These adjustments will produce an effective on-farm or realised price.

3

For each commodity and location, create Revenue variables, for example:

  • Revenue - Wheat Sales - Farm North

  • Revenue - Cattle Sales - Farm North

  • Revenue - Fruit Sales - Region A

Formulas might be:

  • Volume per Period = Annual Volume × Seasonality Weight per Period

  • Effective Price = Benchmark Price plus Basis plus Quality Adjustment

  • Revenue = Volume per Period × Effective Price

If you have multiple contract types, you can:

  • Create separate variables for contracted and spot volumes

  • Apply different price series to each and combine them in reporting views

Set timing so that cash receipts align with delivery and contract terms.

4

Step 4: Represent simple hedging or contracting strategies

To explore hedging at a planning level, define drivers such as:

  • Hedged Proportion of Volume

  • Fixed Contract Price

  • Spot Volume Share = 1 minus Hedged Share

Implement revenue as the sum of:

  • Hedged Revenue = Hedged Volume × Fixed Price

  • Spot Revenue = Spot Volume × Spot Price Series

This keeps logic within Model Reef's arithmetic formula engine and avoids complex derivatives modelling while still capturing the main financial effect.

5

Step 5: Use scenarios for price and basis paths

Clone the model into scenario models to represent different price environments, for example:

  • Base case using current forward curves

  • High price environment with favourable basis

  • Low price environment with adverse basis

  • Volatile environment with significant swings over time

In each scenario, adjust:

  • Benchmark price series

  • Basis and quality adjustment drivers

  • Hedging proportions and fixed contract prices

Compare scenarios using:

  • Revenue and margin per commodity and location

  • Cashflow volatility and working capital requirements

  • Debt servicing capacity and valuation changes

6

Step 6: Integrate seasonality and pricing into whole farm planning

Because seasonal and pricing drivers feed revenue variables:

  • Whole farm P&L and Cashflow outputs will reflect commodity risk

  • You can combine crop, livestock and other enterprises in the same model

  • Dashboards can show revenue composition by commodity and region

This makes it easier to answer questions such as:

  • How sensitive is the business to wheat prices versus livestock prices?

  • How do different hedging strategies affect cash and debt risk?

  • How does changing the enterprise mix alter exposure to specific commodities?

Check your work

  • Seasonal patterns match historical delivery or sales profiles.

  • Benchmarks and basis adjustments correspond to real market data or informed assumptions.

  • Scenario price paths are plausible and grounded in current conditions or stress test requirements.

  • Hedge and contract modelling remains at a level of detail that can be maintained.

Troubleshooting

chevron-rightRevenue seasonality looks wronghashtag

Check that seasonality weights sum to 100 percent for each product and that volume drivers align with production plans.

chevron-rightPrice levels seem inconsistent with market datahashtag

Validate benchmark and basis settings against external sources and internal sales records.

chevron-rightToo many price series to managehashtag

Group similar products and locations where possible and use shared price drivers with local basis adjustments rather than separate full curves.

Last updated