Taking a best guess based on what you described.
If the user selects 2 for the number of years to see, and if the user selects "June 30, 2016" as the start date, make this calc:
If [transaction date] <= [Start date parameter] and
[transaction date] >= DATEADD('year', -[years to view parameter], [start date parameter]) then 1 else 0 END
Put that calc on the filter shelf, and select for value = 1. This will get you all rows with transaction date between June 30, 2014 and June 30, 2016. (Notice that I put a negative sign in front of the middle argument in the DATEADD function. This will add a negative value from the parameter.)