Hello,
If you are so great and working for all those multi-billion institutions
I am wondering what are you doing here,
using so cheap and "flawed" system as you wrote in your original post.
Surely for that amount of money that you have in hand
you could hire best programmers in the world and write your own
super-trouper language and all that stuff.
So please give me a break. I wrote AFL for myself back in 1995 because I
need tool for my own purposes. I decided to offer it for others and some
people liked it. That's whole story. If you do not like it then search
elsewhere or write your own for your multi-billion institution. And no
thanks I do not need your advice.
Best regards,
Tomasz Janeczko
amibroker.com
On 2010-01-10 02:24, Potato Soup wrote:
Sorry for adding my "twisted" opinion, which only has experience
building trading systems for multi-billion dollar institutions.
And Python's math modules that are implemented in Fortran and C are
not "slow" In fact there are Python math implementations that run on
GPUs. Python as a language can be optimized to be as fast as anything.
I'm more than happy to offer help if the AB author needs assistance
adopting more modern and "twisted" technologies. My goal in offering
the feedback was to help improve the product.
Cheers.
------------------------------------------------------------------------
*From: * Tomasz Janeczko <[email protected]>
*Date: *Sun, 10 Jan 2010 02:17:31 +0100
*To: *<[email protected]>
*Subject: *Re: [amibroker] A computer science related question on the
AFL Language
Hello,
Precisely.
AFL is designed to be able to express trading system rules /
indicators in easy and short form and to be fast. That's all. It is
intended to be easy to use and fast thanks to array processing that
general-purpose languages lack. Just compare Traders Tips formulas
published on S&C site for various platforms (some of them using so
called "standard" laguages) and you will quickly find which formula is
the shortest and easiest to understand. That speaks for itself and has
more weight that sombody's twisted opinion.
If one wants full blown C++ - one can use it - just write your code in
C++, compile it as a plugin and that's it.
Python/Lua and all that stuff are slow compared to AFL array
processing. And as far as object-oriented programming is considered,
most people are not comfortable with it (and belive it or not but most
people are NOT programmers). I can tell that because I hear a lot of
feedback from users.
Best regards,
Tomasz Janeczko
amibroker.com
On 2010-01-09 14:57, Prashanth wrote:
Its not a question of whether it can be improved or not. Its a
question of how user friendly it is. Most traders are not programmers
and hence complex coding is out of question for vast majority. Its
this group that appreciates the easiness of coding in AFL as compared
to other languages which may hold more potential but can be much more
difficult to learn.
I believe TJ has simpliefied as much as possible and maybe during
that simplification process, there were some sacrifices that were
done. Unless one is a hard core programmer, I feel AFL more than
meets every specification. For those who like to use more tools, ADK
is always there to use and create outside of AB what they desire to
achieve.
Cheers
Prashanth
----- Original Message -----
*From:* Potato Soup <mailto:[email protected]>
*To:* AmiBroker (Discussion List) <mailto:[email protected]>
*Sent:* Saturday, January 09, 2010 19:15 PM
*Subject:* Re: [amibroker] A computer science related question on
the AFL Language
Why design one when Python is free, as is Lua, Squirrel and other
easy scripting languages? I have built many trading systems for
hedge funds and big banks. Never once considered building a
language with it.
Sounds like you think AFL can't be improved? From a language
perspective AFL has some good ideas and concepts but uneven
execution. A lot of things feel incrementally added, whether they
were or not I don't know.
------------------------------------------------------------------------
*From: *"J Paul Buffon" <[email protected]>
*Date: *Sat, 9 Jan 2010 08:34:37 -0500
*To: *<[email protected]>
*Subject: *RE: [amibroker] A computer science related question on
the AFL Language
Well, you should design one! As far as I am concerned, elegant
and great price/quality ratio, the best in the market in that
bracket. Part of my tool box and achieved north of 70% last year
with it.
JP
*From:* [email protected]
[mailto:[email protected]] *On Behalf Of *Potato Soup
*Sent:* 01/09/2010 8:24 AM
*To:* AmiBroker (Discussion List)
*Subject:* Re: [amibroker] A computer science related question on
the AFL Language
AFL is an imperative language primarily with a dose of vector
processing features that enable the terseness that you talk
about. I would not describe it as an OO language in any way, just
because it has OO bindings or provides access to objects. If you
can not write an object then the OO syntax introduced in the
backtester is syntactic sugar at best. I also wouldn't say it has
anywhere near the power of C or C++ just because it offers some
syntax similarities. Those languages derive their power mainly
from their ability to access memory directly, and at the OS'
discretion this means writing directly to hardware memory maps.
Of course C++ takes things much further. But AFL doesn't give you
anywhere the expressive data structure creation abilities that a
true imperative or OO language would.
Personally I feel AFL is a deeply flawed language that mixes
constructs from Basic and C at very superficial levels. It
provides its power from underneath the hood, not at the true
language level.
I would pay a lot of money for AB with Python as its language,
using NumPy as the fast math and numerical processing underpinning.
This is not to say that AFL doesn't have elegant concepts or
advantages. It is just not a well designed language from the
ground up.
-----Original Message-----
From: "cascade3891" <[email protected]
<mailto:cascade3891%40yahoo.com>>
Date: Sat, 09 Jan 2010 08:26:59
To: <[email protected] <mailto:amibroker%40yahoogroups.com>>
Subject: [amibroker] A computer science related question on the
AFL Language
Hi Amibroker community,
I have specific questions about the AFL language, regarding where
it stands within the computer language spectrum(s) and what
effect that has on speed/performance, agility and modularity as
well as its accuracy for readability and unit testing purposes.
I know that AFL is not an object oriented programming language
for the main part (however it does have some OO features like
COM), does this make AFL primarily a functional programming
language, a bit like OCaml??
Are functional programming languages better for financial trading
applications? Where there is a need for speed, and quality stable
code?
AFL seems a lot brief in terms of the amount of code that you
have to write (terse) ... this makes it more attractive for
reading over and checking the code, and for backtesting purposes.
I notice also that with AFL you don't have to declare data types,
again making it much more efficient.
Is there a drawback to using an OO code for financial trading
systems/applications?
I quite like the speed and terseness of the AFL language
actually, and also since it has many similarities to C. But would
there be any limitations to not being able to define classes and
objects?
I'm not an experience programmer so sorry if I sound green.
Anyone have any ideas on Tomasz' original design philosophy when
he set out creating the AFL language? to me it seems like he
wanted to keep the power and similarities to C/C++ given the
similar syntactical structure, whether because he knows that
language well, or because he wanted it to be able to have the
same sort of power, but he also seems to have kept in mind the
needs for performance and stability, terseness for
backtesting/speed purposes, and maybe also b/c most traders need
to pick up the language, hence trying to make AFL easier to grasp.
------------------------------------
**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.
TO GET TECHNICAL SUPPORT send an e-mail directly to
SUPPORT {at} amibroker.com
TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)
For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/
Yahoo! Groups Links