Wolfram Finance Platform

Fahim Chandurwala, Wolfram Research Inc.

D&B Data Connection

Connect to D&B Data Servers

dnb=ServiceConnect["DnBDirect"]

Lookup a company and its competitors

Lookup DUNS number for a company

Using DUNS number aquired from the previous call, lookup competitors

competitors =dnb["FindCompetitor",{"DUNSNumber"->"005070479"},"Dataset"]

Use Select to get top competitors

topCompetitors=competitors[Select[#TopCompetitorIndicator&]]

Compare Companies

Sales Revenue

Use Join with Dataset to create a table comparing sales revenues

companies = Join[caterpillar,topCompetitors]

Choose columns

salesRevenue=Join[caterpillar,topCompetitors][All,{"DUNSNumber","OrganizationName","SalesRevenueAmount","CountryISOAlpha2Code"}]

Quickly create a BarChart

salesRevenue[BarChart]

With a tad more effort, make a labeled BarChart

salesAssoc=salesRevenue[All,#OrganizationName->#SalesRevenueAmount&][Association]

Normal[salesAssoc]

BarChart[salesAssoc,ChartLabels->Automatic]

Linkage Data

Get DUNS Numbers

dunsnumbers=Normal[companies[All,#OrganizationName->#DUNSNumber&][Association]]

Fetch the linkage data

linkageData =Map[dnb["OrderLinkageProduct",{"DUNSNumber"->#}]&,dunsnumbers];

Use Cases and Pattern to extract location data of subsidiaries

pattern:="Location"->{"PrimaryAddress"->{"StreetAddressLine"->{{"LineText"->street__}},"TerritoryAbbreviatedName"->state_,"CountryISOAlpha2Code"->country_,"PrimaryTownName"->city_}};

addresses=Map[Dataset[Cases[linkageData[#],pattern:><|"OrganizationName"->#,"City"->city,"State"-> state,"Country"-> country,"Street"->street|>,Infinity]]&,{"KOMATSU LTD.","AB Volvo","Deere & Company","CATERPILLAR INC."}]

Join the Datasets

locations=Join[Sequence@@addresses]

Most popular state...in the World

locations[All,"State"][WordCloud]

Interpreter["AdministrativeDivision"]["IL"]

(Entity["Illinois", Entity["AdministrativeDivision",{"Illinois","UnitedStates"}], "Entity[\"AdministrativeDivision\", {\"Illinois\", \"UnitedStates\"}]", "administrative division"])[(EntityProperty["land area", EntityProperty["AdministrativeDivision","LandArea"], "EntityProperty[\"AdministrativeDivision\", \"LandArea\"]"])]

Maps

Modify the structure of the Dataset

test=locations[GroupBy[#Country&],GroupBy[#State&],DeleteDuplicates]

Map[Interpreter["Country"][#]&,Normal[test[Keys]]]

test["US","IL"]

test["US","IL"][Select[StringContainsQ[#OrganizationName,"AB"|"Deere"]&]]

Interpreter["City"]["TROY,IL"]

test["US","IL"][Select[StringContainsQ[#OrganizationName,"AB"|"Deere"]&]][All,GeoMarker@Interpreter["City"][#City<>","<>#State]&][DynamicGeoGraphics]

People Data

Find Contacts

contacts=dnb["FindContact",{"KeywordText"->"Yelp","KeywordContactText"->"","SearchModeDescription"->"Basic","CandidatePerPageMaximumQuantity"->1000}]

contacts[
Select[
StringContainsQ[ToString@#JobTitle,"ceo",IgnoreCase->True]&]]

WikipediaSearch["Jeremy Stoppelman"]

Market Data: Bloomberg Overview

Snapshot

MarketDataGet["Snapshot","Instruments"->{"cat us equity"},"Fields"->{"ASK","BID"},"Overrides"->{}]

Grid[%]

Historical Data

mtd=MarketDataGet["Historical",
"Instruments"->{"CAT US Equity"},"Fields"->{"VOLUME","LAST_PRICE"},"DateRange"->{{2015,1,1},DateList[Today]}];

DateListPlot[Normal[Select[mtd,True&,{"date","LAST_PRICE"}]]]

sub=MarketDataSubscribe["MarketDataSubscription","Instrument"->"vod ln equity","TriggerFields"->{"ASK"}]

MarketDataSubscriptionStart[sub]

MarketDataGet[sub]

Acknodgements & People To Talk to

wolframPeople=dnb["FindContact",{"KeywordText"->"Wolfram Research","KeywordContactText"->"Tom","SearchModeDescription"->"Basic","CandidatePerPageMaximumQuantity"->1}]

ImageCollage[{Import["http://wac.36f4.edgecastcdn.net/0036F4/small/blog/people/images/peopleBw/twj_full.jpg"],Import["https://www.wolfram.com/training/images/instructors/hernandez.jpg"],Import["http://i1.rgstatic.net/ii/profile.image/AS%3A273660426584107%401442257138824_l"],
Import["http://wac.36f4.edgecastcdn.net/0036F4/small/blog/people/images/peopleBw/jonm_full.jpg"]}]