This project in made of two parts (A) and (B):
A) Write an AFL code for charting to be included in the report explorer.
This can be applied to ~~~EQUITY or any static variable or any other symbols I want to apply to. To keep it simple, we start from ~~~EQUITY.
Once a back test or optimization code is run and a report is created, also an Equity Curve is created (usually ~~~EQUITY). I need to automatically create charts derived from the values of that ~~~EQUITY, andÂ a benchmark or two e.g. Foreign (".SPX", C).
Two possible tasks for you:
The type of charts to be created are time series (both line and histogram)Â and XY (scattered and line) chart types. I can provide you with an excel spreadsheet with the charts that I would like to see in the report. The excel spreadsheet has already all the charts that I need to see in the report explorer and this should be quite straight forward for you to see what I have done in excel and transpose it into AB AFL codes. There are approximately 10 charts not all of them go into the report explorer.
I would be also interested in creating a report with charts outside the back testing or optimization environment. If you have same work already done in the past, we can start from there.
B) write an AFL code code for the optimizer and the back-tester.
I have a model which is a model of several models. This will be shared upon agreement. Unfortunately given its complexity (i.e. the optimization of each model and the aggregation of them) I have to run the optimizer first, copy the results of the optimizer into excel, do something in excel (simple), copy excel cells into the back tester formula, run the back test formula and get the results.
This the best solution I found so far after months and months of work. I have asked several AB experts to make it differently but I was told it is difficult due to the complexity of the process.
Here two three possible tasks for you:
1) Simplify the process I have already set up in one single formula. This maybe challenging, but it is the preferable [url removed, login to view] way to do this is to re-write the code such that I can work with the AB walk-forward function and get the results in one single optimization window. See extract of the model below.
2) Write a code that when the portfolio optimization for each model is run, it ranks the optimized variables and remove (exclude from the results) anything that is not ranked as #1, exclude the worst ones and keep the best one results for each model. Still I would need to copy the results into an other formula to run the back test.
3) Write a code that gets the results of the portfolio optimization and export them into excel, run a macro to do some data manipulation in the excel file (simple task such as copy and paste and drag formulas down to the end of the non-empty rows) provide the code), copy the results of the manipulation into the bast test AFL code (different than the optimization model one).
The Model can be shared with you upon agreement of your hourly rate.