3 possibilities for the identity of Andrew, father of Margaret.
1. Andrew, bapt 1641 Kilby. Son of Andrew Halford, Esquire, and Mary Hackett. Andrew Sr being the son of Sir Richard Halford, 1st Baronet. This is assuming that Nichols is correct that the youngest Andrew, of this line, married an Elizabeth and had 3 daughters (Nichols states that they are unknown so did he see the registers or not?), and that he wasn't just listing of from surrounding registers when filling in the pedigree. (The children in this pedigree are jumbled, such as showing two Thomas's seemingly alive and both sons of Andrew, as well has the wrong mother for Sir Thomas, 2nd Baronet). There is a burial at Wistow in 1705 for an Andrew Halford, Gentleman. Either the youngest Andrew, brother of Sir Thomas, 2 Bt or Sir Thomas's son Andrew, who was bapt 1672 Wistow.
2. Andrew, bapt 1654 Kibworth Beauchamp. Son of Richard Halford, Gentleman, of Kibworth. Son of John, who was the brother of Sir Richard.
3. Andrew, bapt 1644 Slawston. Son of Zacheus Halford, Gentleman, and Elizabeth Stanford. The name Stanford is used as a first name by the later Halfords at Slawston. Margaret also names a son Stanford.