The article http://world.episerver.com/documentation/Items/Developers-Guide/EPiServer-Commerce/8/Marketing/Custom-promotion-development/ suggests when creating a custom promotion to base it on an existing setup.
"For most new custom promotions, built-in promotions will include most of the functionality needed. Often copying an existing promotion to create a new promotion will provide 70-90% of the needed logic"
I can see that the expressions are available from the configs in \Apps\Marketing\Promotions\Configs but is the source code for the config controls available for download? This is specifically relevant for the build your own variety which doesn't appear to have an expression in the config file as I assume it is built dynamically via the code behind. I can decompile the code to see how it works but the article implies the source is available and should be used.
Having looked through the decompiled code I can see that it is dynamically creating the expressions and that providing the source code for the Apps_Marketing_Promotions_EntryCustomDiscount, FilterExpressionBuilder etc.. is not likely to happen. As such consider this closed.