Kombiner transaktions-, streaming- og tredjepartsdata på Amazon Redshift til finansielle tjenester | Amazon Web Services

Kombiner transaktions-, streaming- og tredjepartsdata på Amazon Redshift til finansielle tjenester | Amazon Web Services

Kildeknude: 3093106

Finansielle servicekunder bruger data fra forskellige kilder, der stammer fra forskellige frekvenser, som inkluderer realtids-, batch- og arkiverede datasæt. Derudover har de brug for streaming-arkitekturer til at håndtere voksende handelsvolumener, markedsvolatilitet og regulatoriske krav. Følgende er nogle af de vigtigste business use cases, der fremhæver dette behov:

  • Handelsrapportering – Siden den globale finanskrise i 2007-2008 har regulatorer øget deres krav og kontrol med regulatorisk rapportering. Regulatorer har sat et øget fokus på både at beskytte forbrugeren gennem transaktionsrapportering (typisk T+1, hvilket betyder 1 hverdag efter handelsdatoen) og øge gennemsigtigheden til markeder via handelsrapporteringskrav i næsten realtid.
  • Risikostyring – Efterhånden som kapitalmarkederne bliver mere komplekse, og regulatorer lancerer nye risikorammer, som f.eks Grundlæggende gennemgang af handelsbogen (FRTB) og Basel III, søger finansielle institutioner at øge hyppigheden af ​​beregninger for overordnet markedsrisiko, likviditetsrisiko, modpartsrisiko og andre risikomålinger og ønsker at komme så tæt på realtidsberegninger som muligt.
  • Handelskvalitet og optimering – For at overvåge og optimere handelskvaliteten skal du løbende evaluere markedskarakteristika såsom volumen, retning, markedsdybde, fyldningsgrad og andre benchmarks relateret til gennemførelsen af ​​handler. Handelskvalitet er ikke kun relateret til mæglerens ydeevne, men er også et krav fra regulatorer, startende med MiFID II.

Udfordringen er at komme med en løsning, der kan håndtere disse forskellige kilder, varierede frekvenser og forbrugskrav med lav latens. Løsningen skal være skalerbar, omkostningseffektiv og ligetil at implementere og betjene. Amazon rødforskydning funktioner som streamingindtagelse, Amazon Aurora nul-ETL integration, og datadeling med AWS dataudveksling muliggør nær-realtidsbehandling til handelsrapportering, risikostyring og handelsoptimering.

I dette indlæg giver vi en løsningsarkitektur, der beskriver, hvordan du kan behandle data fra tre forskellige typer kilder – streaming, transaktions- og tredjepartsreferencedata – og samle dem i Amazon Redshift til rapportering om business intelligence (BI).

Løsningsoversigt

Denne løsningsarkitektur er skabt ved at prioritere en lav kode/ingen kode tilgang med følgende vejledende principper:

  • Brugervenlighed – Det burde være mindre komplekst at implementere og betjene med intuitive brugergrænseflader
  • Skalerbar – Du bør være i stand til problemfrit at øge og reducere kapaciteten efter behov
  • Indfødt integration – Komponenter skal integreres uden yderligere stik eller software
  • Omkostningseffektiv – Det skal levere afbalanceret pris/ydelse
  • Lav vedligeholdelse – Det burde kræve mindre ledelses- og driftsomkostninger

Følgende diagram illustrerer løsningsarkitekturen og hvordan disse vejledende principper blev anvendt på indtagelses-, aggregerings- og rapporteringskomponenterne.

Implementer løsningen

Du kan bruge følgende AWS CloudFormation skabelon til at implementere løsningen.

Start Cloudformation Stack

Denne stak opretter følgende ressourcer og nødvendige tilladelser til at integrere tjenesterne:

Indtagelse

For at indtage data, bruger du Amazon Redshift Streaming Indtagelse for at indlæse streamingdata fra Kinesis-datastrømmen. Til transaktionsdata bruger du Redshift nul-ETL integration med Amazon Aurora MySQL. For tredjeparts referencedata drager du fordel af AWS Data Exchange-dataandele. Disse funktioner giver dig mulighed for hurtigt at bygge skalerbare datapipelines, fordi du kan øge kapaciteten af ​​Kinesis Data Streams-shards, beregne for nul-ETL-kilder og -mål og Redshift-beregne for datadeling, når dine data vokser. Redshift-streaming-indtagelse og nul-ETL-integration er lav-kode/ingen kode-løsninger, som du kan bygge med simple SQL'er uden at investere betydelig tid og penge i at udvikle kompleks tilpasset kode.

