Welcome to NexusFi: the best trading community on the planet, with over 150,000 members Sign Up Now for Free
Genuine reviews from real traders, not fake reviews from stealth vendors
Quality education from leading professional traders
We are a friendly, helpful, and positive community
We do not tolerate rude behavior, trolling, or vendors advertising in posts
We are here to help, just let us know what you need
You'll need to register in order to view the content of the threads and start contributing to our community. It's free for basic access, or support us by becoming an Elite Member -- see if you qualify for a discount below.
-- Big Mike, Site Administrator
(If you already have an account, login at the top of the page)
I am not a programmer , but I have written a lot of indicators for my own use. I learned by finding an indicator that did something similar to what I wanted to do and then made changes (hacked on) to the code. I didn't know how to write programs in "C" so I bought a book, Idiot's Guide to C. I would read the existing code then look the phrases up in the book to see what they did and the proper syntax. There are also online courses in writing programs in "C", however they generally are not geared toward teaching you to build indicators in Ninja Trader.
No it won't happen overnight. But if you start small and work diligently, you will eventually be able to write code at some level. This is a good place to get help. BUT please be considerate of the programmers time. It's easier to get help when they can see you are making a effort to learn and not asking for 50 additional changes you thought up after you told them what you wanted.
Just my 2 cents worth...
I'm just a simple man trading a simple plan.
My daddy always said, "Every day above ground is a good day!"
I'm not sure if my reply will be of much help since I'm a professional programmer and have been for over 10 years, but for what it's worth here it goes :
A few months ago I decided to take the plunge and move from Tradestation to Mirus/NT. I had a strategy I had spent a long time developing and had automated it for "easylanguage" on TS. I was trading ER2 (russell 2k) and when the switch to ICE happened, TS completely dropped the ball and my fills went to hell. So I begrudgingly closed my TS account (left enough money to keep a data access open) and moved everything over to Mirus.
I traded by hand long enough to be satisfied that the fill problem was solved, and then embarked to "translate" my easylanguage strategy to NinjaScript. It took me about a month to read the manual, spending most of my time on the chapters devoted to writting indicators and strategies. Now when I say "a month", that's really like one or two hours a day tops. I was vacationing in Thailand and wasn't really going to spend all day in front of the computer.
However, as I mentioned, I was already a very experienced programmer. I knew Java, C++ and a couple of other languages, so learning C# (which is what NinjaScipt is based on) wasn't a big deal.
To be honest, I think that for someone who doesn't have any programming experience whatsoever, it could be a daunting task. Maybe 6 months or more of reading and goofing around two or more hours a day.
I would suggest taking a class at a community college on basic programming in a similar language like Java or C++, though if you can find a C# class that is what you should do.
After that, learn how NinjaScript builds on top of that, and find a forum or such place to ask questions. It's quite a hill to climb, but it's not impossible.
I agree. Regardless what one programs, it is programming to start with. Not bashing ninja here - they do a hell of a good job to be a C# environment, even if they insist on calling their not even existing langauge NInjaScript - it really IS C#.
But programming is programming. Indicators are simple, strategies are simple compared to some of the stuff I have done. But you need a decent basic level in general programming. Maybe on of the "for dummies" books, or a 21 days book. Or, as pepelucho adviced, some communicty college stuff.
i began with coding NT scripts 2 years ago - did really nothing at all before that with programming.
i started with modifying / tweaking existing indicator codes because that was something that worked yet + i was able to change thing in small steps ... that was my start : to add an alert or a backcolor-condition ... such small things.
then i was always looking into every code from forums where people posted scripts, i copied + pasted the functions and so on ..
the first steps have been hard but then i really had fun.
another idea is to use the NT-wizard to see how conditions are builded - then open the code/paste + copy + modify it like i needed it.
also i hire a programmer from time to time to realize some special ideas - they code the indicator for me + i am able to learn a lot from looking inside it + see how they coded this thing. this was also very helpful and its worth every $$ !
for shure i wouldnt say i can "programm" now, but i am able do most things i like to do / i need with Ninja-scripts.
Started a couple of years ago with little experience....
(1) Buy yourself a course in C# and work through it. Mine was not a thick book, but about 300 pages with 16 chapters. I then installed Microsoft Visual C# Express Edition and SharpDevelop (both are free) to code the simple examples that came as exercises with the book.
(2) Get your self a print-out of the NT Help File.
(3) Have a look at all simple indicators that come with NinjaTrader. Then try modifying them, start with smaller changes.
I'm in the process of learning to program in C#, I'm taking an online course at learnvisualstudio.net. I'm on Day 4 of a 10 day course which I'm doing pretty much 8 hours a day. I need an understanding of the thought process involved in programming.
If I could have figured that out well enough then Easylanguage would have have been sufficient. I have modified and done some simple strategies in EL, and have some manuals but really lacked the foundation to "think like a programmer" to do what I wanted to do.
I decided on C# since its a language used by other platforms such as NT , OEC trader, Strategy runner etc, but hope to accomplish what I want in EL and If not then use C#.
Hopefully, this investment in learning a programming language will help in testing trading concepts.
That's exactly how I started. It's a great method IMO.
It's similar to a child learning to speak. They first mimic what their parents say until
they learn enough to form sentences with their own ideas and thoughts.
If it becomes a serious passion, you will have no choice but to dig deeper through
self study and your own explorations.
this is the truth about programming .... there is a difference between coding an indicator or adapt some strategies. This is coding for fun, not programming but it will come.
you must not learn 10 languages, you must understand only one language properly. then you can apply it to all other languages.
understand object orientation and practice procedural.
if (good approach)
then( migrate strategies and indicators from mt4 to c #);
Causality is the relationship between an event (the cause) and a second event (the effect), where the second event is a consequence of the first.