Good system for AMI Broker?

Discussion in 'Hardware' started by mvalley, Sep 19, 2006.

  1. mvalley


    I've started using AMI Broker recently and have been taking advantage of its neat optimization feature.

    Unfortunately on my old AMD XP 3000+ system, it takes a LONG time to run through some of my optimizations (DAYS!)

    I'm looking to upgrade to maybe a Dual core system, but heard that AMI Broker will not run any faster on a dual core system because it isn't multithreaded.

    Does anybody know if this is true?

    What kinds of systems are people out there using with AMI Broker with good performance?
  2. Have you considered doing several smaller optimizations instead of one big? Consider increasing your step size in the optimization to find roughly where your best results are (ballpark), then do another optimization with a smaller step size to "drill down" in the area of interest to the best results at a higher resolution...This can cut down your optimization run time. If that doesnt work for you, its time to go shopping..
  3. mvalley


    Yeah, I've tried the manual way, but that takes a lot of manual time which I'd rather conserve.

    In fact, before AMI Broker I didn't have an optimizer so I HAD to manually optimize all my ideas.

    Too bad AMI doesn't have a monte carlo type optimizer.

  4. not sure you got what i was trying to say...there is nothing "manual" about the process i just do 3 smaller optmizations instead of one huge one still using AB the whole time
  5. In general, I have found Amibroker's optimization feature pretty quick. Using a pentium 4 2.8ghz, most optimizations take a minute at max - for one security.

    With that said, optimizing about 66000 runs of 5 years of EOD data can take about half an hour if I recall.

    Personally, I have not found optimizing a particular system to a great deal of accuracy across a group of securities to be that helpful. Perhaps I am mistaken, but I would rather get a general idea of how a system works across the market and then refine it to the individual security, than just apply it brute force to an individual security.

    I think that you can get as good data on a prospective basis by adjusting your parameters and then zeroing in on subsequent analyses, as the other poster said. For example, perhaps you are using a double moving average system with a stop loss. Instead of running the system with each moving average parameter from 1 to 300 by increments of 1, and the stop loss from 0-20% in increments of .1; run it from 1-300 by 2's and the stops by 2.0%. I doubt you will lose any significant information if the system is to be ultimately profitable. If it looks good, narrow in the parameters.

    A while ago, I along with some of the other Amibroker people on the User's group wrote an auto-optimizing exploration. It basically goes through your ticker list and runs whatever system you care to use and then filters out the profitable ones, or ones with high % of winning trades, or ones with low drawdowns, or whatever you wish. It was cute.

    Is that what you are looking for? PM me if you are and I will cc you the code.

    Faster is always better but over-optimization is the path to destruction. Fortunately, if you know how to use Ami, you have some powerful tools to prevent you from making that mistake and choosing more robust systems.

    Good luck.
  6. It seems strange that your optimizations are taking days... I write fairly simple code in AB but the program is lightning fast for me. There is a guy called Dimitris Tsokakis who was active in the AB groups and even posted here for a while. He wrote code which would seize my old computer up, but I tried some of it in my new machine and it runs, albeit a bit slowly.

    Athlon Dual Core 3800+, 2GB RAM, WD Raptor 74GB 10K RPM.

    Amibroker is just ridiculously fast in this machine.

    You're right that AB is not multithreaded - I believe Tomasz (owner and developer) said so recently. Of course, there isn't much point in building a new machine now without a dual core proc, or so I have been told by those who know.

    If you post your code at the AB Yahoo groups, some people will probably chime in and let you know if it's the way it's written that is causing you problems. However, it sounds like you're more of a coding guy than I am, so you may be aware of the traps that can slow things down.
  7. mvalley


    I think one difference may be that my formula is more like a screener that looks for stocks that match a certain pattern and then buys based on that.

    This means that I need to go through 10,000 stocks on each optimization step which slows things down quite a bit.

    I have the feeling that some of the other folks here are screening against just one security which usually is extremely fast.