5 ms·
For anyone interested in apl, take a look at k which is essentially apl restricted to the ascii character set. There's also q (aka kdb) which adds some addition
by breenhead 8y ago
For anyone interested in apl, take a look at k which is essentially apl restricted to the ascii character set.
There's also q (aka kdb) which adds some additional database-like functionality (among other things) however it's proprietary and "free".
- macintux 8y agoThere’s also J, also created by Kenneth Iverson. http://www.jsoftware.com/ http://www.jsoftware.com/
- dmos62 8y agoQuote about motivations behind J, found in Kenneth E. Iverson's Wikipedia page: """ When I retired from paid employment, I turned my attention back to this matter [the use of APL for teaching] and soon concluded that the essential tool required was a dialect of APL that: • Is available as "shareware", and is inexpensive enough to be acquired by students as well as by schools • Can be printed on standard printers • Runs on a wide variety of computers • Provides the simplicity and the generality of the latest thinking in APL The result has been J, first reported in [the APL 90 Conference Proceedings] """ This is how you'd compute a moving average (taken from its Wikipedia page [0]): avg=: +/ % # avg 1 2 3 4 2.5 v=: ?. 20 $100 NB. a random vector v 46 55 79 52 54 39 60 57 60 94 46 78 13 18 51 92 78 60 90 62 avg v 59.2 4 avg\ v NB. moving average on periods of size 4 58 60 56 51.25 52.5 54 67.75 64.25 69.5 57.75 38.75 40 43.5 59.75 70.25 80 72.5 Pretty cool. [0] https://en.wikipedia.org/wiki/J_(programming_language) https://en.wikipedia.org/wiki/J_(programming_language)
- stevesimmons 8y agoIf you want to try kdb, there is are two free noncommercial versions: - 64 bit/16 core, sends "I'm alive" packets back to Kdb: https://ondemand.kx.com/ https://ondemand.kx.com/ - older 32-bit, standalone, very small executable: https://kx.com/download/ https://kx.com/download/ Wkimpedia page has history and links to various docs: https://en.m.wikipedia.org/wiki/K_(programming_language) https://en.m.wikipedia.org/wiki/K_(programming_language)
- curiousgal 8y agoLast time I searched for Kdb I found that it's highly used in finance, is that still the case?
- stevesimmons 8y agoIt has a niche (time series analysis of equity data) where its performance is valued. Kdb developers are rare and expensive so it gets used for specific tasks rather than as a general purpose db.
- osullivj 8y agoNot just equities but other asset classes too. I've seen it used for persisting Eurex order book state for futures contracts. London contract rates for KDB devs seem to be 1000GBP/day.
- smcl 8y agoIt really depends on what you're emphasizing in the question. Are a sizeable number of Kdb's clients in the finance industry? Yes, it seems they are Is Kdb common or widely used in finance? No
- mruts 8y agoIn my experience it is rarely used on the buyside but often uses on the sell-side: most investment banks have atleast a couple people that are using it.
- dkersten 8y agoBitmex, the cryptocurrency derivatives exchange's trading engine is written in kdb+/q.
- breenhead 8y agoSpeaking as a kdb programmer in finance (although for an unusual use case), most big (and some small) banks have an Enterprise license and have one or more teams that maintain a market data store and/or an order reporting/reconciliation/PNL stack. There are a decent number of hedge funds that use it for more or less the same purpose but work with other data sets in addition to market data For storing and exposing market data, you need very little additional code. Maintenance is a different story.