For de data, der blev brugt til at skabe denne løsning, samarbejdede vi med FactSet, en førende udbyder af finansielle data, analyser og åben teknologi. FactSet har flere datasæt tilgængelig på AWS Data Exchange-markedspladsen, som vi brugte til referencedata. Vi brugte også FactSets markedsdataløsninger for historiske og streaming markedskurser og handler.

Behandles

Data behandles i Amazon Redshift under overholdelse af en ekstraktions-, indlæsnings- og transformationsmetode (ELT). Med praktisk talt ubegrænset skala og arbejdsbelastningsisolering er ELT mere velegnet til cloud-data warehouse-løsninger.

Du bruger Redshift-streaming-indtagelse til realtids-indtagelse af streaming-citater (bud/spørg) fra Kinesis-datastrømmen direkte til en streaming-materialiseret visning og behandler dataene i det næste trin ved hjælp af PartiQL til at parse datastrømmens input. Bemærk, at streaming af materialiserede visninger adskiller sig fra almindelige materialiserede visninger med hensyn til, hvordan automatisk opdatering fungerer, og de anvendte SQL-kommandoer for datastyring. Henvise til Overvejelser om streamingindtagelse for yderligere oplysninger.

Du bruger nul-ETL Aurora-integrationen til at indlæse transaktionsdata (handler) fra OLTP-kilder. Henvise til Arbejder med nul-ETL integrationer for aktuelt understøttede kilder. Du kan kombinere data fra alle disse kilder ved hjælp af visninger og bruge lagrede procedurer til at implementere forretningstransformationsregler som at beregne vægtede gennemsnit på tværs af sektorer og børser.

Historiske handels- og prisdatamængder er enorme og ofte forespørges ikke ofte. Du kan bruge Amazon Redshift Spectrum for at få adgang til disse data på plads uden at indlæse dem i Amazon Redshift. Du opretter eksterne tabeller, der peger på data ind Amazon Simple Storage Service (Amazon S3) og forespørg på samme måde, som du forespørger på enhver anden lokal tabel i Amazon Redshift. Flere Redshift-datavarehuse kan samtidigt forespørge på de samme datasæt i Amazon S3 uden behov for at lave kopier af dataene for hvert datavarehus. Denne funktion forenkler adgangen til eksterne data uden at skrive komplekse ETL-processer og øger brugervenligheden af ​​den overordnede løsning.

Lad os gennemgå et par eksempler på forespørgsler, der bruges til at analysere tilbud og handler. Vi bruger følgende tabeller i eksempelforespørgslerne:

  • dt_hist_quote – Historiske kursdata, der indeholder budpris og volumen, udbudspris og volumen samt børser og sektorer. Du bør bruge relevante datasæt i din organisation, der indeholder disse dataattributter.
  • dt_hist_trades – Historiske handelsdata, der indeholder handlet pris, volumen, sektor og børsdetaljer. Du bør bruge relevante datasæt i din organisation, der indeholder disse dataattributter.
  • faktasæt_sektorkort – Kortlægning mellem sektorer og børser. Du kan få dette hos FactSet Fundamentals ADX-datasæt.

Eksempelforespørgsel til analyse af historiske citater

Du kan bruge følgende forespørgsel til at finde vægtede gennemsnitlige spreads på citater:

select
date_dt :: date,
case
when exchange_name like 'Cboe%' then 'CBOE'
when (exchange_name) like 'NYSE%' then 'NYSE'
when (exchange_name) like 'New York Stock Exchange' then 'NYSE'
when (exchange_name) like 'Nasdaq%' then 'NASDAQ'
end as parent_exchange_name,
sector_name,
sum(spread * weight)/sum(weight) :: decimal (30,5) as weighted_average_spread
from
(
select date_dt,exchange_name,
factset_sector_desc sector_name,
((bid_price*bid_volume) + (ask_price*ask_volume))as weight,
((ask_price - bid_price)/ask_price) as spread
from
dt_hist_quotes a
join
fds_adx_fundamentals_db.ref_v2.factset_sector_map b
on(a.sector_code = b.factset_sector_code)
where ask_price <> 0 and bid_price <> 0
)
group by 1,2,3

