Learn to Code

I would recommend to code for Metatrader 4 platform where you can also get a lot of examples of ready made code and can test your scripts and EAs fro free. After that you can move to better platforms ot just continue with MT4. You don't need years of experience for coding and will get to a good level in few months if you like programming. There are always opportunities in the markets that you can take advantage of even with a little coding experience.
 
And here's the same system in the Zorro platform - would look similar in TradeStation or NinjaTrader:

I like the Zorro site even though I'm not into automation much (I'm and oldie!) (y)
I'll have to take a much better look this weekend when I have more time.

I've been playing with MQL4 for years. IMO it's ok for traders who have no programming background and just want to try some simple ea's. Spaghetti code isn't really much of a concern to them. For larger programs a structured coding pattern really is a necessity though.

Thanks!

Peter
 
Ninjas code wizard is worth a look, its basically a WYSIWYG editor.
Zero code knowledge needed for basic methods.
 
Well,I never programmed in my life and theres a lot of platforms to test like tradestation and tradingblox ans someday I wish I can use a Monte Carlo Simulator

Hows the learning curve to start ?

I mean where do I start ? like phyton and shell script or direct on backtest platforms ?

It sounds to me like you're more interested in coding for the purposes of backtesting rather than something like an automated platform.

For the purposes of coding to backtest, I agree that Python is a great language. There are many free resources, and it's comparatively easy to learn. My personal favourite is R which is somewhat similar to Python. R is a language developed for math and statistics. Like Python it is open source and there are a lot of finance resources available. I was able to learn R in 4 months and be able to back test strategies and run simulations. The best book I've come across for learning R is: A Beginner's Guide to R (Use R!): Alain F. Zuur, Elena N. Ieno, Erik Meesters: 9780387938363: Amazon.com: Books

The book was written by bioinformatics profs so all the examples relate to things like squid populations, but they do a really good job at clearly and quickly laying the basic foundation of the language.

Unless you're interested in building something like an automated trading system, I wouldn't bother with languages like C++ or Java. They're much more difficult to master.

good luck
 
jcl365,

there can be a massive difference between backtesting and automated trading. if you have an automated system, you need to have a lot more safety measures. What if a socket connection fails during the trading day? What if you hit your margin limit for your account? Backtesting a strategy is way easier than building a system robust enough to automatically execute and monitor trades. If you wanted to build an automated system yourself, you would almost certainly have to use C++ or Java, which would take a lot of time to master.

I am not as experienced with Python, but R is a very fast language. It's not designed for 'testing math formulas' it's designed for managing and processing data. For example, I recently simulated a VIX option strategy that involved close to 500 backtests of 20-50 trades each. Each one of those trades was done with simulated options prices which R had to calculate. The entire simulation, plus organizing the results into summary tables and publishing a document took between 5-10 minutes for the computer to run.

i do not know of any trade platforms that use R or Python, but that doesn't mean that you can't use them for backtesting purposes. it does take more time to learn a language like R than it does a strategy language, but the decision should come down to this:

if you plan on backtesting trades involving commonly used indicators and criteria, then one of the strategy languages will likely be your best choice. if you plan on going outside the box, then i would suggest learning R or Python for your backtesting.
 
Please demonstrate winning of real pips using any language of your choice. It would be a typical looser geek to blame the complete lack of a positive pip count on the language used.
 
R is definitely slower than lower-level languages such a C and Java, but it is much easier to learn R or Python than C or Java. I've personally never come across a walk forward analysis or rolling regression that R couldn't handle. 5-10 minutes may seem slow for your standards, but in the hours that go into thinking of a strategy, it's a pretty reasonable amount of time to fully map out an idea. Where R is really useful is the number of packages freely available.

xkcd: Python

but that being said, i agree that C, C++ and Java are definitely the king languages; however, they require a much greater commitment to master.
 
Please demonstrate winning of real pips using any language of your choice. It would be a typical looser geek to blame the complete lack of a positive pip count on the language used.

Why are you so concerned about a positive pip count ? Why add that constraint ?
 
I agree with holmes16. It takes a lot of commitment to learn Cpp but it is unbelievably worthwhile and if you can program one language, with some effort, any language can be mastered. I am experienced with java and PHP. Over the past month I have been programming Cpp VS MFC (native Windows), and it is so rewarding... Totally worth it, I wish I took the dive 10 years ago. I was always intimidated and couldn't get past not understanding what the heck the dialog initializer was. You know, the "standard constructor".
I needed to learn it to program a Lightspeed API and it is wonderful! Now that I know the structure and built my own group of classes I can do anything I did in java or php, even graphics.

Anyone considering programming trading systems, I say this with experience, buckle down and learn Cpp. You will thank yourself you did. Just think, you will never wait on your program because of graphics or crunching numbers ever again!

Take the leap!
 
Top