Tweaked Dylan's Global M2 indicator to give more options on what to include, also added Thailand's M2 (in USD)

-> see comment for code.

Reply to this note

Please Login to reply.

Discussion

//@version=5

// Title and Short Title Configuration

indicator(title="Global M2 Money Supply (USD)", shorttitle="Global M2 (USD)", overlay=false)

// User Input for Label Condition

labels_condition = input(true, "Display Label")

EU = "Euro Countries"

showEU = input.bool(true,"Show EU M2",group="EU")

NA = "North America"

showUS = input.bool(true,"Show US M2",group="NA")

showCA = input.bool(true,"Show CA M2",group="NA")

NEU = "Non-EU European Countries"

showCH = input.bool(true,"Show CH M2",group="NEU")

showGB = input.bool(true,"Show GB M2",group="NEU")

showFI = input.bool(true,"Show FI M2",group="NEU")

showRU = input.bool(true,"Show RU M2",group="NEU")

PAC = "Pacific"

showNZ = input.bool(true,"Show NZ M2",group="PAC")

AS = "Asian Countries"

showCN = input.bool(true,"Show CN M2",group="AS")

showTW = input.bool(true,"Show TW M2",group="AS")

showHK = input.bool(true,"Show HK M2",group="AS")

showIN = input.bool(true,"Show IN M2",group="AS")

showJP = input.bool(true,"Show JP M2",group="AS")

showPH = input.bool(true,"Show PH M2",group="AS")

showTH = input.bool(true,"Show TH M2",group="AS")

showSG = input.bool(true,"Show SG M2",group="AS")

LAT = "Latin America"

showBR = input.bool(true,"Show BR M2",group="LAT")

showCO = input.bool(true,"Show CO M2",group="LAT")

showMX = input.bool(true,"Show MX M2",group="LAT")

ME = "Middle East Countries"

showAE = input.bool(true,"Show AE M2",group="ME")

showTR = input.bool(true,"Show TR M2",group="ME")

AZ = "Africa"

showZA = input.bool(true,"Show ZA M2",group="AZ")

// EUROZONE Data

EUM2D = showEU ? request.security("ECONOMICS:EUM2*FX:EURUSD", "W", close) : 0

// North America Data

USM2D = showUS ? request.security("ECONOMICS:USM2", "W", close) : 0

CAM2D = showCA ? request.security("ECONOMICS:CAM2*FX_IDC:CADUSD", "W", close) : 0

// Non-EU Europe Data

CHM2D = showCH ? request.security("ECONOMICS:CHM2*FX_IDC:CHFUSD", "W", close) : 0

GBM2D = showGB ? request.security("ECONOMICS:GBM2*FX:GBPUSD", "W", close) : 0

FIPOP = showFI ? request.security("ECONOMICS:FIM2/FX_IDC:USDFIM", "W", close) : 0

RUM2D = showRU ? request.security("ECONOMICS:RUM2*FX_IDC:RUBUSD", "W", close) : 0

// Pacific Data

NZM2D = showNZ ? request.security("ECONOMICS:NZM2*FX_IDC:NZDUSD", "W", close) : 0

// Asia Data

CNM2D = showCN ? request.security("ECONOMICS:CNM2*FX_IDC:CNYUSD", "W", close) : 0

TWM2D = showTW ? request.security("ECONOMICS:TWM2*FX_IDC:TWDUSD", "W", close) : 0

HKM2D = showHK ? request.security("ECONOMICS:HKM2*FX_IDC:HKDUSD", "W", close) : 0

INM2D = showIN ? request.security("ECONOMICS:INM2*FX_IDC:INRUSD", "W", close) : 0

JPM2D = showJP ? request.security("ECONOMICS:JPM2*FX_IDC:JPYUSD", "W", close) : 0

PHM2D = showPH ? request.security("ECONOMICS:PHM2*FX_IDC:PHPUSD", "W", close) : 0

SGM2D = showSG ? request.security("ECONOMICS:SGM2*FX_IDC:SGDUSD", "W", close) : 0

THM2D = showTH ? request.security("ECONOMICS:THM2*1/FX_IDC:USDTHB", "W", close) : 0

// Latin America Data

BRM2D = showBR ? request.security("ECONOMICS:BRM2*FX_IDC:BRLUSD", "W", close) : 0

COM2D = showCO ? request.security("ECONOMICS:COM2*FX_IDC:COPUSD", "W", close) : 0

MXM2D = showMX ? request.security("ECONOMICS:MXM2*FX_IDC:MXNUSD", "W", close) : 0

// Middle East Data

AEM2D = showAE ? request.security("ECONOMICS:AEM2*FX_IDC:AEDUSD", "W", close) : 0

TRM2D = showTR ? request.security("ECONOMICS:TRM2*FX_IDC:TRYUSD", "W", close) : 0

// Africa Data

ZAM2D = showZA ? request.security("ECONOMICS:ZAM2*FX_IDC:ZARUSD", "W", close) : 0

// Calculate Global Money Supply M2

GLM2 = EUM2D + USM2D + CAM2D + CHM2D + GBM2D + FIPOP + RUM2D + NZM2D + CNM2D + TWM2D + HKM2D + INM2D + JPM2D + PHM2D + SGM2D + THM2D + BRM2D + COM2D + MXM2D + AEM2D + TRM2D + ZAM2D

plot(GLM2, color=color.black, title="Global M2 Money Supply (USD)", linewidth=2)