modify an exising automated trading package or build a new one ?

Discussion in 'Automated Trading' started by ecoscien, Dec 28, 2005.

  1. mrtwo

    mrtwo

    You know, I wonder if you would say such things to people's face....

    Like, learn to live in peace with people, respect people's standpoints and opinions. Why criticize someone who was trying to help someone else when you werent?

    Like, what do you want? Is this making you feel accomplished in any way???
     
    #61     Jan 6, 2006
  2. ecoscien

    ecoscien

    Thanks Mrtwo, great attitude. Thanks for being so helpful.

    I agree with you that Visual Studio is a very good IDE. Now what are the specific "reliability issues" and going forward what are the assurances that they will be solved?

    If money isn't a constraint but time is, and and having access to high performing and reliable hardware is a concern, then what would you recommend?

    If my primitive algo is doing well then I would certainly want to scale up capacity and to add complexity, then what would be the way to port algos in Windows to other systems? Also, is it easy to port between Unix and Linux? I guess there is some scalability and interoperability concerns here, in addition to portability.


    Will the 'code rewriting due platform changes' come yearly with Windows? or are you talking about switching from Windows to Unix?


    Are you saying that at the onset, I should make a comparision of Windows and Unix and find the 'lowest common denominator' of both platforms, and confine my coding to that?

    If I were to use Java to write trading algo, how will that change all of these considerations?

    Thanks, mrtwo, you have been very helpful.
     
    #62     Jan 6, 2006
  3. ecoscien

    ecoscien

    Thanks, intersting reading, that there seems to have been this history of people predicting the extinction of Unix... it certainly is a concern whether it will thrive or become marginal...
     
    #63     Jan 6, 2006
  4. Cheese

    Cheese

    Nice one. Very amusing.
    :)
     
    #64     Jan 6, 2006
  5. If this automation fad catches on with the Joe Blo's,
    the undisputed legendary 95% loser ratio will jump to well over 98.5%.

    :cool: nononsense :cool:
     
    #65     Jan 6, 2006
  6. mrtwo

    mrtwo



    You are most welcome :)

    Back then Microsoft was still struggling to convince people that Windows 2000 Server was viable platform for mission-critical systems. On top of that, security wasnt as much as a priority as it is today. Nevertheless, Windows 2000 was a pretty good platform and if I knew back then what I know now, I would have voted in favor of giving Windows a try on production servers.

    Windows 2003 Server is very reliable and it delivers reasonable power at reasonable TOC. In a recent run, a HP Integrity Superdome running Windows 2003 Server scored 1,231,433 tpmC at 4.82 US $ per tpmC. Running the same routine, a HP Integrity rx5670 Cluster 64P running Red Hat scored 1,184,893 tpmC at 5.52 US $. (source: www.tpc.org).

    If money isnt a constraint and you can afford hiring a few seasoned developers, I would recommend that you go Unix, that is for sure.

    Make sure at least half of your development team has experience with automated trading and do the best as you can to keep it simple: overdesign will kill your performance even when working with high-caliber hardware.

    Porting from Unix to Linux and vice versa is painless. In many ways Unix and Linux are the same OS. Of course, there are differences here and there but not enough to cause too much of a hassle.

    Now, porting from Windows to Unix isnt fun. Basically, to benefit of the Windows platform, you have to embrace it completely. Every time saving feature you use will make your code harder to port and if you just code at the 'lower common denominador' while on Windows, you might as well just give it up and stick to Unix, because it isnt worth it, at least most of times.

    I would pick a platform, either one of the two and just stick to it. Cross platform development adds more risk to your project than it makes it 'safer'. As a rule, you only code with more than one platform in mind when you are required to.

    No, not yearly but 'eventually'. It will happen sooner or later, that is for sure. Most of times, it isnt painful at all, at least on the C++ side.

    Yes, that is the theory. When you are aware which OS features are safe to use on both platforms, you can code a "OS abstraction layer" to hide the specific implementations from your aplication - this way, when the time comes, you will only replace this abstraction layer and your code should, hopefully, work on a different platform :)

    Java is a breeze to port in between platforms. It was designed to be that way. I personally wouldnt develop anything in any language other than C++, Java or C#.

    The one thing about Java is performance. Not that Java is slow as many people believe, but as any platform-neutral and memory-managed language, it demands that you write your code 'in the right way' to benefit the most from it.

    I would not implement neural nets on Java or C# though.

    I hope that helps :)

    Peace,
    MrTwo
     
    #66     Jan 6, 2006
  7. maxpi

    maxpi

    I ruined my amateur radio hobby by over design, every time I had an idea I "improved on it" and it never was as much fun as it would have been to "just do it". With the trading stuff I want to "just do it" to the extent possible. I have become so fluent in EZ Language that it is very easy to go from idea to test but that took years. If I had it to do over again I might actually build my own system but from existing stuff. One guy I spoke with had built his testing system from some electronic testing software environment. He said it programmed by drawing a flow chart and inserting functions that were like the functions in Excel. It ran under windows and it came with the capability to work with a set of data points like an Excel file of OHLC I guess. That would be about the fastest way to do zero to sixty in the backtest development world that I can think of and the software has the advantage of being widely used by serious people and therefore less buggy. I cannot say that about TS2000, I ran a test recently in the radarscreen, I divided the close of thousands of stocks into 100 and got a result. I then multiplied the result by the close price and got 100.... but not all the time!! There were a couple dozen that returned 20 instead of 100!! I found a work around eventually but that does not happen that much with electronic test software that I know of.
     
    #67     Jan 6, 2006
  8. Cheese

    Cheese

    Yeah .. and funny how it can afflict otherwise intelligent people.
    Same old problem .. they arrive with answers without knowing enough about the market or what the actual problems/challenges are.
    :)
     
    #68     Jan 6, 2006
  9. Solaris runs on PCs as well as on sparc boxes and has done so for quite a few years. SUN are now taking Solaris x86 seriously due to their range of Athlon based machines. Most of Solaris is now open source - http://www.opensolaris.org/os/

    Sun have an interesting deal at the moment giving away Opteron based work stations if you sign up for services. For the entry level machine it's around $30 per month. Choice of Solaris, Linux or Windows. I think it's quite a good deal.
     
    #69     Jan 6, 2006
  10. There is absolutely zero chance that Unix will become marginal on the server side of things or in 'technical' areas such as telecommunications, supercomputing clusters and so forth. Linux will also thrive on embedded systems.

    Linux on the desktop will also grow. Who knows by how much. Interestingly IBM are eating their own dog food and converting internal destops to Linux - a mamoth task.
     
    #70     Jan 7, 2006