What can you do as a proficient programmer?

Discussion in 'App Development' started by Laissez Faire, Aug 3, 2013.

  1. Hello all,

    I'm starting a degree in engineering this fall, most likely a masters degree in fluid mechanics. It is very heavy on the mathematical side and in the first semester I have two courses in programming:

    1) Basic programming in Python related to mathematical modeling in science; 2) Object-Oriented Programming.

    Does that sound like something I could use in trading?

    Even though I'm taking an education and sadly may end up working for the man, I still have not left trading behind completely and hope that this may open up doors as a trader as well.

    So my question is: What can I do as a proficient programmer in the world of trading?

    Thanks in advance.
     
  2. Eyez

    Eyez

    Whatever you want.
     
  3. RDBMS is the most efficient and effective re trading.

    Getting acquainted with doing software is important because you will be able to better understand the limitations of various approaches to problem solving.
     
  4. Whow. Now two little courses make one a proficient programmer. May I suggest taking a third course and asking MIcrosoft to make you head architect as you obviously are qualified for that?

    Proficient Programmer is a LOT more than two little university courses. With those you turn into a dabbler - you can not even walk, just crawl.
     
  5. 'doing software'?

    kinky
     
  6. +1
     
  7. to the op:

    you can do the same thing 200,000 much much better programmers have done, only worse.
     
  8. A good programmer commands good $$$ in Denver with so many DoD jobs here. Not what a hedge fund will give you but 100k is ballpark.
     
  9. why would you undergo a grad school engineering degree if you wanted to trade? Makes little to no sense. If you look for a degree that leads to a professional trading position then you should pursue a financial engineering degree. If you look to spread the bet then undergo a CS degree. But engineering with the goal to trade makes not much sense.

     
  10. Let me go into details.

    Autoamed trading - and that is where you go for obviously - rewquires two things.

    First, you must be able to trade, systematically for a profit. Not every trader can do that. THe problem is not so much the profit part - but there are quire many prop traders that can not auotmated what they do. Unless you have strict rules you can not program them, and soem are easy, some very hard to program.

    Second, you must program. And that is complex because automated trading is about money. Write an email program and it makes a small mistake - well, who cares. But your automated trading will crash or make mistakes and a lot of details in trading can be quite complex (in flight executions of orders). The moment you get there - depending how much you rely on a framework like for example NinjaTrader or realize it is utter crap and do it yourself - you have a LOT of things to take care of, Perfectly, or loose money. Order handling in itself is quite complex if you cater for all possible issues (network connectivity, timing etc.) _ I know a person trading C' automated in NInja and his order handling code is about 1500 lines.

    For both, sorry, two univeristy courses won't help you. To pe proficient in programming you should know at least 3 not related programming langauges (so you can mentally process why languages are designed in particular ways). Unrelated may be for example C# (java, C++ type of school), F# (.NET based functional language, or any other functional - not procedural langauge) and tsome always good and trusty Assembler (so you know how a computer works - the amount of ignorance of todays programmers generally is astonishing). Add some SQL to it for data manipulation and soem solid understanding of RDBMS and welcome to years of learning. SOme solid networking knowledge may also be in order - trading really is something that is network based on a lower level than most things, but that can be done in a weekend if you are not stupid.

    And yes, you WILL use RDBMS - unless you do not want to do any tracking and analysis of trades. If you plan to do backtesting / optimization and plan to do that in a larger scale - the nreally solid RDBMS knowledge is required. We easily talk large databases here. As my own backtesting database just gets a little full, I have shut down my backtests for the weekend and am cleaning up the database - and we talk of 4.6 BILLION trades that are stored there at the moment, ith 5.2 billion exections (and yes, the way I record it I ahve tons of trades with no executions - I Record position intend, i.e. when a trae is attempted to open, not only when it gets executed - in some strats many trades never get a position).

    Not saying you can nto do it, just - those two courses are a fundament. The OO course (Object Oriented Programming) will NOT make you someone who knows how to do object oriented programming - that takes, making it properly - more time. THer eare lways tradeffs that must be evaluated and how can you evaluate them without a solid history of decisions and having seen things? But they give you a basis.

    Just never say you are good at programming after this level of courses. This is the Dunning-Kruger-Effect in full force - so incompetent you do not see the incompetence.

    If I wre you I would focus on the trading side - all IT won't help if you can not trade money into the account in the first place. And focus on strategies that can be automated - i.e. as little discretionary as possible.
     
    #10     Aug 4, 2013