Quote from OpenQuant:
But we are talking about programming language here, right? I am trying to understand what a special programming language for trading can easily do what other programming languages can't
Regards,
Anton
You need to understand the basics first.
For instance, Tradestation employes a circular buffer in an elegant fashion. With this concept, all price references are easy to accomplish: C = Close; C[1] = prior close, etc.
Plus, all computed/derived variables retain this same "memory" of the recent past as stored in the buffer.
The easy language interpreter has built-in "smarts" to know exactly how large the circular buffer should be based on the referencing in the code. This is a powerful feature. For instance, if you employe a 30 period moving average, then it makes a buffer for at least 30 "items". However, it does not permit any trades to occur until the buffer is initialized with real values. Again, all of this is done automatically.
In addition, their referencing was enhanced to accomodate multiple data streams or time-frames.
C(2) = Close of data stream #2.
Also, the concept of interval is important: Tradestation permits price "bars" to be defined by time, ticks, or volume.
Finally, the concepts of signal and strategy is important to understand....each signal can invoke buy or sell orders....and multiple signals can be assigned to a strategy.
So, when you understand the above, then you can then design and build these same features into your own trading platform with Java, C++, dot-net, whatever. Heck, if you are REALLY AMBITIOUS, you can create an interpreter with one of these languages and re-create the functionality of Easy Language as embodied in all of it's keywords.