In high dynamic circumstances, the acquisition of BDS (BeiDou Navigation Satellite System) signal would be affected by the pseudo-code Doppler. The pseudo-code frequency shift is more prominent and complex when BOC modulation has been adopted by BDS-II, but is not yet involved in current compensation algorithm. In addition, the most frequently used code Doppler compensation algorithm is modifying the sampling rate or local bit rate, which not only increases the complexity of the acquisition and tracking, but also is barely realizable for the hardware receiver to modify the local frequency. Therefore, this paper proposes a code Doppler compensation method based on double estimator receiver, which simultaneously controls NCO delay of code tracking loop and subcarrier tracking loop to compensate for pseudo-code frequency shift. The simulation and test are implemented with BDS-II BOC signal. The test results demonstrate that the proposed algorithm can effectively compensate for pseudo-code Doppler of BOC signal and has detection probability 3dB higher than the uncompensated situation when the false alarm rate is under 0.01 and the coherent integration time is 1ms.