Hi, I'm trying to run a dynamic panel model on a panel dataset in Stata 14.1. I have a couple questions because I am not sure if I am coding this correctly, or if perhaps I am getting spurious results because of a mistake I'm making.

In a 10-year panel with many counties, I'm interested in the effect of a change in a county's robbery rate on a change in the homicide rate, and whether that effect varies in rural versus non-rural counties across 10 years.

I thought the simplest approach would be:

Code:
xtabond D.homicide D.robberies rural Drobberies_rural_interaction a b c y10-y20  if  year>2000 , vce(robust)
The a b c are controls, and y10-y20 are year fixed effects. I hand-coded the interaction by multiplying the D.robberies variable by the rural dummy (to create the Drobberies_rural_interaction variable). However, Stata keeps dropping that interaction variable because of collinearity (which makes sense since it is a linear combination of 2 of the other variables). My understanding is that when you hand code interaction effects, you need to include each term plus the multiple of the two terms (does that work if one of the terms is a dummy?).

Specifically, the disappointing output I got from the above is

Code:
note: rural dropped from div() because of collinearity
note: Drobberies_rural_interaction dropped from div() because of collinearity
note: Drobberies_rural_interaction dropped because of collinearity
Looking over Statalist, I thought I would try xtabond2 since it should allow interactions, but I keep getting an error.

I run

Code:
xi: xtabond2 D.homicide D.robberies#rural a b c y10-y20  if  year>2000
but that returned the error
Code:
invalid interaction specification;
the 'D' operator is not allowed with factor variables
r(198);
So I dropped the first-difference and ran:

Code:
xi: xtabond2 D.homicide c.robberies#i.rural a b c y10-y20  if  year>2000
But that yielded the following error:

Code:
Favoring space over speed. To switch, type or click on mata: mata set matafavor speed, perm.
Equation not identified. Regessors outnumber instruments.
So I cut that down to just the main three variables, but I got the same error:

Code:
xi: xtabond2 D.homicide c.robberies#i.rural  if  year>2000
Code:
Favoring space over speed. To switch, type or click on mata: mata set matafavor speed, perm.
Equation not identified. Regessors outnumber instruments.
I don't know how to trim that down any further. Adding another 10 years to the period didn't help, either.

So my questions are:

1) What is the best way to do this type of interaction in a dynamic panel model? Should I try xtdpdgmm? The syntax for that command looks a little trickier and I worry I might make a mistake.

2) Is it OK to include year fixed effects in an Arellano-Bond model? Or is that already handled by the model, and adding the year fixed effects could create spurious results?

3) Similarly, is it correct to perform an Arellano-Bond model on D.homicide and D.robberies, or would doing so create spurious results? I see from Arellano's paper on this that on the back-end the method does what looks to me like a mean deviation method that first-differences each variable to remove fixed effects. Since I am substantively interested in the CHANGE in homicides and robberies, should I enter those variables as first-differenced as I did in the first code above, and on the back end it will second-difference them? Or in the Arellano-Bond model, should I enter them as not-differenced but just interpret the results as reflecting the effect of a first-differenced change in robberies on a first-differenced change in homicides, without my having to add the "D." to the terms? I haven't seen any papers that plug an already-differenced term in the Arellano-Bond model, so I worry I am violating some aspect of the model...

Thank you for any feedback!