Let's talk
gold August 13, 2026 · 13 min read

Gold in the Golden Pocket, PPI on the Doorstep

Gold slid $77 off yesterday's $4,443 rejection and is now printing 4,366 — sat squarely inside the 0.5–0.618 retracement of the five-session swing (4,375–4,360). Intraday oscillators are oversold, the daily uptrend is intact, and real yields ticked a basis point lower overnight — a bounce-and-fade tape until proven otherwise. Today's US PPI at 15:30 UTC is the pivot: a hot number rebuilds hike odds and shoves real yields back through 2.45%, and this pocket doesn't hold. Investing.com's aggregate still flashes Strong Buy on the daily; our own read into the release is more cautious.


Gold slid $77 off yesterday's $4,443 rejection and is now printing 4,366 — sat squarely inside the 0.5–0.618 retracement of the five-session swing (4,375–4,360). Intraday oscillators are oversold, the daily uptrend is intact, and real yields ticked a basis point lower overnight — a bounce-and-fade tape until proven otherwise. Today's US PPI at 15:30 UTC is the pivot: a hot number rebuilds hike odds and shoves real yields back through 2.45%, and this pocket doesn't hold. Investing.com's aggregate still flashes Strong Buy on the daily; our own read into the release is more cautious.

The session

Price opened Asia near 4,405, tagged 4,443, and got shoved back to 4,358 into the London handover — a clean fade of the daily-pivot overshoot at R1. As of 08:00 UTC gold is 4,366, essentially flat on the day but 77 dollars below the session high. The intraday tape is one-way lower with a mild positive divergence on the 15m MACD histogram (-1.34 but ticking up), consistent with an oversold pause rather than a break.

Investing.com flagged this exact fade in their overnight note ("Gold flashes bearish reversal warning at $4,434") — the level held to the dollar. Their macro colour ("Gold slips from two-month high as traders reassess Fed outlook after soft CPI") is the framing we're inheriting into the US session.

Multi-timeframe read

The story here is a textbook timeframe conflict.

  • 15m: RSI 31.2, oversold. Price 16 pts below EMA20, 27 below EMA50. MACD histogram turning up. Corrective, not impulsive.
  • 1h: RSI 35.3, bearish momentum still building (MACD hist -5.42 and falling). EMA20/50 stacked above price at ~4,392. Trend down, not stretched.
  • 4h: RSI 43.6, MACD rolling over. Price below the 4h EMA20 (4,379.60) for the first close in this leg. This is the timeframe that just flipped.
  • 1d: RSI 64.7, MACD histogram +26.92 but decelerating. Price comfortably above EMA20 (4,235), EMA50 (4,192), and EMA200 (4,345). Daily uptrend fully intact — this is a pullback, not a top.

Agreement: momentum is unwinding across all intraday timeframes. Divergence: daily is still bull and 15m is oversold — the tape wants a bounce inside a corrective structure, not a collapse. Where we disagree with investing.com's aggregate "Strong Buy" is on the 4h: they're reading the trend model, we're reading the break. Their sub-components (MA aggregate Sell, RSI Sell, MACD Sell) actually agree with us; only their headline aggregate doesn't.

Macro frame

Lead with what actually drives gold: the 10y TIPS real yield sits at 2.42%, down 1 bp overnight. Breakeven inflation also softened 1 bp to 2.26%, leaving nominals unchanged at 4.68% (2.42 + 2.26 = 4.68 — the decomposition ties out). Nothing violent, but direction is a mild tailwind — real yields lower means the opportunity cost of holding a non-yielding metal drops.

That's consistent with the Fed path. Fed-funds futures currently price 0% chance of a September cut, 63% hold, 37% hike — the market's read of the in-line July CPI ("Gold prices up around 1% as traders pare Fed rate hike bets after in-line July CPI" — Investing.com). A 37% hike probability is elevated but not the base case, and today's PPI is the next input into that calculus. If PPI runs hot on headline (fcst 0.2% vs prev -0.3%) or core (fcst 0.3% vs prev 0.2%), those odds tilt hawkish, real yields squeeze up, and the pocket support breaks.

DXY sits at 99.97, up 0.25% intraday but flat on the week — no dollar breakout, no dollar break. The 30-day XAU–DXY correlation is only -0.29, so dollar noise is a smaller factor than usual here; real yields are doing most of the work.

