Skip to main content

EOD equities and exchange-traded funds updates

This mapping is used for Security Type Equity (STOCK) and Exchange-traded funds (ETFs) (FUND).

Is used by Command button in bottom ofSecurities view when you click Update Security Data and choose EOD equity.

Configuration

Asset classes and types are set up in PreferenceSecuritiesAsset classes and types (see Asset classes and types in FA Back reference). To fully utilize the updates functionality, you need the following asset classes and types:

  • Geographical allocation (M49)

  • Global Industry Classification Standard (Sector)1

  • Global Industry Classification Standard (Industry)1

  • Currency exposure

1/ Please note that EOD do not publish this data for all Securities.

Mapping

Mapping name: update.eod.E 

Updated fields

  • Security code

  • ISIN code

  • Name

  • Country

  • Currency

  • Outstanding shares

  • Allocations:

    • Geographical allocation (M49)

    • Global Industry Classification Standard (Sector)

    • Global Industry Classification Standard (Industry)

    • Currency exposure

Mapping table

Row

Source field

FA field

Script

1

General.Exchange

EXCH

2

General.CountryISO

s.country

3

General.Code

s.securityCode

if("[General.CountryISO]"=='US')
{
output="[General.Code]"+"."+"[General.CountryISO]"
}
else
{
output="[General.Code]"+"."+"[General.Exchange]"
}
;if("[General.CountryISO]"=='US') { output="[General.Code]"+"."+"[General.CountryISO]" } else { output="[General.Code]"+"."+"[General.Exchange]" } ;

4

General.Name

s.name

5

General.ISIN

s.isinCode

6

General.Type

TYPE

7

General.GicGroup

GICSSEC

def gicssec = ["Energy":"1010","Materials":"1510","Capital Goods":"2010","Commercial & Professional Services":"2020","Transportation":"2030","Automobiles & Components":"2510","Consumer Durables & Apparel":"2520","Consumer Services":"2530","Retailing":"2550","Food & Staples Retailing":"3010","Food, Beverage & Tobacco":"3020","Household & Personal Products":"3030","Health Care Equipment & Services":"3510","Pharmaceuticals, Biotechnology & Life Sciences":"3520","Banks":"4010","Diversified Financials":"4020","Insurance":"4030","Software & Services":"4510","Technology Hardware & Equipment":"4520","Telecommunication Services":"5010","Media & Entertainment":"5020","Utilities":"5510","Real Estate":"6010"]
output=gicssec.get("[GICSSEC]")

8

GICSS

output = ""
if((!"[General.GicGroup]"?.trim())||("[TYPE]"=='ETF'))
{
output = ""
}
else
{
def s = services.securityService.loadSecurityBySecurityCode("[s.securityCode]")
def allocationsChanged = true
def allocationDate = "2009-01-01"
// Any new allocations are set on the specified date
if(s)
{
def allocs = s.getAllocationsOnDate(new Date(), "GICSS")
if(allocs && allocs.size() == 1 && allocs.get(0).sector.code == "[GICSSEC]")
{
allocationsChanged = false
}
else if(allocs && allocs.size() == 1 && allocs.get(0).sector.code != "[GICSSEC]")
{
// There is an existing allocation that has changed -> the new allocation will be set for this date
allocationDate = new Date().format("yyyy-MM-dd")
}
}
if(services.configurationService.findGroupByCode('GICSS') && allocationsChanged && "[GICSSEC]".isNumber())
{
output += ",GICSS:"+ allocationDate +":"+"[GICSSEC]"+"=100"
}
}
;

9

General.GicSubIndustry

GICSSI

