June 24, 2007

The AmiBroker User’s Knowledge Base (UKB) was created to make it easier for AmiBroker users to share code, ideas, experiences, and everything else that has to do with trading. The AmiBroker community is rich in expertise in virtually every aspect of trading, and the potential for sharing knowledge is huge. Many excellent programs and tutorials, ranging from basic to very advanced, have been uploaded to Yahoo files, one of the AmiBroker lists, or the AmiBroker library.

Libraries and file sections contain mostly programs that perform high-level functions. These are programs that, in general, do not give you much guidance to successful system design and trading. The problem is that all these marvelous contributions are scattered about, and to find what you need can be time-consuming and burdensome. After fruitless attempts at finding coding examples, many users give up and decide to solve the problem themselves.

The amount of time wasted collectively across the AmiBroker community due to reinventing the wheel is staggering, as evidenced by repetitive questions (and answers) on the forums. If even a small amount of this time could be channeled into original work, new trading frontiers would be opened up, raising the average competence level of AmiBroker users to a new high. This would transform traditional Technical Analysis into a more interesting and vibrant activity.

The primary objective of this site is to facilitate such a transformation in Technical Analysis for the AmiBroker user by providing an indexed and browsable resource for solutions to common problems that every AmiBroker user needs to solve.

The UKB site is based on an easy-to-use state-of-the-art publishing platform called WordPress. Those who wish to contribute may either write their posts directly in WordPress or in their favorite word processing program. Contributions in MS-Word can be uploaded to the UKB using Windows Live Writer (a free Windows editor). For details on how to contribute see the Contributor Agreement and the Author Guide.

The simplest way for you to contribute is to add constructive comments to the posts. IF explanations are inadequate or you know a better solution, you can make a comment to that effect. If you already developed similar code or posted an alternative solution somewhere else, you may add tutorial text and submit it to the UKB. Almost certainly your work will find more appreciation here.

How to ask technical questions and suggest new technical topics and/or categories is outlined here.

User participation is the key ingredient needed to make this site work. Since this site will benefit all AmiBroker users, no matter what their level of expertise, I am confident that participation in this project will grow.

We all are dependent on AmiBroker and its unbridled support and resources. The eventual payback to the entire AmiBroker community makes it just plain common sense to participate if you can. I encourage you to do so as much as possible.

To sign-up as a CONTRIBUTOR you need to sign the contributor agreement on-line. Then your submission will be reviewed manually and you will get further instructions.

Anonymous comments are not allowed, as each comment is checked for spam. But you don’t need to sign-up to write comments. Just write a comment. It will be checked and allowed to appear if it is spam-free.

Where can we make suggestions for things we would like to see in the UKB?

I would like to see definitions of most of the built-in functions in AFL code. This would be useful for a few reasons. Often I just need the specifics of how a function works. Sometimes I want to make my own variation, and rather than recreating what someone else has done, we can share it here.

Most functions are documented in the AmiBroker Help file. To see more applications for a particular function you can search the AmiBroker Library or this site. I am afraid that to provide more examples for ‘all’ available functions is beyond the scope of this site – all contributions here are made on a time available basis by volunteers. However, specific questions and problems can be requested/suggested as outlined in the above link.

The documentation for functions in the AmiBroker help is barely adequate for providing a hint about what the functions do. What I want is equivalent AFL code that gives the identical result. For example, there are a few ways to compute standard deviation, but what specifically does StDev do? It is simplest and most useful to provide the definition in equivalent AFL code. I plan to contribute many of these, but I just wanted a place to start.