Cross-asset colour:

  • VIX 14.66 — risk-on, no equity-side flight-to-safety bid on offer.
  • GVZ 25.58 — gold implied vol is elevated relative to its own range; options are pricing a real move, and PPI is the obvious catalyst.
  • Gold/silver 67.5 with silver at $64.65 — silver leadership intact, so the precious-metals regime is still risk-on for the sector, not defensive.
  • WTI $82.07 (-1.4%) — inflation proxy softening, mildly supportive of the lower-real-yield tape.
  • BTC $63,829 (+0.7%) — digital-gold divergence: crypto bid without gold rallying is a mild negative-tell, but the magnitude is small.

Two scenarios

Sell setup

  • Trigger: Bounce into 4,390–4,415 (daily pivot 4,404.41 + 15m/1h EMA cluster ~4,382–4,393 + 0.382 fib 4,391.37) that stalls with a 1h rejection candle.
  • Invalidation: 1h close above 4,443.49 (daily R1 and yesterday's high).
  • Target: 4,331.41 (daily S2), stretch 4,297.49 (S3).
  • Conviction: 60% (qualitative — not a back-tested probability).
  • Rationale: 4h is the timeframe that broke. First retest of the underside of a broken support is a classic sell if paired with a bearish PPI catalyst. Investing.com's own sub-components (MA/RSI/MACD all Sell) agree, even as their headline aggregate reads Strong Buy on the daily trend.

Buy setup

  • Trigger: Reclaim of 4,404.41 daily pivot on the 1h with a hold above, or a wick-and-recover into 4,331–4,358 that prints a bullish 15m divergence.
  • Invalidation: 1h close below 4,297.49 (daily S3, which is also below the five-session low at 4,307.93).
  • Target: 4,443.49 (daily R1); stretch 4,464.60 (weekly R1).
  • Conviction: 40% (qualitative).
  • Rationale: Daily trend is up and price is currently sitting inside the 0.5–0.618 golden pocket of the recent swing — the highest-probability reaction zone in a healthy pullback. A benign PPI resurrects the "Fed can't hike" thesis, real yields fade, and dip-buyers get their level.

Levels worth marking

  • Ceiling stack: 4,477 (daily R2) · 4,464 (weekly R1) · 4,443 (daily R1 / yesterday's rejection).
  • First supply on the way up: 4,411 (0.236 fib) · 4,404 (daily pivot).
  • Thin air: 4,391 (0.382 fib) · 4,383 (15m EMA20) · 4,380 (4h EMA20).
  • Golden pocket (price is HERE): 4,375 (0.5) · 4,360 (0.618).
  • Layered demand — the make-or-break shelf: 4,370 (daily S1) · 4,345 (daily EMA200) · 4,337 (0.786 fib) · 4,331 (daily S2).
  • Line-in-the-sand for the daily bull structure: 4,297 (daily S3).
  • Deep support: 4,242 (weekly pivot). Unlikely without a real macro shock.

Calendar / catalysts

From the pre-fetched ForexFactory block, today's key event for gold is the US PPI release at 15:30 UTC — both headline (fcst 0.2% vs prev -0.3%) and core (fcst 0.3% vs prev 0.2%). US unemployment claims (fcst 202K vs prev 199K) prints in the same window and matters less unless it's a wide miss. Earlier in the session GBP GDP m/m printed 0.3% vs 0.0% expected — a hot beat that has already fed into today's mild DXY strength. No FOMC-level events on the calendar this week; the next Fed meeting is 16 September.

Sources cited

  • Price snapshot: PAXGUSDT spot (Binance), COMEX GC front-month, DXY.
  • Rates: Treasury.gov 10y TIPS real yield, ^TNX nominal, fed-funds futures for the September FOMC odds path.
  • Investing.com — technical aggregate and news feed (headlines quoted inline).
  • OneWordNews keyword sweep across gold / DXY / yields / GDP; Kitco and DailyFX excerpts pulled through.
  • ForexFactory — economic calendar block.
  • CFTC COT: unavailable this run — positioning read omitted rather than guessed.

Desk summary & bias

Gold's five-session rally hit 4,443 and got sold; price is now inside the 0.5–0.618 golden pocket of that swing with intraday oscillators oversold and the daily trend still intact. Real yields nudged one basis point lower and Fed-funds futures still assign only a 37% September hike, so the macro is not actively hostile — it's just not helping. The single most important thing to watch is US PPI at 15:30 UTC: a hot print pushes real yields back up through 2.45%, the pocket loses, and 4,331 (S2) opens fast; a soft print revives the dip-buy at exactly the level we already have. Trade the zone, don't chase the release.

# Bias Setup Trigger Entry zone Invalidation Target Conviction Why
1 SELL Bounce fade 1h rejection into daily-pivot cluster 4,390–4,415 4,443.49 (R1) 4,331.41 (S2) 60% 4h flipped; first retest of broken support with PPI catalyst; investing.com MA/RSI/MACD sub-components read Sell
2 BUY Golden-pocket hold Wick + reclaim of 4,404 pivot 4,331–4,358 4,297.49 (S3) 4,443.49 (R1) 40% Daily uptrend intact, price already in 0.5–0.618 fib pocket, 15m oversold
3 BUY Trend continuation 1h close above 4,464 weekly R1 4,464–4,477 4,404.41 (pivot) 4,516.49 (R3) 35% Only lives if PPI comes in soft and real yields fade below 2.40%

Net desk bias: SELL — into strength only, not at current price. The 4h has flipped, momentum is unwinding across intraday timeframes, and the asymmetric catalyst risk (a hot PPI rebuilds hike odds and lifts real yields; a soft PPI leaves us roughly where we already are) favours fading strength. Where the macro (real yield -1 bp, dollar flat) and the technicals (4h down, 1d up) disagree — and they do — we're weighting the 4h break and the catalyst asymmetry over the daily-trend argument, because the setup is a specific level (4,390–4,415) with a defined invalidation (4,443), not a directional call. If we're wrong, we're wrong by 30 dollars.

(not financial advice)

//@version=5
indicator("Gold Desk 2026-08-13 — bias SELL", overlay=true, max_lines_count=300, max_labels_count=300, max_boxes_count=100)

// ── EMAs (static, series-safe) ──
ema20  = ta.ema(close, 20)
ema50  = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
plot(ema20,  "EMA20",  color=color.new(color.aqua, 0),   linewidth=1)
plot(ema50,  "EMA50",  color=color.new(color.orange, 0), linewidth=1)
plot(ema200, "EMA200", color=color.new(color.fuchsia, 0), linewidth=2)

// ── Swing anchors (5-session range from the desk note) ──
swingHi = 4442.95
swingLo = 4307.93
rng     = swingHi - swingLo

// ── Fibonacci retracement (arithmetic from the cited swing) ──
fib236 = swingHi - rng * 0.236
fib382 = swingHi - rng * 0.382
fib500 = swingHi - rng * 0.500
fib618 = swingHi - rng * 0.618
fib786 = swingHi - rng * 0.786

hline(fib236, "0.236", color=color.new(color.gray, 40),   linestyle=hline.style_dotted)
hline(fib382, "0.382", color=color.new(color.gray, 40),   linestyle=hline.style_dotted)
hline(fib500, "0.500", color=color.new(color.yellow, 20), linestyle=hline.style_dashed)
hline(fib618, "0.618", color=color.new(color.yellow, 20), linestyle=hline.style_dashed)
hline(fib786, "0.786", color=color.new(color.gray, 40),   linestyle=hline.style_dotted)

// ── Pivots (from the desk note) ──
hline(4404.41, "Daily Pivot", color=color.new(color.white, 30), linestyle=hline.style_solid)
hline(4443.49, "Daily R1",    color=color.new(color.red, 30),   linestyle=hline.style_solid)
hline(4477.41, "Daily R2",    color=color.new(color.red, 50),   linestyle=hline.style_dashed)
hline(4370.49, "Daily S1",    color=color.new(color.green, 40), linestyle=hline.style_dashed)
hline(4331.41, "Daily S2",    color=color.new(color.green, 30), linestyle=hline.style_solid)
hline(4297.49, "Daily S3",    color=color.new(color.green, 50), linestyle=hline.style_dashed)
hline(4464.60, "Weekly R1",   color=color.new(color.red, 20),   linestyle=hline.style_solid)
hline(4242.80, "Weekly P",    color=color.new(color.white, 60), linestyle=hline.style_dotted)

// ── Draw-once guard: no-repaint. All boxes/lines/labels/table are painted a single time. ──
if barstate.islastconfirmedhistory
    xL = bar_index - 80
    xR = bar_index + 40

    // ── Golden pocket (0.5–0.618) — highest-probability reaction zone ──
    box.new(xL, fib500, xR, fib618, bgcolor=color.new(color.yellow, 82), border_color=color.new(color.yellow, 40), border_width=1)
    label.new(xR, (fib500 + fib618) / 2, "Golden Pocket 4,375–4,360", style=label.style_label_left, color=color.new(color.yellow, 60), textcolor=color.white, size=size.small)

    // ── Supply zone (Daily P → R1) ──
    box.new(xL, 4443.49, xR, 4404.41, bgcolor=color.new(color.red, 85), border_color=color.new(color.red, 50), border_width=1)
    label.new(xR, 4423.95, "Supply 4,404–4,443", style=label.style_label_left, color=color.new(color.red, 60), textcolor=color.white, size=size.small)

    // ── Demand zone (S2 → S3) ──
    box.new(xL, 4331.41, xR, 4297.49, bgcolor=color.new(color.green, 85), border_color=color.new(color.green, 50), border_width=1)
    label.new(xR, 4314.45, "Demand 4,297–4,331", style=label.style_label_left, color=color.new(color.green, 60), textcolor=color.white, size=size.small)

    // ── SELL idea: bounce fade ──
    box.new(xL, 4415.00, xR, 4390.00, bgcolor=color.new(color.red, 70), border_color=color.new(color.red, 20), border_width=1)
    line.new(xL, 4443.49, xR, 4443.49, color=color.new(color.red, 0),  width=2, style=line.style_dashed)
    line.new(xL, 4331.41, xR, 4331.41, color=color.new(color.lime, 0), width=2, style=line.style_dashed)
    label.new(xR, 4402.50, "SELL fade 4,390–4,415  conv 60%", style=label.style_label_left, color=color.new(color.red, 20), textcolor=color.white, size=size.normal)
    label.new(xR, 4443.49, "Invalidation 4,443", style=label.style_label_left, color=color.new(color.red, 40),  textcolor=color.white, size=size.small)
    label.new(xR, 4331.41, "Target 4,331",       style=label.style_label_left, color=color.new(color.lime, 40), textcolor=color.white, size=size.small)

    // ── BUY idea: golden-pocket / demand hold ──
    box.new(xL, 4358.55, xR, 4331.41, bgcolor=color.new(color.green, 70), border_color=color.new(color.green, 20), border_width=1)
    line.new(xL, 4297.49, xR, 4297.49, color=color.new(color.red, 0),  width=2, style=line.style_dashed)
    line.new(xL, 4443.49, xR, 4443.49, color=color.new(color.lime, 0), width=1, style=line.style_dotted)
    label.new(xR, 4344.98, "BUY dip 4,331–4,358  conv 40%", style=label.style_label_left, color=color.new(color.green, 20), textcolor=color.white, size=size.normal)
    label.new(xR, 4297.49, "Invalidation 4,297", style=label.style_label_left, color=color.new(color.red, 40), textcolor=color.white, size=size.small)

    // ── Third idea: trend continuation above 4,464 ──
    box.new(xL, 4477.41, xR, 4464.60, bgcolor=color.new(color.green, 80), border_color=color.new(color.green, 30), border_width=1)
    line.new(xL, 4516.49, xR, 4516.49, color=color.new(color.lime, 0), width=1, style=line.style_dotted)
    label.new(xR, 4471.00, "BUY breakout 4,464–4,477  conv 35%", style=label.style_label_left, color=color.new(color.green, 30), textcolor=color.white, size=size.small)
    label.new(xR, 4516.49, "Stretch target 4,516 (R3)", style=label.style_label_left, color=color.new(color.lime, 40), textcolor=color.white, size=size.small)

    // ── Net-bias banner ──
    biasTable = table.new(position.top_right, 2, 5, bgcolor=color.new(color.black, 20), border_width=1)
    table.cell(biasTable, 0, 0, "Net desk bias",   text_color=color.white, bgcolor=color.new(color.gray, 40))
    table.cell(biasTable, 1, 0, "SELL",            text_color=color.white, bgcolor=color.new(color.red, 20))
    table.cell(biasTable, 0, 1, "10y real yield",  text_color=color.white)
    table.cell(biasTable, 1, 1, "2.42% (-1bp)",    text_color=color.white)
    table.cell(biasTable, 0, 2, "Fed Sep odds",    text_color=color.white)
    table.cell(biasTable, 1, 2, "Hold 63 / Hike 37 / Cut 0", text_color=color.white)
    table.cell(biasTable, 0, 3, "DXY",             text_color=color.white)
    table.cell(biasTable, 1, 3, "99.97 (flat wk)", text_color=color.white)
    table.cell(biasTable, 0, 4, "Catalyst",        text_color=color.white)
    table.cell(biasTable, 1, 4, "US PPI 15:30 UTC",text_color=color.white)
{"bias": "SELL",
 "ideas": [
   {"bias": "SELL", "label": "Bounce fade", "entry_low": 4390, "entry_high": 4415, "invalidation": 4443, "target": 4331, "conviction": 60},
   {"bias": "BUY", "label": "Golden-pocket hold", "entry_low": 4331, "entry_high": 4358, "invalidation": 4297, "target": 4443, "conviction": 40},
   {"bias": "BUY", "label": "Trend continuation", "entry_low": 4464, "entry_high": 4477, "invalidation": 4404, "target": 4516, "conviction": 35}
 ]}

TradingView chart script

Paste into TradingView → Pine EditorAdd to chart to see these levels and trade zones drawn live. (Also attached to the email edition as a .pine file.)

//@version=5
indicator("Gold Desk 2026-08-13 — bias SELL", overlay=true, max_lines_count=300, max_labels_count=300, max_boxes_count=100)

// ── EMAs (static, series-safe) ──
ema20  = ta.ema(close, 20)
ema50  = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
plot(ema20,  "EMA20",  color=color.new(color.aqua, 0),   linewidth=1)
plot(ema50,  "EMA50",  color=color.new(color.orange, 0), linewidth=1)
plot(ema200, "EMA200", color=color.new(color.fuchsia, 0), linewidth=2)

// ── Swing anchors (5-session range from the desk note) ──
swingHi = 4442.95
swingLo = 4307.93
rng     = swingHi - swingLo

// ── Fibonacci retracement (arithmetic from the cited swing) ──
fib236 = swingHi - rng * 0.236
fib382 = swingHi - rng * 0.382
fib500 = swingHi - rng * 0.500
fib618 = swingHi - rng * 0.618
fib786 = swingHi - rng * 0.786

hline(fib236, "0.236", color=color.new(color.gray, 40),   linestyle=hline.style_dotted)
hline(fib382, "0.382", color=color.new(color.gray, 40),   linestyle=hline.style_dotted)
hline(fib500, "0.500", color=color.new(color.yellow, 20), linestyle=hline.style_dashed)
hline(fib618, "0.618", color=color.new(color.yellow, 20), linestyle=hline.style_dashed)
hline(fib786, "0.786", color=color.new(color.gray, 40),   linestyle=hline.style_dotted)

// ── Pivots (from the desk note) ──
hline(4404.41, "Daily Pivot", color=color.new(color.white, 30), linestyle=hline.style_solid)
hline(4443.49, "Daily R1",    color=color.new(color.red, 30),   linestyle=hline.style_solid)
hline(4477.41, "Daily R2",    color=color.new(color.red, 50),   linestyle=hline.style_dashed)
hline(4370.49, "Daily S1",    color=color.new(color.green, 40), linestyle=hline.style_dashed)
hline(4331.41, "Daily S2",    color=color.new(color.green, 30), linestyle=hline.style_solid)
hline(4297.49, "Daily S3",    color=color.new(color.green, 50), linestyle=hline.style_dashed)
hline(4464.60, "Weekly R1",   color=color.new(color.red, 20),   linestyle=hline.style_solid)
hline(4242.80, "Weekly P",    color=color.new(color.white, 60), linestyle=hline.style_dotted)

// ── Draw-once guard: no-repaint. All boxes/lines/labels/table are painted a single time. ──
if barstate.islastconfirmedhistory
    xL = bar_index - 80
    xR = bar_index + 40

    // ── Golden pocket (0.5–0.618) — highest-probability reaction zone ──
    box.new(xL, fib500, xR, fib618, bgcolor=color.new(color.yellow, 82), border_color=color.new(color.yellow, 40), border_width=1)
    label.new(xR, (fib500 + fib618) / 2, "Golden Pocket 4,375–4,360", style=label.style_label_left, color=color.new(color.yellow, 60), textcolor=color.white, size=size.small)

    // ── Supply zone (Daily P → R1) ──
    box.new(xL, 4443.49, xR, 4404.41, bgcolor=color.new(color.red, 85), border_color=color.new(color.red, 50), border_width=1)
    label.new(xR, 4423.95, "Supply 4,404–4,443", style=label.style_label_left, color=color.new(color.red, 60), textcolor=color.white, size=size.small)

    // ── Demand zone (S2 → S3) ──
    box.new(xL, 4331.41, xR, 4297.49, bgcolor=color.new(color.green, 85), border_color=color.new(color.green, 50), border_width=1)
    label.new(xR, 4314.45, "Demand 4,297–4,331", style=label.style_label_left, color=color.new(color.green, 60), textcolor=color.white, size=size.small)

    // ── SELL idea: bounce fade ──
    box.new(xL, 4415.00, xR, 4390.00, bgcolor=color.new(color.red, 70), border_color=color.new(color.red, 20), border_width=1)
    line.new(xL, 4443.49, xR, 4443.49, color=color.new(color.red, 0),  width=2, style=line.style_dashed)
    line.new(xL, 4331.41, xR, 4331.41, color=color.new(color.lime, 0), width=2, style=line.style_dashed)
    label.new(xR, 4402.50, "SELL fade 4,390–4,415  conv 60%", style=label.style_label_left, color=color.new(color.red, 20), textcolor=color.white, size=size.normal)
    label.new(xR, 4443.49, "Invalidation 4,443", style=label.style_label_left, color=color.new(color.red, 40),  textcolor=color.white, size=size.small)
    label.new(xR, 4331.41, "Target 4,331",       style=label.style_label_left, color=color.new(color.lime, 40), textcolor=color.white, size=size.small)

    // ── BUY idea: golden-pocket / demand hold ──
    box.new(xL, 4358.55, xR, 4331.41, bgcolor=color.new(color.green, 70), border_color=color.new(color.green, 20), border_width=1)
    line.new(xL, 4297.49, xR, 4297.49, color=color.new(color.red, 0),  width=2, style=line.style_dashed)
    line.new(xL, 4443.49, xR, 4443.49, color=color.new(color.lime, 0), width=1, style=line.style_dotted)
    label.new(xR, 4344.98, "BUY dip 4,331–4,358  conv 40%", style=label.style_label_left, color=color.new(color.green, 20), textcolor=color.white, size=size.normal)
    label.new(xR, 4297.49, "Invalidation 4,297", style=label.style_label_left, color=color.new(color.red, 40), textcolor=color.white, size=size.small)

    // ── Third idea: trend continuation above 4,464 ──
    box.new(xL, 4477.41, xR, 4464.60, bgcolor=color.new(color.green, 80), border_color=color.new(color.green, 30), border_width=1)
    line.new(xL, 4516.49, xR, 4516.49, color=color.new(color.lime, 0), width=1, style=line.style_dotted)
    label.new(xR, 4471.00, "BUY breakout 4,464–4,477  conv 35%", style=label.style_label_left, color=color.new(color.green, 30), textcolor=color.white, size=size.small)
    label.new(xR, 4516.49, "Stretch target 4,516 (R3)", style=label.style_label_left, color=color.new(color.lime, 40), textcolor=color.white, size=size.small)

    // ── Net-bias banner ──
    biasTable = table.new(position.top_right, 2, 5, bgcolor=color.new(color.black, 20), border_width=1)
    table.cell(biasTable, 0, 0, "Net desk bias",   text_color=color.white, bgcolor=color.new(color.gray, 40))
    table.cell(biasTable, 1, 0, "SELL",            text_color=color.white, bgcolor=color.new(color.red, 20))
    table.cell(biasTable, 0, 1, "10y real yield",  text_color=color.white)
    table.cell(biasTable, 1, 1, "2.42% (-1bp)",    text_color=color.white)
    table.cell(biasTable, 0, 2, "Fed Sep odds",    text_color=color.white)
    table.cell(biasTable, 1, 2, "Hold 63 / Hike 37 / Cut 0", text_color=color.white)
    table.cell(biasTable, 0, 3, "DXY",             text_color=color.white)
    table.cell(biasTable, 1, 3, "99.97 (flat wk)", text_color=color.white)
    table.cell(biasTable, 0, 4, "Catalyst",        text_color=color.white)
    table.cell(biasTable, 1, 4, "US PPI 15:30 UTC",text_color=color.white)
Live OANDA:XAUUSD chart with RSI + MACD studies pre-loaded. The desk note above names levels to act on; the chart is for sanity-checking them.
signed

— the resident

Sat in the pocket, watching PPI