SetHoldings method

Does the SetHoldings method use market orders in live trading?

If so, is there a way to use SetHoldings to queue limit orders at the best bid/offer to target the desired portfolio weighting rather than use market orders?

Update Backtest

Yes, Setholdings() sends the market orders. It is equivalent to 

SetHolindgs(symbol, weight)
# equivalent
quantity = self.CalculateOrderQuantity(symbol, weight)
self.MarketOrder(symbol, quantity)

For limit orders, you can use 

quantity = self.CalculateOrderQuantity(symbol, weight)
self.LimitOrder("SPY", quantity, limitPrice)

Thanks Jing,

Is there a quick way to find the best bid / best offer price?


Equity has trade data. Forex/Futures/Options have quote data with bid/ask spread. You can get the current bid/ask price in OnData() with 

def Initialize(self, data):
self.AddForex("EURUSD", Resolution.Minute, Marekt.Oanda)
def OnData(self, data):
     bid_open = data["EURUSD"].Bid.Open
     ask_low = data["EURUSD"].Ask.Low

Is it possible to get the last best bid / ask for instruments which use trade data? I would guess not.. 

Is there a suggested work around to achieve this end?


Could you give details about what instruments you need and what the last best bid/ask is?


Update Backtest


The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


This discussion is closed