@sdelsad/commodity-desk-daily 1.0.41 → 1.0.43
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ep07.html +744 -0
- package/ep11.html +754 -0
- package/feed.xml +8 -11
- package/package.json +2 -2
package/ep07.html
ADDED
|
@@ -0,0 +1,744 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en" data-theme="light">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
6
|
+
<title>Ep 7 — WASDE and Building a Balance Sheet · Soft Commodity Trading</title>
|
|
7
|
+
<meta name="description" content="How a grain balance sheet is built line by line, and why ending stocks moves about ten times faster than the crop itself.">
|
|
8
|
+
<meta name="author" content="Sébastien Delsad">
|
|
9
|
+
<link rel="canonical" href="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07.html">
|
|
10
|
+
<meta property="og:type" content="article">
|
|
11
|
+
<meta property="og:site_name" content="Soft Commodity Trading">
|
|
12
|
+
<meta property="og:title" content="Ep 7 — WASDE and Building a Balance Sheet">
|
|
13
|
+
<meta property="og:description" content="How a grain balance sheet is built line by line, and why ending stocks moves about ten times faster than the crop itself.">
|
|
14
|
+
<meta property="og:url" content="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07.html">
|
|
15
|
+
<meta property="og:image" content="https://cdn.jsdelivr.net/npm/@sdelsad/commodity-desk-daily@1.0.15/cover.jpg">
|
|
16
|
+
<meta property="og:image:alt" content="Soft Commodity Trading cover art">
|
|
17
|
+
<meta property="og:audio" content="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07v2.mp3">
|
|
18
|
+
<meta property="og:audio:type" content="audio/mpeg">
|
|
19
|
+
<meta property="article:published_time" content="2026-08-18">
|
|
20
|
+
<meta name="twitter:card" content="summary_large_image">
|
|
21
|
+
<meta name="twitter:title" content="Ep 7 — WASDE and Building a Balance Sheet">
|
|
22
|
+
<meta name="twitter:description" content="How a grain balance sheet is built line by line, and why ending stocks moves about ten times faster than the crop itself.">
|
|
23
|
+
<meta name="twitter:image" content="https://cdn.jsdelivr.net/npm/@sdelsad/commodity-desk-daily@1.0.15/cover.jpg">
|
|
24
|
+
<meta name="theme-color" content="#faf7f1" media="(prefers-color-scheme: light)">
|
|
25
|
+
<meta name="theme-color" content="#14110e" media="(prefers-color-scheme: dark)">
|
|
26
|
+
<link rel="alternate" type="application/rss+xml" title="Soft Commodity Trading" href="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/feed.xml">
|
|
27
|
+
<link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Crect width='64' height='64' rx='12' fill='%231d4032'/%3E%3Ctext x='32' y='44' font-family='Georgia,serif' font-size='34' fill='%23c9a45c' text-anchor='middle'%3ES%3C/text%3E%3C/svg%3E">
|
|
28
|
+
<script type="application/ld+json">
|
|
29
|
+
{
|
|
30
|
+
"@context": "https://schema.org",
|
|
31
|
+
"@type": "PodcastEpisode",
|
|
32
|
+
"url": "https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07.html",
|
|
33
|
+
"name": "Ep 7 — WASDE and Building a Balance Sheet",
|
|
34
|
+
"episodeNumber": 7,
|
|
35
|
+
"duration": "PT12M55S",
|
|
36
|
+
"description": "How a grain balance sheet is built line by line, and why ending stocks moves about ten times faster than the crop itself.",
|
|
37
|
+
"image": "https://cdn.jsdelivr.net/npm/@sdelsad/commodity-desk-daily@1.0.15/cover.jpg",
|
|
38
|
+
"inLanguage": "en",
|
|
39
|
+
"author": {
|
|
40
|
+
"@type": "Person",
|
|
41
|
+
"name": "Sébastien Delsad"
|
|
42
|
+
},
|
|
43
|
+
"associatedMedia": {
|
|
44
|
+
"@type": "MediaObject",
|
|
45
|
+
"contentUrl": "https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07v2.mp3",
|
|
46
|
+
"encodingFormat": "audio/mpeg"
|
|
47
|
+
},
|
|
48
|
+
"partOfSeries": {
|
|
49
|
+
"@type": "PodcastSeries",
|
|
50
|
+
"name": "Soft Commodity Trading",
|
|
51
|
+
"url": "https://storage.googleapis.com/podcast-audio-2647223968/index.html",
|
|
52
|
+
"image": "https://cdn.jsdelivr.net/npm/@sdelsad/commodity-desk-daily@1.0.15/cover.jpg",
|
|
53
|
+
"webFeed": "https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/feed.xml"
|
|
54
|
+
},
|
|
55
|
+
"datePublished": "2026-08-18"
|
|
56
|
+
}
|
|
57
|
+
</script>
|
|
58
|
+
<style>
|
|
59
|
+
:root{
|
|
60
|
+
--ink:#16110c; --ink-soft:#4a4238; --line:#e3ddd2; --paper:#faf7f1;
|
|
61
|
+
--accent:#1d4032; --gold:#a8813c; --spoiler:#8a2f2f;
|
|
62
|
+
--tint:rgba(128,110,70,.07); --tint-2:rgba(128,110,70,.045);
|
|
63
|
+
--up:#215c44; --down:#8a2f2f; --shadow:rgba(22,17,12,.14);
|
|
64
|
+
--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
|
|
65
|
+
--serif:Georgia,"Iowan Old Style","Times New Roman",serif;
|
|
66
|
+
--col:680px;
|
|
67
|
+
}
|
|
68
|
+
html[data-theme="dark"]{
|
|
69
|
+
--ink:#ece6dc; --ink-soft:#a49c90; --line:#2f2a24; --paper:#14110e;
|
|
70
|
+
--accent:#7fae95; --gold:#c9a45c; --spoiler:#d98a8a;
|
|
71
|
+
--tint:rgba(200,180,130,.06); --tint-2:rgba(200,180,130,.035);
|
|
72
|
+
--up:#7fae95; --down:#d98a8a; --shadow:rgba(0,0,0,.55);
|
|
73
|
+
color-scheme:dark;
|
|
74
|
+
}
|
|
75
|
+
*{box-sizing:border-box}
|
|
76
|
+
html{scroll-behavior:smooth;scroll-padding-top:64px}
|
|
77
|
+
html,body{transition:background-color .25s ease,color .25s ease}
|
|
78
|
+
body{margin:0;background:var(--paper);color:var(--ink);
|
|
79
|
+
font:18px/1.72 var(--serif);-webkit-font-smoothing:antialiased;
|
|
80
|
+
text-rendering:optimizeLegibility}
|
|
81
|
+
.wrap{max-width:var(--col);margin:0 auto;padding:0 24px 40px}
|
|
82
|
+
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);
|
|
83
|
+
white-space:nowrap}
|
|
84
|
+
|
|
85
|
+
/* ---------- reading progress ---------- */
|
|
86
|
+
#bar{position:fixed;top:0;left:0;height:2px;width:0;z-index:30;
|
|
87
|
+
background:var(--gold);transition:width .12s linear}
|
|
88
|
+
|
|
89
|
+
/* ---------- masthead ---------- */
|
|
90
|
+
header{padding:52px 0 30px}
|
|
91
|
+
.masthead{display:flex;justify-content:space-between;align-items:baseline;gap:16px;
|
|
92
|
+
padding-bottom:12px;border-bottom:1px solid var(--ink);
|
|
93
|
+
font:600 13px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase}
|
|
94
|
+
.masthead a{color:inherit;text-decoration:none}
|
|
95
|
+
.masthead .epno{color:var(--gold);letter-spacing:.1em}
|
|
96
|
+
h1{font-size:clamp(31px,5.6vw,44px);line-height:1.12;margin:26px 0 0;
|
|
97
|
+
letter-spacing:-.017em;font-weight:400;text-wrap:balance}
|
|
98
|
+
.dek{color:var(--ink-soft);font-size:20px;line-height:1.5;margin:16px 0 0;
|
|
99
|
+
max-width:34em;text-wrap:pretty}
|
|
100
|
+
.meta{margin-top:22px;font:12.5px/1.6 var(--sans);color:var(--ink-soft);
|
|
101
|
+
letter-spacing:.05em;text-transform:uppercase}
|
|
102
|
+
.meta b{font-weight:600;color:var(--ink)}
|
|
103
|
+
|
|
104
|
+
/* ---------- listen ---------- */
|
|
105
|
+
.listen{margin-top:26px;border:1px solid var(--line);border-radius:12px;
|
|
106
|
+
background:var(--tint-2);padding:16px 18px 14px}
|
|
107
|
+
audio{width:100%;height:38px;display:block}
|
|
108
|
+
.listenrow{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;
|
|
109
|
+
margin-top:12px;font:12.5px/1 var(--sans);color:var(--ink-soft)}
|
|
110
|
+
.listenrow a{color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--line)}
|
|
111
|
+
.listenrow a:hover{color:var(--accent);border-color:var(--accent)}
|
|
112
|
+
.rates{display:flex;gap:6px;margin-right:auto}
|
|
113
|
+
.rate{background:none;border:1px solid var(--line);color:var(--ink-soft);
|
|
114
|
+
border-radius:99px;padding:4px 10px;cursor:pointer;
|
|
115
|
+
font:600 11.5px/1 var(--sans);letter-spacing:.04em;transition:all .2s}
|
|
116
|
+
.rate:hover{border-color:var(--gold);color:var(--ink)}
|
|
117
|
+
.rate[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
|
|
118
|
+
|
|
119
|
+
/* ---------- contents ---------- */
|
|
120
|
+
.toc{margin:34px 0 6px;padding:16px 0 4px;border-top:1px solid var(--line);
|
|
121
|
+
border-bottom:1px solid var(--line)}
|
|
122
|
+
.tochead{font:600 11px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;
|
|
123
|
+
color:var(--gold);margin:0 0 12px}
|
|
124
|
+
.toc ol{list-style:none;margin:0 0 12px;padding:0;
|
|
125
|
+
font:14.5px/1.5 var(--sans);columns:2;column-gap:26px}
|
|
126
|
+
.toc li{margin:0 0 7px;break-inside:avoid}
|
|
127
|
+
.toc li.t3{padding-left:12px;font-size:13.5px}
|
|
128
|
+
.toc a{color:var(--ink-soft);text-decoration:none;border-bottom:1px solid transparent}
|
|
129
|
+
.toc a:hover{color:var(--ink);border-color:var(--gold)}
|
|
130
|
+
.toc li.on>a{color:var(--ink);font-weight:600}
|
|
131
|
+
|
|
132
|
+
/* ---------- body ---------- */
|
|
133
|
+
main{padding-top:8px}
|
|
134
|
+
h2{font:400 27px/1.25 var(--serif);color:var(--gold);margin:56px 0 18px;
|
|
135
|
+
font-variant-caps:all-small-caps;letter-spacing:.045em;
|
|
136
|
+
padding-bottom:9px;border-bottom:1px solid var(--line)}
|
|
137
|
+
h3{font-size:23px;line-height:1.3;margin:38px 0 10px;letter-spacing:-.012em;
|
|
138
|
+
font-weight:400}
|
|
139
|
+
h4{font:600 17px/1.4 var(--sans);margin:26px 0 6px;letter-spacing:-.005em}
|
|
140
|
+
p{margin:0 0 18px}
|
|
141
|
+
h2+p,h3+p,h4+p{margin-top:0}
|
|
142
|
+
ul,ol{margin:0 0 18px;padding-left:24px}
|
|
143
|
+
li{margin:0 0 9px}
|
|
144
|
+
li::marker{color:var(--gold)}
|
|
145
|
+
strong{font-weight:700}
|
|
146
|
+
a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}
|
|
147
|
+
.anchor{float:right;margin-left:12px;color:var(--line);text-decoration:none;
|
|
148
|
+
font:400 16px/1 var(--sans);opacity:0;transition:opacity .2s}
|
|
149
|
+
h2:hover .anchor,h3:hover .anchor,.anchor:focus{opacity:1;color:var(--gold)}
|
|
150
|
+
.secnote{font:14.5px/1.6 var(--sans);color:var(--ink-soft);margin:-4px 0 18px}
|
|
151
|
+
code{background:var(--tint);padding:1px 5px;border-radius:3px;
|
|
152
|
+
font:15px/1 ui-monospace,Menlo,Consolas,monospace}
|
|
153
|
+
blockquote{border-left:2px solid var(--gold);margin:26px 0;padding:6px 0 6px 20px;
|
|
154
|
+
font-style:italic;color:var(--ink-soft);font-size:17.5px}
|
|
155
|
+
blockquote strong{font-style:normal;color:var(--ink);font-weight:600}
|
|
156
|
+
hr{border:none;border-top:1px solid var(--line);margin:40px 0}
|
|
157
|
+
.charterr{color:var(--spoiler);font:14px/1.5 var(--sans)}
|
|
158
|
+
|
|
159
|
+
/* ---------- tables ---------- */
|
|
160
|
+
.tablewrap{margin:26px 0;overflow-x:auto;overscroll-behavior-x:contain;
|
|
161
|
+
background:
|
|
162
|
+
linear-gradient(to right,var(--paper) 34%,rgba(255,255,255,0)) left center,
|
|
163
|
+
linear-gradient(to left,var(--paper) 34%,rgba(255,255,255,0)) right center,
|
|
164
|
+
radial-gradient(farthest-side at 0 50%,var(--shadow),rgba(255,255,255,0)) left center,
|
|
165
|
+
radial-gradient(farthest-side at 100% 50%,var(--shadow),rgba(255,255,255,0)) right center;
|
|
166
|
+
background-repeat:no-repeat;
|
|
167
|
+
background-size:44px 100%,44px 100%,13px 100%,13px 100%;
|
|
168
|
+
background-attachment:local,local,scroll,scroll}
|
|
169
|
+
.tablewrap:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
|
|
170
|
+
table{width:100%;border-collapse:collapse;font:15.5px/1.5 var(--sans);
|
|
171
|
+
font-variant-numeric:tabular-nums lining-nums}
|
|
172
|
+
th{text-align:left;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
|
|
173
|
+
color:var(--ink-soft);border-bottom:1px solid var(--ink);padding:0 14px 9px 0;
|
|
174
|
+
font-weight:600;white-space:nowrap}
|
|
175
|
+
td{padding:10px 14px 10px 0;border-bottom:1px solid var(--line);vertical-align:top}
|
|
176
|
+
th:last-child,td:last-child{padding-right:0}
|
|
177
|
+
th.num,td.num{text-align:right;white-space:nowrap}
|
|
178
|
+
tbody tr:last-child td{border-bottom:none}
|
|
179
|
+
tr td:first-child{font-weight:600;padding-right:20px;min-width:9em}
|
|
180
|
+
.mv{font-weight:600;font-variant-numeric:tabular-nums}
|
|
181
|
+
.mv.up{color:var(--up)} .mv.down{color:var(--down)} .mv.flat{color:var(--ink-soft)}
|
|
182
|
+
|
|
183
|
+
/* ---------- quiz and solutions ---------- */
|
|
184
|
+
.qq{scroll-margin-top:70px}
|
|
185
|
+
.solnbar{display:flex;gap:8px;margin:0 0 16px}
|
|
186
|
+
.ghost{background:none;border:1px solid var(--line);color:var(--ink-soft);
|
|
187
|
+
border-radius:99px;padding:6px 14px;cursor:pointer;
|
|
188
|
+
font:600 11.5px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;
|
|
189
|
+
transition:all .2s}
|
|
190
|
+
.ghost:hover{border-color:var(--gold);color:var(--ink)}
|
|
191
|
+
details.soln{margin:0 0 10px;scroll-margin-top:70px}
|
|
192
|
+
details.soln>summary{cursor:pointer;list-style:none;display:flex;align-items:center;
|
|
193
|
+
gap:12px;border:1px solid var(--line);border-left:3px solid var(--spoiler);
|
|
194
|
+
border-radius:7px;padding:11px 16px;transition:all .2s;background:var(--tint-2)}
|
|
195
|
+
summary::-webkit-details-marker{display:none}
|
|
196
|
+
details.soln>summary:hover{border-color:var(--spoiler);background:var(--tint)}
|
|
197
|
+
.qn{font:700 13px/1 var(--sans);letter-spacing:.08em;color:var(--spoiler);
|
|
198
|
+
text-transform:uppercase}
|
|
199
|
+
.sl{font:500 12.5px/1 var(--sans);color:var(--ink-soft);letter-spacing:.05em}
|
|
200
|
+
details[open]>summary .sl{opacity:.6}
|
|
201
|
+
.solnbody{border-left:2px solid var(--accent);margin:14px 0 22px 3px;
|
|
202
|
+
padding:2px 0 2px 20px;font-size:17.5px}
|
|
203
|
+
.backq{font:12.5px/1 var(--sans);margin:0}
|
|
204
|
+
.backq a{color:var(--ink-soft);text-decoration:none}
|
|
205
|
+
.backq a:hover{color:var(--accent)}
|
|
206
|
+
|
|
207
|
+
/* ---------- glossary ---------- */
|
|
208
|
+
details.gloss>summary,details.archive>summary{cursor:pointer;list-style:none;
|
|
209
|
+
display:flex;align-items:baseline;justify-content:space-between;gap:14px;
|
|
210
|
+
border:1px solid var(--line);border-radius:8px;padding:13px 18px;
|
|
211
|
+
font:600 14px/1 var(--sans);letter-spacing:.03em;transition:all .2s;
|
|
212
|
+
background:var(--tint-2)}
|
|
213
|
+
details.gloss>summary:hover,details.archive>summary:hover{border-color:var(--gold)}
|
|
214
|
+
.glossbody{padding:22px 2px 6px}
|
|
215
|
+
.gsearch input{width:100%;padding:11px 14px;border:1px solid var(--line);
|
|
216
|
+
border-radius:8px;background:var(--paper);color:var(--ink);
|
|
217
|
+
font:15px/1 var(--sans)}
|
|
218
|
+
.gsearch input:focus{outline:none;border-color:var(--gold)}
|
|
219
|
+
.gchips{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 0}
|
|
220
|
+
.gchip{background:none;border:1px solid var(--line);color:var(--ink-soft);
|
|
221
|
+
border-radius:99px;padding:6px 12px;cursor:pointer;display:flex;align-items:center;
|
|
222
|
+
gap:6px;font:600 12px/1 var(--sans);letter-spacing:.04em;transition:all .2s}
|
|
223
|
+
.gchip:hover{border-color:var(--gold);color:var(--ink)}
|
|
224
|
+
.gchip.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}
|
|
225
|
+
.gn{font-weight:400;opacity:.65;font-variant-numeric:tabular-nums}
|
|
226
|
+
dl{margin:20px 0 0}
|
|
227
|
+
.gterm{padding:11px 0;border-top:1px solid var(--line)}
|
|
228
|
+
.gterm dt{font:600 15.5px/1.4 var(--sans)}
|
|
229
|
+
.gterm dd{margin:3px 0 0;font-size:16.5px;color:var(--ink-soft)}
|
|
230
|
+
.gep{font:600 10.5px/1 var(--sans);letter-spacing:.09em;text-transform:uppercase;
|
|
231
|
+
color:var(--ink-soft);border:1px solid var(--line);border-radius:99px;
|
|
232
|
+
padding:3px 7px;white-space:nowrap;margin-left:4px}
|
|
233
|
+
.gep.now{color:var(--gold);border-color:var(--gold)}
|
|
234
|
+
.gnone{font:15px/1.5 var(--sans);color:var(--ink-soft);padding:16px 0}
|
|
235
|
+
|
|
236
|
+
/* ---------- episode navigation ---------- */
|
|
237
|
+
.epnav{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:56px 0 20px;
|
|
238
|
+
padding-top:26px;border-top:1px solid var(--ink)}
|
|
239
|
+
.epnav a{display:flex;flex-direction:column;gap:5px;text-decoration:none;
|
|
240
|
+
border:1px solid var(--line);border-radius:10px;padding:16px 18px;
|
|
241
|
+
color:var(--ink);transition:all .25s}
|
|
242
|
+
.epnav a:hover{border-color:var(--gold);background:var(--tint-2)}
|
|
243
|
+
.epnav .epnext{text-align:right}
|
|
244
|
+
.epnav .dir{font:600 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;
|
|
245
|
+
color:var(--gold)}
|
|
246
|
+
.epnav .ept{font:19px/1.3 var(--serif)}
|
|
247
|
+
.epnav .epn{font:12px/1 var(--sans);color:var(--ink-soft);letter-spacing:.05em}
|
|
248
|
+
.epnav a:only-child{grid-column:1/-1;max-width:60%}
|
|
249
|
+
.epnav .epnext:only-child{margin-left:auto}
|
|
250
|
+
details.archive{margin:0 0 12px}
|
|
251
|
+
.arclist{list-style:none;margin:18px 0 6px;padding:0;font:15px/1.5 var(--sans)}
|
|
252
|
+
.arclist li{margin:0;border-top:1px solid var(--line)}
|
|
253
|
+
.arclist a{display:flex;gap:14px;padding:11px 4px;text-decoration:none;
|
|
254
|
+
color:var(--ink);transition:background .2s}
|
|
255
|
+
.arclist a:hover{background:var(--tint-2)}
|
|
256
|
+
.arclist b{color:var(--gold);font-variant-numeric:tabular-nums;font-weight:600}
|
|
257
|
+
.arclist li.here a{color:var(--ink-soft)}
|
|
258
|
+
.arclist li.here b:after{content:" · you are here";font-weight:400;
|
|
259
|
+
font-size:11px;letter-spacing:.1em;text-transform:uppercase}
|
|
260
|
+
|
|
261
|
+
/* ---------- theme button + footer ---------- */
|
|
262
|
+
.themebtn{position:fixed;top:14px;right:14px;z-index:20;background:var(--paper);
|
|
263
|
+
color:var(--ink-soft);border:1px solid var(--line);border-radius:99px;
|
|
264
|
+
padding:8px 14px;cursor:pointer;font:500 12px/1 var(--sans);letter-spacing:.06em;
|
|
265
|
+
display:flex;align-items:center;gap:7px;box-shadow:0 1px 4px var(--shadow);
|
|
266
|
+
transition:all .2s}
|
|
267
|
+
.themebtn:hover{color:var(--ink);border-color:var(--gold)}
|
|
268
|
+
.themebtn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;
|
|
269
|
+
stroke-linecap:round;stroke-linejoin:round}
|
|
270
|
+
html[data-theme="dark"] .themebtn{box-shadow:none}
|
|
271
|
+
.themebtn .moon{display:block} .themebtn .sun{display:none}
|
|
272
|
+
html[data-theme="dark"] .themebtn .moon{display:none}
|
|
273
|
+
html[data-theme="dark"] .themebtn .sun{display:block}
|
|
274
|
+
.themebtn .lbl:after{content:"Dark"}
|
|
275
|
+
html[data-theme="dark"] .themebtn .lbl:after{content:"Light"}
|
|
276
|
+
footer{margin-top:40px;padding:24px 0 70px;border-top:1px solid var(--line);
|
|
277
|
+
font:14px/1.7 var(--sans);color:var(--ink-soft);
|
|
278
|
+
display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:space-between}
|
|
279
|
+
footer a{color:var(--ink-soft)}
|
|
280
|
+
footer a:hover{color:var(--accent)}
|
|
281
|
+
footer .sig b{color:var(--ink);font-weight:600}
|
|
282
|
+
|
|
283
|
+
/* ---------- wide screens: the rail, and the breakout ---------- */
|
|
284
|
+
@media (min-width:1240px){
|
|
285
|
+
.toc{position:fixed;top:96px;left:max(24px,calc(50% - 596px));width:216px;
|
|
286
|
+
max-height:74vh;overflow-y:auto;margin:0;padding:0;border:none;
|
|
287
|
+
border-left:1px solid var(--line);padding-left:18px;z-index:5}
|
|
288
|
+
.toc ol{columns:1;font-size:14px}
|
|
289
|
+
.toc li{margin-bottom:9px}
|
|
290
|
+
/* charts break out of the measure; tables stay aligned with the prose,
|
|
291
|
+
because a table that starts left of the paragraph above it reads as a
|
|
292
|
+
layout fault rather than as emphasis */
|
|
293
|
+
.chartfig{margin-left:-38px;margin-right:-38px;
|
|
294
|
+
padding-left:26px;padding-right:26px}
|
|
295
|
+
}
|
|
296
|
+
@media (min-width:1240px) and (max-height:620px){ .toc{display:none} }
|
|
297
|
+
|
|
298
|
+
/* ---------- phones ---------- */
|
|
299
|
+
@media (max-width:640px){
|
|
300
|
+
body{font-size:17px;line-height:1.68}
|
|
301
|
+
.wrap{padding:0 18px 32px}
|
|
302
|
+
header{padding-top:34px}
|
|
303
|
+
.dek{font-size:18px}
|
|
304
|
+
h2{font-size:24px;margin-top:44px}
|
|
305
|
+
h3{font-size:20.5px}
|
|
306
|
+
/* a phone gets the sections, not every subhead: eleven rows of contents
|
|
307
|
+
is a screenful of scrolling before the article even starts */
|
|
308
|
+
.toc li.t3{display:none}
|
|
309
|
+
.toc ol{columns:2;column-gap:18px;font-size:14px}
|
|
310
|
+
.themebtn{top:9px;right:9px;padding:7px 11px}
|
|
311
|
+
table{font-size:14.5px}
|
|
312
|
+
th{font-size:10.5px;padding-right:12px}
|
|
313
|
+
td{padding-right:12px}
|
|
314
|
+
tr td:first-child{min-width:7.5em;padding-right:14px}
|
|
315
|
+
.epnav{grid-template-columns:1fr}
|
|
316
|
+
.epnav .epnext{text-align:left}
|
|
317
|
+
.epnav a:only-child{max-width:none}
|
|
318
|
+
.solnbody{font-size:17px;padding-left:15px}
|
|
319
|
+
/* charts earn the full width of a phone */
|
|
320
|
+
.chartfig{margin-left:-18px;margin-right:-18px;border-radius:0;
|
|
321
|
+
border-left:none;border-right:none;padding:16px 14px 12px}
|
|
322
|
+
}
|
|
323
|
+
|
|
324
|
+
/* ---------- print ---------- */
|
|
325
|
+
@page{margin:16mm 14mm}
|
|
326
|
+
@media print{
|
|
327
|
+
:root{--ink:#000;--ink-soft:#333;--line:#bbb;--paper:#fff;--tint:#f4f2ec;
|
|
328
|
+
--tint-2:#f8f7f3;--gold:#7a5c24;--accent:#123024;--up:#123024;
|
|
329
|
+
--down:#7a1f1f;--shadow:transparent}
|
|
330
|
+
html[data-theme="dark"]{--ink:#000;--ink-soft:#333;--line:#bbb;--paper:#fff;
|
|
331
|
+
--tint:#f4f2ec;--tint-2:#f8f7f3;--gold:#7a5c24;--accent:#123024}
|
|
332
|
+
body{font-size:11pt;line-height:1.5;background:#fff}
|
|
333
|
+
.wrap{max-width:none;padding:0}
|
|
334
|
+
#bar,.themebtn,.toc,.listen,.solnbar,.gsearch,.epnav,.anchor,.backq{display:none!important}
|
|
335
|
+
header{padding-top:0}
|
|
336
|
+
.masthead{border-color:#000}
|
|
337
|
+
h1{font-size:23pt;margin-top:14pt}
|
|
338
|
+
.dek{font-size:12pt}
|
|
339
|
+
h2{font-size:15pt;margin:22pt 0 8pt;break-after:avoid}
|
|
340
|
+
h3{font-size:13pt;margin:14pt 0 5pt;break-after:avoid}
|
|
341
|
+
p,li{orphans:3;widows:3}
|
|
342
|
+
.tablewrap{overflow:visible;background:none;break-inside:avoid}
|
|
343
|
+
.chartfig{break-inside:avoid;border-color:#ccc;background:none}
|
|
344
|
+
details{break-inside:avoid;margin:0}
|
|
345
|
+
/* the answers print open, labelled by question, without a button */
|
|
346
|
+
details.soln>summary{display:flex;border:none;background:none;
|
|
347
|
+
padding:10pt 0 2pt;border-top:1px solid #ddd}
|
|
348
|
+
summary .sl{display:none}
|
|
349
|
+
.solnbody{border-color:#999;margin:2pt 0 8pt;padding-left:0}
|
|
350
|
+
/* the cumulative glossary is a reference, not part of the article:
|
|
351
|
+
eighty-odd terms would add pages to every printout */
|
|
352
|
+
.glossec,details.archive{display:none}
|
|
353
|
+
a{color:#000;text-decoration:none}
|
|
354
|
+
footer{border-color:#000}
|
|
355
|
+
}
|
|
356
|
+
@media (prefers-reduced-motion:reduce){
|
|
357
|
+
html{scroll-behavior:auto}
|
|
358
|
+
*{animation-duration:.001ms!important;transition-duration:.001ms!important}
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
.chartfig{margin:36px 0;padding:22px 22px 16px;border:1px solid var(--line);
|
|
362
|
+
border-radius:10px;background:var(--tint-2,var(--tint))}
|
|
363
|
+
.charttitle{font:600 17.5px/1.3 var(--serif,Georgia,serif);color:var(--ink);
|
|
364
|
+
margin:0 0 16px;letter-spacing:-.012em}
|
|
365
|
+
.chartcap{font:italic 15.5px/1.55 var(--serif,Georgia,serif);color:var(--ink-soft);
|
|
366
|
+
margin:14px 2px 0;text-wrap:pretty}
|
|
367
|
+
.chartsrc{display:block;font:500 11.5px/1.5 var(--sans,ui-sans-serif,system-ui,sans-serif);
|
|
368
|
+
font-style:normal;letter-spacing:.05em;opacity:.8;margin-top:7px}
|
|
369
|
+
.chart{display:block;overflow:visible;font-variant-numeric:tabular-nums}
|
|
370
|
+
@media (max-width:640px){
|
|
371
|
+
.charttitle{font-size:16.5px;margin-bottom:12px}
|
|
372
|
+
.chartcap{font-size:15px}
|
|
373
|
+
}
|
|
374
|
+
</style>
|
|
375
|
+
<script>
|
|
376
|
+
try{
|
|
377
|
+
var s = localStorage.getItem('cdd-theme');
|
|
378
|
+
if(s){ document.documentElement.setAttribute('data-theme', s); }
|
|
379
|
+
else if(window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches){
|
|
380
|
+
document.documentElement.setAttribute('data-theme','dark');
|
|
381
|
+
}
|
|
382
|
+
}catch(e){}
|
|
383
|
+
</script>
|
|
384
|
+
</head>
|
|
385
|
+
<body>
|
|
386
|
+
<div id="bar" aria-hidden="true"></div>
|
|
387
|
+
<button class="themebtn" type="button" aria-label="Switch colour theme">
|
|
388
|
+
<svg class="moon" viewBox="0 0 24 24" aria-hidden="true"><path d="M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z"/></svg>
|
|
389
|
+
<svg class="sun" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="4.2"/><path d="M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></svg>
|
|
390
|
+
<span class="lbl"></span>
|
|
391
|
+
</button>
|
|
392
|
+
<div class="wrap">
|
|
393
|
+
<header>
|
|
394
|
+
<div class="masthead">
|
|
395
|
+
<a href="https://storage.googleapis.com/podcast-audio-2647223968/index.html">Soft Commodity Trading</a>
|
|
396
|
+
<span class="epno">Ep 07</span>
|
|
397
|
+
</div>
|
|
398
|
+
<h1>WASDE and Building a Balance Sheet</h1>
|
|
399
|
+
<p class="dek">How a grain balance sheet is built line by line, and why ending stocks moves about ten times faster than the crop itself.</p>
|
|
400
|
+
<div class="meta">Tuesday 18 August 2026 · <b>12 min 55</b></div>
|
|
401
|
+
<div class="listen">
|
|
402
|
+
<audio controls preload="none" src="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07v2.mp3"></audio>
|
|
403
|
+
<div class="listenrow">
|
|
404
|
+
<span class="rates" role="group" aria-label="Playback speed">
|
|
405
|
+
<button type="button" class="rate" data-rate="1" aria-pressed="true">1×</button>
|
|
406
|
+
<button type="button" class="rate" data-rate="1.25" aria-pressed="false">1.25×</button>
|
|
407
|
+
<button type="button" class="rate" data-rate="1.5" aria-pressed="false">1.5×</button>
|
|
408
|
+
</span>
|
|
409
|
+
<a href="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/ep07v2.mp3" download>Download</a>
|
|
410
|
+
<a href="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/feed.xml">Subscribe · RSS</a>
|
|
411
|
+
</div>
|
|
412
|
+
</div>
|
|
413
|
+
<nav class="toc" id="toc" aria-label="Contents"><p class="tochead">Contents</p><ol><li class="t2"><a href="#solutions">Solutions</a></li><li class="t2"><a href="#the-object-every-grain-desk-argues-about">The object every grain desk argues about</a></li><li class="t2"><a href="#building-the-real-one">Building the real one</a></li><li class="t2"><a href="#why-the-bottom-line-is-a-lever">Why the bottom line is a lever</a></li><li class="t2"><a href="#stocks-to-use-bends">Stocks-to-use bends</a></li><li class="t2"><a href="#the-line-that-hides-the-sins">The line that hides the sins</a></li><li class="t2"><a href="#where-analysts-actually-disagree">Where analysts actually disagree</a></li><li class="t2"><a href="#trading-the-surprise-not-the-number">Trading the surprise, not the number</a></li><li class="t2"><a href="#glossary">Glossary</a></li></ol></nav>
|
|
414
|
+
</header>
|
|
415
|
+
<main>
|
|
416
|
+
<p><strong>Soybeans took the lead, and they took it on demand rather than supply.</strong></p>
|
|
417
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th>Commodity</th><th>Contract</th><th>Price</th><th class="num">Change</th></tr></thead><tbody><tr><td>Corn</td><td>Sep (CBOT)</td><td>465 c/bu</td><td class="num"><span class="mv up">+6¢</span></td></tr><tr><td>Corn</td><td>Dec (CBOT)</td><td>489½ c/bu</td><td class="num"><span class="mv up">+6¼¢</span></td></tr><tr><td>Soybeans</td><td>Sep (CBOT)</td><td>1201 c/bu</td><td class="num"><span class="mv up">+23¼¢</span></td></tr><tr><td>Soybeans</td><td>Nov (CBOT)</td><td>1216 c/bu</td><td class="num"><span class="mv up">+23½¢</span></td></tr><tr><td>Wheat HRW</td><td>Sep (KC)</td><td>758¾ c/bu</td><td class="num"><span class="mv up">+4½¢</span></td></tr></tbody></table></div>
|
|
418
|
+
<p>Monday's session belonged to the soybean complex, which added better than 1¾%. Chicago soft red wheat was the exception, giving back part of a week in which it had gained 35 cents. Kansas City held its bid.</p>
|
|
419
|
+
<p>Two things did the buying. China took another 136,000 t of US soybeans. And the crop split in two: the northwestern belt is dry, the eastern belt has had too much rain. Monday afternoon's condition ratings had corn at 60% good to excellent and soybeans at 61%, each a point lower on the week, with soybeans seven points below where they stood a year ago. Corn is 76% at dough and 4% mature, running ahead of the five-year average. The bean crop is 85% setting pods.</p>
|
|
420
|
+
<p><strong>The geopolitical read: the buyer's clock.</strong> Chinese purchases of new-crop US soybeans have been running far ahead of anything that has actually sailed. Vessel data through late July put US-to-China departures at roughly 11,000 t/day on a seven-day average — close to nothing against commitments running into the millions of tonnes. That gap is an instrument, not an accident. A commitment is a promise on a balance sheet. A loading is a fact on a vessel. The buyer decides when one becomes the other, and that timing is worth more than the price paid. It also lands on exactly one line of today's subject.</p>
|
|
421
|
+
<figure class="chartfig">
|
|
422
|
+
<figcaption class="charttitle">Beans took the lead after the report</figcaption>
|
|
423
|
+
<svg class="chart" viewBox="0 0 640 356" width="100%" preserveAspectRatio="xMidYMid meet" xmlns="http://www.w3.org/2000/svg" role="img">
|
|
424
|
+
<style>.chart{--c-a:var(--accent,#1d4032);--c-b:var(--gold,#a8813c);--c-c:#4a6f8c;font-family:inherit}html[data-theme="dark"] .chart{--c-c:#7ba3c4}.chart .grid{stroke:var(--line,#ddd6c9);stroke-width:1}.chart .axis{fill:var(--ink-soft,#4a4238);font-size:12px}.chart .unit{fill:var(--ink-soft,#4a4238);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.chart .ln{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.chart .lg{fill:var(--ink,#16110c);font-size:12.5px}.chart .vlabel{fill:var(--ink,#16110c);font-size:11.5px;font-weight:600}@media (max-width:900px){.chart .axis{font-size:14px}.chart .unit{font-size:13px}.chart .lg{font-size:14.5px}.chart .vlabel{font-size:13.5px}.chart .ln{stroke-width:2.6}}@media (max-width:640px){.chart .axis{font-size:16px}.chart .unit{font-size:14px}.chart .lg{font-size:16px}.chart .vlabel{font-size:15px}.chart .ln{stroke-width:3.1}}</style>
|
|
425
|
+
<line class="grid" x1="56" y1="312.0" x2="622" y2="312.0" opacity=".45"/>
|
|
426
|
+
<text class="axis" x="46" y="316.0" text-anchor="end">98</text>
|
|
427
|
+
<line class="grid" x1="56" y1="260.0" x2="622" y2="260.0" opacity=".45"/>
|
|
428
|
+
<text class="axis" x="46" y="264.0" text-anchor="end">100</text>
|
|
429
|
+
<line class="grid" x1="56" y1="208.0" x2="622" y2="208.0" opacity=".45"/>
|
|
430
|
+
<text class="axis" x="46" y="212.0" text-anchor="end">102</text>
|
|
431
|
+
<line class="grid" x1="56" y1="156.0" x2="622" y2="156.0" opacity=".45"/>
|
|
432
|
+
<text class="axis" x="46" y="160.0" text-anchor="end">104</text>
|
|
433
|
+
<line class="grid" x1="56" y1="104.0" x2="622" y2="104.0" opacity=".45"/>
|
|
434
|
+
<text class="axis" x="46" y="108.0" text-anchor="end">106</text>
|
|
435
|
+
<line class="grid" x1="56" y1="52.0" x2="622" y2="52.0" opacity=".45"/>
|
|
436
|
+
<text class="axis" x="46" y="56.0" text-anchor="end">108</text>
|
|
437
|
+
<text class="unit" x="622" y="42" text-anchor="end">index, Tue 11 Aug = 100</text>
|
|
438
|
+
<text class="axis" x="56.0" y="332" text-anchor="middle">Tue 11</text>
|
|
439
|
+
<text class="axis" x="197.5" y="332" text-anchor="middle">Wed 12</text>
|
|
440
|
+
<text class="axis" x="339.0" y="332" text-anchor="middle">Thu 13</text>
|
|
441
|
+
<text class="axis" x="480.5" y="332" text-anchor="middle">Fri 14</text>
|
|
442
|
+
<text class="axis" x="622.0" y="332" text-anchor="end">Mon 17</text>
|
|
443
|
+
<path class="ln" d="M56.0 260.0 L197.5 145.6 L339.0 162.5 L480.5 131.6 L622.0 96.2" stroke="var(--c-a)"/>
|
|
444
|
+
<circle cx="622.0" cy="96.2" r="3.4" fill="var(--c-a)"/>
|
|
445
|
+
<path class="ln" d="M56.0 260.0 L197.5 227.8 L339.0 231.1 L480.5 207.2 L622.0 155.0" stroke="var(--c-b)"/>
|
|
446
|
+
<circle cx="622.0" cy="155.0" r="3.4" fill="var(--c-b)"/>
|
|
447
|
+
<rect x="56" y="22" width="18" height="3" rx="1.5" fill="var(--c-a)"/>
|
|
448
|
+
<text class="lg" x="81" y="29">Corn Dec (CBOT)</text>
|
|
449
|
+
<rect x="204.0" y="22" width="18" height="3" rx="1.5" fill="var(--c-b)"/>
|
|
450
|
+
<text class="lg" x="229.0" y="29">Soybeans Nov (CBOT)</text>
|
|
451
|
+
</svg>
|
|
452
|
+
<figcaption class="chartcap">Both jumped on the 12 August WASDE and neither gave it back. On Monday beans pulled clear on Chinese buying and a dry northwestern belt, while corn added six cents. <span class="chartsrc">CBOT settlements, 11–17 August 2026, from daily market wraps.</span></figcaption>
|
|
453
|
+
</figure>
|
|
454
|
+
<h1>Key takeaways</h1>
|
|
455
|
+
<ul><li>A balance sheet is not a forecast. It is an accounting identity that has to close, and ending stocks is the line that closes it.</li><li>Production is roughly ten times the size of US corn ending stocks, so a 1% error in the crop is a 10% error in the carryout. Work that ratio out for every commodity you trade — it is different for each one.</li><li>Stocks-to-use maps to price on a curve, not a line. The same two-bushel yield move is worth almost nothing at 15% and an enormous amount at 9%.</li><li>Feed and residual is a residual inside a residual. When it moves, it is telling you about livestock or telling you the crop was never the size they said it was.</li><li>Analysts converge on supply and diverge on demand, because supply is surveyed and demand is inferred. That is why pre-report positions live in spreads.</li><li>The market does not price the yield. It prices the carryout, and area, demand and carry-in can each pay for a bad yield.</li></ul>
|
|
456
|
+
<h1>Vocabulary</h1>
|
|
457
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th>Term</th><th>Meaning</th></tr></thead><tbody><tr><td><strong>Balance sheet (S&D)</strong></td><td>The one-page supply and demand statement for a crop and a marketing year, which must close</td></tr><tr><td><strong>Marketing year</strong></td><td>The crop's own accounting year — September to August for US corn and soybeans, June to May for US wheat</td></tr><tr><td><strong>Carryout</strong></td><td>Ending stocks, spoken as a single word on the desk</td></tr><tr><td><strong>Total supply</strong></td><td>Carry-in plus production plus imports, the top block of the sheet</td></tr><tr><td><strong>Total use</strong></td><td>Domestic use plus exports, the bottom block</td></tr><tr><td><strong>Feed and residual</strong></td><td>The inferred demand line that absorbs both livestock feeding and every measurement error in the sheet</td></tr><tr><td><strong>New crop / old crop</strong></td><td>The marketing year about to begin versus the one ending, priced by different contract months</td></tr><tr><td><strong>Trade average</strong></td><td>The mean of analysts' pre-report estimates, published in advance, and therefore what is already in the price</td></tr><tr><td><strong>Whisper number</strong></td><td>The expectation the market actually trades, which can sit away from the published trade average</td></tr><tr><td><strong>Crop Production</strong></td><td>The NASS report published alongside WASDE, carrying the survey-based yield and area</td></tr><tr><td><strong>Grain Stocks</strong></td><td>The quarterly survey of physical inventories, from which feed and residual is backed out</td></tr><tr><td><strong>NASS</strong></td><td>USDA's National Agricultural Statistics Service, the body that runs the surveys behind the numbers</td></tr><tr><td><strong>Implied disappearance</strong></td><td>Use derived by subtraction rather than measurement, the technique behind the residual lines</td></tr></tbody></table></div>
|
|
458
|
+
<h1>Quiz</h1>
|
|
459
|
+
<p id="q1" class="qq"><strong>Q1.</strong> Build one. A desk runs its own 2026/27 US corn sheet with carry-in of 1.945 bn bu, imports of 25 m bu and harvested area of 88.6 m acres, but uses its own yield of 179.0 bu/ac. It carries domestic use at 13.100 bn and exports at 3.350 bn. USDA's August sheet, for comparison, has production 16.013 bn and ending stocks 1.653 bn on the same carry-in and imports. Compute the desk's production, total supply, ending stocks and stocks-to-use. Then compare the percentage gap between the two carryouts with the percentage gap between the two yields, and explain the difference.</p>
|
|
460
|
+
<p id="q2" class="qq"><strong>Q2.</strong> The quarterly Grain Stocks survey lands 90 m bu below what the trade had modelled, with no change to production or exports. Which line absorbs it, what are the two competing stories for why, and how would you use the futures <em>curve</em> rather than the flat price to work out which story the market believes?</p>
|
|
461
|
+
<p id="q3" class="qq"><strong>Q3.</strong> Going into 12 August the trade carried new-crop corn carryout at roughly 1.725 bn bu. USDA printed 1.653 bn. December corn rose 20¼¢ on the day and closed Monday 17 August at 489½, above its report-day close. Explain why "the report was bullish and the market went up" is a lazy reading of those three sessions, and state precisely what a trader had to be right about to still be paid on Monday.</p>
|
|
462
|
+
<p id="q4" class="qq"><strong>Q4.</strong> Ep 6 said corn's demand curve has steps in it. USDA carries corn exports at 3.275 bn bu and domestic use at 13.055 bn. Suppose a rally takes December corn from 489½ to 560 c/bu and nothing else changes. Name the two demand lines that respond first and the direction each moves. Then explain why a balance sheet that leaves demand untouched after a 70-cent rally is internally inconsistent.</p>
|
|
463
|
+
<p id="q5" class="qq"><strong>Q5.</strong> Ep 6 taught that a weather premium decays on the calendar rather than on the forecast. It is 17 August. Corn is 76% at dough and 4% mature. Soybeans are 85% setting pods and rated seven points below last year. A trader wants to be long the weather. What is actually left to be long of in each crop, which would you rather own, and how does Monday's tape support the answer?</p>
|
|
464
|
+
<p id="q6" class="qq"><strong>Q6.</strong> Ep 4 established that risk passes at loading under FOB, CFR and CIF alike. You have sold 60,000 t of beans CFR Qingdao. The vessel is three days late arriving after a typhoon diversion, and your buyer's letter of credit expires in four days. Separate the voyage risk from the documentary risk, say who carries each, and identify which of the two actually threatens your P&L.</p>
|
|
465
|
+
<p id="q7" class="qq"><strong>Q7.</strong> Ep 4 priced three days of demurrage at $24,000/day as 11% of a $660k margin. Do it in the other unit. A 60,000 t soybean cargo is valued off Monday's November board of 1216 c/bu, and demurrage runs three days at $26,500/day. Convert the cargo to bushels and dollars, then express the demurrage in cents per bushel and as a percentage of cargo value. Why do desks insist on the cents-per-bushel version?</p>
|
|
466
|
+
<p id="q8" class="qq"><strong>Q8 — Conversion drill.</strong> Over the weekend an eastern Corn Belt station recorded 82 mm of rain, while a western Kansas station is forecast 0.35 inch for the week ahead. Convert each figure into the other scale. Then say which of the two matters more for the balance sheet that moved this week, and name the line it lands on.</p>
|
|
467
|
+
<h2 id="solutions">Solutions<a class="anchor" href="#solutions" aria-label="Link to this section">#</a></h2><p class="secnote">One reveal per question — check your answer to Q1 without spoiling the rest.</p><div class="solnbar"><button type="button" class="ghost" data-solnall="open">Reveal all</button><button type="button" class="ghost" data-solnall="close">Hide all</button></div>
|
|
468
|
+
<details class="soln" id="a1"><summary><span class="qn">Q1</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p>The arithmetic first.</p>
|
|
469
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th>Line</th><th class="num">Desk</th><th class="num">USDA (Aug)</th></tr></thead><tbody><tr><td>Carry-in</td><td class="num">1,945</td><td class="num">1,945</td></tr><tr><td>Production</td><td class="num">15,859</td><td class="num">16,013</td></tr><tr><td>Imports</td><td class="num">25</td><td class="num">25</td></tr><tr><td><strong>Total supply</strong></td><td class="num"><strong>17,829</strong></td><td class="num"><strong>17,983</strong></td></tr><tr><td>Domestic use</td><td class="num">13,100</td><td class="num">13,055</td></tr><tr><td>Exports</td><td class="num">3,350</td><td class="num">3,275</td></tr><tr><td><strong>Total use</strong></td><td class="num"><strong>16,450</strong></td><td class="num"><strong>16,330</strong></td></tr><tr><td><strong>Ending stocks</strong></td><td class="num"><strong>1,379</strong></td><td class="num"><strong>1,653</strong></td></tr><tr><td>Stocks-to-use</td><td class="num">8.4%</td><td class="num">10.1%</td></tr></tbody></table></div>
|
|
470
|
+
<p>All figures in million bushels. Production is 88.6 × 179.0 = 15,859. (USDA's published 16,013 is about 3 m bu above 88.6 × 180.7 — rounding in the acreage and yield they print. Worth noticing the first time you try to rebuild a published sheet and cannot make it tie.)</p>
|
|
471
|
+
<p>Two lines in that table deserve a word, because they are not the same kind of number. <strong>Imports</strong> are identical at 25 because nobody disputes them: the US imports a rounding error of corn, so both sheets simply carry USDA's figure. <strong>Domestic use</strong> differs because it is a view, not a fact — it is the single most argued line on the sheet, and the desk is 45 m bu above USDA on it.</p>
|
|
472
|
+
<p>Note also what you can and cannot derive. USDA's <strong>total</strong> use you can back out without being told it: supply 17,983 less ending stocks 1,653 = 16,330. Its split between domestic use and exports you cannot — those two rows are USDA's published numbers, shown for reference. The comparison the question asks for only needs the total, which is why it works.</p>
|
|
473
|
+
<p>Now the comparison the question is really asking for. The yields differ by 1.7 bu, or <strong>0.94%</strong>. The carryouts differ by 274 m bu, or <strong>16.6%</strong>. That is a factor of roughly eighteen, not ten, and the extra leverage comes from the demand side: the desk is carrying 120 m bu more use than USDA. Decomposed, the 274 is 154 m of yield-and-rounding and 120 m of demand. The trap the question sets is the assumption that a carryout gap is a crop-view gap. Most of the time it is half a crop view and half a demand view, and only one of those two halves gets discussed on television.</p>
|
|
474
|
+
<p class="backq"><a href="#q1">↑ Back to question 1</a></p></div></details>
|
|
475
|
+
<details class="soln" id="a2"><summary><span class="qn">Q2</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p><strong>Feed and residual absorbs it,</strong> and ending stocks falls 90 m bu — from 1.653 to 1.563 bn, taking stocks-to-use from 10.1% to 9.6%. Nothing else in the sheet is allowed to move, because feed and residual is the line derived by subtraction.</p>
|
|
476
|
+
<p>The two stories:</p>
|
|
477
|
+
<ol><li><strong>Real demand.</strong> Livestock ate more than modelled — bigger herds, cheaper corn, better rations. This is a genuine tightening and it should persist into the next quarter.</li><li><strong>Phantom supply.</strong> The crop was never as big as printed. The stocks survey is measuring physical inventory, so if it comes in light, either use was higher or production was overstated. A production overstatement gets revealed slowly, through the residual, quarter by quarter.</li></ol>
|
|
478
|
+
<p>The curve tells you which one the market believes. If the trade takes it as real, present demand is tighter <em>now</em>: the nearby month bids relative to the deferred, spreads firm, and a carry market flattens or inverts. That is bull spreading, and it is a statement about physical availability. If the trade takes it as a statistical artefact likely to be revised away, flat price wobbles on the headline and the spreads do not move — the curve is saying nobody is short of corn today. <strong>Flat price reacts to news. Spreads react to grain.</strong> A move in one without the other is the market telling you how much it believes.</p>
|
|
479
|
+
<p class="backq"><a href="#q2">↑ Back to question 2</a></p></div></details>
|
|
480
|
+
<details class="soln" id="a3"><summary><span class="qn">Q3</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p>The surprise was <strong>72 m bu</strong>, not the 159 m bu that the 1.8 bu/ac yield miss implies on 88.6 m acres. Half of it was absorbed on the way down the page by higher area and higher exports. In stocks-to-use terms the trade went in at 1,725 ÷ 16,330 ≈ 10.6% and got 10.1% — about half a point of tightening. That is what the 20¼¢ paid for, and it is a reasonable price for it.</p>
|
|
481
|
+
<p>What happened afterwards was a different trade. Corn did not hold its gain and then add another six cents on Monday because of the report. It did so because Black Sea export capacity stayed impaired, because the eastern belt turned too wet, and because the whole complex was being pulled up by soybeans on Chinese demand. None of that was in the WASDE.</p>
|
|
482
|
+
<p>So a trader long into the print was paid twice, for two separate reasons, and needed to be right about both to still be there on Monday. Being right about the report bought about a day. Staying long required an independent view on export capacity and August weather. The lazy reading — "bullish report, market up" — conflates an event that resolved in ninety seconds with a trend that has been running for two weeks. The discipline is to book the event P&L, then re-underwrite the position on the trend as a fresh decision.</p>
|
|
483
|
+
<p class="backq"><a href="#q3">↑ Back to question 3</a></p></div></details>
|
|
484
|
+
<details class="soln" id="a4"><summary><span class="qn">Q4</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p><strong>Exports fall, and the ethanol grind inside domestic use falls.</strong> Both are price-elastic on a timescale of weeks.</p>
|
|
485
|
+
<ul><li><strong>Exports</strong> are the fastest. US corn competes with Brazilian, Argentine and Ukrainian corn at destination. A 70¢ rally is about $27.50/t; the buyer simply calls another origin. This is ep 5's flow substitution, running on the demand line instead of the supply line.</li><li><strong>Ethanol grind</strong> is a margin, not a preference. The plant buys corn and sells ethanol and distillers grains. Corn up 70¢ with ethanol unchanged compresses the crush, and marginal plants slow down. Demand stops appearing at the bid.</li></ul>
|
|
486
|
+
<p>Feed is the third lever but the slowest and, right now, the furthest away: ep 6 put Chicago wheat about $54/t above its feed-switch level, so the substitution bid is nowhere near being triggered.</p>
|
|
487
|
+
<p>The inconsistency is this. A balance sheet is a set of <strong>quantities at an assumed price</strong>. If you tighten stocks and let price rise, you must also let the demand lines respond, or you are counting the tightening twice. That feedback is why carryout estimates converge rather than diverge: tighter stocks lift price, higher price rations demand, rationed demand rebuilds stocks. Rationing is not a metaphor — it is the arithmetic by which the sheet closes at a higher price. The analyst's edge sits almost entirely in how fast and how far they think that response runs.</p>
|
|
488
|
+
<p class="backq"><a href="#q4">↑ Back to question 4</a></p></div></details>
|
|
489
|
+
<details class="soln" id="a5"><summary><span class="qn">Q5</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p>For <strong>corn</strong>, very little is left. Pollination determines ear count and it is long finished; 76% dough and 4% mature means kernel number is set and the crop is filling. What remains is test weight, late-season disease, and an early frost risk that is still weeks away and low-probability. The weather premium has largely decayed, exactly as ep 6 described, and it decayed whether or not the forecast improved.</p>
|
|
490
|
+
<p>For <strong>soybeans</strong>, the crop is genuinely still open. Beans set pods and fill seed through August, so August rainfall and August heat still move the yield. With 85% setting pods, a rating of 61% good to excellent and seven points of deterioration against last year, there is a real distribution left to price.</p>
|
|
491
|
+
<p>You would rather own the beans — and Monday's tape is the evidence: beans +23½¢ against corn +6¼¢ on the same weather map. The sharper version of the answer is that you would rather own <em>optionality</em> on beans than futures, because the same decay clock that has already emptied the corn premium is running on the bean premium too, and it accelerates from early September. A long call spread pays for the distribution without paying carry to the calendar.</p>
|
|
492
|
+
<p class="backq"><a href="#q5">↑ Back to question 5</a></p></div></details>
|
|
493
|
+
<details class="soln" id="a6"><summary><span class="qn">Q6</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p>Two different risks, and the question is whether you can tell them apart under pressure.</p>
|
|
494
|
+
<ul><li><strong>Voyage risk</strong> passed to the buyer at the ship's rail in Santos. A typhoon diversion mid-ocean is the buyer's risk of loss, not yours. Under CFR you contracted the freight, so a late vessel is your dispute with the carrier under the charter party — but it does not move cargo risk back onto your book.</li><li><strong>Documentary risk</strong> is entirely yours, and it is the live one. A letter of credit is a bank's undertaking to pay against <strong>conforming documents presented before expiry</strong>. Miss the expiry and the undertaking lapses. You are then an unsecured creditor of the buyer, holding a cargo already at their risk, in a market where they may prefer to renegotiate.</li></ul>
|
|
495
|
+
<p><strong>The documentary risk is what threatens the P&L.</strong> Nothing has happened to the beans. The practical moves are to request an L/C amendment extending expiry and the latest shipment date before it lapses rather than after, to present documents early if the bill of lading and quality certificate are already in hand, or to ship documents against a letter of indemnity if originals are chasing the vessel. Ep 4's point restated: the cargo is fine, and the paper is what pays.</p>
|
|
496
|
+
<p class="backq"><a href="#q6">↑ Back to question 6</a></p></div></details>
|
|
497
|
+
<details class="soln" id="a7"><summary><span class="qn">Q7</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p>Convert first. 60,000 t × 36.744 bu/t = <strong>2,204,640 bu</strong>. At 1216 c/bu the cargo is worth <strong>$26.81 m</strong>.</p>
|
|
498
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th>Line</th><th class="num">Value</th></tr></thead><tbody><tr><td>Cargo</td><td class="num">2,204,640 bu</td></tr><tr><td>Cargo value at 1216 c/bu</td><td class="num">$26,808,422</td></tr><tr><td>Demurrage, 3 days × $26,500</td><td class="num">$79,500</td></tr><tr><td>Demurrage in c/bu</td><td class="num">3.6 c/bu</td></tr><tr><td>Demurrage as % of cargo value</td><td class="num">0.30%</td></tr></tbody></table></div>
|
|
499
|
+
<p>Desks quote it in cents per bushel because that is <strong>the same unit as the margin</strong>. A cargo bought at "November minus 20" and hit with 3.6 cents of demurrage was really bought at minus 23.6. In dollars, $79,500 against $26.8 m looks like a rounding error and gets waved through. In cents per bushel it sits next to the differential that the entire trade was argued over, and 3.6 cents is a fifth of the twenty. Execution costs only become visible when they are expressed in the unit the trader negotiates in — which is why the execution desk reports in cents, not in invoices.</p>
|
|
500
|
+
<p class="backq"><a href="#q7">↑ Back to question 7</a></p></div></details>
|
|
501
|
+
<details class="soln" id="a8"><summary><span class="qn">Q8</span><span class="sl">Reveal the answer</span></summary><div class="solnbody"><p><strong>Conversion drill answer.</strong> 82 mm ÷ 25.4 = <strong>3.23 inches</strong>. 0.35 inch × 25.4 = <strong>8.9 mm</strong>. The fast method gets you close enough to trade on: 82 ÷ 100 × 4 = 3.28, and 0.35 × 100 ÷ 4 = 8.75.</p>
|
|
502
|
+
<p>The <strong>82 mm</strong> is the number that matters this week. Excessive rain across the eastern Corn Belt in mid-August, with corn 76% at dough and beans 85% setting pods, brings lodging and disease pressure into crops that are filling, and it is behind the one-point slip in both condition ratings on Monday. It lands on the <strong>yield term of production</strong>, on the supply side of the 2026/27 sheet.</p>
|
|
503
|
+
<p>The 8.9 mm in western Kansas is a soil-moisture story for hard red winter seeding in September. It reaches a balance sheet too — but the 2027/28 one, through planted area and abandonment. Same week, two rainfall figures, two different marketing years. Keeping them apart is most of the skill.</p>
|
|
504
|
+
<h1>Written edition</h1>
|
|
505
|
+
<p class="backq"><a href="#q8">↑ Back to question 8</a></p></div></details><h2 id="the-object-every-grain-desk-argues-about">The object every grain desk argues about<a class="anchor" href="#the-object-every-grain-desk-argues-about" aria-label="Link to this section">#</a></h2>
|
|
506
|
+
<p>A balance sheet is one page. Supply on top, demand underneath, and what is left over at the bottom. It is not a forecast and it is not a model. It is an accounting identity, and it has to close.</p>
|
|
507
|
+
<p>Supply is three lines.</p>
|
|
508
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th>Line</th><th>What it is</th></tr></thead><tbody><tr><td>Carry-in</td><td>What was still in store when the previous marketing year ended</td></tr><tr><td>Production</td><td>Harvested acres × yield per harvested acre</td></tr><tr><td>Imports</td><td>For US corn, a rounding error</td></tr></tbody></table></div>
|
|
509
|
+
<p>Two things in that table are quietly load-bearing. A <strong>marketing year</strong> is the crop's own calendar, not the accountant's: US corn and soybeans run September to August, US wheat June to May. And production uses <strong>harvested</strong> acres, not planted. Around 8 million planted US corn acres never get cut for grain in a normal year.</p>
|
|
510
|
+
<p>Demand is four lines: feed and residual, ethanol, food/seed/industrial, and exports. Then ending stocks, which is total supply minus total use.</p>
|
|
511
|
+
<p>Ending stocks is not measured. <strong>It is what is left.</strong></p>
|
|
512
|
+
<h2 id="building-the-real-one">Building the real one<a class="anchor" href="#building-the-real-one" aria-label="Link to this section">#</a></h2>
|
|
513
|
+
<p>The August numbers, in million bushels.</p>
|
|
514
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th></th><th class="num">2026/27 US corn</th></tr></thead><tbody><tr><td>Carry-in</td><td class="num">1,945</td></tr><tr><td>Production (88.6 m ac × 180.7 bu/ac)</td><td class="num">16,013</td></tr><tr><td>Imports</td><td class="num">25</td></tr><tr><td><strong>Total supply</strong></td><td class="num"><strong>17,983</strong></td></tr><tr><td>Domestic use</td><td class="num">13,055</td></tr><tr><td>Exports</td><td class="num">3,275</td></tr><tr><td><strong>Total use</strong></td><td class="num"><strong>16,330</strong></td></tr><tr><td><strong>Ending stocks</strong></td><td class="num"><strong>1,653</strong></td></tr><tr><td><strong>Stocks-to-use</strong></td><td class="num"><strong>10.1%</strong></td></tr></tbody></table></div>
|
|
515
|
+
<figure class="chartfig">
|
|
516
|
+
<figcaption class="charttitle">US corn 2026/27, supply down to carryout</figcaption>
|
|
517
|
+
<svg class="chart" viewBox="0 0 640 330" width="100%" preserveAspectRatio="xMidYMid meet" xmlns="http://www.w3.org/2000/svg" role="img">
|
|
518
|
+
<style>.chart{--c-a:var(--accent,#1d4032);--c-b:var(--gold,#a8813c);--c-c:#4a6f8c;font-family:inherit}html[data-theme="dark"] .chart{--c-c:#7ba3c4}.chart .grid{stroke:var(--line,#ddd6c9);stroke-width:1}.chart .axis{fill:var(--ink-soft,#4a4238);font-size:12px}.chart .unit{fill:var(--ink-soft,#4a4238);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.chart .ln{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.chart .lg{fill:var(--ink,#16110c);font-size:12.5px}.chart .vlabel{fill:var(--ink,#16110c);font-size:11.5px;font-weight:600}@media (max-width:900px){.chart .axis{font-size:14px}.chart .unit{font-size:13px}.chart .lg{font-size:14.5px}.chart .vlabel{font-size:13.5px}.chart .ln{stroke-width:2.6}}@media (max-width:640px){.chart .axis{font-size:16px}.chart .unit{font-size:14px}.chart .lg{font-size:16px}.chart .vlabel{font-size:15px}.chart .ln{stroke-width:3.1}}</style>
|
|
519
|
+
<line class="grid" x1="56" y1="286.0" x2="622" y2="286.0"/>
|
|
520
|
+
<text class="axis" x="46" y="290.0" text-anchor="end">0</text>
|
|
521
|
+
<line class="grid" x1="56" y1="221.0" x2="622" y2="221.0" opacity=".45"/>
|
|
522
|
+
<text class="axis" x="46" y="225.0" text-anchor="end">5,000</text>
|
|
523
|
+
<line class="grid" x1="56" y1="156.0" x2="622" y2="156.0" opacity=".45"/>
|
|
524
|
+
<text class="axis" x="46" y="160.0" text-anchor="end">10,000</text>
|
|
525
|
+
<line class="grid" x1="56" y1="91.0" x2="622" y2="91.0" opacity=".45"/>
|
|
526
|
+
<text class="axis" x="46" y="95.0" text-anchor="end">15,000</text>
|
|
527
|
+
<line class="grid" x1="56" y1="26.0" x2="622" y2="26.0" opacity=".45"/>
|
|
528
|
+
<text class="axis" x="46" y="30.0" text-anchor="end">20,000</text>
|
|
529
|
+
<text class="unit" x="622" y="16" text-anchor="end">million bushels</text>
|
|
530
|
+
<text class="axis" x="103.2" y="306" text-anchor="middle">Carry-in</text>
|
|
531
|
+
<text class="axis" x="197.5" y="306" text-anchor="middle">Production</text>
|
|
532
|
+
<text class="axis" x="291.8" y="306" text-anchor="middle">Imports</text>
|
|
533
|
+
<text class="axis" x="386.2" y="306" text-anchor="middle">Domestic use</text>
|
|
534
|
+
<text class="axis" x="480.5" y="306" text-anchor="middle">Exports</text>
|
|
535
|
+
<text class="axis" x="574.8" y="306" text-anchor="middle">Ending stocks</text>
|
|
536
|
+
<rect x="73.9" y="260.7" width="58.5" height="25.3" rx="2" fill="var(--c-a)" opacity=".92"/>
|
|
537
|
+
<text class="vlabel" x="103.2" y="253.7" text-anchor="middle">1,945</text>
|
|
538
|
+
<line class="grid" x1="132.4" y1="260.7" x2="168.3" y2="260.7" stroke-dasharray="3 3" opacity=".5"/>
|
|
539
|
+
<rect x="168.3" y="52.5" width="58.5" height="208.2" rx="2" fill="var(--c-a)" opacity=".78"/>
|
|
540
|
+
<text class="vlabel" x="197.5" y="45.5" text-anchor="middle">16,013</text>
|
|
541
|
+
<line class="grid" x1="226.7" y1="52.5" x2="262.6" y2="52.5" stroke-dasharray="3 3" opacity=".5"/>
|
|
542
|
+
<rect x="262.6" y="52.2" width="58.5" height="2.0" rx="2" fill="var(--c-a)" opacity=".78"/>
|
|
543
|
+
<text class="vlabel" x="291.8" y="45.2" text-anchor="middle">25</text>
|
|
544
|
+
<line class="grid" x1="321.1" y1="52.2" x2="356.9" y2="52.2" stroke-dasharray="3 3" opacity=".5"/>
|
|
545
|
+
<rect x="356.9" y="52.2" width="58.5" height="169.7" rx="2" fill="#8a3b2f" opacity=".78"/>
|
|
546
|
+
<text class="vlabel" x="386.2" y="45.2" text-anchor="middle">-13,055</text>
|
|
547
|
+
<line class="grid" x1="415.4" y1="221.9" x2="451.3" y2="221.9" stroke-dasharray="3 3" opacity=".5"/>
|
|
548
|
+
<rect x="451.3" y="221.9" width="58.5" height="42.6" rx="2" fill="#8a3b2f" opacity=".78"/>
|
|
549
|
+
<text class="vlabel" x="480.5" y="214.9" text-anchor="middle">-3,275</text>
|
|
550
|
+
<line class="grid" x1="509.7" y1="264.5" x2="545.6" y2="264.5" stroke-dasharray="3 3" opacity=".5"/>
|
|
551
|
+
<rect x="545.6" y="264.5" width="58.5" height="21.5" rx="2" fill="var(--c-b)" opacity=".92"/>
|
|
552
|
+
<text class="vlabel" x="574.8" y="257.5" text-anchor="middle">1,653</text>
|
|
553
|
+
</svg>
|
|
554
|
+
<figcaption class="chartcap">Ending stocks is the difference between two numbers that are both around sixteen billion. That is what makes it move so much. <span class="chartsrc">USDA WASDE, 12 August 2026. Carry-in is the figure implied by the published stocks and use.</span></figcaption>
|
|
555
|
+
</figure>
|
|
556
|
+
<p>Stocks-to-use is the number a desk quotes out loud, because a bushel figure means nothing without the size of the market next to it. 1,653 over 16,330 is 10.1%.</p>
|
|
557
|
+
<h2 id="why-the-bottom-line-is-a-lever">Why the bottom line is a lever<a class="anchor" href="#why-the-bottom-line-is-a-lever" aria-label="Link to this section">#</a></h2>
|
|
558
|
+
<p>Look at the size of the terms. Production is 16.0 billion bushels. Ending stocks is 1.65 billion. Production is roughly <strong>ten times</strong> the line it feeds.</p>
|
|
559
|
+
<p>So a 1% error in the crop is a 10% error in the carryout.</p>
|
|
560
|
+
<p>Take the yield down two bushels, from 180.7 to 178.7. That is 1.1% on the yield line. On 88.6 million harvested acres it is 177 million bushels of production.</p>
|
|
561
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th class="num">Yield (bu/ac)</th><th class="num">Production</th><th class="num">Ending stocks</th><th class="num">Stocks-to-use</th></tr></thead><tbody><tr><td class="num">178.7</td><td class="num">15,836</td><td class="num">1,476</td><td class="num">9.0%</td></tr><tr><td class="num">180.7 (USDA)</td><td class="num">16,013</td><td class="num">1,653</td><td class="num">10.1%</td></tr><tr><td class="num">182.7</td><td class="num">16,190</td><td class="num">1,830</td><td class="num">11.2%</td></tr></tbody></table></div>
|
|
562
|
+
<figure class="chartfig">
|
|
563
|
+
<figcaption class="charttitle">Two bushels of yield, eleven percent of carryout</figcaption>
|
|
564
|
+
<svg class="chart" viewBox="0 0 640 330" width="100%" preserveAspectRatio="xMidYMid meet" xmlns="http://www.w3.org/2000/svg" role="img">
|
|
565
|
+
<style>.chart{--c-a:var(--accent,#1d4032);--c-b:var(--gold,#a8813c);--c-c:#4a6f8c;font-family:inherit}html[data-theme="dark"] .chart{--c-c:#7ba3c4}.chart .grid{stroke:var(--line,#ddd6c9);stroke-width:1}.chart .axis{fill:var(--ink-soft,#4a4238);font-size:12px}.chart .unit{fill:var(--ink-soft,#4a4238);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.chart .ln{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.chart .lg{fill:var(--ink,#16110c);font-size:12.5px}.chart .vlabel{fill:var(--ink,#16110c);font-size:11.5px;font-weight:600}@media (max-width:900px){.chart .axis{font-size:14px}.chart .unit{font-size:13px}.chart .lg{font-size:14.5px}.chart .vlabel{font-size:13.5px}.chart .ln{stroke-width:2.6}}@media (max-width:640px){.chart .axis{font-size:16px}.chart .unit{font-size:14px}.chart .lg{font-size:16px}.chart .vlabel{font-size:15px}.chart .ln{stroke-width:3.1}}</style>
|
|
566
|
+
<line class="grid" x1="56" y1="286.0" x2="622" y2="286.0"/>
|
|
567
|
+
<text class="axis" x="46" y="290.0" text-anchor="end">0</text>
|
|
568
|
+
<line class="grid" x1="56" y1="221.0" x2="622" y2="221.0" opacity=".45"/>
|
|
569
|
+
<text class="axis" x="46" y="225.0" text-anchor="end">500</text>
|
|
570
|
+
<line class="grid" x1="56" y1="156.0" x2="622" y2="156.0" opacity=".45"/>
|
|
571
|
+
<text class="axis" x="46" y="160.0" text-anchor="end">1,000</text>
|
|
572
|
+
<line class="grid" x1="56" y1="91.0" x2="622" y2="91.0" opacity=".45"/>
|
|
573
|
+
<text class="axis" x="46" y="95.0" text-anchor="end">1,500</text>
|
|
574
|
+
<line class="grid" x1="56" y1="26.0" x2="622" y2="26.0" opacity=".45"/>
|
|
575
|
+
<text class="axis" x="46" y="30.0" text-anchor="end">2,000</text>
|
|
576
|
+
<text class="unit" x="622" y="16" text-anchor="end">million bushels</text>
|
|
577
|
+
<rect x="318.8" y="94.1" width="40.5" height="191.9" rx="2" fill="var(--c-a)" opacity=".85"/>
|
|
578
|
+
<line class="grid" x1="56" y1="286.0" x2="622" y2="286.0"/>
|
|
579
|
+
</svg>
|
|
580
|
+
<figcaption class="chartcap">A 1.1% change in the yield input moves ending stocks by about 11% in either direction. The balance sheet is a lever, and the fulcrum sits very close to the crop. <span class="chartsrc">Calculated on the August 2026 WASDE sheet, holding demand and area constant at 88.6 m harvested acres.</span></figcaption>
|
|
581
|
+
</figure>
|
|
582
|
+
<p>Eleven percent either way, out of a one percent input. That is the whole reason a yield estimate is worth arguing about for six weeks.</p>
|
|
583
|
+
<p><strong>A warning about that table, though.</strong> It holds demand fixed, and a real balance sheet does not. A sheet is a set of quantities <em>at an assumed price</em>. Cut the crop, lift the price, and exports and ethanol grind both start to fall — which rebuilds part of the stocks you just removed. Rationing is not a metaphor. It is the arithmetic by which the sheet closes at a higher price.</p>
|
|
584
|
+
<h2 id="stocks-to-use-bends">Stocks-to-use bends<a class="anchor" href="#stocks-to-use-bends" aria-label="Link to this section">#</a></h2>
|
|
585
|
+
<p>The relationship between stocks-to-use and price is not a line. It is a curve, and it bends.</p>
|
|
586
|
+
<p>From 15% down to 12%, price barely notices. There is plenty of corn either way and the marginal bushel is not scarce. From 10% down to 8%, price goes vertical, because at that level somebody has to be rationed out of the market and price is the only tool that does it.</p>
|
|
587
|
+
<p>Which means the same two-bushel yield move is worth almost nothing at a comfortable stocks-to-use and an enormous amount at a tight one. At 10.1%, corn is close enough to the bend that the market is paying attention — and that, rather than the headline figure, is why an August yield print gets traded as hard as it does.</p>
|
|
588
|
+
<h2 id="the-line-that-hides-the-sins">The line that hides the sins<a class="anchor" href="#the-line-that-hides-the-sins" aria-label="Link to this section">#</a></h2>
|
|
589
|
+
<p><strong>Feed and residual.</strong> Two words, and the second is doing real work.</p>
|
|
590
|
+
<p>Nobody counts the corn a hog eats. Feed use is inferred: take the quarterly Grain Stocks survey, subtract everything that can actually be measured, and whatever remains gets called feed and residual. So every measurement error in the sheet — in production, in exports, in the survey itself — lands in that one line.</p>
|
|
591
|
+
<p>Which means that when feed and residual moves, sometimes it is telling you about livestock, and sometimes it is telling you the crop was never the size they said it was.</p>
|
|
592
|
+
<p>Ending stocks is a residual. Feed and residual is a residual sitting inside it.</p>
|
|
593
|
+
<h2 id="where-analysts-actually-disagree">Where analysts actually disagree<a class="anchor" href="#where-analysts-actually-disagree" aria-label="Link to this section">#</a></h2>
|
|
594
|
+
<p>Here is what the argument sounds like the morning before a report.</p>
|
|
595
|
+
<blockquote><strong>Analyst:</strong> I have got carryout at one six eight.<br><strong>Trader:</strong> On what yield?<br><strong>Analyst:</strong> One eighty-one. Same as theirs.<br><strong>Trader:</strong> Then where are we actually different?<br><strong>Analyst:</strong> Exports. You are carrying three three, I am at three two.<br><strong>Trader:</strong> A hundred million bushels of Mexico. That is not a crop view, that is a freight view.</blockquote>
|
|
596
|
+
<p>Notice where the disagreement sat. Not the yield — they agreed on the yield.</p>
|
|
597
|
+
<p>That is the pattern, and it has a structural cause. <strong>Supply is surveyed.</strong> Fields are walked, ears are counted, acres are measured from satellite imagery and from farm programme filings. Two analysts working from the same surveys land close together.</p>
|
|
598
|
+
<p><strong>Demand is inferred.</strong> Nobody surveys a feedlot's intentions. Export commitments are known, but shipment timing is a decision somebody else has not made yet — which is precisely what the Chinese soybean programme is demonstrating this month.</p>
|
|
599
|
+
<p>So two competent analysts converge on supply and diverge on demand. Which is why the interesting positions ahead of a report are rarely outright: a demand view is a view about <em>when</em> and <em>where</em>, and that lives in spreads.</p>
|
|
600
|
+
<h2 id="trading-the-surprise-not-the-number">Trading the surprise, not the number<a class="anchor" href="#trading-the-surprise-not-the-number" aria-label="Link to this section">#</a></h2>
|
|
601
|
+
<p>On 12 August USDA cut the corn yield to 180.7 bu/ac. The trade average going in was 182.5. So the yield surprise was 1.8 bushels — 159 million bushels of production, gone.</p>
|
|
602
|
+
<p>And the carryout printed only about 72 million below what the trade was carrying.</p>
|
|
603
|
+
<div class="tablewrap" tabindex="0" role="region" aria-label="Table, scrolls sideways"><table><thead><tr><th>Line</th><th>Effect</th></tr></thead><tbody><tr><td>Yield surprise, −1.8 bu/ac × 88.6 m ac</td><td>−159 m bu</td></tr><tr><td>Area and demand revisions</td><td>+87 m bu</td></tr><tr><td><strong>Carryout surprise</strong></td><td><strong>−72 m bu</strong></td></tr></tbody></table></div>
|
|
604
|
+
<p>Half the surprise disappeared on the way down the page. This is the trap that catches anyone who trades one line: <strong>the market does not price the yield, it prices the carryout</strong>, and the carryout has an area term, a demand term and a carry-in term, any of which can pay for a bad yield.</p>
|
|
605
|
+
<p>December corn added roughly 20¼¢ on the print. It then did not hand it back — it closed Monday 17 August at 489½, above its report-day close. But that was a different trade. The follow-through came from impaired Black Sea export capacity, a soaked eastern belt and a soybean complex pulling the whole board higher on Chinese buying. None of it was in the report.</p>
|
|
606
|
+
<p>Which is the last honest thing to say about report days. The number is the shock. The market is what happens over the next three weeks, and it needs its own reason.</p>
|
|
607
|
+
<section class="glossec"><h2 id="glossary">Glossary<a class="anchor" href="#glossary" aria-label="Link to this section">#</a></h2><p class="secnote">Every unit, convention and desk expression the show had introduced by episode 7. Nothing said in the audio should ever be unrecoverable.</p><details class="gloss"><summary>Open the glossary<span class="sl">115 terms</span></summary><div class="glossbody"><label class="gsearch"><span class="vh">Search the glossary</span><input type="search" id="gfilter" placeholder="Search terms…" autocomplete="off"></label><div class="gchips" role="group" aria-label="Filter by episode"><button type="button" class="gchip on" data-gep="all">All<span class="gn">115</span></button><button type="button" class="gchip" data-gep="1">Ep 1<span class="gn">37</span></button><button type="button" class="gchip" data-gep="2">Ep 2<span class="gn">15</span></button><button type="button" class="gchip" data-gep="3">Ep 3<span class="gn">11</span></button><button type="button" class="gchip" data-gep="4">Ep 4<span class="gn">13</span></button><button type="button" class="gchip" data-gep="5">Ep 5<span class="gn">12</span></button><button type="button" class="gchip" data-gep="6">Ep 6<span class="gn">13</span></button><button type="button" class="gchip" data-gep="7">Ep 7<span class="gn">14</span></button></div><dl id="glist"><div class="gterm" data-ep="6"><dt>abandonment</dt><dd>planted area never harvested for grain, lost to drought, flood or a switch to silage <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="2"><dt>ABCD</dt><dd>the four historic majors, Archer Daniels Midland, Bunge, Cargill and Louis Dreyfus <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="2"><dt>arb</dt><dd>the full economics of moving a cargo, buy price plus freight and costs against the sale <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="2"><dt>asset-heavy</dt><dd>owning the physical chain, which converts a volatile trading margin into a steadier toll <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="2"><dt>asset-light</dt><dd>renting elevators, terminals and plants rather than owning them <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="1"><dt>at</dt><dd>the small word that introduces the offer side (462 bid, at 462 and a half) <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>bag (coffee)</dt><dd>60 kg, how the coffee trade counts volume <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="7"><dt>balance sheet</dt><dd>the one-page supply and demand statement for one crop and one marketing year, built so that supply minus use equals ending stocks and the page closes <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="1"><dt>bid</dt><dd>the price a buyer will pay <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="4"><dt>bill of lading</dt><dd>receipt, contract of carriage and document of title in one, whoever holds it owns the cargo <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="1"><dt>bushel</dt><dd>volume measure standardized into weight, 60 lb for soybeans and wheat, 56 lb for corn <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>bushels per tonne</dt><dd>about 36.7 for soybeans and wheat, 39.4 for corn <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="3"><dt>calendar spread</dt><dd>the price difference between two months of the same contract, traded as one instrument at one price <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="4"><dt>cancelling date</dt><dd>the last day of the laycan, after which the counterparty may cancel <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="3"><dt>carry market (contango)</dt><dd>a curve with later months above nearer ones, the market pays for storage <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="2"><dt>carry-in</dt><dd>stocks left over from the previous season, the starting point of a balance sheet <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="7"><dt>carryout</dt><dd>ending stocks, the desk's one-word name for what is left at the end of the marketing year <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="1"><dt>cents per bushel</dt><dd>Chicago grain quoting unit, 4.39 dollars per bushel is spoken four thirty-nine <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="4"><dt>CFR</dt><dd>cost and freight, the seller pays the voyage to a named destination but risk still passes at loading <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="4"><dt>charter party</dt><dd>the contract hiring the vessel, between charterer and shipowner <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="4"><dt>CIF</dt><dd>cost insurance and freight, CFR plus the seller buys the marine insurance the buyer would claim on <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="1"><dt>conversion factors</dt><dd>36.7 bushels per tonne for wheat and beans and 39.4 for corn, so cents per bushel times 0.367 or 0.394 gives dollars per tonne <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="7"><dt>Crop Production</dt><dd>the USDA report published alongside WASDE carrying the survey-based yield and area figures <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="5"><dt>cross-hedge</dt><dd>hedging with a contract that is not your grade or your origin, which removes flat price and adds correlation risk <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="1"><dt>cwt</dt><dd>hundredweight, 100 lb, the quoting unit for US rice and cattle <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>cwt (hundredweight)</dt><dd>100 lb, the quoting unit for US rice <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="3"><dt>Dec over</dt><dd>spread quoting convention that names the expensive leg, December fifteen over means December is 15 cents above the other month <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="1"><dt>deferred</dt><dd>months or shipment windows further out <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="2"><dt>demurrage</dt><dd>the penalty owed when a vessel is held beyond the agreed laytime <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="4"><dt>despatch</dt><dd>the reward paid when loading beats laytime, customarily half the demurrage rate <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="1"><dt>differential</dt><dd>the premium or discount to a named futures month, as in November plus 80, the negotiated part of a physical quote <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>differential (basis)</dt><dd>the premium or discount to a named futures month, quoted as plus 80 or minus 20 <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="6"><dt>distillers grains</dt><dd>DDGS, the protein co-product of ethanol production, sold back into the feed market <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="1"><dt>done</dt><dd>the word that seals a trade <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="4"><dt>draft survey</dt><dd>weighing a cargo by reading the ship's displacement before and after loading <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="5"><dt>durum</dt><dd>the pasta wheat, a separate species with its own thin market <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="6"><dt>ethanol grind</dt><dd>the rate at which ethanol plants consume corn, which slows when the plant margin turns negative and removes corn demand in steps <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="5"><dt>falling number</dt><dd>the sprout-damage test, a low number demotes milling wheat to feed wheat <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="7"><dt>feed and residual</dt><dd>the inferred demand line that carries livestock feeding together with every measurement error in the rest of the sheet <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="6"><dt>feed floor</dt><dd>the price at which feed substitution demand appears under a grain, corn setting the floor under feed wheat <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="6"><dt>feed wheat</dt><dd>wheat sold on energy and protein rather than milling specification, priced relationally against corn rather than at a flat price <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="1"><dt>firm</dt><dd>a tradable quote that binds if accepted, often with a time limit <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>five percent more or less</dt><dd>the contractual tolerance on cargo size, exercised at the seller's option <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>flat price</dt><dd>the full outright price level <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="2"><dt>flat price exposure</dt><dd>outright price risk, removed deliberately by hedging so only the basis remains <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="2"><dt>FOB</dt><dd>free on board, the cargo is priced at the load port with the buyer taking it from the ship's rail <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="3"><dt>front month</dt><dd>the nearest actively traded contract month, where liquidity is deepest <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="3"><dt>full carry</dt><dd>storage plus interest per month of holding grain, the practical ceiling on a carry spread <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="7"><dt>Grain Stocks</dt><dd>the quarterly USDA survey of physical inventories, from which the feed and residual line is backed out <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="5"><dt>hard red spring (HRS)</dt><dd>the 13.5 percent plus Minneapolis wheat bought to lift the protein of a grist <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="5"><dt>hard red winter (HRW)</dt><dd>the 11 to 12.5 percent bread wheat priced at Kansas City, the US wheat that competes with the Black Sea <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="6"><dt>harvested acres</dt><dd>area actually cut for grain, roughly 8 million acres below planted for US corn, and the denominator that yield is quoted against <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="1"><dt>hit</dt><dd>your bid was taken by a seller <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>hit the bid</dt><dd>to sell into someone else's bid <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="7"><dt>implied disappearance</dt><dd>use derived by subtraction rather than by measurement, the technique that produces the residual lines of a balance sheet <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="6"><dt>inclusion rate</dt><dd>the share of a single ingredient in a feed ration, capped by nutrition and by anti-nutritional factors <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="4"><dt>Incoterms</dt><dd>the standard three-letter trade terms that allocate cost and risk between buyer and seller <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="1"><dt>indication</dt><dd>a guide price that is not firm <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="3"><dt>initial margin</dt><dd>the deposit the clearing house takes per lot when a position is opened <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="5"><dt>inter-exchange spread</dt><dd>the price gap between two exchanges pricing related but different goods, such as Kansas City over Chicago <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="3"><dt>inverse (backwardation)</dt><dd>a curve with nearer months above later ones, the market pays a premium for immediate delivery <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="1"><dt>laycan</dt><dd>the window during which a vessel may present for loading <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="4"><dt>laytime</dt><dd>the contractually allowed time to load or discharge before demurrage begins <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="1"><dt>lift the offer</dt><dd>to buy from someone else's offer <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>lifted</dt><dd>your offer was taken by a buyer <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="3"><dt>limit move</dt><dd>an exchange-set maximum daily price change, trading pauses beyond it <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="2"><dt>line-up</dt><dd>the queue of vessels waiting to load at a port, a key driver of origin basis <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="1"><dt>lot</dt><dd>one futures contract, 5,000 bushels for Chicago grains, the unit desks count positions in <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="7"><dt>marketing year</dt><dd>the accounting year a crop is measured in, September to August for US corn and soybeans and June to May for US wheat <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="5"><dt>Matif milling wheat (EBM)</dt><dd>the Paris contract, 50 tonnes a lot quoted in euros per tonne and delivered into Rouen and Dunkirk <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="1"><dt>metric tonne</dt><dd>2,204.6 lb, the grain trading weight unit outside the US <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>month codes</dt><dd>F G H J K M N Q U V X Z for January through December, the Z is December <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="7"><dt>NASS</dt><dd>USDA's National Agricultural Statistics Service, the body running the surveys behind the published numbers <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="7"><dt>new crop</dt><dd>the marketing year about to begin, priced by the contract months that follow the coming harvest <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="4"><dt>nomination</dt><dd>formally naming the performing vessel under a cargo contract <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="4"><dt>notice of readiness (NOR)</dt><dd>the master's formal declaration that the vessel has arrived and is ready, it starts the laytime clock <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="1"><dt>offer</dt><dd>the price a seller will accept <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="7"><dt>old crop</dt><dd>the marketing year now ending, priced by the contract months before the new harvest arrives <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="2"><dt>paper</dt><dd>exchange futures and options, used by a physical desk to hedge rather than to speculate <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="2"><dt>physical (cash)</dt><dd>real cargoes under contract with specs and load windows, as opposed to paper <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="6"><dt>planted acres</dt><dd>area sown, the number that moves on farmer decisions and USDA area surveys <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="1"><dt>point</dt><dd>one hundredth of a cent per pound, how softs desks count moves <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>point (softs)</dt><dd>one hundredth of a cent per pound, so up 300 points means up 3 cents <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="6"><dt>pollination</dt><dd>the roughly one-week corn window in mid-July in the northern hemisphere after which the ear count is fixed and no forecast can change it <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="5"><dt>price assessment</dt><dd>a published daily price built by surveying brokers and exporters, used where no futures contract exists <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="1"><dt>prompt</dt><dd>the nearby month or shipment window, ready to move now <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="5"><dt>protein spec</dt><dd>the contractual protein percentage that turns the word wheat into a price <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="5"><dt>quality basis</dt><dd>the spread between the grade you own and the grade the futures contract delivers <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="6"><dt>ration</dt><dd>the formulated feed mix a mill grinds, in which every ingredient carries an inclusion limit and a substitution price against the others <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="2"><dt>residual</dt><dd>a figure obtained by subtraction, such as ending stocks, which absorbs any error in the larger numbers almost in full <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="3"><dt>roll</dt><dd>closing a hedge in one month and reopening it further out, executed as a spread trade <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="6"><dt>safrinha</dt><dd>Brazil's second corn crop, planted February to March into soybean stubble and pollinating April to May, about three quarters of Brazilian corn production <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="1"><dt>short ton</dt><dd>2,000 lb, used by US soybean meal, about 10 percent lighter than a metric tonne <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="5"><dt>soft red winter (SRW)</dt><dd>the low-protein soft wheat the Chicago contract delivers, used for cakes biscuits and crackers <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="2"><dt>space time form</dt><dd>the three transformations a merchant is paid for, geography, storage and processing <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="4"><dt>statement of facts</dt><dd>the port log of events both sides use to fight laytime claims <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="2"><dt>stocks-to-use</dt><dd>ending stocks divided by total use, the market's tension gauge <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="5"><dt>test weight</dt><dd>the density measure telling a miller how much flour comes out of a tonne <span class="gep">ep 5</span></dd></div><div class="gterm" data-ep="1"><dt>tick</dt><dd>smallest price increment, a quarter cent per bushel in Chicago grains, worth 12.50 dollars per lot <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="3"><dt>ticker</dt><dd>the short screen code a contract is spoken by, ZW wheat, ZC corn, ZS soybeans, ZM meal, ZL oil, KC coffee, SB sugar, CT cotton <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="7"><dt>total supply</dt><dd>carry-in plus production plus imports, the top block of a balance sheet <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="7"><dt>total use</dt><dd>domestic use plus exports, the bottom block of a balance sheet <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="7"><dt>trade average</dt><dd>the published mean of analysts' pre-report estimates, and therefore the expectation already contained in the price <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="6"><dt>trend yield</dt><dd>the yield a crop would produce on normal weather, the baseline against which a weather premium is measured <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="3"><dt>variation margin</dt><dd>the daily cash settlement of a position mark to market, paid the same day <span class="gep">ep 3</span></dd></div><div class="gterm" data-ep="2"><dt>war-risk premium</dt><dd>an insurance surcharge on a vessel's hull value for sailing into a conflict zone, quoted as a percentage <span class="gep">ep 2</span></dd></div><div class="gterm" data-ep="1"><dt>WASDE</dt><dd>the USDA monthly World Agricultural Supply and Demand Estimates report <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>washed out</dt><dd>offsetting trades cancel each other and only the price difference is settled <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>washout</dt><dd>cancelling two offsetting physical contracts by settling the price difference instead of shipping <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="6"><dt>weather premium</dt><dd>the gap between where a crop trades and where it would trade at trend yield, the price of a distribution of outcomes rather than of a forecast <span class="gep">ep 6</span></dd></div><div class="gterm" data-ep="4"><dt>weather working day</dt><dd>a laytime day that counts only when weather permits cargo work <span class="gep">ep 4</span></dd></div><div class="gterm" data-ep="7"><dt>whisper number</dt><dd>the expectation the market is actually trading into a report, which can sit away from the published trade average <span class="gep now">ep 7</span></dd></div><div class="gterm" data-ep="1"><dt>work</dt><dd>leave an order resting with a broker <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>work an order</dt><dd>leave an order resting at your price and wait <span class="gep">ep 1</span></dd></div><div class="gterm" data-ep="1"><dt>workable</dt><dd>the quoted price is negotiable <span class="gep">ep 1</span></dd></div></dl><p class="gnone" hidden>No term matches that.</p></div></details></section>
|
|
608
|
+
</main>
|
|
609
|
+
<nav class="epnav" aria-label="Episodes">
|
|
610
|
+
<a class="epprev" href="ep06.html"><span class="dir">← Previous</span><span class="ept">Corn, Crop Calendars and Weather Risk</span><span class="epn">Episode 6</span></a>
|
|
611
|
+
<a class="epnext" href="ep08.html"><span class="dir">Next →</span><span class="ept">The Soybean Complex and the Crush</span><span class="epn">Episode 8</span></a>
|
|
612
|
+
</nav>
|
|
613
|
+
<details class="archive"><summary>All episodes<span class="sl">13 so far</span></summary><ol class="arclist"><li><a href="ep01.html"><b>01</b> The Units and the Language of the Desk</a></li><li><a href="ep02.html"><b>02</b> What a Merchant Does, and Why Basis Is the Whole Game</a></li><li><a href="ep03.html"><b>03</b> Futures Plumbing and the Shape of the Curve</a></li><li><a href="ep04.html"><b>04</b> The Physical Chain, End to End</a></li><li><a href="ep05.html"><b>05</b> Wheat: The Map and the Screens</a></li><li><a href="ep06.html"><b>06</b> Corn, Crop Calendars and Weather Risk</a></li><li class="here" aria-current="page"><a href="ep07.html"><b>07</b> WASDE and Building a Balance Sheet</a></li><li><a href="ep08.html"><b>08</b> The Soybean Complex and the Crush</a></li><li><a href="ep09.html"><b>09</b> Vegetable oils and biofuels</a></li><li><a href="ep10.html"><b>10</b> Freight: Dry Bulk and Chartering</a></li><li><a href="ep11.html"><b>11</b> Storage, Elevation and Trade Flows</a></li><li><a href="ep12.html"><b>12</b> Coffee: The Market</a></li><li><a href="ep13.html"><b>13</b> Coffee: Differentials, PTBF and Volatility</a></li></ol></details>
|
|
614
|
+
<footer>
|
|
615
|
+
<span class="sig"><b>Soft Commodity Trading</b> — a daily briefing on physical commodity trading.</span>
|
|
616
|
+
<span><a href="https://storage.googleapis.com/podcast-audio-2647223968/index.html">All episodes</a> · <a href="https://storage.googleapis.com/podcast-audio-2647223968/commodity-desk-daily/feed.xml">RSS</a></span>
|
|
617
|
+
</footer>
|
|
618
|
+
</div>
|
|
619
|
+
<script>
|
|
620
|
+
(function(){
|
|
621
|
+
var doc = document.documentElement;
|
|
622
|
+
|
|
623
|
+
/* theme */
|
|
624
|
+
var btn = document.querySelector('.themebtn');
|
|
625
|
+
if(btn) btn.addEventListener('click', function(){
|
|
626
|
+
var next = doc.getAttribute('data-theme') === 'dark' ? 'light' : 'dark';
|
|
627
|
+
doc.setAttribute('data-theme', next);
|
|
628
|
+
try{ localStorage.setItem('cdd-theme', next); }catch(e){}
|
|
629
|
+
});
|
|
630
|
+
|
|
631
|
+
/* reading progress */
|
|
632
|
+
var bar = document.getElementById('bar'), ticking = false;
|
|
633
|
+
function progress(){
|
|
634
|
+
var h = doc.scrollHeight - innerHeight;
|
|
635
|
+
bar.style.width = (h > 0 ? Math.min(100, Math.max(0, scrollY / h * 100)) : 0) + '%';
|
|
636
|
+
ticking = false;
|
|
637
|
+
}
|
|
638
|
+
if(bar){
|
|
639
|
+
addEventListener('scroll', function(){
|
|
640
|
+
if(!ticking){ ticking = true; requestAnimationFrame(progress); }
|
|
641
|
+
}, {passive:true});
|
|
642
|
+
addEventListener('resize', progress, {passive:true});
|
|
643
|
+
progress();
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
/* contents: mark the section being read */
|
|
647
|
+
var links = [].slice.call(document.querySelectorAll('.toc a'));
|
|
648
|
+
if(links.length && 'IntersectionObserver' in window){
|
|
649
|
+
var map = {};
|
|
650
|
+
links.forEach(function(a){
|
|
651
|
+
var el = document.getElementById(decodeURIComponent(a.hash.slice(1)));
|
|
652
|
+
if(el) map[el.id] = a.parentNode;
|
|
653
|
+
});
|
|
654
|
+
var seen = [];
|
|
655
|
+
var io = new IntersectionObserver(function(entries){
|
|
656
|
+
entries.forEach(function(en){
|
|
657
|
+
var id = en.target.id, at = seen.indexOf(id);
|
|
658
|
+
if(en.isIntersecting){ if(at < 0) seen.push(id); }
|
|
659
|
+
else if(at >= 0){ seen.splice(at, 1); }
|
|
660
|
+
});
|
|
661
|
+
links.forEach(function(a){ a.parentNode.classList.remove('on'); });
|
|
662
|
+
if(seen.length && map[seen[0]]) map[seen[0]].classList.add('on');
|
|
663
|
+
}, {rootMargin:'-64px 0px -70% 0px'});
|
|
664
|
+
Object.keys(map).forEach(function(id){
|
|
665
|
+
var el = document.getElementById(id); if(el) io.observe(el);
|
|
666
|
+
});
|
|
667
|
+
}
|
|
668
|
+
|
|
669
|
+
/* playback speed */
|
|
670
|
+
var audio = document.querySelector('audio');
|
|
671
|
+
[].forEach.call(document.querySelectorAll('.rate'), function(b){
|
|
672
|
+
b.addEventListener('click', function(){
|
|
673
|
+
if(!audio) return;
|
|
674
|
+
audio.playbackRate = parseFloat(b.dataset.rate);
|
|
675
|
+
[].forEach.call(document.querySelectorAll('.rate'), function(o){
|
|
676
|
+
o.setAttribute('aria-pressed', String(o === b));
|
|
677
|
+
});
|
|
678
|
+
});
|
|
679
|
+
});
|
|
680
|
+
|
|
681
|
+
/* solutions: reveal all / hide all */
|
|
682
|
+
[].forEach.call(document.querySelectorAll('[data-solnall]'), function(b){
|
|
683
|
+
b.addEventListener('click', function(){
|
|
684
|
+
var open = b.dataset.solnall === 'open';
|
|
685
|
+
[].forEach.call(document.querySelectorAll('details.soln'), function(d){
|
|
686
|
+
d.open = open;
|
|
687
|
+
});
|
|
688
|
+
});
|
|
689
|
+
});
|
|
690
|
+
|
|
691
|
+
/* an answer linked to directly should already be open */
|
|
692
|
+
function openTarget(){
|
|
693
|
+
var id = location.hash.slice(1);
|
|
694
|
+
if(!id) return;
|
|
695
|
+
var el = document.getElementById(decodeURIComponent(id));
|
|
696
|
+
while(el){
|
|
697
|
+
if(el.tagName === 'DETAILS') el.open = true;
|
|
698
|
+
el = el.parentElement;
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
addEventListener('hashchange', openTarget); openTarget();
|
|
702
|
+
|
|
703
|
+
/* glossary: an episode chip and a search box, which compose */
|
|
704
|
+
var gf = document.getElementById('gfilter'), list = document.getElementById('glist');
|
|
705
|
+
if(list){
|
|
706
|
+
var rows = [].slice.call(list.querySelectorAll('.gterm'));
|
|
707
|
+
var chips = [].slice.call(document.querySelectorAll('.gchip'));
|
|
708
|
+
var none = document.querySelector('.gnone');
|
|
709
|
+
var pick = 'all';
|
|
710
|
+
function apply(){
|
|
711
|
+
var q = gf ? gf.value.trim().toLowerCase() : '', hits = 0;
|
|
712
|
+
rows.forEach(function(r){
|
|
713
|
+
var on = (pick === 'all' || r.dataset.ep === pick) &&
|
|
714
|
+
(!q || r.textContent.toLowerCase().indexOf(q) > -1);
|
|
715
|
+
r.hidden = !on; if(on) hits++;
|
|
716
|
+
});
|
|
717
|
+
if(none) none.hidden = hits > 0;
|
|
718
|
+
}
|
|
719
|
+
if(gf) gf.addEventListener('input', apply);
|
|
720
|
+
chips.forEach(function(c){
|
|
721
|
+
c.addEventListener('click', function(){
|
|
722
|
+
pick = c.dataset.gep;
|
|
723
|
+
chips.forEach(function(o){ o.classList.toggle('on', o === c); });
|
|
724
|
+
apply();
|
|
725
|
+
});
|
|
726
|
+
});
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
/* printing: paper has no disclosure triangles */
|
|
730
|
+
var reopen = [];
|
|
731
|
+
addEventListener('beforeprint', function(){
|
|
732
|
+
reopen = [].filter.call(document.querySelectorAll('details'), function(d){
|
|
733
|
+
return !d.open;
|
|
734
|
+
});
|
|
735
|
+
reopen.forEach(function(d){ d.open = true; });
|
|
736
|
+
});
|
|
737
|
+
addEventListener('afterprint', function(){
|
|
738
|
+
reopen.forEach(function(d){ d.open = false; });
|
|
739
|
+
reopen = [];
|
|
740
|
+
});
|
|
741
|
+
})();
|
|
742
|
+
</script>
|
|
743
|
+
</body>
|
|
744
|
+
</html>
|