How to execute own scheduling strategy?

Hi All,
For now docker swarm provide three scheduling strategies (binpack, random and spread). what are the different ways to implement my own scheduling strategy ?
One way is to get the source code and write own strategy and build the swarm package from grass-root level. Is there any other way ?

-Thank you