It's in 2 places.
The first bit is in Arrow_Base
self.ox = 16
self.oy = 64
Since the arrow bitmap is 32x32, this sets the origin point for the arrow sprite in the center, and 32 pixels below the arrow.
The second part is in Arrow_Enemy & Arrow_Actor
self.x = self.enemy.screen_x
self.y = self.enemy.screen_y
and
self.x = self.actor.screen_x
self.y = self.actor.screen_y
Which places the arrow at the "screen" position of the actor or enemy sprite. (centered on the battler, at the bottom).
So, what you see is the arrow placed 32 pixels above the bottom center of the battler.
You could change the self.y in Arrow_Enemy to:
self.y = self.enemy.screen_y + 64
to move the arrow directly below the enemy sprite.
Just make sure you're enemies are placed at least 32 pixels up from the bottom of the battle scene in your troops.
Or the arrow will end up hiding behind the status window.
Be Well