The risk of outsourcing your programming is when you need maintenance done later in the future. That programmer might not be available any more at that time.
@jinxu Have you already decided on which broker and/or platform you will use? If so, then your choice of software will be limited by what that broker has to offer. Otherwise you have a much wider choice of possible programming languages available.
That is why I recommended NinjaTrader. You write once in c# and then can connect to most major brokers.
I agree. The most difficult part if designing a profitable system, not coding. Nowadays there are plenty of programmers who will do the job for you.
I agree. Its easier to hire a programmer than get proficient at coding. Also consider this. You expose yourself to a new risk with automated trading. Tech risk. The risk that some unforseen in the code or communication between the platform and broker could create problems. Since we are dealing with money it might be better to hire someone who has programed a lot of systems. If you want a reco pm me.
Try TradeStation Easy Language. I've been using it over 10 years. I tried C# and MT4, too. Easy Language is easier to learn and use.
I prefer to turn this reasoning around: because you are dealing with your own money is it better to become proficient at coding and don't depend on others whose money is not on the line. This enables you to maintain and modify your own code whenever necessary or you like to change. And ensures that you know your code inside out. It was enough incentive for me to learn how to use java. I have not regretted this choice.