One area where D has the edge

via Digitalmars-d digitalmars-d at puremagic.com
Tue Jan 27 12:39:52 PST 2015


On Tuesday, 27 January 2015 at 19:27:43 UTC, Laeeth Isharc wrote:
> 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.

I have to admit that I know very little about hedge funds, so 
this is all quite new and intriguing for me (and therefore pique 
my interest! ;^). I am using Google Cloud for creating App Engine 
web apps, but I have wanted to experiment with Google's cloud 
computing offerings for a while. Do you think that Compute Engine 
and Big Query would be suitable for your needs? Or is it required 
that you have all your data on site locally? Google has pretty 
good stability (SLA), but I guess they were very slow for a few 
hours during the olympics or so a couple of years ago (some load 
balancing mechanism that went bananas).

> 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.

So, basically there might be a market for tailoring solutions so 
that client can gain strategic benefits?

> 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.

Ah, I sense you are going against the stream by getting your 
hands dirty in a DIY way. Good! :)

> 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.

So Bloomberg have basically commoditized the existing practice, 
in a way, thus reinforcing a particular mindset of how things 
ought to be done, perhaps? And maybe you see some opportunities 
in doing things differently? :-)

> are triggered).  That's valuable, but not enough for various 
> reasons: one needs to maintain the alerts by hand (last I 
> checked);

For legal reasons?

> 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.

Not sure what you mean by the "functions", do you mean technical 
computations or people (like different functional roles)?

> 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.

How large are the datasets?

> 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.

Yes, and you can also tailor the interface to the user, so 
professionals can eventually get more done or be less frustrated 
by getting rid of the clutter. Or in some cases where I try to 
make the interface so simple that no learning (and therefore 
confusion) is necessary, which is kind of important for functions 
that are used seldom. But it sounds like you are creating tools 
for yourself, so that might not apply in your case?

> 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

Sound like D might be a good starting point for you, an 
incremental upgrade from C.

> 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.

If you need very high performance on a single CPU then you 
probably need a compiler that will generate good SIMD code for 
you, but I suppose you could try out a tool like Intel's 
experimental vectorizing compiler https://ispc.github.io/ or 
something else that can vectorize and link it in if D is too slow 
for you.

> 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.

You might find D a bit lacking on the SIMD side, with AVX you can 
basically boost performance with a factor of 5-6x compared to 
non-vectorized code, but maybe D will benefit from the auto 
vectorizing support that is being added to LLVM for Clang.

How do you plan to do the user interface? HTML5?


More information about the Digitalmars-d mailing list