Hacker News new | ask | show | jobs
by mruts 2745 days ago
I think KDB might be what you’re looking for. It’s very efficient and widely used in finance. It’s pretty expensive, but I believe you can use it for personal use for free (there might be a single core restriction I think).

As an aside, KDB devs make bank, like salaries >500k

2 comments

I've always been curious how people get into this. I've been interested in KDB ever since I read http://archive.vector.org.uk/art10501320, but it's not exactly a language they teach in college or you'd pick up in independent study. Do people just apply to fintech places with relevant experience and then get training for kdb?
Re how to get started: what was effective for me was to pair kdb+/q with another language and constrain how much I tried to do with q itself. q-sql for joining, filtering, pivoting and grouping (particularly date grouping and grouping with custom aggregate functions) is incredibly fast and powerful and also easy to learn. (though certainly, q experts will be able to point out all sorts of sub-optimal things in your queries)

Initially, we used F# to shovel data into kdb and to orchestrate queries and process results -- while keeping our q-sql simplistic -- and still saw astonishing speedups in our data processing. Over time, wherever we needed more speed, we'd do more and more in q itself (the 'Q Tips' book is very helpful).

One can get a lot of power with just a little kdb+/q.

Typically, one would start off in a quant trading desk which uses kdb+ for their analytics or join First Derivatives [0] that trains graduates

[0] https://www.firstderivatives.com/

The latter. Like everything else in finance, you have to learn on the job. The good news is that since no one who hasn't worked on Wall St (and even most who have) knows anything about the industry (and that the talent pool is pretty small compared to Silicon Valley, at least for non shit-analyst jobs), they are willing to accept people who don't know much, providing you have the basic chops (basic calculus, statistics, and good programming skills).

I really wish more programmers would get into the industry, since the status quo is pretty terrible. The financial industry needs more quantitative folks so we can kill off the dinosaurs of the "greed is good"/pre-decimalization world :)

I have no idea about it, but Kx Systems have a YouTube playlist updated this year, "Introduction to kdb+ and q" -

https://www.youtube.com/playlist?list=PLypX5sYuDqvrwBD2EMWad...

There seem to be a couple of free versions, a 64-bit and a 32-bit version, with the latter being less restricted than the former.[1]

I was curious about it, but they really don't make it easy to get started. There are no links to any documentation anywhere on their site. The download is hidden behind a licensing agreement and a form asking for the user's personal information. They mention GitHub (in the context of "community support") on their download page, but there are no links to any GitHub repos.

[1] - https://kx.com/connect-with-us/download/

https://code.kx.com/q/ has learning material and documentation . Hope it helps
I highly recommend the “Q for Mortals” book as an excellent introduction to using K and it’s available online:

https://code.kx.com/q4m3/