Linguagem de programação mais relevante para o setor financeiro? [fechadas]


10

Eu sou um calouro na faculdade e estou fazendo um curso duplo de engenharia / finanças de software. Eu tenho aprendido a programar sozinho e já tenho um pouco de familiaridade com o php. Fiquei me perguntando o que vocês acham que a linguagem de programação mais relevante é para uso financeiro / banco de investimento?

Eu li este tópico: /software/13109/books-on-developing-software-for-financial-markets-investment-banks

Quero começar a aprender / ler um idioma (o básico, não financeiro / quant), para estabelecer uma base para o futuro financeiro / quant.


Digo isto apenas metade brincando: COBOL :)
Dan McGrath

Tenho trabalho em finanças e usamos Java e C #. Tudo depende da sensibilidade do projeto e do que é exigido . Por exemplo segurança, confiabilidade, flexibilidade etc.
Amir Rezaei

Percebi que as linguagens funcionais estão chegando ao setor financeiro, especialmente o OCaml. Leitura extra: janestreetcapital.com/minsky_weeks-jfp_18.pdf
dan_waterworth

A programação funcional é adequada para cálculos financeiros, como finanças quantitativas. Tente o F #, ouvi dizer que está ficando cada vez mais popular no setor financeiro blogs.msdn.com/b/dsyme/archive/2011/01/12/…
Homde

Considere também o Q / KDB + , dependendo de onde você deseja trabalhar.
LennyProgrammers

Respostas:


10

Eu mesmo trabalhando no setor financeiro (embora na Austrália), os idiomas que eu já vi comumente usados ​​entre os outros institutos com quem conversei são

  • Qualquer coisa .NET (C #, ASP, etc)
  • Java
  • C ++

O conhecimento do banco de dados também será muito útil para você. Tente aprender algum dialeto do SQL, como MS SQL ou Oracle.

Eu sei que existem alguns institutos pequenos que também usam DBs de valores múltiplos para seus sistemas principais de transações. Isso significa algo como

  • UniData / UniBasic
  • UniVerse / UniBasic
  • jBase

Se você estiver realmente interessado em aprender idiomas específicos que você pode usar diretamente para um emprego, meu conselho seria ler os anúncios de emprego na área local em que você deseja conseguir um emprego para ter uma ideia do que os institutos financeiros estão usando especificamente.

No entanto, duas coisas a serem observadas são:

  • Quais habilidades eles estão procurando agora podem mudar quando você se formar
  • Não importa muito. Aprenda os fundamentos e você poderá pegar o que precisar.

11
Eu sou o segundo voto para aprender SQL, especialmente se você estiver interessado em negociações de alta frequência.
Tibbits

Não há problema @NoviceCoding
Dan McGrath

Excelente lista. Também precisa de VBA e / ou Excel lá também. I separar os dois, porque é uma mistura de Excel VBA e outras coisas, então planilha como VLookups
Ian

6

É um campo MUITO amplo, mas há algumas coisas a considerar ...

Construindo interfaces de front office personalizadas - Java

Construindo sistemas de pacotes - Não é específico ao idioma. Murex, Calypso e Sophis são algumas das tecnologias.

Manutenção do código legado - Java, C ++ e (sim) até COBOL.

Análise comercial de front office - VBA (Sim) e outras linguagens de script em um grau muito menor.

Negociação de baixa latência - C ++

Análise quantitativa - C ++

Integração - Java, XML, FPML (Financial Products Markup Language)

Geral - Você precisa conhecer UNIX e SQL


11
+1 Esta parece a resposta mais completa. Estou errado ou você não mencionou nenhuma linguagem funcional?
Виталий Олегович

Eu nunca vi isso de verdade. Talvez uma vez para resolver um quebra-cabeças em casa. Eu já vi linguagens de script como Python aqui e ali também.
MathAttack #

3

Smalltalk : Kapital do JP Morgan. Das conversas que tive, muitos atuais ou ex-Smalltalkers vêm do UBS, e uma grande porcentagem dos Smalltalkers da África do Sul veio ou foi ensinada por pessoas do Rand Merchant Bank, uma grande empresa de banco de investimento local.

OCaml : Jane Street


2

Certa vez, um diretor-gerente do Morgan Stanley me disse que o futuro da programação financeira seria dominado pelo Python - ao qual pensei: "É o que diz o homem que nunca programa ..." A pessoa à sua direita imediata era negra. codificador C ++ de cinto que sabia o suficiente para otimizar rotinas manualmente na montagem da Intel (após obter 2 doutorados).

Além disso, tenho certeza de que cada loja é diferente. No entanto, achamos melhor fazer o protótipo no Matlab - a maioria dos quantos possui um bom currículo matemático e essa é uma linguagem fácil de entender. Em seguida, todo o código de produção foi lançado em C / C ++ com front-ends personalizados para o Excel ou seu próprio software de cluster de alta performance e homebrew.

No entanto, se eu fosse iniciar meu próprio fundo, substituiria o Matlab por R, porque passei inúmeras horas (enquanto em primeiro nome com o único cara em quem confiaria) no telefone com o suporte técnico do Matlab, depurando seu flexlm interface de licenciamento e C ++.


11
Re: Python, curiosamente, a Comissão de Valores Mobiliários dos EUA propôs recentemente um mandato que exigiria que os emissores de títulos apresentassem um programa de computador que mapeie o fluxo lógico de fundos e que "esse programa de computador seja arquivado ... em Python". sec.gov/rules/proposed/2010/33-9117.pdf
Steve Tjoa

Uau. Não tinha ideia. Desde que eu mudar btw Ubuntu e Windows, eu apenas não pode tomar uma linguagem onde espaços em branco (tabulações vs. espaços) importa ...
M. Tibbits

@MTibbits, o que, o Ubuntu não tem espaços? :)
Benjol 13/01

@ Benjol, o Ubuntu tem espaços, deve ser o Windows que não.
dan_waterworth

Tudo depende do que você deseja alcançar. Conheço várias pessoas em bancos de investimento fazendo prototipagem em Python usando uma ligação de Python à sua biblioteca C ++. Com relação à descrição de negociações em Python: várias pessoas mencionadas na época, isso não é uma boa ideia, porque você não pode verificar os programas em Python. Uma linguagem de programação na família ML seria mais adequada.
LennyProgrammers
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.