Topic: Consistent naming of EAs

Consistent naming of EAs is most important when amount of strategies and descendants of those strategies will quickly grow. Here is my proposal. It is self-explanatory, but few comments may help.

As you can see it is a modular system. When those files are listed in a directory they will arrange automatically so the “parent” EA and all “descendants” will be grouped together. This will help to manage “parent” strategies and “descendants” of each EA.

Each token is initiated by token number, to differentiate its field from other tokens. Probably it could be done without numbering each token in this way, just by using placing in the string as information. But token numbering will give (maybe?) better sorting in directories and better readability.

Amount of sub-versions can be changed to accommodate your particular needs. I have here three sub-versions but maybe two are enough. Amount of digits in each sub version can be also different from shown. But I have chosen to have the same amount of digits in all subversions to simplify modularity (i.e. simplify readability).

Numbers used in subversions can have coded meanings. For example Sub Version B can have following coding:

4 01 – scalping mostly
4 02 – has problem with exits
4 09 – ready for live trading

File names could have additional information added in form of letters (which could give a simpler system comparing to the coding with numbers), but I wanted to develop a system with same file name and ID/Magic Number.

This system will result in long file names and ID numbers, but keeping things organized is worth the price of this burden?

I am just starting to use this numbering system and the problem I have is to consolidate it with all the EAs produced before, with names following many different conventions.

Your input will be most appreciated!

Re: Consistent naming of EAs

You may wish to list every possible criteria by which you want to label your strategies.

Make sure that you cover all possibilities.

You will need a workbook for this purpose.

Then, assume that you are going to sort based on any of the criteria. and now the format of your coding system should start to appear.

How, will you access the data.

What more do you want to add to the criteria.

Preparing the list of criteria should be a painstaking effort... complete in every way.

Then the naming convention can be developed.

I can see the thing requiring perhaps 20 or more name fields.

A good topic to bring up at this time as Popov is quite willing to provide data that can be loaded into a spreadsheert once we provide the criteria, so your situation will stimulate some thinking.

Re: Consistent naming of EAs

Hi Leon,

Thanks for your input.  I like the concept of token 1, 2...I'm not so sure whether I would go as far as token 3.

As for token 1, I may prefer to label as at

1min   100_232
5min   500_211
15min 150_222
30min 300_233
1hour  600_281
4hour  400_233
1 day  240_210

The reason being is that it is easier for me to spot/differentiate the time frame at a glance by the 1st number that is different...whereas in your labeling system, the 1st number is the same eg. you start with 1 and hence in need to look at the second number to tell the difference.  So it's easier for me when I sort the comment in MT4 or other analysis, the 1st number would stood out and different easier from the rest (except for 1min , and 15min cos both starts with 1, but the rest would be easier).

This is just my personal preference...there is no right and wrong.  Whichever style suits you, just do what makes most sense to you. 

Good job for thinking through...I wished I started my numbering system as early as you have in the beginning of your EA development progress.

Thanks for sharing your insights.

Re: Consistent naming of EAs

Thank you hannahis for commenting and encouragement.

My memory cells have been always lousy, so I have to compensate by external means (writing down everything). Sometimes even writing down surplus information, just in case.

With your proposal, sorting in directories will be a little bit different. If I will follow my choice I hope that same “families” of parent strategies and descendants will be grouped together, but also same time frames will be grouped together. FSB puts all strategies in the same directory so such grouping can help when amount of strategies is growing.

But my choice in this question is, of course, of minor importance. The most important thing here is to be well organized.

I am also trying to setup an Excel list to keep strategies under tight control. Here comes my first draw. Some fields are maybe not necessary, but I will delete those later (and maybe add some other fields), when I will get more cases.
Numbers shown are from a scalping strategy produced by FSB on M1 chart. As you can see I have at first excluded 25% in beginning and 25% in the end of the data set in the first test run (using start date limit and end date limit in FSB). Second row shows test run on full data set, third is with adjustments (by hand) to the strategies parameters, mostly SL. I will start testing on MT4 demo account on Monday.

Here comes also graph for the last row in the table

Re: Consistent naming of EAs

FSB puts all strategies in the same directory

You can use sub-directories to arrange your strategies. Later, you can use the Strategy Explorer to view / access your files.

This tool is very useful if you use many files. Yuo can arrange the strategies by market / time frame or brokers.

Re: Consistent naming of EAs

Thanks Popov, FSB has so many gems to uncover and discover

Re: Consistent naming of EAs


Wow such detail documentation.   I don't think I can manage the time n efforts like you do.

