Programmiersprache, die für den Finanzsektor am relevantesten ist? [geschlossen]

10

Ich bin ein Studienanfänger und mache ein Software Engineering / Finance Double Major. Ich habe selbst Programmieren gelernt und bin mittlerweile mit PHP vertraut. Ich habe mich gefragt, was Ihrer Meinung nach die relevanteste Programmiersprache für den Einsatz im Finanz- / Investmentbanking ist.

Ich habe diesen Thread gelesen: /software/13109/books-on-developing-software-for-financial-markets-investment-banks

Ich möchte anfangen, eine Sprache zu lernen / zu lesen (die Grundlagen nicht finanziell / quantitativ), um eine Grundlage für das zukünftige finanzielle / quantitative Zeug zu schaffen.

NoviceCoding
quelle
Ich sage das nur halb im Scherz: COBOL :)
Dan McGrath
Ich arbeite im Finanzbereich und wir haben Java und C # verwendet. Es hängt alles von der Sensibilität des Projekts und den Anforderungen ab . Zum Beispiel Sicherheit, Zuverlässigkeit, Flexibilität usw.
Amir Rezaei
Mir ist aufgefallen, dass funktionale Sprachen ihren Weg in den Finanzsektor finden, insbesondere OCaml. Zusätzliche Lektüre: janestreetcapital.com/minsky_weeks-jfp_18.pdf
dan_waterworth
Die funktionale Programmierung eignet sich für Finanzberechnungen wie die quantitative Finanzierung. Versuchen Sie F #, ich höre, dass es im Finanzsektor immer beliebter wird. Blogs.msdn.com/b/dsyme/archive/2011/01/12/…
Homde
Berücksichtigen Sie auch Q / KDB + , je nachdem, wo Sie arbeiten möchten.
LennyProgrammers

Antworten:

10