Eksempelforespørgsel til analyse af historiske handler

Du kan bruge følgende forespørgsel til at finde $-volume på handler efter detaljeret børs, efter sektor og efter større børs (NYSE og Nasdaq):

select
cast(date_dt as date) as date_dt,
case
when exchange_name like 'Cboe%' then 'CBOE'
when (exchange_name) like 'NYSE%' then 'NYSE'
when (exchange_name) like 'New York Stock Exchange' then 'NYSE'
when (exchange_name) like 'Nasdaq%' then 'NASDAQ'
end as parent_exchange_name,
factset_sector_desc sector_name,
sum((price * volume):: decimal(30,4)) total_transaction_amt
from
dt_hist_trades a
join
fds_adx_fundamentals_db.ref_v2.factset_sector_map b
on(a.sector_code = b.factset_sector_code)
group by 1,2,3

Rapportering

Du kan bruge Amazon QuickSight , Amazon administrerede Grafana til henholdsvis BI og realtidsrapportering. Disse tjenester integreres naturligt med Amazon Redshift uden behov for at bruge yderligere stik eller software imellem.

Du kan køre en direkte forespørgsel fra QuickSight til BI-rapportering og dashboards. Med QuickSight kan du også lokalt gemme data i SPICE-cachen med automatisk opdatering for lav latenstid. Henvise til Godkendelse af forbindelser fra Amazon QuickSight til Amazon Redshift-klynger for omfattende detaljer om, hvordan du integrerer QuickSight med Amazon Redshift.

Du kan bruge Amazon Managed Grafana til handelsdashboards i næsten realtid, der opdateres med få sekunders mellemrum. Dashboards i realtid til overvågning af handelsindtagelsesforsinkelser oprettes ved hjælp af Grafana, og dataene stammer fra systemvisninger i Amazon Redshift. Henvise til Brug af Amazon Redshift-datakilden for at lære om, hvordan du konfigurerer Amazon Redshift som en datakilde for Grafana.

De brugere, der interagerer med regulatoriske rapporteringssystemer, omfatter analytikere, risikomanagere, operatører og andre personer, der understøtter forretnings- og teknologidrift. Ud over at generere regulatoriske rapporter kræver disse teams synlighed i rapporteringssystemernes tilstand.

Analyse af historiske citater

I dette afsnit udforsker vi nogle eksempler på historiske citater fra Amazon QuickSight instrumentbræt.

Vægtet gennemsnitsspredning på sektorer

Følgende diagram viser den daglige aggregering efter sektor af de vægtede gennemsnitlige bid-ask-spænd for alle de individuelle handler på NASDAQ og NYSE i 3 måneder. For at beregne det gennemsnitlige daglige spænd vægtes hvert spænd med summen af ​​buddet og salgsvolumenet i dollar. Forespørgslen til at generere dette diagram behandler 103 milliarder datapunkter i alt, forbinder hver handel med sektorreferencetabellen og kører på mindre end 10 sekunder.

Vægtet gennemsnitsspænd på børser

Følgende diagram viser den daglige sammenlægning af de vægtede gennemsnitlige bud-ask-spænd for alle de individuelle handler på NASDAQ og NYSE i 3 måneder. Beregningsmetoden og forespørgselsydeevnemålingerne ligner dem i det foregående diagram.

Historisk brancheanalyse

I dette afsnit udforsker vi nogle eksempler på historiske handelsanalyser fra Amazon QuickSight instrumentbræt.

Handelsmængder fordelt på sektor

Følgende diagram viser den daglige sammenlægning efter sektor af alle de individuelle handler på NASDAQ og NYSE i 3 måneder. Forespørgslen til at generere dette diagram behandler 3.6 milliarder handler i alt, forbinder hver handel med sektorreferencetabellen og kører på under 5 sekunder.

