Which language to use (Novice Programmer)

Discussion in 'Automated Trading' started by H2O, Jan 16, 2006.

  1. Chadwick

    Chadwick

    Sorry, I don't have the luxury of bigotry. I am fluent in everything between assembly (although not to the degree I was many years ago) and .NET, and that diversity allows me to delivery what's needed by my clients. Investing in a career isn't all that unlike the markets; I have to choose to diversify my knowledge portfolio enough that I am able to respond to trends as they present themselves, but not so little that my lack of exposure limits me. I and many thousands of others are successfully deploying .NET solutions to everyone from IBM to Microsoft themselves, and I've made a substantial living doing so. To consider that planned obsolescence is rather myopic, but again... it's your choice. If you were fluent in .NET I could have you with a job tomorrow that pays well over six figures. You might not like it, but that's the trend at the moment, and only an idiot would sit back on their anti-MS principles and deny it. I've owned a consulting practice for five years now (professional developer long before that), and not once have I encountered a worthwhile project that required anything but C++, Java, or .NET. .NET is huge at the moment. Believe it.

    Can't disagree with you there. What constitutes the best is obviously very subjective. The best is that which allows me to achieve whatever goals I have, and for a trader that might be anything from a lesser-known (to the investor community at least, not the trader community) Wealth Lab to the ubiquitous TradeStation. The ultimate goal of trading is to achieve greater wealth and have some fun while doing it (at least for me) , yes? So, for me, tools that offer user-friendly strategy-creation methods are more of a hindrance than anything else, so I choose tools with less out-of-the-box functionality and more flexibility. QuantDeveloper is more my speed for a lot of things, but Wealth Lab is as well.

    So, utilizing the above reasoning the best development platform choice simply won't be, can't be, that of Perl or Python. I know Perl better than I do Python, but I also know that investing a substantial amount of time in either language is a limited return proposition. If I was more of a Python or Perl expert I'd be lucky to make $15/hr developing systems administration scripts in a cube somewhere. Having profound knowledge of Java, .NET, application architecture, etc. allows me to work on large projects with a substantial payout. Which has the greater return? If you don't believe me then look at any metric that has been developed for the software industry.

    I'm no zealot, but I'm no bigot either. To use the cliche: Use the right tool for the right job.

    Likewise.
     
    #41     Jan 18, 2006
  2. Chadwick

    Chadwick

    I question the veracity of such a statement. Surely someone with 5 years of experience would know the countless ways through which you can acquire almost *all* Microsoft software without paying retail? Tell me you didn't pay retail? I haven't paid for anything Microsoft since I started my career, and I did so legally. Seriously, I just can't believe it...

    Absolutely, but this is the case with anything! You think it starts and stops with Microsoft? What about the 1B deal that Gap just signed with IBM? What about all the equipment deals companies have with Dell? What about manufacturing companies and all their chosen equipment providers? Restaurants and their food suppliers?

    Seriously, this isn't new news. If you delegate responsibility to a third-party you are at more of a liability. Again, complete and totally nonsensical consideration. What do you propose, using Linux in an enterprise? This ridiculous notion has been discussed ad nauseum, so we don't need to get into it here.

    What tools do you use for trading? Do you use a broker, or did you spawn one from your loin? Do you use software of any kind? What if the creator of that software goes out of business? Do you write everything from scratch, or do you scratch everything on paper?

    Tools make you more productive, and that's the bloody point. Consider how many people use Ensign and how many TradeStation. Clearly TradeStation has staying power far exceeding that of Ensign, but both lock you into their solutions; it's not easy to spend the time learning a tool so that you can use it productively only to have them go out of business and force you to use a new one.

    Again, you're just stating the obvious.

    Agreed.

    Agreed, although I don't think many claims have really been made. I know I've certainly not made any. I typically don't like to give people answers; rather, I like to understand what they need and then give them a logical breakdown of which might be more appropriate and why.

    Cheers.
     
    #42     Jan 18, 2006
  3. I have spent my prior life in IT and it seems like a silly idea to learn a language to automate your trading but if you are hard pressed and insist here is my take.
    If you want to backtest and automate executions as well you should learn the language of your backtesting harness say VB,C#, Java and the modules for your broker supported API (that maybe Java only). or Delphi with IB. How many brokers can autoexecute ? Is that your final goal? If not just learn the metalanguage of TradeStation or Amibroker or Wealth-lab and save some frigging time. Trade and do not become a code monkey...unless you are ready to learn Hindi and move to India too... :)
    It will be dependent on the broker and markets you trade.
    You can not do it all by yourself unless the actual executions you will want to executed by a broker as a black box system done by you and run by a professional broker, so having said this I think you almost need to learn maybe upto 2 languages and let us know what exactly you are doing. If you need to learn a language and use it in the future I stick with java it is still a big market in IT where MSFT stuff is getting cooler and cooler.
    P.S.
    I have a framework in VB.NET already and I sell you the source code just PM me.....I used VB.NET 'cause there is a free library called TA.lib that saves you about 10 man hours of coding and reinventing the wheel....
     
    #43     Jan 18, 2006
  4. Hmmm ..... $soft has always charged for their tools in one form or another ... unless you were using them illegally .... they dont give them away free, even to their partners - who pay a fee for the pleasure.

    I actually do provide people definitive answers to questions rather than a lot non-information... seems we have different jobs.

    ..and yes, this might be shocking but companies really do think about their software and infrastructure costs...... perhaps before you recommend that people step down a path that will generate continuing fees, you might want to become educated as to the actual year over year costs associated with various vendors software platforms before you start recommending solutions .... but then again, working for $soft you really are not free to do so .....

    as far as the original poster is concerned, use what fits in with your plans. If you intend to start something more than a simple 1 person shop then get some reliable cost measures on the different vendors before you commit to any particular platform.....
     
    #44     Jan 18, 2006

  5. I have the same mentality, sometimes i think i started trading to make money, and why would i all of a sudden become a programmer now?

    My thinking is if you can't find profitable strategy by using scripting language TS, AB, WL,...and some VB, excel with some relational database application, then chances are, learning system languages won't help either, Please prove me wrong?

    Hey, I can speak hindi very good, why i don't like going to india? :p
     
    #45     Jan 18, 2006
  6. You summarized the whole point much better than I tried....
     
    #46     Jan 19, 2006
  7. mokomo

    mokomo

    Those who will be successful will have the knowledge to recognise what wheels have already been invented. Only if your stretegy is so novel and unique that it demands totally fresh development should you need to start from scratch.

    Write down your trading strategy on a piece of paper and then identify the areas that you are just impossible without you learning how to program in C#, Java, VB, Python or whatever.

    If you are convinced that a selection of tools doesn't already exist that can be used to achieve your goal, then at least you now have a list of the specific things you need your new programming language to do for you. Otherwise you'll be taking on the massive task of learning a whole programming language without having any clear idea of what you need it for.

    I've probably just stated the obvious, but many of us have been guilty of burying our head in the sand when we don't like the market and ocupying ourselves with pointless research and system building as a distraction.
     
    #47     Jan 19, 2006
  8. H2O

    H2O

    Let me try to make something clear here.

    What I'm going to do is automate (autotrade) my strategie.
    I do NOT need any backtesting facilities, and my strategies only uses current price/volume action (no indicators etc.)

    I would not even dream about develloping a complete backtesting application...
     
    #48     Jan 19, 2006
  9. somtimes True
     
    #49     Jan 19, 2006


  10. I don't use any system languages (because simply i don't know much about em) and writing your own plateform, frameowrk whatever, i assume the reasons for using them by traders are:

    -If you want to scalp trade ticks

    -If you want to arbitrage correleted products from two diffenret exchange

    -If you want to have unlimited number of symbols with looping functions runing, where TS, VB & excel,.. fails to do this

    -Refreshing Tick quotes for various data fields

    -Having freedom to choose to connect to any data feed vendor or your direct connectivity to any exchange worldwide (not through brokerage)

    There are many more reasons for which is geared toward very fast analysis of large quantity of data in Digits or infos in text formats runing on differnet TF and thousand symbols for very fast trading, where you need C++/C#...

    For what you described as your strategy criterias, i think knowing Easylanguage, VB6 language and excel functions should be sufficent

    IMHO Learning how to automate fundmental data in relation to TA infos would be very good idea
     
    #50     Jan 19, 2006