Suppose the parties of a potential PPA contract agreed on the type of the contract as an upper bounded and lower bounded (collared, i.e. capped and floored) market tracking contract.
This means the buyer is protected from extreme price spikes (the contract is capped, hence during the price spike period, the fixed cap amount, which is constant and lower than the spiking market prices, is paid by the buyer to the seller) and the seller is protected from extreme price collapses (the contract is floored, hence during the price collapse period the buyer pays the fixed floor price, which is constant and higher than the market prices, to the seller). Excluding the extreme price spikes and drops, the parties to the contract trade using the market prices.
In this type of agreement the price risk is allocated between the buyer and the seller while maintaining a price range where market prices are followed.
The next stage is deciding on the actual cap and floor values. Note that, if the difference between the cap and floor is 0, the contract is a fixed price contract.
In this case, we will assume multiple forward price curve scenarios are agreed upon by the buyer and the seller. The scenarios may contain non-extreme price curves where prices behave no different than usual and extreme event price curves where prices spike or collapse in a catastrophic fashion.
Using these curves, we will find the cap value and floor value that will protect the buyer and seller 20 percent of the time horizon in question in all scenarios. A cap value too high renders the buyer more vulnerable to price risk, a floor value too low renders the seller more vulnerable to price risk.
Suppose we have 5 such forward price scenarios. We will consider around 40 days, and model will try to cap and floor up to 8 days for buyer and seller each (8 days for caps, 8 days for floors) while keeping the range between the cap and floor as large as possible. We run our model and the model selects cap as $32.865 and floor as $26.759. Note that the cap and floor selected by the model will apply in all scenarios.
The standard deviation reduction achieved by the contract is shown in the following table:
scenario | original price std.dev. | contract price std.dev. | percent change | |
---|---|---|---|---|
0 | 0 | 3.106143 | 2.249417 | % -27.582 |
1 | 1 | 3.079079 | 2.119849 | % -31.153 |
2 | 2 | 2.842635 | 2.274518 | % -19.986 |
3 | 3 | 3.025554 | 2.166693 | % -28.387 |
4 | 4 | 2.572688 | 2.062155 | % -19.844 |
The average price paid according to the contract is shown in the following table:
scenario | original price average | contract price average | percent change | |
---|---|---|---|---|
0 | 0 | 29.752508 | 29.934571 | % 0.612 |
1 | 1 | 29.751462 | 29.863857 | % 0.378 |
2 | 2 | 29.245620 | 29.394761 | % 0.51 |
3 | 3 | 29.998247 | 29.839162 | % -0.53 |
4 | 4 | 30.293214 | 30.179941 | % -0.374 |
The contract modified prices vs actual prices are shown in the following figures.
Scenario 0
Scenario 1
Scenario 2
Scenario 3
Scenario 4
------------------------------------------------------------
scenario: 0 day: 4 price: 32.865 regular : 32.865
on this day the price is equal to the cap, hence we count this day as not capped.
8 days capped, 7 days floored in scenario 0
scenario: 0 day: 6 price: 34.203 capped : 32.865
scenario: 0 day: 8 price: 25.923 floored : 26.759
scenario: 0 day: 9 price: 23.435 floored : 26.759
scenario: 0 day: 10 price: 23.387 floored : 26.759
scenario: 0 day: 16 price: 32.968 capped : 32.865
scenario: 0 day: 20 price: 34.67 capped : 32.865
scenario: 0 day: 27 price: 24.488 floored : 26.759
scenario: 0 day: 28 price: 25.012 floored : 26.759
scenario: 0 day: 29 price: 33.389 capped : 32.865
scenario: 0 day: 31 price: 33.525 capped : 32.865
scenario: 0 day: 33 price: 25.219 floored : 26.759
scenario: 0 day: 35 price: 34.46 capped : 32.865
scenario: 0 day: 36 price: 33.889 capped : 32.865
scenario: 0 day: 38 price: 33.528 capped : 32.865
scenario: 0 day: 39 price: 24.671 floored : 26.759
------------------------------------------------------------
4 days capped, 8 days floored in scenario 1
scenario: 1 day: 1 price: 24.191 floored : 26.759
scenario: 1 day: 13 price: 26.491 floored : 26.759
scenario: 1 day: 18 price: 35.015 capped : 32.865
scenario: 1 day: 20 price: 26.428 floored : 26.759
scenario: 1 day: 22 price: 23.077 floored : 26.759
scenario: 1 day: 23 price: 22.023 floored : 26.759
scenario: 1 day: 24 price: 35.598 capped : 32.865
scenario: 1 day: 32 price: 34.422 capped : 32.865
scenario: 1 day: 33 price: 26.236 floored : 26.759
scenario: 1 day: 34 price: 25.869 floored : 26.759
scenario: 1 day: 35 price: 35.489 capped : 32.865
scenario: 1 day: 38 price: 26.087 floored : 26.759
------------------------------------------------------------
3 days capped, 8 days floored in scenario 2
scenario: 2 day: 6 price: 33.299 capped : 32.865
scenario: 2 day: 7 price: 24.449 floored : 26.759
scenario: 2 day: 10 price: 24.997 floored : 26.759
scenario: 2 day: 13 price: 34.654 capped : 32.865
scenario: 2 day: 14 price: 26.251 floored : 26.759
scenario: 2 day: 23 price: 26.681 floored : 26.759
scenario: 2 day: 26 price: 24.222 floored : 26.759
scenario: 2 day: 27 price: 26.759 regular : 26.759
on this day the price is equal to the floor, hence we count this day as not floored.
scenario: 2 day: 33 price: 25.001 floored : 26.759
scenario: 2 day: 35 price: 25.699 floored : 26.759
scenario: 2 day: 37 price: 35.392 capped : 32.865
scenario: 2 day: 40 price: 25.909 floored : 26.759
------------------------------------------------------------
7 days capped, 4 days floored in scenario 3
scenario: 3 day: 4 price: 26.201 floored : 26.759
scenario: 3 day: 7 price: 34.89 capped : 32.865
scenario: 3 day: 8 price: 37.924 capped : 32.865
scenario: 3 day: 9 price: 25.405 floored : 26.759
scenario: 3 day: 11 price: 34.134 capped : 32.865
scenario: 3 day: 16 price: 23.271 floored : 26.759
scenario: 3 day: 20 price: 35.337 capped : 32.865
scenario: 3 day: 22 price: 25.034 floored : 26.759
scenario: 3 day: 30 price: 33.716 capped : 32.865
scenario: 3 day: 31 price: 33.783 capped : 32.865
scenario: 3 day: 34 price: 33.918 capped : 32.865
------------------------------------------------------------
7 days capped, 4 days floored in scenario 4
scenario: 4 day: 2 price: 36.703 capped : 32.865
scenario: 4 day: 6 price: 25.867 floored : 26.759
scenario: 4 day: 15 price: 34.298 capped : 32.865
scenario: 4 day: 19 price: 33.92 capped : 32.865
scenario: 4 day: 21 price: 33.272 capped : 32.865
scenario: 4 day: 29 price: 26.486 floored : 26.759
scenario: 4 day: 31 price: 26.586 floored : 26.759
scenario: 4 day: 32 price: 32.958 capped : 32.865
scenario: 4 day: 34 price: 33.708 capped : 32.865
scenario: 4 day: 37 price: 24.306 floored : 26.759
scenario: 4 day: 39 price: 33.63 capped : 32.865
Full data for the scenarios:
------------------------------------------------------------
scenario: 0 day: 0 price: 30.0 regular : 30.0
scenario: 0 day: 1 price: 29.12 regular : 29.12
scenario: 0 day: 2 price: 26.776 regular : 26.776
scenario: 0 day: 3 price: 27.627 regular : 27.627
scenario: 0 day: 4 price: 32.865 !>regular : 32.865
scenario: 0 day: 5 price: 31.981 regular : 31.981
scenario: 0 day: 6 price: 34.203 >capped : 32.865
scenario: 0 day: 7 price: 28.341 regular : 28.341
scenario: 0 day: 8 price: 25.923 >floored : 26.759
scenario: 0 day: 9 price: 23.435 >floored : 26.759
scenario: 0 day: 10 price: 23.387 >floored : 26.759
scenario: 0 day: 11 price: 28.426 regular : 28.426
scenario: 0 day: 12 price: 31.996 regular : 31.996
scenario: 0 day: 13 price: 28.51 regular : 28.51
scenario: 0 day: 14 price: 32.381 regular : 32.381
scenario: 0 day: 15 price: 29.449 regular : 29.449
scenario: 0 day: 16 price: 32.968 >capped : 32.865
scenario: 0 day: 17 price: 27.6 regular : 27.6
scenario: 0 day: 18 price: 30.839 regular : 30.839
scenario: 0 day: 19 price: 32.071 regular : 32.071
scenario: 0 day: 20 price: 34.67 >capped : 32.865
scenario: 0 day: 21 price: 29.369 regular : 29.369
scenario: 0 day: 22 price: 30.201 regular : 30.201
scenario: 0 day: 23 price: 30.816 regular : 30.816
scenario: 0 day: 24 price: 30.299 regular : 30.299
scenario: 0 day: 25 price: 30.236 regular : 30.236
scenario: 0 day: 26 price: 30.003 regular : 30.003
scenario: 0 day: 27 price: 24.488 >floored : 26.759
scenario: 0 day: 28 price: 25.012 >floored : 26.759
scenario: 0 day: 29 price: 33.389 >capped : 32.865
scenario: 0 day: 30 price: 31.385 regular : 31.385
scenario: 0 day: 31 price: 33.525 >capped : 32.865
scenario: 0 day: 32 price: 30.191 regular : 30.191
scenario: 0 day: 33 price: 25.219 >floored : 26.759
scenario: 0 day: 34 price: 27.172 regular : 27.172
scenario: 0 day: 35 price: 34.46 >capped : 32.865
scenario: 0 day: 36 price: 33.889 >capped : 32.865
scenario: 0 day: 37 price: 29.73 regular : 29.73
scenario: 0 day: 38 price: 33.528 >capped : 32.865
scenario: 0 day: 39 price: 24.671 >floored : 26.759
scenario: 0 day: 40 price: 29.7 regular : 29.7
------------------------------------------------------------
scenario: 1 day: 0 price: 30.0 regular : 30.0
scenario: 1 day: 1 price: 24.191 >floored : 26.759
scenario: 1 day: 2 price: 30.768 regular : 30.768
scenario: 1 day: 3 price: 29.429 regular : 29.429
scenario: 1 day: 4 price: 32.132 regular : 32.132
scenario: 1 day: 5 price: 31.403 regular : 31.403
scenario: 1 day: 6 price: 32.228 regular : 32.228
scenario: 1 day: 7 price: 30.257 regular : 30.257
scenario: 1 day: 8 price: 28.284 regular : 28.284
scenario: 1 day: 9 price: 30.999 regular : 30.999
scenario: 1 day: 10 price: 30.04 regular : 30.04
scenario: 1 day: 11 price: 32.285 regular : 32.285
scenario: 1 day: 12 price: 30.59 regular : 30.59
scenario: 1 day: 13 price: 26.491 >floored : 26.759
scenario: 1 day: 14 price: 32.377 regular : 32.377
scenario: 1 day: 15 price: 31.602 regular : 31.602
scenario: 1 day: 16 price: 32.415 regular : 32.415
scenario: 1 day: 17 price: 28.575 regular : 28.575
scenario: 1 day: 18 price: 35.015 >capped : 32.865
scenario: 1 day: 19 price: 29.686 regular : 29.686
scenario: 1 day: 20 price: 26.428 >floored : 26.759
scenario: 1 day: 21 price: 28.589 regular : 28.589
scenario: 1 day: 22 price: 23.077 >floored : 26.759
scenario: 1 day: 23 price: 22.023 >floored : 26.759
scenario: 1 day: 24 price: 35.598 >capped : 32.865
scenario: 1 day: 25 price: 29.567 regular : 29.567
scenario: 1 day: 26 price: 32.772 regular : 32.772
scenario: 1 day: 27 price: 27.395 regular : 27.395
scenario: 1 day: 28 price: 26.917 regular : 26.917
scenario: 1 day: 29 price: 30.189 regular : 30.189
scenario: 1 day: 30 price: 29.101 regular : 29.101
scenario: 1 day: 31 price: 30.708 regular : 30.708
scenario: 1 day: 32 price: 34.422 >capped : 32.865
scenario: 1 day: 33 price: 26.236 >floored : 26.759
scenario: 1 day: 34 price: 25.869 >floored : 26.759
scenario: 1 day: 35 price: 35.489 >capped : 32.865
scenario: 1 day: 36 price: 29.332 regular : 29.332
scenario: 1 day: 37 price: 29.699 regular : 29.699
scenario: 1 day: 38 price: 26.087 >floored : 26.759
scenario: 1 day: 39 price: 31.393 regular : 31.393
scenario: 1 day: 40 price: 30.154 regular : 30.154
------------------------------------------------------------
scenario: 2 day: 0 price: 30.0 regular : 30.0
scenario: 2 day: 1 price: 26.83 regular : 26.83
scenario: 2 day: 2 price: 32.609 regular : 32.609
scenario: 2 day: 3 price: 28.461 regular : 28.461
scenario: 2 day: 4 price: 29.126 regular : 29.126
scenario: 2 day: 5 price: 28.007 regular : 28.007
scenario: 2 day: 6 price: 33.299 >capped : 32.865
scenario: 2 day: 7 price: 24.449 >floored : 26.759
scenario: 2 day: 8 price: 28.255 regular : 28.255
scenario: 2 day: 9 price: 31.942 regular : 31.942
scenario: 2 day: 10 price: 24.997 >floored : 26.759
scenario: 2 day: 11 price: 30.427 regular : 30.427
scenario: 2 day: 12 price: 31.469 regular : 31.469
scenario: 2 day: 13 price: 34.654 >capped : 32.865
scenario: 2 day: 14 price: 26.251 >floored : 26.759
scenario: 2 day: 15 price: 29.456 regular : 29.456
scenario: 2 day: 16 price: 28.735 regular : 28.735
scenario: 2 day: 17 price: 27.334 regular : 27.334
scenario: 2 day: 18 price: 31.792 regular : 31.792
scenario: 2 day: 19 price: 30.208 regular : 30.208
scenario: 2 day: 20 price: 28.189 regular : 28.189
scenario: 2 day: 21 price: 32.669 regular : 32.669
scenario: 2 day: 22 price: 32.814 regular : 32.814
scenario: 2 day: 23 price: 26.681 >floored : 26.759
scenario: 2 day: 24 price: 32.586 regular : 32.586
scenario: 2 day: 25 price: 30.202 regular : 30.202
scenario: 2 day: 26 price: 24.222 >floored : 26.759
scenario: 2 day: 27 price: 26.759 !>regular : 26.759
scenario: 2 day: 28 price: 32.668 regular : 32.668
scenario: 2 day: 29 price: 28.593 regular : 28.593
scenario: 2 day: 30 price: 28.129 regular : 28.129
scenario: 2 day: 31 price: 28.585 regular : 28.585
scenario: 2 day: 32 price: 32.164 regular : 32.164
scenario: 2 day: 33 price: 25.001 >floored : 26.759
scenario: 2 day: 34 price: 30.865 regular : 30.865
scenario: 2 day: 35 price: 25.699 >floored : 26.759
scenario: 2 day: 36 price: 26.779 regular : 26.779
scenario: 2 day: 37 price: 35.392 >capped : 32.865
scenario: 2 day: 38 price: 27.373 regular : 27.373
scenario: 2 day: 39 price: 29.489 regular : 29.489
scenario: 2 day: 40 price: 25.909 >floored : 26.759
------------------------------------------------------------
scenario: 3 day: 0 price: 30.0 regular : 30.0
scenario: 3 day: 1 price: 28.204 regular : 28.204
scenario: 3 day: 2 price: 32.227 regular : 32.227
scenario: 3 day: 3 price: 29.806 regular : 29.806
scenario: 3 day: 4 price: 26.201 >floored : 26.759
scenario: 3 day: 5 price: 27.954 regular : 27.954
scenario: 3 day: 6 price: 27.428 regular : 27.428
scenario: 3 day: 7 price: 34.89 >capped : 32.865
scenario: 3 day: 8 price: 37.924 >capped : 32.865
scenario: 3 day: 9 price: 25.405 >floored : 26.759
scenario: 3 day: 10 price: 30.461 regular : 30.461
scenario: 3 day: 11 price: 34.134 >capped : 32.865
scenario: 3 day: 12 price: 27.272 regular : 27.272
scenario: 3 day: 13 price: 32.574 regular : 32.574
scenario: 3 day: 14 price: 30.652 regular : 30.652
scenario: 3 day: 15 price: 31.452 regular : 31.452
scenario: 3 day: 16 price: 23.271 >floored : 26.759
scenario: 3 day: 17 price: 31.44 regular : 31.44
scenario: 3 day: 18 price: 28.335 regular : 28.335
scenario: 3 day: 19 price: 32.116 regular : 32.116
scenario: 3 day: 20 price: 35.337 >capped : 32.865
scenario: 3 day: 21 price: 31.349 regular : 31.349
scenario: 3 day: 22 price: 25.034 >floored : 26.759
scenario: 3 day: 23 price: 28.638 regular : 28.638
scenario: 3 day: 24 price: 28.295 regular : 28.295
scenario: 3 day: 25 price: 29.205 regular : 29.205
scenario: 3 day: 26 price: 26.955 regular : 26.955
scenario: 3 day: 27 price: 30.416 regular : 30.416
scenario: 3 day: 28 price: 28.941 regular : 28.941
scenario: 3 day: 29 price: 27.608 regular : 27.608
scenario: 3 day: 30 price: 33.716 >capped : 32.865
scenario: 3 day: 31 price: 33.783 >capped : 32.865
scenario: 3 day: 32 price: 29.762 regular : 29.762
scenario: 3 day: 33 price: 29.011 regular : 29.011
scenario: 3 day: 34 price: 33.918 >capped : 32.865
scenario: 3 day: 35 price: 27.492 regular : 27.492
scenario: 3 day: 36 price: 27.919 regular : 27.919
scenario: 3 day: 37 price: 29.576 regular : 29.576
scenario: 3 day: 38 price: 27.543 regular : 27.543
scenario: 3 day: 39 price: 32.456 regular : 32.456
scenario: 3 day: 40 price: 31.23 regular : 31.23
------------------------------------------------------------
scenario: 4 day: 0 price: 30.0 regular : 30.0
scenario: 4 day: 1 price: 30.098 regular : 30.098
scenario: 4 day: 2 price: 36.703 >capped : 32.865
scenario: 4 day: 3 price: 27.463 regular : 27.463
scenario: 4 day: 4 price: 28.97 regular : 28.97
scenario: 4 day: 5 price: 30.748 regular : 30.748
scenario: 4 day: 6 price: 25.867 >floored : 26.759
scenario: 4 day: 7 price: 29.194 regular : 29.194
scenario: 4 day: 8 price: 31.17 regular : 31.17
scenario: 4 day: 9 price: 28.559 regular : 28.559
scenario: 4 day: 10 price: 29.788 regular : 29.788
scenario: 4 day: 11 price: 28.562 regular : 28.562
scenario: 4 day: 12 price: 31.677 regular : 31.677
scenario: 4 day: 13 price: 32.562 regular : 32.562
scenario: 4 day: 14 price: 32.251 regular : 32.251
scenario: 4 day: 15 price: 34.298 >capped : 32.865
scenario: 4 day: 16 price: 30.565 regular : 30.565
scenario: 4 day: 17 price: 30.472 regular : 30.472
scenario: 4 day: 18 price: 28.202 regular : 28.202
scenario: 4 day: 19 price: 33.92 >capped : 32.865
scenario: 4 day: 20 price: 28.861 regular : 28.861
scenario: 4 day: 21 price: 33.272 >capped : 32.865
scenario: 4 day: 22 price: 28.134 regular : 28.134
scenario: 4 day: 23 price: 32.66 regular : 32.66
scenario: 4 day: 24 price: 31.829 regular : 31.829
scenario: 4 day: 25 price: 28.107 regular : 28.107
scenario: 4 day: 26 price: 30.656 regular : 30.656
scenario: 4 day: 27 price: 29.655 regular : 29.655
scenario: 4 day: 28 price: 29.466 regular : 29.466
scenario: 4 day: 29 price: 26.486 >floored : 26.759
scenario: 4 day: 30 price: 31.778 regular : 31.778
scenario: 4 day: 31 price: 26.586 >floored : 26.759
scenario: 4 day: 32 price: 32.958 >capped : 32.865
scenario: 4 day: 33 price: 26.793 regular : 26.793
scenario: 4 day: 34 price: 33.708 >capped : 32.865
scenario: 4 day: 35 price: 28.256 regular : 28.256
scenario: 4 day: 36 price: 30.754 regular : 30.754
scenario: 4 day: 37 price: 24.306 >floored : 26.759
scenario: 4 day: 38 price: 32.62 regular : 32.62
scenario: 4 day: 39 price: 33.63 >capped : 32.865
scenario: 4 day: 40 price: 30.437 regular : 30.437