Wolfram Language

Time Series Processing

Historical Currency Conversion

The closing prices of German company Siemens traded at the Frankfurt Stock Exchange in Germany are given in euros. Convert them to US dollars using the historical currency conversion rates for each closing date.

show complete Wolfram Language input
In[1]:=
Click for copyable input
siemens = TimeSeries@ WolframAlpha[ "Siemens stocks in 2015", \ {{"DateRangeSpecified:Close:FinancialData", 1}, "ComputableData"}];
In[2]:=
Click for copyable input
siemens = TemporalData[TimeSeries, {{ StructuredArray[QuantityArray, {253}, StructuredArray`StructuredData[QuantityArray, CompressedData[" 1:eJxdVW1IU2EUfkUscEVJ9gWyLH+IEhYMHJGrGxKrCMm23W2ybBWtfgStP1Em uBFaQTFDiAyiaxIWwcA/Yl8wpaKPUULIiixmEBUrKOiWgUa393ku+bYfezjn Pee85zznnPeu3Ht45/4iIcSM4C8e1Kz/fD+wsvOO/hejsSEd8muJ2uQlnEdW SBQ1kSDsjlK/RqLRe0Niovwt460PSdnTIjHffF2iEGNELQy/WxIzTlPqDe8I 48eCtKM8xHyFtIum3klZcy0KAV/g3vQp2hnA5osSMybQiM8w7+fUf2QcF+IO typoVQDM9aCewmCIfKGutu9KfZWdJxR7K88QeQmhzvf0u4/zWBfqz54lH6+I x1ugr2iBnU65gec19Ksgbg+jP9Pgo/Qn488J0592q8Oz40Rj9QoavWeIW2kX IU5Q/wn3CEPR/7O7G5qdn+aqov4z+TtPHsZtfhlvRxh92Q1++qMKJgp94Dey gHXVs84c+lfqZby1PP+B+cn1c36WsE9TkIedjNfBuUsqfbN4UFBzNdIO+Vem g8zrG+fdgbqy09iD0c2cozq777w3jTn0HuF8j8G+MMn5PGfni7omaznXS1nP PvrvgZ+nljxUc85+0z7HOA8x584Syhew3+kPOvPREa9Ph3+TDvsHAdRRoqMP CbwHrmIl/4SnjXIS92QnuHcvmW8x34En3LsU8+ii/zbyNa7zPrs/5KUIfamJ kM806x1Q5juTncf5z7Jv66hv514+5fs1TZ7fMM9HSl+sOMzzCnjpXW7nRT7A i9UP8lWn816pj6ZWQc6dlLIQ3fDz3A7g3nvQ53qgL2+l3KigEd9Ff01ivs3v Bx99ftTj8KNPi6EfveaDvcB5eoByxse6ffAf8aGuxz7ew3g3/eC1GvVFNhI7 kGchybq9zO8L7F1VAWAx7coCyMtkPDfsvYPEJOYre4jz18TvDb8/w8/An8jD zlzG+SrjvixU9iLj7FT2xdpvxnOwn+18H9zB2XorH8brZhyTdnPtdx1xU1eV ubHeWe6/G3ttnuZ8NlCe4vfw13/zvMG+F3MVv4x9Kj3Aer8q82LNIe3mI05h E/e0iPuYh515kDxtUb7f+eZjuvYHlgn1AA== "], "Euros", {{ 1}}]]}, CompressedData[" 1:eJxdl02KnDkQRHtgVr7F3ECZyt8jDHjlI3hh8GoWPdc3OL8SU3oMGNNBq6yK UOgp/df3f779+OPj4+Pzz/nr68/Pf/+nflH9/WV+2KG9vHWttxTzgLRlRdnC xZ7JxRG2INOXveWe33RQPupKKeVijSrI7a6QIcbFuRYXZyUXV27u+9r2LUUF 9rfsBfsjn19eaVnYVzwQzj4OrmyhfekOLNZVG/uqBMNRU9pXF9rXWMLFr6iu zGQ4kx3t7+f8IHUFF2sr9t07Gc78of2dSvu7RLi4OrlvF8MxNdofQftmwm6Y L3bDvBiOldG+9ab9+Si74bLYDZdmOG5O++6b9j2U3fAUdsOzGU4sp/1T2Ct1 sxvTDnZjToThRATtRxrtR212I1rZjdSg39xOv6+iQLqyDBnCNM6turKdfmsZ y1CyWYZSYRplSb/lQb8VxjKc63tlKdPoVfTbryCvVGcZphosQ5synLmftN+Z tN9FTu5ucnI+thGOLSUn5zjJyUEqOWnLyUlbz5lCFjlpq8lJk0VOmgg5aaKG cEycnBxJTs5KctJeBwZZhnBMhZy0A9ErlZw03eTkXH1nOJrk5Ehy8uHg5uIm J+3Q+spNTtqcNu1vIydtbiy6YXPNGM4B/1vOQtqfY0A3BlfkpJkGwxmo0L4F OTmSnLTzwlxZyXAmONp3JSfNNzk5kpw0t2Q4nuTkMJWcNG9yciQ5aa+kIDc5 OT0hJy2cnBxJTlpEMZxoctJykZOWQk7afEN2Y64rw0knJ4c45KTN5WY3sha7 kdUMp4TYtPPOX7mJzXmOiM2RzXAqic35hsSmVROb1ovYtDNQXLmJTZtvTPsd 5KR1LqThS0jCeSRJQl8z+ASkk4S+giT0lSShn7nmyhb4dRGScJpBErpsktDF SMJnBoJflyQJXYoknIedJJwfScK5N4rjnn+XJJzrShL6q82QQRK65mY42iSh P8MoFs87j+P2Z7DDvs+8hX23k4T+vPRcnCShP48o9523DfuakoR+pssrN0k4 LyZJ6A84sO98f9qfytL+9IzdeLqCfc8Ye6WRhP58mIudJHQPktA9neGcifhK IQlHkoQzx5GE/kxn2HemLdqfbWk/kiT0M3pfef4L9J9MJQmHuCThSJJwXiOS cPwlw8kiCWfYJAm9Fkk4kiT0Om/5WxpJ6OUkoVeQhCNJwpkYiuH0Igm9hSQc SpCE3qejbxlEn3cSffNIEH0xx9mUmzNhLHux7jehBFio "], 1, { "Continuous", 1}, {"Discrete", 1}, 1, { ValueDimensions -> 1, DateFunction -> Automatic, ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1}}}, True, 314.1];
In[3]:=
Click for copyable input
siemens["FirstValue"]
Out[3]=

Obtain historical currency conversion rates EUR/USD for that period.

show complete Wolfram Language input
In[4]:=
Click for copyable input
rates = TimeSeries[ First[WolframAlpha[ "euro to dollar in 2015", {{"Result", 1}, "ComputableData"}]]];
In[5]:=
Click for copyable input
rates = TemporalData[TimeSeries, {{ StructuredArray[QuantityArray, {343}, StructuredArray`StructuredData[QuantityArray, CompressedData[" 1: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 xQefADia+A3Zuhkpfm/wvojk4v8Bcie12w== "], "USCents", {{ 1}}]]}, CompressedData[" 1:eJxdmEHOJDUMRmckVtyCG8SJ7dhHQGLFhj0LJFYshvuLLx2YPLEZ/Z964q56 lfJz+qff//r1j69fvnz59oP++eXPb3//L/32FennH/XHytkjeo7xPZpHIs6l D19cVo7ow4uxjaVib5bKdJbaMViqVrLU/eJ/49K6TsaTXrSajjizCnFFsJS7 sVTMYqk0Z6k9Bkvt2ixVe7HU56K+RxueKGW2JkrZNGBfpgtJxp4s5btYKtJZ KsNYaq/NUh82L7YNluoGdiEvYp+WxD5nEPtcTuzTJ7HPMGKfOYj9PqIX9yb2 WUns2ljEridK7OvcPOIcxK7FxL7WJvblSex3p7yYi9jXnsS+yoh9VRP76iJ2 105CKdcjRClxJHYFYr8b9sUYxO5RxO65id13EruXE7v3InYVJvawQexhTez3 vXlxJbGHB7FHLGKPnMQe24g9dhO77o/Yozex5whiv6/vi3MR+3lXUEoXTOx6 qYg9P4VfzCT23E7sWYvYsyex3y6C2MS+rYh9zyT2fdAifu7vxZjErqdN7Dub 2PcuYr/N7MUOYi81SpQqW8Re04i9PpgRm9hLu5ClIom90on99tQXaxJ79SD2 6iZ2fUjs/XnaL84gdu19Ym+fxN5hxH5bO2IRe+9N7F1U6uqmUrWMSvVhVKrr FQR2RSpV+5VK9WuYF4NK9ZFUqjoQlXruvVmqqFQfTaW6DSrVzahUt0ml+hXd i06lqvNRqYpUqupQqf7ZZIhFpboaErD7HFSqT6NS/fr2xUml+lxUqvoxleoz qFSfSaVq31CpilTqkSKxq7MT+9X+i0alygNUqkt1xK79S+zLqVRXGyV29S9i Vx8hdr2xxH6nj+9RZYhdm4PY9ZCIXXSI3ReV6srELksQuyeVqkil+h2CXiwq 1b2pVEmSSj2Pk9hjUqkei0pVpFI9nEr1CCrV7yz24qZSJWcq1aOpVEUq1T9P CNGoVJczif2MGCh1NilLBZWqSKV6JpWqkYFK9SwqVQ+BSvU9qFTfRqWeTUXs aovEfifTF51KFWUqVc6gUl0tlth3UamKVKprgiD2GlSql1GpfgfkFxeVqomJ SlWkUr2CSvVKKlU7lErV3VGpmjaoVO9Bpfqd0xGpVO9JpWqOo1JdLIi9g0rV R1Sq96ZSFalU76JS/R4X/otq5VRqDKNSNU5SqTEWlfpRFUs5lRoa6yZLJZUa Y1OpcU8tLzaVqjGWSlWkUsOMStVrQ6VqCKBSw5xKPSecxVJJpcY9PL24qdSw olI1XFOp+pNKVbuiUmNOKlUXQaUqUqnqsFRq3DPci0mlxtxUapxfB7i26dA4 52Gs1XBNzucEiMs4Ry+UOqcLrg1KM848zbWb0oxVlGac0Q2lznSCtWcsSEZa MnzRktrMtGSc1s9Sm1qM01a4tqjFOC8S1p4djMu4h+MXneKLs5j/OSg++Yfi i9gUX9xz9otGtSlSbTqHUW1xzk/4Xp14SENfSxq5Ka+4B/oXm/LSy0w9SZLU kyL1pMGFetL9UU+xiwLSYZECihoUkCIFFGUUkLBSMWrlVEzcHyEQqRiNrVRM 9KBEoo0SUe+iRBQpkehFiehNoCZ03qUmJHJqQhMENaFITaSePW4/7w8nLzpF oJP0RwT/AAtnKg8= "], 1, {"Continuous", 1}, {"Discrete", 1}, 1, { ValueDimensions -> 1, DateFunction -> Automatic, ResamplingMethod -> {"Interpolation", InterpolationOrder -> 1}}}, True, 314.1];

