automatically reference user to node by date field
Use the computed field module for this. This lets you add your own conversion logic into the field (using PHP) that will be processed on entry. So download and enable the module, then add a field for your horoscope, then in the settings field, you want to add your PHP logic, ex (roughly):

$date = new DateTime($entity-&gt;field_profile_dob[LANGUAGE_NONE][0]['value']);
$month = $date-&gt;format('m');
$day = $date-&gt;format('d');
if (($month = 1) &amp;&amp; ($day &lt; 21)) {
    $answer = "some sign";
} else if .. etc.


That will take some time to write that logic. You might be better off putting this in a module then leaving it in the settings. There are dozens of examples in the documentation that should help you get started on this.