Status quo

Were there to be no optimization then Corazon would accept all of its basis exposure (ie. the difference between its own node and the South Hub) in realtime and likewise take the realtime price for all of its merchat output. A backcast of that can be seen here.

All realtime
Year Month PPA_total_strat1 merchant_strat1 total_strat1 drawdown_strat1
2018 Oct 758,721 431,609 1,190,330 0
2018 Nov 642,043 292,472 934,515 0
2018 Dec 572,673 205,321 777,994 45
2018 1,973,437 929,402 2,902,839 45
2019 Jan 563,045 176,256 739,301 1,862
2019 Feb 666,114 238,238 904,352 2,496
2019 Mar 792,029 274,481 1,066,510 1,094
2019 Apr 830,719 290,307 1,121,026 14,420
2019 May 1,174,588 498,822 1,673,410 1,436
2019 Jun 1,095,007 438,564 1,533,571 0
2019 Jul 1,111,302 638,122 1,749,423 0
2019 Aug 901,490 3,596,940 4,498,430 65,376
2019 Sep 880,765 979,335 1,860,100 8,270
2019 Oct 814,593 457,589 1,272,181 1,954
2019 Nov 648,580 214,226 862,806 2,230
2019 Dec 539,639 120,775 660,413 0
2019 10,017,870 7,923,652 17,941,522 65,376
2020 Jan 552,422 115,607 668,029 0
2020 Feb 577,400 132,772 710,172 4,369
2020 Mar 513,047 170,578 683,626 75,476
2020 Apr 810,221 275,968 1,086,189 32,849
2020 May 1,011,760 340,637 1,352,396 0
2020 Jun 1,104,057 250,614 1,354,672 0
2020 Jul 1,051,037 325,065 1,376,103 4,601
2020 Aug 1,126,772 757,780 1,884,551 248
2020 Sep 909,078 308,275 1,217,353 0
2020 Oct 805,284 421,799 1,227,083 85,536
2020 Nov 650,063 226,358 876,422 0
2020 Dec 493,230 114,913 608,143 797
2020 9,604,372 3,440,367 13,044,738 85,536
2021 Jan 586,551 159,826 746,377 484
2021 Feb -1,034,383 11,083,001 10,048,618 713,012
2021 Mar 832,569 170,250 1,002,819 10,788
2021 Apr 879,772 566,428 1,446,200 22,390
2021 May 180,200 69,128 249,328 590
2021 1,444,709 12,048,633 13,493,342 713,012
23,040,387 24,342,054 47,382,441 713,012

Day-ahead

There seems to be no inherent reason why keeping everything realtime is optimal. For the portion of the output associated with the PPA, using PTP trades can convert the basis from realtime to day-ahead. For the merchant output, the output can be scheduled in day-ahead to capture that price. This, of course, begs the question of when to choose one over the other. One method is select day-ahead whenever the South_Houston wind forecast is greater than 1500. That backcast can be seen below

Strategy 2
Year Month PPA_total_strat2 PTP_strat2 PTP_drawdown_strat2 merchant_strat2 merchant_drawdown_strat2 total_strat2 drawdown_strat2
2018 Oct 758,721 22,059 3,272 457,548 0 1,238,328 0
2018 Nov 642,043 18,569 2,125 307,700 0 968,312 0
2018 Dec 572,673 5,489 9,060 221,981 0 800,143 0
2018 1,973,437 46,117 9,060 987,229 0 3,006,783 0
2019 Jan 563,045 26,494 644 190,792 0 780,331 0
2019 Feb 666,114 4,132 2,296 240,444 0 910,690 2,496
2019 Mar 792,029 45,853 9,868 301,421 0 1,139,303 0
2019 Apr 830,719 148,416 12,493 335,095 0 1,314,230 0
2019 May 1,174,588 -13,022 56,583 475,511 0 1,637,077 0
2019 Jun 1,095,007 17,110 594 412,763 0 1,524,879 0
2019 Jul 1,111,302 12,109 8,028 690,787 0 1,814,197 0
2019 Aug 901,490 118,422 17,031 4,176,255 0 5,196,167 0
2019 Sep 880,765 46,242 4,748 1,051,493 0 1,978,500 0
2019 Oct 814,593 112,801 12,567 521,738 3,592 1,449,131 1,790
2019 Nov 648,580 -19,457 23,276 200,977 0 830,100 0
2019 Dec 539,639 -1,277 3,410 124,397 0 662,759 0
2019 10,017,870 497,824 60,503 8,721,671 3,592 19,237,365 2,496
2020 Jan 552,422 37,591 9,182 123,042 0 713,055 0
2020 Feb 577,400 51,954 17,692 120,265 5,226 749,619 605
2020 Mar 513,047 217,311 29,899 231,731 925 962,089 1,118
2020 Apr 810,221 71,373 16,110 264,197 3 1,145,791 27
2020 May 1,011,760 -54,066 80,207 288,466 0 1,246,159 0
2020 Jun 1,104,057 -2,444 15,273 282,368 100 1,383,981 0
2020 Jul 1,051,037 -7,102 22,529 365,027 228 1,408,962 4,829
2020 Aug 1,126,772 13,607 24,827 789,361 0 1,929,739 248
2020 Sep 909,078 -22,566 47,264 315,336 0 1,201,848 214
2020 Oct 805,284 198,345 5,808 419,717 5,472 1,423,347 4,293
2020 Nov 650,063 4,416 15,795 232,510 0 886,989 0
2020 Dec 493,230 42,190 9,355 132,395 0 667,816 0
2020 9,604,372 550,609 107,128 3,564,415 5,472 13,719,396 4,829
2021 Jan 586,551 15,438 16,711 171,333 0 773,323 1,530
2021 Feb -1,034,383 1,689,157 22,367 11,459,846 27 12,114,620 344
2021 Mar 832,569 30,042 40,685 194,566 0 1,057,177 2
2021 Apr 879,772 126,779 15,448 603,273 0 1,609,824 39
2021 May 180,200 23,884 2,578 85,325 0 289,409 0
2021 1,444,709 1,885,301 40,685 12,514,344 27 15,844,353 1,530
23,040,387 2,979,851 107,128 25,787,659 5,472 51,807,897 4,829

