Category Other  at 19/04/2014

USDX Dollar Index


This indicator calculates USDX and EURX indices.

USDX index measures the performance of USD against a basket of currencies: EUR, JPY, GBP, CAD, SEK and CHF




Joined 16.02.2014

  • Type: Free
  • Language: C#
  • Trading Platform: cTrader Automate
  • Filename: USDX Dollar Index.algo
  • Rating: 0
  • Installs: 6438
Only logged in users can post a comment
bullitttrader · 5 years ago

Hello, can you update the Indicator? I think it does not work yet? I get NAN

jaredthirsk's avatar
jaredthirsk · 7 years ago

marekfx, I created an indicator derived on this.  May I post it and keep your copyright notice and add my own copyright notice? (I will make my additions CC0 license.)

My indicator:

  • overlay by default
  • option to inverse (very useful for gold and silver)
  • Current USDX pinned to current gold price; scroll back to see relative bullishness/bearishness of current symbol.
  • configurable amplitude magnification.  Uses exponent.  1.9 seems to match XAUUSD very closely.

Kitco has their "Did gold really go up $x.xx?", now I have my own indicator.  I was shocked how closely the price action follows the USDX most of the time.


tomolo · 9 years ago

Could I have some clarification on how the GetIndexByExactTime method works?  Im having trouble using this indicator in a robot (ie no method for Result)

marekfx · 9 years ago

Hi Timmi,

the weights and multipliers are taken from USDX contract specification as traded on the ICE. Weights were originally  calculated based on the trade volumes.

If you want to assign your own weights or add or remove constituents ensure that:

- sum of absolute values of weights add up to 1

- weight is negative when USD is the quote currency (as in GBPUSD)

Timmi's avatar
Timmi · 9 years ago

_usdxIndex = new Index


                Name = "USDX",

                Multiplier = 50.14348112,

                Constituents = new List<Constituent>


                    //wieght is negative when USD is not the base currency (EURUSD and GBPUSD)


                    new Constituent("EURUSD", -0.576),

                    new Constituent("USDJPY", 0.136),

                    new Constituent("GBPUSD", -0.119),

                    new Constituent("USDCAD", 0.091),

                    new Constituent("USDSEK", 0.042),

                    new Constituent("USDCHF", 0.036)




            _eurxIndex = new Index


                Name = "EURX",

                Multiplier = 34.38805726,

                Constituents = new List<Constituent>


                    new Constituent("EURUSD", 0.3155),

                    new Constituent("EURJPY", 0.1891),

                    new Constituent("EURGBP", 0.3056),

                    new Constituent("EURSEK", 0.0785),

                    new Constituent("EURCHF", 0.1113)


I would like to create my own, more extensive version, but am new at this. 

Could you please tell me how you determined these amounts? 

ie: the multipliers and the weighted amounts for each pair

thank you


tekASH · 9 years ago

it shows nothing after installing on cAlgo. Why? Lines dont show up.

Spotware's avatar
Spotware · 9 years ago

Please use GetIndexByExactTime method instead of iterating all indexes. It will speed up your indicator.