Replies: 2 comments 4 replies
-
I don't think I'm qualified enough to answer the specific pysystemtrade questions but: So the price of the stitched series is an analogue to the 'continuous' futures price series you'll see on various feeds, when Bloomberg talk about WTI crude at $xx they're talking about a continuous future which in Bloombergs case is always the front month (nearest expiration). In Robs case he prefers to use the Dec contract as thats where the liquidity is (others may have a different opinion) so its stitched on the December contracts (I think) rather than the front month. With that in mind when you buy the actual future you're buying the Dec 2022 contract not the continuous future which doesn't actually exist on the exchange. Though with the method of stitching Rob uses they should be the same (I think) |
Beta Was this translation helpful? Give feedback.
-
The way I understand things, pysystemtrade's config tells us what contract we currently want to use as our current price. If you check out this spreadsheet from Rob's book you will see how he calculates the EWMAC rule using price diff alone. |
Beta Was this translation helpful? Give feedback.
-
Hi,
I'd be most grateful for any pointers on the following....
The "introduction" provides a simple (ewmac) trading rule, a function with the following guidance:
"price: This is the stitched price series. We can't use the price of the contract we're trading, or the volatility will be jumpy. And we'll miss out on the rolldown. See https://qoppac.blogspot.com/2015/05/systems-building-futures-rolling.html".
I have read (many pages of) the blog but am still wrestling with this guidance.
Exactly what is meant by "the price of the contract we're trading"?
The blog post above includes crude oil as an example - a contract where the rolling policy dictates holding December (Z) delivery months. Can I please double-confirm that the methods "daily_prices" and "backadjusted_futures_prices" are therefore stitching together only price data from December delivery months?
If the answer above is "yes", then presumably the "hold_rollcycle:Z" dictates the contracts that are used for stitching purposes as well as the contracts we would in theory ideally trade?
Finally, could I please confirm that "priced_rollcycle" is simply telling me the delivery months for which a market (and therefore price data) actually exists... and it is not telling me the delivery months that are used by pysystemtrade for stitching (which, as I say, appears to be driven by the hold_rollcycle).
Finally (and I am quite embarrassed to ask this one...) should I be surprised at all that the functions "calc_ewmac_forecast", "robust_vol_calc" and other closely connected functions, seem (to me) to take as input the raw changes in daily price (.diff()), rather than a percentage daily change?
Many thanks for any clarifications and apologies if I am overlooking some obvious answers embedded within existing blog posts.
Beta Was this translation helpful? Give feedback.
All reactions