Hello,
I have a question about implementation of one Option strategy.
My strategy will have several important points:
1. Universe selection. Each month it will select top N assets with highest momentum over some period.
2. Alpha model. It will be based on some indicator.
3. Portfolio construction - EqualWeighted
4. Execution model. Instead of buing the asset we should buy Option of that asset with following filters: 30<TimeExpiry<90 and <20Delta<40.
The most challenging part of this strategy is Execution model, because in fact the strategy works with stocks in Alpha model, but on the other hand it should buy Options.
So, my questions are:
1. How to implement Execution model in a right way?
What I mean here, when I should call AddOption() function, in UniverseSelection model or in Execution model?
If I do it in UniverseSelection model I add a lot of additional symbols to the Universe and the strategy will become to work slowly.
On the other hand, if I do it in Execution model I can get information about Options with big delay. And it is bad too.
Can you give me any suggestion?
2. Assume in the UniverseSelection model I call AddOption() for each stock symbol in the Universe.
How can I then remove all option symbols about the stock, which is exclude from the Universe?
Thanks in advance,
Alexander.
Jack Simonson
Hi Alexandr
To answer your first question, the best method for adding options to the universe based on the equities you want to select would be in the Universe Selection method. Doing it this way will allow you to add only the options for equities you want in your Universe, which hopefully answers your second question. You can see an example of how to do this here. As far as the Execution Model is concerned, if you emit insights in the Alpha Model to buy or sell the options you choose in the Universe Selection, then these securities will be passed to the Execution Model and you can just implement the ImmediateExecutionModel that we have written, or customize it as you see fit. Either way, emitting insights for the options you want to trade will pass only these securities to whichever execution model you choose.
There is not really a way to avoid a somewhat slower execution since you will be adding a lot of data somewhere in the algorithm, no matter which way you decide to do it, but doing it in Universe Selection is the best method.
Alexandr Trenkenshu
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.
To unlock posting to the community forums please complete at least 30% of Boot Camp.
You can continue your Boot Camp training progress from the terminal. We hope to see you in the community soon!