Ich arbeite selbst im Finanzsektor (allerdings in Australien) und habe die Sprachen gesehen, die ich unter den anderen Instituten, mit denen ich gesprochen habe, häufig verwendet habe

  • Alles .NET (C #, ASP usw.)
  • Java
  • C ++

Datenbankkenntnisse sind auch für Sie sehr nützlich. Versuchen Sie, einen SQL- Dialekt wie MS SQL oder Oracle zu lernen .

Ich weiß, dass es einige kleine Institute gibt, die auch mehrwertige DBs für ihre Kerntransaktionssysteme verwenden. Das bedeutet so etwas wie

  • UniData / UniBasic
  • UniVerse / UniBasic
  • jBase

Wenn Sie wirklich daran interessiert sind, bestimmte Sprachen zu lernen, die Sie direkt für einen Job verwenden können, würde ich empfehlen, die Stellenanzeigen in der Region zu lesen, in der Sie einen Job erhalten möchten, um ein Gefühl dafür zu bekommen, was die dortigen Finanzinstitute speziell verwenden.

Hierbei sind jedoch zwei Dinge zu beachten:

  • Welche Fähigkeiten sie jetzt suchen, könnte sich zum Zeitpunkt Ihres Abschlusses ändern
  • Es ist nicht so wichtig. Lernen Sie die Grundlagen und Sie sollten in der Lage sein, alles zu lernen, was Sie brauchen.
Dan McGrath
quelle
1
Ich stimme der Abstimmung für das Erlernen von SQL zu, insbesondere wenn Sie sich für den Hochfrequenzhandel interessieren.
M. Tibbits
Kein Problem @NoviceCoding
Dan McGrath
Ausgezeichnete Liste. Benötigt dort auch VBA und / oder Excel. Ich trenne die beiden, weil es eine Mischung aus Excel VBA und Arbeitsblättern wie VLookups ist
Ian
6

Es ist ein sehr weites Feld, aber einige Dinge zu beachten ...

Erstellen benutzerdefinierter Front Office-Schnittstellen - Java

Erstellen von Paketsystemen - Nicht sprachspezifisch. Murex, Calypso und Sophis sind einige der Technologien.

Legacy-Code pflegen - Java, C ++ und (ja) sogar COBOL.

Front-Office-Handelsanalyse - VBA (Ja) und andere Skriptsprachen in viel geringerem Maße.

Handel mit geringer Latenz - C ++

Quantitative Analytik - C ++

Integration - Java, XML, FPML (Financial Products Markup Language)

Allgemein - Sie müssen UNIX und SQL kennen

MathAttack
quelle
1
+1 Dies scheint die vollständigere Antwort zu sein. Liege ich falsch oder hast du keine funktionale Sprache erwähnt?
Виталий Олегович
Ich habe es nie für echte Arbeit gesehen. Vielleicht einmal, um einen internen Brain Teaser zu lösen. Ich habe hier und da auch Skriptsprachen wie Python gesehen.
MathAttack
3

Smalltalk : JP Morgans Kapital. Aus Gesprächen, die ich geführt habe, stammen viele aktuelle oder ehemalige Smalltalker von UBS, und ein großer Prozentsatz der Smalltalker in Südafrika stammte von der Rand Merchant Bank, einer großen lokalen Investmentbank, oder wurde von ihnen unterrichtet.

OCaml : Jane Street

Frank Shearar
quelle
2

Ein Geschäftsführer von Morgan Stanley sagte mir einmal, dass die Zukunft der Finanzprogrammierung von Python dominiert werde - und ich dachte: "So sagt der Mann, der niemals programmiert ..." Die Person zu seiner Rechten war ein Schwarzer Belt C ++ - Codierer, der genug wusste, um Routinen in der Intel-Assembly zu optimieren (nachdem er 2 PhDs erhalten hatte).

Abgesehen davon bin ich mir sicher, dass jeder Laden anders ist. Wir fanden es jedoch am besten, Prototypen in Matlab zu erstellen - die meisten Quants haben einen guten mathematischen Hintergrund und diese Sprache ist leicht zu erlernen. Anschließend wurde der gesamte Produktionscode in C / C ++ mit angepassten Frontends für Excel oder die eigene Homebrew-Hochleistungsclustersoftware gerollt.

Wenn ich jedoch meinen eigenen Fonds gründen würde, würde ich Matlab durch R ersetzen, da ich unzählige Stunden (während ich mit dem einzigen Mann, dem ich vertraue, auf der Basis des Vornamens) mit dem technischen Support von Matlab telefonierte, um deren Flexlm zu debuggen Lizenzierung und C ++ - Schnittstelle.

M. Tibbits
quelle
1
Betreff: Python, interessanterweise hat die US-amerikanische Börsenaufsichtsbehörde kürzlich ein Mandat vorgeschlagen, wonach Wertpapieremittenten ein Computerprogramm einreichen müssen, das den logischen Geldfluss abbildet, und dass „dieses Computerprogramm… in Python abgelegt wird“. sec.gov/rules/proposed/2010/33-9117.pdf
Steve Tjoa
Beeindruckend. Hatte keine Ahnung. Da ich zwischen Ubuntu und Windows wechsle, kann ich einfach keine Sprache verwenden, in der Leerzeichen (Tabulatoren oder Leerzeichen) wichtig sind ...
M. Tibbits
@ MTibbits, was, Ubuntu hat keine Leerzeichen? :)
Benjol
@Benjol, Ubuntu hat Leerzeichen, es müssen Fenster sein, die dies nicht tun.
dan_waterworth
Es hängt alles davon ab, was Sie erreichen möchten. Ich kenne mehrere Leute in Investmentbanken, die Prototypen in Python mit einer Python-Bindung an ihre C ++ - Bibliothek erstellen. In Bezug auf die Beschreibung von Trades in Python: Mehrere Personen, die damals erwähnt wurden, sind keine gute Idee, da Sie Python-Programme nicht überprüfen können. Eine Programmiersprache in der ML-Familie würde besser passen.
LennyProgrammers