input int Slippage=3;

狭すぎ?
そもそも成行決済でスリッページは関係あるの
RefreshRates();した直後に、OrderClosePrice()を取得して決済注文出してるのに

サーバーに注文が届く前に、レートがOrderClosePrice()からスリッページを超えて変化しているということか