Forex Trading Blog

  • Recent Posts

  • Authors

  • Categories

  • Archives

  • Subscribe

    Add to Google Reader or Homepage

    Add to My AOL

    Subscribe in NewsGator Online

     

    Forex Trading Blog - Forex Trading Blog » DailyFX Radio Podcasts - Forex Trading Blog » DailyFX Radio Podcasts

  • Opinions - Not Facts

    This blog consists of contributions from FXCM staff, executives and people that have a relationship with FXCM. In spirit of a blog, the posts are conversational and opinionated. However, they are not official FXCM policy and not double-checked for facts. The authors are providing information that they believe to be true or opinions they hold. To verify information or check official FXCM policy, please contact FXCM through the firm's official website, www.fxcm.com.
  • « Seasonality in USD/JPY | Home | Buying Low - Selling High »

    Re-Inventing the Wheel

    By Darren Merwitz | July 17, 2007

    So you have a simple trading system, your market maker offers an API to execute that system and you’ve done some basic programming in school.  So building software to automate your trading is easy, right?

    WRONG!

    I can’t tell you how many traders / programmers feel that way.  Building your own automated execution software is a very attractive option.  I mean, forget getting frustrated at your current charting package about things that don’t work.  And all your wonderful suggestions?  You can finally put them into your application without having to send continuous emails to your product’s developers.

    But take a moment to think about what is involved in this kind of project on the absolute most basic level:

    1. Obtaining data - you need to obtain both historical and real-time data to begin.
    2. Storing data - your strategy needs to have ready access to reliable data in real-time order.
    3. Analysis - you need to build a way to program in your strategy in a structured way to be able to obtain the buy / sell signals.
    4. Order management - your system needs to be able to track current positions, stops, limits entries etc
    5. Execution - you need to send your orders to your market maker and handle execution confirmations / rejections.

    This very brief simple overview doesn’t even begin to get into the details of design.  And then there are the considerations of data and power back-ups, monitoring and handling errors.

    What I’m trying to say is - there is a reason that there are entire companies dedicated to creating and maintaining software packages that do this.  Your time and effort would be much better spent looking for an appropriate provider than creating your own.  Obviously this does not cover all cases and if you need a very specialized piece of software you may be better off doing it yourself. 

    However, by far, the majority of cases in which traders attempt to create their own software, they begin without fully realizing exactly what they are getting into.  They then spend weeks upon weeks of late nights and no weekends programming away, only to end up with the software equivalent of a house without a roof.  It’s a good attempt, but completely useless.


    Tags: , , ,

    Topics: Systems Trading Blog |

    Comments