One area where D has the edge
Laeeth Isharc via Digitalmars-d
digitalmars-d at puremagic.com
Tue Jan 27 11:27:42 PST 2015
> Out of curiosity, what is lacking in the current commercial
> offerings for hedge fund management? Why not use an existing
> engine?
In the general sense, lots is lacking across the board. I
started a macro fund in 2012 with a former colleague from Citadel
in partnership with another company, with the idea that they
would provide infrastructure as they had experience in this
domain. I should not say more, but let's say that I was not so
happy with my choice of corporate partner. This experience made
me think more carefully about the extent to which one needs to
understand and control technology in my business.
One of the things that was striking was the very limited set of
choices available for a portfolio management system. Macro
involves trading potentially any liquid product in any developed
(and sometimes less developed) market, so it doesn't fit well
with product offerings that have a product silo mentality. One
uses a portfolio management system very intensively, so user
interface matters. But very few of the offerings available
seemed even to be passable. We ended up going with these guys
who have a decent system because it was spun out of a hedge fund
but if you asked me about passable alternatives, I do not know if
there are any. http://www.tfgsystems.com/
There are of course specific challenges for macro and for startup
funds that may not be generally true of the domain - it is a big
area and what people need may be different. Larger funds use a
combination of third party technologies and their own bits, but I
am not sure that everyone is perfectly happy with what they have.
I formerly jointly ran fixed income in London for Citadel, a big
US fund, so have some background in the area. Things changed a
lot since then, and I certainly wouldn't want to speak about
Citadel.
It's a funny domain, because the numbers are more like a large
business, but there are not all that many people involved.
People on the investment side don't necessarily have a technology
background, or have the time and attention to spare to hone their
specification of exactly how they want things to work. So one
can have a strange experience of on paper being in a situation
where one ought to have one's pick of systems, but in practice
feeling starved of resources and control. This is one of the
reasons I decided to spend time refreshing my technology skills,
even though by conventional wisdom the basic tenets of
opportunity cost and division of labour would suggest there is no
point. Things have changed a lot in the past twenty years, and
the only way to keep up is to get one's hands dirty now and then.
Again on the resources front - given what happened in 2008, there
has been an understandable focus on reporting, compliance, and
the like. It's a surprisingly brittle business because your
costs are fixed, whereas revenues depend on performance and
assets and investment strategies tend to intrinsically experience
an ebb and flow whilst it is human nature to extrapolate
performance and investors, being human, tend to chase returns.
So it's not today necessarily the fashion to have a large group
of people to develop ideas and tools that might pay off, but
where it is hard to demonstrate that they will beforehand. There
has been a cultural change in the industry accompany its
institutionalisation, so it's today much more 'corporate' in
mindset than it once was, and this shift has not only positive
aspects.
In many cases, you can kind of do what you want in theory using
Bloomberg. The problem is that it is closed, and with a
restrictive API, so if you want to refine your analysis, that
becomes limiting. But because you can do a lot that way (and it
is presented very attractively) it's not so easy to justify
rebuilding some functionality from scratch in order to have
control.
To take am almost trivial example, Bloomberg offers the ability
to receive an alert by email when market hit various price
conditions (or certain very basic technical analysis indicators
are triggered). That's valuable, but not enough for various
reasons: one needs to maintain the alerts by hand (last I
checked); I don't trust email for delivery of something
important; and I want to be able to consider more complex
conditions. One could do this in a spreadsheet, but that's not
in my opinion the way to run a business. Python is fine for this
kind of thing, but I would rather engineer the whole thing in a
better way, since the analytics are shared between functions.
Or to take another example, charting and data management
platforms for institutional traders remain unsatisfactory. It's
not easy to pull data in to Bloomberg, and to do so in an
automated way where your data series are organized. One wants to
have all the data in one place and be able to run analyses on
them, and I am not aware of a satisfactory platform available for
this. Quite honestly, the retail solutions are much more
impressive - it's just that they don't cover what one needs as a
professional. By building it oneself, one has control and can
work towards excellence. The combination of incremental
improvements, small in themselves, is underestimated in our world
today as a contribution to success.
> Also, why D? Why not use a language or platform designed for
> scalability and distributed computing like
> http://chapel.cray.com/ ?
Pragmatically, I am an old C programmer, and there is a limit to
how much I can learn in the time available. It seems to me I can
do everything I need in D in a way that is scalable for practical
purposes. Some of what I want to do is totally straightforward
scripting, and some is more ambitious. It is nice to be able to
use a single language, if it's the right tool for the job (and if
not, then interoperability matters). If sociomantic (and that
advertising company linked to in the blog post from a while back
about using D for big data) can do what they do, I can't imagine
it will be limiting for me for a while. I will check it out, but
there is a beauty to starting with the smallest useful version,
and knowing that you can scale if you need to.
I recognize this reply is meandering a bit - since the major
topic is use of D for big data in finance, whereas I am touching
on a whole host of applications where I see it being rather
useful.
Laeeth.
More information about the Digitalmars-d
mailing list