It is currently Thu Sep 09, 2010 4:46 pm




Post new topic Reply to topic  [ 6 posts ] 
New Release(s) Coming 
Author Message
New member

Joined: Mon Feb 08, 2010 8:45 am
Posts: 7
Post New Release(s) Coming
Hello OFP Developers,
Nice looking project, congratulations. We currently develop using a customized version of the Quanthouse (Quantfactory) codebase, but are always on the lookout for a decent OSS platform like OFP to take the lead in the future (as only a OSS project could :).

A question on the latest news titled "New Release(s) Coming" - are there any more details/debate on the new design and direction? Here the move has been over to Event Sourcing/Command query separation design (I'll put some public references below for convenience). Interested to see if the new OFP design has gone this direction given its natural fit for multi-"Expert" trading systems - or if you guys have come up with something different entirely.

Kalori

Ref:
http://en.wikipedia.org/wiki/Command-query_separation
http://martinfowler.com/eaaDev/EventSourcing.html

Related Discussion/Application to trading platforms:
http://qconsf.com/sf2007/file?path=/QCo ... Design.pdf
http://www.infoq.com/interviews/greg-young-ddd
http://elegantcode.com/2009/11/11/cqrs-la-greg-young/


Mon Feb 08, 2010 9:21 am
Profile
Site Admin

Joined: Wed Sep 17, 2008 12:18 am
Posts: 407
Post Re: New Release(s) Coming
Hey Kalori,

interesting topic this :)

What we have done is build a new module we call a "super pool" that brings together a message bus, a "remoting" framework, a thread (management) and a component control. It sounds like a mess, but it is amazingly simple to use and the implementation is also very clear. It is a new pattern (or sort of combination of many) and it has many many advantages, and is hella fast to write code with and execute code upon.

This will be part of a separate new platform we shall soon release (expected release date 1.Mar), and it will be aimed at general programming, not finance, with the next phaze a (new) finance platform based on that.

The direction we are moving is putting more action on automated trading and optimization, as well as simplified more pragmatic structure and architecture. The current platform is amazingly flexible, but a bit hard to work with so the new thing will be a big step in that direction...


Mon Feb 08, 2010 3:33 pm
Profile
New member

Joined: Mon Feb 08, 2010 8:45 am
Posts: 7
Post Re: New Release(s) Coming
Thanks sounds very interesting, look forward to seeing how it all fits together.


Mon Feb 08, 2010 3:59 pm
Profile
New member

Joined: Mon Feb 08, 2010 8:45 am
Posts: 7
Post Re: New Release(s) Coming
admin wrote:
It is a new pattern (or sort of combination of many) and it has many many advantages, and is hella fast to write code with and execute code upon.

Just a quick question: Will the new OFP design allow easy scaling "ExpertHosts" out across many physical/virtual servers (all coordinating on the same trading account) - or is the design more towards one or two servers handling multiple experts? Just though I'd ask as scalability was one of the first reasons we started eyeing CQRS design (no choice when each "expert" system starts to take up a lot of resources :), so be interesting to know where OFP is heading.
CQRS, Task Based UIs, Event Sourcing agh! wrote:
The largest possible benefit [of CQRS] though is that it recognizes that their are different architectural properties when dealing with commands and queries … for example it allows us to host the two services differently eg: we can host the read service on 25 servers and the write service on two. The processing of commands and queries is fundamentally asymmetrical, and scaling the services symmetrically does not make a lot of sense.


Thanks!


Wed Feb 17, 2010 1:37 pm
Profile
Site Admin

Joined: Wed Sep 17, 2008 12:18 am
Posts: 407
Post Re: New Release(s) Coming
Scaling the solution is way fun on the new system (in a good way)! :D

Since all the communication (inter component invocation) is inherently message based, and we have provided a very fast default built in TCP.IP module, you can move your components around as you wish. Placing them on as many separate machines as needed.

The only requirement of the model is it requires one machine to be assigned "server" and essentially it brings them all together, acting as a server everyone connects to. However a distributed (multiple servers) model is also easily achievable, though probably rarely needed.

So this all goes to ExpertHosts as well, no problem to have a server with a single trading connection and a 100 different expert hosts running on 100 separate machines.

And all of this comes standard, and takes 3 lines of code to set up.


Wed Feb 17, 2010 11:30 pm
Profile
New member

Joined: Mon Feb 08, 2010 8:45 am
Posts: 7
Post Re: New Release(s) Coming
Great, looking forwarde to trying it out!


Fri Feb 19, 2010 1:12 pm
Profile
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 6 posts ] 


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © phpBB Group.
Designed by Vjacheslav Trushkin for Free Forums/DivisionCore.