def gicssi = ["Oil & Gas Drilling":"10101010","Oil & Gas Equipment & Services":"10101020","Integrated Oil & Gas":"10102010","Oil & Gas Exploration & Production":"10102020","Oil & Gas Refining & Marketing":"10102030","Oil & Gas Storage & Transportation":"10102040","Coal & Consumable Fuels":"10102050","Construction Materials":"15102010","Metal & Glass Containers":"15103010","Paper Packaging":"15103020","Aluminum":"15104010","Diversified Metals & Mining":"15104020","Copper":"15104025","Gold":"15104030","Precious Metals & Minerals":"15104040","Silver":"15104045","Steel":"15104050","Forest Products":"15105010","Paper Products":"15105020","Aerospace & Defense":"20101010","Building Products":"20102010","Construction & Engineering":"20103010","Electrical Components & Equipment":"20104010","Heavy Electrical Equipment":"20104020","Industrial Conglomerates":"20105010","Construction Machinery & Heavy Trucks":"20106010","Agricultural & Farm Machinery":"20106015","Industrial Machinery":"20106020","Trading Companies & Distributors":"20107010","Commercial Printing":"20201010","Environmental & Facilities Services":"20201050","Office Services & Supplies":"20201060","Diversified Support Services":"20201070","Security & Alarm Services":"20201080","Human Resource & Employment Services":"20202010","Research & Consulting Services":"20202020","Air Freight & Logistics":"20301010 ","Airlines":"20302010","Marine":"20303010","Railroads":"20304010","Trucking":"20304020","Airport Services":"20305010","Highways & Railtracks":"20305020","Marine Ports & Services":"20305030 ","Auto Parts & Equipment":"25101010","Tires & Rubber":"25101020","Automobile Manufacturers":"25102010","Motorcycle Manufacturers":"25102020","Consumer Electronics":"25201010","Home Furnishings":"25201020","Homebuilding":"25201030","Household Appliances":"25201040","Housewares & Specialties":"25201050","Leisure Products":"25202010","Apparel, Accessories & Luxury Goods":"25203010","Footwear":"25203020","Textiles":"25203030","Casinos & Gaming":"25301010","Hotels, Resorts & Cruise Lines":"25301020","Leisure Facilities":"25301030","Restaurants":"25301040","Education Services":"25302010","Specialized Consumer Services":"25302020","Distributors":"25501010","Internet & Direct Marketing Retail":"25502020","Department Stores":"25503010","General Merchandise Stores":"25503020","Apparel Retail":"25504010","Computer & Electronics Retail":"25504020","Home Improvement Retail":"25504030","Specialty Stores":"25504040","Automotive Retail":"25504050","Homefurnishing Retail":"25504060","Drug Retail":"30101010","Food Distributors":"30101020","Food Retail":"30101030","Hypermarkets & Super Centers":"30101040","Brewers":"30201010","Distillers & Vintners":"30201020","Soft Drinks":"30201030","Agricultural Products":"30202010","Packaged Foods & Meats":"30202030","Tobacco":"30203010","Household Products":"30301010","Personal Products":"30302010","Health Care Equipment":"35101010","Health Care Supplies":"35101020","Health Care Distributors":"35102010","Health Care Services":"35102015 ","Health Care Facilities":"35102020","Managed Health Care":"35102030","Health Care Technology":"35103010","Biotechnology":"35201010","Pharmaceuticals":"35202010","Life Sciences Tools & Services":"35203010","Diversified Banks":"40101010","Regional Banks":"40101015","Thrifts & Mortgage Finance":"40102010","Other Diversified Financial Services":"40201020","Multi-Sector Holdings":"40201030","Specialized Finance":"40201040","Consumer Finance":"40202010","Asset Management & Custody Banks":"40203010","Investment Banking & Brokerage":"40203020","Diversified Capital Markets":"40203030","Financial Exchanges & Data":"40203040","Mortgage REITs":"40204010","Insurance Brokers":"40301010","Life & Health Insurance":"40301020","Multi-line Insurance":"40301030","Property & Casualty Insurance":"40301040","Reinsurance":"40301050","Alternative Carriers":"50101010","Integrated Telecommunication Services":"50101020","Wireless Telecommunication Services":"50102010","Advertising":"50201010","Broadcasting":"50201020","Cable & Satellite":"50201030","Publishing":"50201040","Movies & Entertainment":"50202010","Interactive Home Entertainment":"50202020","Interactive Media & Services":"50203010","Electric Utilities":"55101010","Gas Utilities":"55102010","Multi-Utilities":"55103010","Water Utilities":"55104010","Independent Power Producers & Energy Traders":"55105010","Renewable Electricity":"55105020","Diversified REITs":"60101010","Industrial REITs":"60101020","Hotel & Resort REITs":"60101030","Office REITs":"60101040","Health Care REITs":"60101050","Residential REITs":"60101060","Retail REITs":"60101070","Specialized REITs":"60101080","Diversified Real Estate Activities":"60102010","Real Estate Operating Companies":"60102020","Real Estate Development":"60102030","Real Estate Services":"60102040","IT Consulting & Other Services":"45102010","Data Processing & Outsourced Services":"45102020","Internet Services & Infrastructure":"45102030","Application Software":"45103010","Systems Software":"45103020","Communications Equipment":"45201020","Technology Hardware, Storage & Peripherals":"45202030","Electronic Equipment & Instruments":"45203010","Electronic Components":"45203015","Electronic Manufacturing Services":"45203020","Technology Distributors":"45203030","Semiconductor Equipment":"45301010","Semiconductors":"45301020"]
output=gicssi.get("[General.GicSubIndustry]")