Handelsvolumener for større børser

Følgende diagram viser den daglige sammenlægning efter børsgruppe for alle de individuelle handler i 3 måneder. Forespørgslen til at generere dette diagram har lignende præstationsmålinger som det foregående diagram.

Dashboards i realtid

Overvågning og observerbarhed er et vigtigt krav for enhver kritisk forretningsapplikation, såsom handelsrapportering, risikostyring og handelsstyringssystemer. Ud over målinger på systemniveau er det også vigtigt at overvåge nøglepræstationsindikatorer i realtid, så operatører kan blive advaret og reagere så hurtigt som muligt på forretningspåvirkende begivenheder. Til denne demonstration har vi bygget dashboards i Grafana, der overvåger forsinkelsen af ​​tilbuds- og handelsdata fra henholdsvis Kinesis-datastrømmen og Aurora.

Dashboardet for forsinkelse af tilbudsoptagelsesforsinkelse viser den tid, det tager for hver tilbudspost at blive optaget fra datastrømmen og være tilgængelig for forespørgsler i Amazon Redshift.

Dashboardet for handelsindtagelsesforsinkelse viser den tid, det tager for en transaktion i Aurora at blive tilgængelig i Amazon Redshift til forespørgsel.

Ryd op

For at rydde op i dine ressourcer skal du slette den stak, du implementerede ved hjælp af AWS CloudFormation. For instruktioner, se Sletning af en stak på AWS CloudFormation-konsollen.

Konklusion

Stigende mængder af handelsaktivitet, mere kompleks risikostyring og forbedrede regulatoriske krav får kapitalmarkedsvirksomheder til at omfavne databehandling i realtid og næsten-realtid, selv i midt- og backoffice-platforme, hvor dags- og nattens behandling var standarden. I dette indlæg demonstrerede vi, hvordan du kan bruge Amazon Redshift-funktioner til brugervenlighed, lav vedligeholdelse og omkostningseffektivitet. Vi diskuterede også integrationer på tværs af tjenester for at indtage streaming af markedsdata, behandle opdateringer fra OLTP-databaser og bruge tredjeparts referencedata uden at skulle udføre kompleks og dyr ETL- eller ELT-behandling, før dataene blev tilgængelige for analyse og rapportering.

Kontakt os venligst, hvis du har brug for vejledning i implementeringen af ​​denne løsning. Henvise til Realtidsanalyse med Amazon Redshift-streamingindtagelse, Kom godt i gang-guide til operationsanalyse i næsten realtid ved hjælp af Amazon Aurora nul-ETL-integration med Amazon Redshiftog Arbejde med AWS Data Exchange-dataandele som producent for mere information.


Om forfatterne

Satesh Sonti er en Sr. Analytics Specialist Solutions Architect baseret i Atlanta, specialiseret i at bygge virksomhedsdataplatforme, data warehousing og analyseløsninger. Han har over 18 års erfaring med at bygge dataaktiver og lede komplekse dataplatformsprogrammer til bank- og forsikringskunder over hele kloden.

Alket Memushaj arbejder som Principal Architect i Financial Services Market Development-teamet hos AWS. Alket er ansvarlig for den tekniske strategi for kapitalmarkederne og arbejder sammen med partnere og kunder for at implementere applikationer på tværs af handelslivscyklussen til AWS Cloud, herunder markedsforbindelse, handelssystemer og analyse- og forskningsplatforme før og efter handel.

Ruben Falk er en kapitalmarkedsspecialist med fokus på kunstig intelligens og data og analyser. Ruben rådfører sig med kapitalmarkedsdeltagere om moderne dataarkitektur og systematiske investeringsprocesser. Han kom til AWS fra S&P Global Market Intelligence, hvor han var Global Head of Investment Management Solutions.

jeff wilson er en verdensomspændende Go-to-market Specialist med 15 års erfaring med at arbejde med analytiske platforme. Hans nuværende fokus er at dele fordelene ved at bruge Amazon Redshift, Amazons native cloud data warehouse. Jeff er baseret i Florida og har været hos AWS siden 2019.

Tidsstempel:

Mere fra AWS Big Data