Methodology/Złoto i FX
Methodology

Czy złoto zdrożało, czy to twoja waluta staniała?

Od 10 lipca 2025 do 10 lipca 2026 cena złota w USD wzrosła o 23.93%. Ta sama pozycja w złocie zyskała 26.95% w EUR, 37.97% w IDR oraz 45.50% w TRY po uwzględnieniu składnika kursu walutowego w walucie lokalnej.

MMexchangerate.dev·Jul 13, 2026·7 min czytania

Dla inwestora mierzącego wartość złota w walucie kwotowanej za USD, lokalny zwrot ze złota wynosi (1 + gold USD return) × (1 + USD/local FX return) − 1. Ostatni składnik ma znaczenie: dodanie dwóch zmian procentowych to przybliżenie, a nie dokładny wynik. To porównanie wykorzystuje rozliczone sztabki złota oraz obserwacje FX bez wypełniania „do przodu” (forward-fill) dla tych samych dwóch dni roboczych.

Key points
W wybranym roku zwrot ze złota w USD wyniósł 23.93%; przedstawione tu wyniki w walucie lokalnej wahają się od 26.95% w EUR do 45.50% w TRY.
Zwrot ze złota w walucie lokalnej łączy ruch ceny złota w USD, ruch kursu FX oraz niewielki składnik interakcji.
Ta formuła jest tożsamością rachunkową. Nie wyjaśnia, co spowodowało ruch na którymkolwiek z rynków.
Obie obserwacje krańcowe muszą być rozliczone lub opublikowane dla wybranego dnia roboczego.
Obserwacje FX wypełnione „do przodu” (forward-filled) są wyłączone z tego porównania badawczego.

Pytanie, na które odpowiada ta seria

Wykres złota w USD odpowiada na jedno przydatne pytanie. Nie odpowiada na pytanie, czego doświadczył lokalny inwestor. Gdy złoto jest mierzone w IDR, INR, JPY, EUR lub TRY, na wynik składają się zarówno cena w dolarach, jak i kurs wymiany dolara względem tej waluty.

Nie oznacza to, że rosnąca lokalna cena złota ma jedną prostą przyczynę. Ta kalkulacja jedynie rozdziela obserwowalne składniki ceny i FX w danym okresie. Nie zawiera prognozy ani żadnej sugestii co do działań inwestorów.

Dokładna formuła

Niech g oznacza zwrot ze złota w USD, a f zwrot kursu FX wyrażonego jako waluta lokalna za USD. Niech L oznacza zwrot ze złota w walucie lokalnej. Wtedy:

formula · local-currency gold returncopy
g = gold_usd_end / gold_usd_start - 1
f = usd_to_local_end / usd_to_local_start - 1
L = (gold_usd_end × usd_to_local_end) / (gold_usd_start × usd_to_local_start) - 1

L = g + f + (g × f)

Ostatnie wyrażenie jest przydatne do wyjaśnienia. g to składnik złota w USD, f to składnik walutowy, a g × f to ich interakcja. Dlatego proste dodanie dwóch zmian procentowych nie jest dokładne.

Zweryfikowany okres porównawczy

Zweryfikowane wspólne dni robocze
10 lipca 2025 i 10 lipca 2026 to dni z rozliczonym dziennym zamknięciem XAU/USD oraz obserwacjami FX (baza USD) bez wypełniania „do przodu” dla EUR, JPY, IDR, INR i TRY. Dni weekendowe i wciąż formujące się zostały wykluczone.

Wybrany okres: 2025-07-10 do 2026-07-10. Zamknięcie ceny złota: 3323.81 do 4119.172 USD za uncję trojańską. Każdy kurs FX to waluta lokalna za USD. Wszystkie wyświetlane wartości procentowe są zaokrąglone do dwóch miejsc po przecinku; obliczenia zachowują pełną precyzję.

WalutaSkładniki: złoto USD / FXZwrot ze złota w walucie lokalnej
EUR23.93% + 2.44% + 0.58%26.95%
JPY23.93% + 10.63% + 2.54%37.10%
IDR23.93% + 11.33% + 2.71%37.97%
INR23.93% + 11.16% + 2.67%37.76%
TRY23.93% + 17.41% + 4.17%45.50%

Obserwacje źródłowe

Składnik złota w USD pochodzi z rozliczonych dziennych świec XAU-USD-SPOT. Składnik FX pochodzi z datowanych obserwacji w bazie USD dla EUR, JPY, IDR, INR i TRY. Obie odpowiedzi FX miały source: ecb_daily, is_forward_filled: false oraz data_updated_at równe żądanej dacie. Są to orientacyjne kursy referencyjne, a nie ceny rozliczeniowe ani transakcyjne.

requests · exact inputs to preservecopy
GET https://api.goldprice.dev/v1/bars?symbol=XAU-USD-SPOT&interval=1d&from=2025-07-10T00:00:00Z&to=2026-07-10T00:00:00Z&limit=400

GET https://api.exchangerate.dev/v1/2025-07-10/USD?symbols=EUR,JPY,IDR,INR,TRY
GET https://api.exchangerate.dev/v1/2026-07-10/USD?symbols=EUR,JPY,IDR,INR,TRY

Data jest ważna tylko wtedy, gdy świeca złota jest rozliczona, a obserwacja FX nie jest wypełniona „do przodu”. Jeśli rocznica kalendarzowa nie spełnia obu warunków, obie daty porównania przesuwają się wspólnie wstecz do najbliższej wspólnej pary dni roboczych. Zapobiega to sytuacji, w której jedna seria po cichu wykorzystuje inny dzień niż druga.

Odtwórz obliczenie

python · calculate and verify each currencycopy
from decimal import Decimal

gold_start = Decimal("3323.81")
gold_end = Decimal("4119.172")
fx_start = Decimal("16237.25")  # IDR per USD on 2025-07-10
fx_end = Decimal("18076.55")    # IDR per USD on 2026-07-10

g = gold_end / gold_start - 1
f = fx_end / fx_start - 1
local_return = (gold_end * fx_end) / (gold_start * fx_start) - 1
interaction = g * f

assert local_return == g + f + interaction

Asercja jest przydatnym sprawdzeniem przed publikacją. Niezerowa różnica po dokładnej arytmetyce dziesiętnej zwykle oznacza, że orientacja kursu została odwrócona, data była niedopasowana albo wartość pośrednia została zaokrąglona zbyt wcześnie.

Czego to nie mierzy

  • Premie dealerów detalicznych, podatki, koszty przechowywania, spready lub koszty dostawy.
  • Cenę transakcyjną ani cenę rozliczeniową. Obserwacje FX to orientacyjne dane referencyjne.
  • Wyjaśnienia przyczynowego, prognozy ani rekomendacji inwestycyjnej.

Dla kodu aplikacji wymagającego dłuższej serii w walucie lokalnej zobacz przewodnik po historycznych zakresach FX oraz dokumentację świec goldprice.dev. Kluczowe nie jest samo mnożenie. Kluczowe jest zachowanie dwóch obserwacji, które czynią to mnożenie historycznie rzetelnym.

MM
exchangerate.dev
Notatki metodologiczne dla deweloperów pracujących z historycznymi danymi FX.

Keep reading

GuideHistoryczne kursy FX i szeregi czasowe w jednym zapytaniuRead GuideJak uzupełniać historyczne kursy FX bez błędu zaglądania w przyszłość (look-ahead bias)Read GuidePrzetestuj historycznie zwroty ze złota w swojej walucie krajowejRead