10

GICSI

output = ""
if((!"[General.GicSubIndustry]"?.trim())||("[General.GicSubIndustry]"==null)||("[TYPE]"=='ETF'))
{
output = ""
}
else
{
def s = services.securityService.loadSecurityBySecurityCode("[s.securityCode]")
def allocationsChanged = true
def allocationDate = "2009-01-01"
// Any new allocations are set on the specified date
if(s)
{
def allocs = s.getAllocationsOnDate(new Date(), "GICSI")
if(allocs && allocs.size() == 1 && allocs.get(0).sector.code == "[GICSSI]")
{
allocationsChanged = false
}
else if(allocs && allocs.size() == 1 && allocs.get(0).sector.code != "[GICSSI]")
{
// There is an existing allocation that has changed -> the new allocation will be set for this date
allocationDate = new Date().format("yyyy-MM-dd")
}
}
if(services.configurationService.findGroupByCode('GICSI') && allocationsChanged && "[GICSSI]".isNumber())
{
output += ",GICSI:"+ allocationDate +":"+"[GICSSI]"+"=100"
}
}
;      

11

General.CurrencyCode

s.currency

12

CURR

output = ""
if((!"[General.CurrencyCode]"?.trim())||("[General.CurrencyCode]"==''))
{
output = ""
}
else
{
def s = services.securityService.loadSecurityBySecurityCode("[s.securityCode]")
def allocationsChanged = true
def allocationDate = "2009-01-01"
// Any new allocations are set on the specified date
if(s)
{
def allocs = s.getAllocationsOnDate(new Date(), "CURR")
if(allocs && allocs.size() == 1 && allocs.get(0).sector.code == "[General.CurrencyCode]")
{
allocationsChanged = false
}
else if(allocs && allocs.size() == 1 && allocs.get(0).sector.code != "[General.CurrencyCode]")
{
// There is an existing allocation that has changed -> the new allocation will be set for this date
allocationDate = new Date().format("yyyy-MM-dd")
}
}
if(services.configurationService.findGroupByCode('CURR') && allocationsChanged)
{
output += ",CURR:"+ allocationDate +":"+"[General.CurrencyCode]"+"=100"
}
}
;

13

CTRY

