The latter would seem to make sense, as it is a direct translation of the English "I have lived/have been living here for 4 years", however, when describing the length of time that an action has been, and continues to be performed, German uses the present tense. This is because the action is still happening. In the case of this sentence, the house is still being lived in by the subject. Other examples include, "Er spielt seit 3 Jahren Fussball" (He has played/been playing football for 3 years) or "Sie arbeitet da seit 7 Monaten" (She has worked/been working there for 7 months). The verb in the sentence pattern subject + verb + seit + time will always be present, where it describes an action that began in the past but has not yet finished.One must always remember that the 'for' in these sentences cannot translate to the German 'vor' - always use 'seit'. A deceptive false friend, 'vor' is often used instead to mean 'ago'. For example, "Ich habe vor 2 Wochen diesen Tisch gekauft" (I bought this table 2 weeks ago).