New software dev project

Discussion in 'Trading Software' started by psheridan050, Apr 6, 2008.

  1. I wasn't referring to using standalone applications. I was referring to linking to open source libraries already available.

    MySQL is a standalone database. I didn't get the impression that the open source libraries he was referring to were standalone applications. I got the impression he was referring to building on top of open source packages already available.

    Which btw...even MySQL isn't "free". Sure, you could probably "illegally" use it in a production environment without paying licensing fees, but the fact of the matter is that virtually no open source is "free".

    Unfortunately, many people have this incorrect understanding that just because they can download the source code for free, that this also allows them to use the software without paying royalties.

    Open source is "free" in the sense of being able to do whatever you like with the software (free in use sense), (such as limitations in proprietary software packages), but people should not be confused into thinking that it is free in the cost sense.
     
    #21     Apr 6, 2008
  2. rosy2

    rosy2

    why would this partner need you then? looks like he will be doing everything.
     
    #22     Apr 6, 2008
  3. #23     Apr 6, 2008
  4. m_kramar

    m_kramar

    1) It seems tradestrong is right. 100k is more realistic figure.

    2) Yes, you have to use open-source libraries. If you try to create such platform from scratch, it may take forever. And its very hard to estimate the budget.

    3) Rather than building your system on your scripting language spec, you should create a translator from your script into a real programming language. For example translate your script into C#, build a DLL, make your platform load the DLL and run the strategy.

    4) Your scripting language may have disadvantages compared to real programming languages like C#. How are you going to implement complex conditions like "if (COND1 AND (COND2 OR COND3)) then Buy"? What about function calls? However it still may be usefull for simple strategies.

    5) Outsourcing may be a good solution. Probability of failure is nearly the same as when programmin onsite, but at least you will pay 4 times less :)

    6) You should have good marketing strategy. Even if you have this project done and even if it provides a great functionality, you will still have to promote it. And it may be harder/more expensive than coding.

    7) Are you sure that having this service online is more convenient than having similar desktop application? Web interface is generally slower. Also users might feel more confident when keeping their strategies on a personal hard drive.

    At the moment I'm trying to develop an open-source (but not free) platform for projects like your. Instead of trying to build a project from scratch or from different open-source libraries, people would be able to buy the source code and make any changes they want. Take a look at http://www.stratrader.com.
     
    #24     Apr 6, 2008
  5. It looks like a lot of programmer-types have responded to this post, which I’m glad of. I’ll respond to a few comments made recently and add a few new things of my own. I am working late nights now (it’s about 1am here in Hawaii) so forgive me if I’m long-winded or don’t make lots of sense at times.

    One thing that I believe a lot of you guys may overlook sometimes is that not everyone is a programmer, or needs or wants that level of detail when developing a strategy. What I want developed isn’t necessarily for your level of experience because if you wanted something like this, you would develop it yourself. Or if not that, skip the easy to write language stuff and just hard code an ATS in your favorite language. This software is meant for a broader audience yet still be a legitimate tool for the serious system builder.

    As for gathering partners, one comment said something along the lines that if I had someone with the skills I listed, what good would I be? Well, the short answer to that is there is a lot more to a company than just getting the software written. To be honest, when I first began writing this project I was designing this software for my own use. I have reviewed lots of different packages out there and I got to thinking how nice it would be to cherry pick the best features from them and combine them into a single piece of software. I suppose what other people believe are the best parts of a program is pretty subjective. In any case, as I progressed I decided it might be a good idea to find some like minded individuals who would want to use this type of software for their own strategy development. I realized to start a company like this would probably require more capital than I want to allocate on my own. And again, it would be nice to balance the management team with people who know software.

    To give you a further idea on what I envision for my project, I will give you a list of books that encompass many of the ideas that guide my own trading: Stridsman’s Trading Strategies that Work, Pardo’ The Evaluation and Optimization of Trading Strategies, Aronson’s Evidence-Based Technical Analysis and Sweeney’s Maximum Adverse Excursion. I’m not looking at the strategies presented in these books but at the strategy development processes they detail. As can be guessed by my favorite books, I am an algorithmic trader; no subjective analysis for me. BTW, if anyone has book suggestions along these lines let me know.


    With the custom language I have been writing about you can describe some pretty complicated strategy setups that take a lot of conditions into account. m_kramar asked “How are you going to implement complex conditions like "if (COND1 AND (COND2 OR COND3)) then Buy"?” Here is an example:

    [Entry Filter 1]
    RSI(14) has been above 70 for the last 3 days
    MSFT Close is within 1% of the 30 day high
    ^DJI Close is within 1% of the 60 day high or
    ^IXIC Close is within 1% of the 60 day high

    In this example each of these parameters has to be true for a symbol to match the filters criteria:

    • The symbol must have an RSI(14) above 70 and it must have been above 70 for the last 3 days
    • The close of MSFT must be within 1% of the 30 day high
    • The close of ^DJI OR ^IXIC must be within 1% of the 60 day high

    The category [Entry Filter] states that once the criteria have been met, then an entry can be made. The type of entry to be made (long or short) can be spelled out here or defined in the [Backtest] category for the strategy as a whole.


    Ok, going back to the entry filter example above. Say you backtested this over 10 years. The filter’s requirements are pretty stringent and it returns only 200 trades over that 10 year period. The strategy has a win to loss ratio of 3:1 and an average profit of 2%. With all else being acceptable, this would be a good strategy but an infrequent one. But, if you could find 14 other strategies with similar performance profiles you could have yourself a trading system. This goes into a feature I haven’t mentioned before, which is basically creating a strategy portfolio. I haven’t finished all the details on this, but what I intend to do is have a way of combining strategies together into a system of trading, and be able to analyze the system as a whole. The portfolio of strategies could be backtested using a simulated account. A performance profile could be analyzed. For instance, say that the worst performing day over that 10 year period was Wednesdays. On Wednesdays, the portfolio of strategies just seemed to always have its biggest and most frequent losses. So, you could put a rule in the portfolio of strategies that said “Do not Trade on Wednesdays”. If you wanted to get even more picky, you could say “Do not trade on the 3rd Wednesday of each month”. There are dangers to this, curve fitting, but this can be mitigated by using walk-forward testing and keeping the degrees of freedom in check.
     
    #25     Apr 7, 2008
  6. There is already software available that can do everything described in your above post.
     
    #26     Apr 7, 2008
  7. I have not seen it. Everything Ive looked at does not contain all theses features. Almost all the stockscreen services are pulldown menues or canned in some way or another. I looked at the software suggeted by others in this post and I still havent seen anything with the same features I am proposing. If I am missing something please let me know.
     
    #27     Apr 7, 2008
  8. Stratasearch has all features you listed on this page of the thread, with the possible exception of being able to eliminate the third Wednesday of the month.
     
    #28     Apr 7, 2008
  9. Spunky

    Spunky

    AmiBroker can do everything you want including “Do not Trade on Wednesdays”
     
    #29     Apr 7, 2008
  10. #30     Apr 7, 2008