Plot the historical rates compared with the current rate.

In[6]:=
Click for copyable input
current = FinancialData["EUR/USD"]
Out[6]=
show complete Wolfram Language input
In[7]:=
Click for copyable input
DateListPlot[{rates, {{rates["FirstDate"], current}, {rates["LastDate"], current}}}, FrameLabel -> Automatic, PlotTheme -> "Detailed", TargetUnits -> "$"]
Out[7]=

Check the units of the conversion rates.

In[8]:=
Click for copyable input
rates["FirstValue"]
Out[8]=

These conversion rates are in cents, so first convert the rates to US dollars and then divide by euros.

In[9]:=
Click for copyable input
ratesUSD = UnitConvert[rates, "$"]*Quantity[1/"Euros"]
Out[9]=
In[10]:=
Click for copyable input
ratesUSD["FirstValue"]
Out[10]=

Multiply the time series of stock prices by the times of the currency exchange rates.

In[11]:=
Click for copyable input
prices1 = ratesUSD*siemens;

Use UnitConvert to convert the stock prices using the current rate of the US dollar vs. the euro.

In[12]:=
Click for copyable input
prices2 = UnitConvert[siemens, "$"];
show complete Wolfram Language input
In[13]:=
Click for copyable input
DateListPlot[{prices1, prices2}, PlotLegends -> {"stock price with historical rate conversion", "stock price with current rate conversion"}, PlotTheme -> "Detailed", FrameLabel -> Automatic]
Out[13]=

Related Examples

de es fr ja ko pt-br ru zh