As can be seen, the total revenue from this strategy is several million dollars better but, more impressively, the drawdown is less than 1% of the all realtime case. Even ignoring this past February, the realtime case is still 10x worse.

Machine Learning (Random Forest)

Another approach to selecting which hours to go day-ahead in would be to use a predictive model utilizing more input data. Here is a backcast of doing just that.

Strategy 3
Year Month PPA_total_strat3 PTP_strat3 PTP_drawdown_strat3 merchant_strat3 merchant_drawdown_strat3 total_strat3 drawdown_strat3
2018 Oct 758,721 39,377 5,586 367,738 0 1,165,835 0
2018 Nov 642,043 30,311 15,426 277,568 0 949,923 0
2018 Dec 572,673 7,481 6,478 226,541 0 806,695 0
2018 1,973,437 77,169 15,426 871,847 0 2,922,453 0
2019 Jan 563,045 27,477 6,058 190,289 0 780,811 0
2019 Feb 666,114 13,065 16,438 225,892 0 905,071 0
2019 Mar 792,029 60,179 8,133 315,341 0 1,167,550 0
2019 Apr 830,719 103,144 25,314 342,909 1,352 1,276,772 2,186
2019 May 1,174,588 -124,769 179,502 446,396 850 1,496,216 180
2019 Jun 1,095,007 35,172 6,907 461,231 0 1,591,411 0
2019 Jul 1,111,302 12,777 4,295 723,892 0 1,847,971 0
2019 Aug 901,490 127,050 4,491 4,954,351 0 5,982,891 17,593
2019 Sep 880,765 44,671 9,167 2,026,492 0 2,951,928 0
2019 Oct 814,593 140,004 38,482 493,594 26 1,448,190 0
2019 Nov 648,580 901 10,966 207,987 0 857,468 0
2019 Dec 539,639 6,658 1,862 133,961 108 680,258 0
2019 10,017,870 446,330 181,655 10,522,335 1,352 20,986,535 17,593
2020 Jan 552,422 47,559 5,799 127,042 644 727,024 0
2020 Feb 577,400 78,646 16,832 138,087 1,770 794,133 5,720
2020 Mar 513,047 44,700 47,343 210,881 8,662 768,629 58,036
2020 Apr 810,221 100,932 7,404 296,628 81 1,207,780 0
2020 May 1,011,760 29,732 5,935 392,069 0 1,433,561 0
2020 Jun 1,104,057 -15,704 33,279 345,419 0 1,433,773 0
2020 Jul 1,051,037 35,324 10,476 417,792 0 1,504,153 0
2020 Aug 1,126,772 1,000 52,072 950,583 0 2,078,354 1,985
2020 Sep 909,078 -35,140 71,103 322,970 391 1,196,908 214
2020 Oct 805,284 139,641 157,922 419,018 4,798 1,363,943 8,678
2020 Nov 650,063 19,749 8,959 240,227 1,545 910,039 7
2020 Dec 493,230 46,918 10,456 132,664 1,331 672,813 539
2020 9,604,372 493,357 157,922 3,993,381 8,662 14,091,109 58,036
2021 Jan 586,551 -17,096 37,430 146,975 879 716,430 1,170
2021 Feb -1,034,383 677,226 106,801 12,546,736 25 12,189,579 557,368
2021 Mar 832,569 15,696 33,345 185,834 4,023 1,034,099 7,797
2021 Apr 879,772 -3,545 48,584 393,472 2,188 1,269,699 8,719
2021 May 180,200 9,873 7,521 79,660 0 269,733 0
2021 1,444,709 682,154 106,801 13,352,677 4,023 15,479,540 557,368
23,040,387 1,699,010 181,655 28,740,240 8,662 53,479,637 557,368

The machine learning algorithm underperforms the simple heuristic for the PTP case but performs better against the merchant case. Why is the algo worse than the simple rule? Let’s look at a graph of how each of them performs when they’re making the opposite decision. The ‘PTP_strat2off_strat3on’ represents the return of the PTP trades when the algo wants to be on but the trading rule says to be off. Conversely the ‘PTP_strat2on_strat3off’ is the opposite

The most glaring thing in the graph is the February performance where the algo seemingly picks the worst times to get in while the trading rule picks the best. For the sake of rescaling, here is the same graph ending before February.

In this graph we can see that the algo takes a pretty bad dive in May 2019 that the simple trading rule misses. From there on, the performances are somewhat correlated with a correlation coefficient of 0.3302048. The May event seems to have been driven by an outage on ENCINAL-REVEILLE 138KV ENCINA_REVEIL11 based on looking around on YES PS. That line hasn’t been in an outage since 2019 and there are no scheduled outages in the future.

The algo, after then out performs the simple trading rule from then on (until February) as can be seen here.