def ctry = ["AF":"004","AL":"008","DZ":"012","AS":"016","AD":"020","AO":"024","AI":"660","AQ":"010","AG":"028","AR":"032","AM":"051","AW":"553","SH":"654","AU":"036","AT":"040","AZ":"031","BS":"044","BH":"048","BD":"050","BB":"052","BY":"112","BE":"056","BZ":"084","BJ":"204","BM":"060","BT":"064","VE":"862","BA":"070","BW":"072","BV":"074","BR":"076","IO":"086","BN":"096","BG":"100","BF":"854","BI":"108","KH":"116","CM":"120","CA":"124","CV":"132","KY":"136","CF":"140","TD":"148","CL":"152","CN":"156","CX":"162","CC":"166","CO":"170","KM":"174","CG":"178","CK":"184","CR":"188","CI":"384","HR":"191","CU":"192","CW":"531","CY":"196","CZ":"203","KP":"408","DK":"208","DJ":"262","DM":"212","DO":"214","EC":"218","EG":"818","SV":"222","GQ":"226","ER":"232","EE":"233","ET":"231","FK":"238","FO":"234","FM":"583","FJ":"242","FI":"246","FR":"250","GF":"254","PF":"258","TF":"260","GA":"266","GM":"270","GE":"268","DE":"276","GH":"288","GI":"292","GR":"300","GL":"304","GD":"308","GP":"312","GU":"316","GT":"320","GG":"831","GN":"324","GW":"624","GY":"328","HT":"332","HM":"334","VA":"336","HN":"340","HK":"344","HU":"348","IS":"352","IN":"356","ID":"360","IR":"364","IQ":"368","IE":"372","IM":"833","IL":"376","IT":"380","JM":"388","JP":"392","JE":"832","JO":"400","KZ":"398","KE":"404","KI":"296","KW":"414","KG":"417","LA":"418","LV":"428","LB":"422","LS":"426","LR":"430","LY":"434","LI":"438","LT":"440","LU":"442","MO":"446","MG":"450","MW":"454","MY":"458","MV":"462","ML":"466","MT":"470","MH":"485","MQ":"474","MR":"478","MU":"480","YT":"175","MX":"484","MC":"492","MN":"496","ME":"499","MS":"500","MA":"504","MZ":"508","MM":"104","NA":"516","NR":"520","NP":"524","NL":"528","NC":"540","NZ":"554","NI":"558","NE":"562","NG":"566","NU":"570","NF":"574","MP":"580","NO":"578","OM":"512","PK":"586","PW":"585","PA":"591","PG":"598","PY":"600","PE":"604","PH":"608","PN":"612","BO":"068","PL":"616","PT":"620","TW":"158","PR":"630","QA":"634","KR":"410","MD":"498","RE":"638","RO":"642","RU":"643","RW":"646","BL":"652","KN":"659","LC":"662","PM":"666","VC":"670","WS":"882","SM":"674","ST":"678","SA":"682","SN":"686","RS":"688","SC":"690","SL":"694","SG":"702","BQ":"535","SX":"534","SK":"703","SI":"705","SB":"090","SO":"706","ZA":"710","GS":"239","SS":"728","ES":"724","LK":"144","PS":"275","SD":"729","SR":"740","SJ":"744","SZ":"748","SE":"752","CH":"756","SY":"760","TJ":"762","TH":"764","CD":"180","MK":"807","TL":"626","TG":"768","TK":"772","TO":"776","TT":"780","TN":"788","TR":"792","TM":"795","TC":"796","TV":"798","UG":"800","UA":"804","AE":"784","GB":"826","TZ":"834","US":"840","UM":"581","UY":"858","UZ":"860","VU":"548","VN":"704","VG":"092","VI":"850","WF":"876","EH":"732","YE":"887","ZM":"894","ZW":"716","AX":"248","TW":"158"]
output=ctry.get("[General.CountryISO]")
;

14

M49

output = ""
if((!"[General.CountryISO]"?.trim())||("[General.CountryISO]"=='')||("[TYPE]"=='ETF'))
{
output = ""
}
else
{
def s = services.securityService.loadSecurityBySecurityCode("[s.securityCode]")
def allocationsChanged = true
def allocationDate = "2009-01-01"
// Any new allocations are set on the specified date
if(s)
{
def allocs = s.getAllocationsOnDate(new Date(), "M49")
if(allocs && allocs.size() == 1 && allocs.get(0).sector.code == "[CTRY]")
{
allocationsChanged = false
}
else if(allocs && allocs.size() == 1 && allocs.get(0).sector.code != "[CTRY]")
{
// There is an existing allocation that has changed -> the new allocation will be set for this date
allocationDate = new Date().format("yyyy-MM-dd")
}
}
if(services.configurationService.findGroupByCode('M49') && allocationsChanged)
{
output += ",M49:"+ allocationDate +":"+"[CTRY]"+"=100"
}
}
;

15

s.allocations

output="***[GICSS][GICSI][CURR][M49]";

16

outstandingShares.quarterly.0.shares

s.shares

17

s.tradeCode

output="[s.securityCode]";