After many years trading futures with Interactive Brokers I need to transfer my futures trading account out of IB (enough is enough!). But I need to replicate my Excel-based trading method. Although there are other brokers that offer Excel-based APIs, as near as I can tell no other broker offers an Excel-based API that can both place and cancel and/or modify orders. And that is what I need. So, I'm thinking of going with NinjaTrader as they require only exchange-minimum margins and they only charge $0.53 per side for ES after buying a Lifetime license.
However, I will need to program NT and apparently it uses C#. I have minimal programming knowledge (just some Excel) but have no problem putting in the effort to learn C# if pointed in the right direction. So, before I transfer my account, is there some resource that I can find or buy (preferably--but not necessarily--focused on trading) where I can learn C# and that assumes no prior programming knowledge?
Have you ever programmed VB in Excel? If not and you've only worked with macros in Excel, then you need to start at the very beginning to learn about structured programming concepts like how a computer program is constructed and how it runs, its structures like variables and its types, loops, logical statements and etc. because macros in Excel is NOT programming that you would need to learn for C# in Ninja Trader. I would recommend you to start learning about programming with Turing.
http://compsci.ca/holtsoft/ This is where you can download the Turing compiler and programming guide. The easiest way to learn about programming is to just DO it, write your own programs. After a few programs you have written and ran, you will get the hang of programming. DON'T spend money to buy books and tutorial; you will be wasting your money! You can read ten thousand books on programming but if you don't code, it's equal to NOTHING. And then once you are familiar with programming in general then you can start to learn C# and Object-Oriented programming (a totally inefficient and useless way to program if you ask me).
HOWEVER, the C# flavour in Ninja Trader is VERY high-level; it's not really the real C#, so you should have no problem learning it. I would suggest you to first read through the sample codes of one of their built-in indicators, start with an easy one with the calculation formula that you are familiar with like Simple Moving Average to see and understand the structure of the program, what goes where, what kind of variables get declared and what's used to get the calculation coded. And at the same time, you should also read their reference guide to get familiar with the key words and variables and variable types, functions that are particular to Ninja Trader. After that, just code, code and code!! First start with some very simple indicators even copy some of the sample codes, and get it RUNNING!! That's the most important. And then move on to code a little bit more complicated ones and get it running and so on. The more you code, the more you will get familiar with the program. DON'T bother spending money on those programming courses; you just need to get hands on and code and enjoy creating things that work and that's it! You will be doing EXACTLY the same thing in those programming courses, just coding. You don't need a teacher to tell you if you are doing it wrong or right. If the indicator that you wrote is plotted correctly on the chart, then you've done it right, otherwise you did something wrong. WHY pay to do the same thing when you can do them just by yourself?
Good luck!! You can do it!!