Вообще, запутали немножко.

source.Positions.BuyAtMarket(bar, 1, "L"); - это заглядываение в будущее или нет?

source.Positions.BuyAtMarket(bar+1, 1, "L"); - точно нет, но тут идет сделка по цене закрытия следующего бара после сигнала.