I used to do a lot of documentation in the beginning such as write down the EA i created and testing each day and also cross out those i discard and key in EA results each day.  Now I decided to conserve my energy and realised I don't need all the details.

The details that are most helpful to me is to observe how well/close my EA opens at the start of the break out and observe how well the EA close.  These information will help me understand where I need to refine my EA, whether I need to adjust the opening conditions or the closing conditions, whether my SL, BE, TP are too wide or too narrow, etc

I only need to narrow down my successful EA and then looked into the details such as what kind of opening/closing conditions make this EA outstanding, so that I can replicate the success.  If we only select EA based on its profit and discard them without knowing why the EA is bad, we learnt nothing.  What if the EA that was bad was the result of poor closing and has excellent opening.   It would be a pity to have discard such EA because half the battle is won, we nailed the right opening.   That's the most important aspect of getting the right entry/opening, it's silly to throw such EA away because finding a good closing is far easier than finding a good opening.

Hence, now I  devote more time to observe how my EA open and close and less time in documentation  (I only write down the essential information ).

Hope this information help to highlight what I'm looking for in my EA testing and in return gives you any insight to your own EA development journey.

Re: Consistent naming of EAs

I have been experimenting with consistent naming of developed strategies, with a goal to achieve a simplest yet supportive system. The proposal I had here some week ago didn’t work, mostly because of length restriction of MT4 on the Magic Number. As I found out it is limited to 10 digits (when I tried longer number, with more than 10 digits, Magic automatically corrected it to its own number choice). So I have conceived a different numbering system.

It allows to number up to 9999 strategies.

Each strategy can have 99 sub-strategies.

As amount of digits allowed in Magic Number is not enough, I could not code the Time Frame field using conventional descriptors (1, 5, 15, 30, 60… ). But it is also gives better clarity when coding uses numbering digits one to eight, as it results in same character length in file names and number of digits in Magic number. This field is the only one which needs interpretation from a code number to real value of a time frame.

When placing an EA on a chart, it is important to be able to check if the time frame of the chart is compatible with the EA’s time frame. The numbering system used here supports such ability.

I will begin to use this system on next reset of my testing system.

Our views are welcomed!


Re: Consistent naming of EAs

After some testing and intellectual input help from Hannahis, I began today to use my (final?) numbering system. I am publishing this hoping to help someone in FSB community out there, and following Hannahis attitude of helping others.

Here comes the numbering system. Please observe that it is not necessary to keep strictly to my setup. For example I have decided that subversion 01 and 02 should be kept for Long and Short version of a Strategy (I found that some Strategies work differently in Long direction and Short direction; for example I am using LTF of 1H in Long, but LTF of 30M in Short). So, in example, Strategy number 10017_00_030 opens Long and Short, but 10017_01_030 is limited to open only long positions.

To keep all things tidy, I have additionally a directory system which is shown here. Each strategy has own directory containing all the necessary files.

10 (edited by LeonHerd 2016-03-22 22:37:12)

Re: Consistent naming of EAs

How to keep track of changes in a Strategy

To be able to keep track of changes and improvements in a strategy I am, after each change, saving a new version of Strategy Overview file to directory of this strategy (using a new Strategy Overview name). It will allow me, if it will be necessary, to go back to the previous version(s) of the strategy, because this file contains all necessary information about the strategy.
But files generated with help of FSB, Strategy.xml and Strategy.mq4, are always the last version of Strategy.xml (as I can always recreate old file Strategy.xml and Strategy.mq4 using Strategy Overview file, I don’t need old version of this file).

Mr. Popov, if you are reading this, the file name of Strategy Overview is a little bit strange: “Strategy Overview_tmp.mht”

What about possible change, for example into the form “2016-03-21 20.15 Strategy Overview”. Date stamp will be a convenient way to keep track of all changes, and will allow to save new versions of a strategy with automatic name generation.

Another solution could be to add button “Save Webpage As” to already existing button “Save Webpage”. As situation is now, I have to change the name of the Strategy Overview_tmp (inside my strategy directory) to something else, before saving this file in a new version.


Re: Consistent naming of EAs

Hi Leon,

I like the idea of the Date stamped and I think it also can be used in the collections for Optimizer and Generator instead of the default and if we happened to save using the default, it may be "accidentally" overwrite, when we save another collection again (mindlessly using the default).

Also with the Date stamped collections (for Optimizer/Generator), if we forgot to save it and happened to close FSB programme, it would "automatically" by default, (ideally) saved using the date stamp name as the file.