Search
GBP
ENG
Trading Software
    Menu Close
    Back to all

    Why Designing Your Algorithm is Important

    So, you have a great idea for an Automated Strategy and you understanding coding. I would say programmers sometimes do not sit back and with pen and paper design the technical architecture and logic of a small project before a single line of code is written. This can be useful in certain scenarios, but for a project that is going to be organic and grow over time and where the money is involved, we should all be designing the architecture before we enter the development phase.
     
    If you do not follow any software development process and work from bad or no requirements you could be a Cowboy Coder. This type of process can be fine for development work to experiment with quick and dirty applications or as a Proof of Concept.

     

    Are You a Cowboy Coder?

    HeroicProgramming is often the only course of action left when poor planning, insufficient funds, and impractical schedules leave a project stranded and unlikely to complete successfully.

     

     Cowboy Programmers 

    How Not to be a Heroic Programmer

    For a start, you should have a clear concise functional requirement document made by yourself or from your customer, without this blue-print of the system how can we even begin designing it. Once you have defined the requirements then you have a clear picture of the task ahead of you. As most automated strategies or Indicators are very small projects in software engineering terms, you do not need a full-blown design document, but instead sitting down with a blank sheet of paper and jotting down the flow of the strategy, how maybe complex parts can be solved. This will save you hours of coding and refactoring until you have managed to get it working with sticky tape holding it together with style.

     

    Why is Design Important

    You want your project to grow over time and be easy to enhance, modify, support by any individual who looks at the code, you do not want what is known in the industry as Spaghetti Code, this is where your coding is so tightly coupled with all the other code that any minor change could cause such a serious side effect that you end up losing money.

     

    Coding Standards

    Writing robust quality code for algorithmic trading software development is just as important as any other mission-critical system due to the financial risk that is involved. Good quality and well-written code reduces the risk of potential bugs in the system that could cause some serious loss of money.

     

    Watch a Video Explainer

    The video has been uploaded to 1080p High Quality, so do not forget to set your U-Tube video quality to 1080p HD. 

    • Duration: 13 minutes