I have an entity called objectives, each objectives can have effects on other objectives, when I represent this in my relational diagram the entity Effects-causes I have to put 2 reference to the objectives entity. Is it right to do it this way or is there an alternative?

That is one of two ways to do it.
The other way is to introduce a third table, Effects_On_Objectives, which identifies a ’cause or effect’ and an objective, and another column to identify which type of relationship the two rows have. (Indeed, you might want yet another table, EffectTypes, to control the types.)
Tables of the same general type as the Effects_On_Objectives table are sometimes called ‘junction tables’ or ‘association tables’.
The advantage of the original approach is that you can easily make both relationships mandatory; the disadvantage is that it is hard(er) to add new relationships. The advantage of the junction table approach is that you can make either relationship optional, and you can easily add new relationship types (effect types).