It is better to use variations in the anchor text. You don't need to make them markedly different and all of the variations should target at least one of your primary keywords but they should not be all the same.
Theon for this is the emphasis by all search engines on so-called "organic linking", as opposed to what Google calls "artificial linking practices or schemes".
In genuine organic linking, your anchor text will not be all the same. Some will link to your domian name or URL. Others will use different anchor text depending on why they are highlighting your site - for my sites, for example, non-artifical links might target psychology, depression, anxiety, schizophrenia, etc., etc. as anchor text, depending on the cintext in which the link occurs.
In practice, ALL links are useful - don't forget the value of what is called "the long tail". For a specific keyword, you would get maximum benefit from having ALL links use that keyowrd in the anchor text. But that may get you penalized or may result in some of those links being discounted.
As a final comment, there has just been a Google update of sorts, so that relatively sudden change in tanking may be due more to Google changes than to anything you have done very recently. That's one of the problems inherent in following search engines.