First of all, you should know that choosing the type of soil is very important; for this reason you should look for a light, airy soil that can retain sufficient amount of water. The key is to find the balance: neither too much nor too little, the right choice basically depends upon every grower and his/her feeding schedule.
To improve your substrate in terms of water retention, you should use perlite and coco fibre. The proportions of these elements are also up to the grower, but often range from 10 to 20% of perlite, and 10 to 30% of coco fibre.
Most soil bags sold at grow shops already contain these materials with a pH suitable for growing marijuana. Philosopher Seeds highly recommends choosing these ones instead of buying substrate from the usual garden centre.