[erlang-questions] trading systems
Paul Fisher
pfisher@REDACTED
Thu Oct 1 18:15:51 CEST 2009
Food for thought:
http://www.acm.org/ubiquity/volume_10/v10i3_hyde.html
Joel Reymont wrote:
> Kenneth,
>
> On Oct 1, 2009, at 4:50 PM, Kenneth Lundin wrote:
>
>> It would be nice if you could explain what the system needs to do
>> and after that
>> why you think it is a problem to store prices in an ETS-table.
>> [...]
>> Why are you talking about mmapped files? Please explain for a novice
>> in trading systems.
>
> It's high-frequency trading systems I'm talking about. Where's Serge
> Aleynikov [1] when you need him?
>
> I'd like to process an incoming price quote, make a decision and
> submit a trade order with minimal latency. I know that this is
> normally done using C++ (or OCaml [1]) but I'm wondering how this can
> be achieved using Erlang.
>
> Minimal latency is usually achieved by hitting the CPU cache as
> frequently as possible and minimizing memory copying overhead. ETS
> copies memory and I suspect it's use of the cache is rather poor by
> virtue of being a "hash table" and pointing all over the place in
> memory.
>
> A simple array of floats or doubles groups data together in memory and
> is very cache friendly. I figure that an Erlang binary is the closest
> I can get to an array in Erlang. mmap-ing a file of floats or doubles
> and wrapping it in a binary should avoid unnecessary copying of data
> from disk to memory.
>
> I think operating on binaries representing mmap-ed files of price
> quotes is as close as you can get to low latency in Erlang. I know
> that premature optimization is the root of all evil but I'd rather
> have my teeth pulled than optimize Erlang. This is speaking from
> experience. I figure a much better way is to choose a concept that
> guarantees fast code from the start.
>
> Thanks, Joel
>
> [1] http://www.puppetmastertrading.com/blog/2009/07/08/the-other-interesting-thing-about-the-serge-aleynikov-story/
>
> ---
> fastest mac firefox!
> http://wagerlabs.com
>
>
>
>
>
> ________________________________________________________________
> erlang-questions mailing list. See http://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
>
More information about the erlang-questions
mailing list