Fully automated futures trading

Hey Rob or anyone else who uses Rob's execution algo (or something similar):

Have you noticed a change in executions the last month or so? Historically, I paid about 60% of the bid-ask spread (I know Rob has paid about 50% historically), but over the last month it's been more like 80%. I did make some changes to my trade system whereby it now chooses at the outset to trade contracts with tighter spreads and that very well could be the cause of the change I've seen (tighter spreads could mean less opportunity for price improvement). Indeed, even though my executions in terms of bid-ask spread has been worse, my overall costs have gone down (big caveat, one month is not enough of a sample to draw any definitive conclusions).

Anyway, has anyone else noticed a change in executions related to the percentage of the bid-ask spread paid?

Thanks. (I may need to make changes to my execution algo.)
I still have a proper cost analysis report on the to-do list, when I finally beat my laziness I'll post the results here :)
 
I hope that Rob allows me to hijack his journal to ask a question about expiry and first notice dates for futures having physical delivery.
Most of such contracts that trade on one of the CME exchanges use the same methodology: the first notice period begins on the last trading date of the month preceding the expiration month. For example: if the expiration month is October 2022 the first notice period starts on September 30, 2022. Thus you must have rolled over your position latest on September 29th. As a safety precaution do I use this in my software: set a deadline 2~3 trading days in advance of this.
I found one instrument which deviates from this: live cattle (LE). Its first notice starts in the same month as the expiry date (last trading date). The number of trading days between first notice and expiry seems to fluctuate, and first notice does not always start on the same day of the week. Does anyone know the methodology used to determine the first notice date, based on the expiry date?
 
don't really know the exact rule, I usually just look at the expiration calendar on the exchange's web-site and pick the roll date with some safety margin.
But regarding LE specifically, looks like I'm trading only October contracts with August as carry and roll once a year, which allows me to stay in the current Oct contract until the last trading day of the carry which is at the end of August (because I don't actually trade the carry contract, I only need it for prices, which continue to come till it's last trading day)..
 
I hope that Rob allows me to hijack his journal to ask a question about expiry and first notice dates for futures having physical delivery.
Most of such contracts that trade on one of the CME exchanges use the same methodology: the first notice period begins on the last trading date of the month preceding the expiration month. For example: if the expiration month is October 2022 the first notice period starts on September 30, 2022. Thus you must have rolled over your position latest on September 29th. As a safety precaution do I use this in my software: set a deadline 2~3 trading days in advance of this.
I found one instrument which deviates from this: live cattle (LE). Its first notice starts in the same month as the expiry date (last trading date). The number of trading days between first notice and expiry seems to fluctuate, and first notice does not always start on the same day of the week. Does anyone know the methodology used to determine the first notice date, based on the expiry date?
Why would you wait until the very end to roll over these contracts? There's plenty of liquidity in the next contract to roll over early. That way, if you forget to roll, have a computer problem, go on vacation, etc., you'll still have time to roll over when you get back to it.
 
Why would you wait until the very end to roll over these contracts? There's plenty of liquidity in the next contract to roll over early. That way, if you forget to roll, have a computer problem, go on vacation, etc., you'll still have time to roll over when you get back to it.
I set a deadline date as safety precaution, in case something has gone wrong. I don't use it as the actual rollover date.
 
...Does anyone know the methodology used to determine the first notice date, based on the expiry date?

That is defined in the contract specs, and I believe, if memory serves, that LE specifically had a slight change...

https://www.cmegroup.com/company/livestock-market-enhancements.html

https://www.cmegroup.com/content/dam/cmegroup/rulebook/CME/II/100/101/101.pdf

LE is a wild beast. That is why it is so tasty between two slices of bread with some cheese and catsup. Hehe!
 
That is defined in the contract specs, and I believe, if memory serves, that LE specifically had a slight change...

https://www.cmegroup.com/company/livestock-market-enhancements.html

https://www.cmegroup.com/content/dam/cmegroup/rulebook/CME/II/100/101/101.pdf

LE is a wild beast. That is why it is so tasty between two slices of bread with some cheese and catsup. Hehe!
Great, thank you for your help! Using that rulebook, in combination with the calendar posted by CME, I have determined the methodology: Determine the first Friday of the contract month. First Notice is on the Monday after this Friday.
 
Using your own trading server works fine until it doesn't.
Yesterday I decided to upgrade my trading server from Ubuntu 20.04 to 22.04, the new Long Term Support version. I had previously determined on my desktop computer that all relevant software runs properly on 22.04. The trading server is a headless machine: neither keyboard nor monitor is connected. I use a remote desktop program (Remmina) to control it. After the upgrade this remote control did not work any more. I found two problems, one of which I can not solve. The default setting in 22.04 is to not allow screen sharing. I had to connect a monitor and mouse to find that setting and enable it (solved). That's when I ran into the second problem (unsolved). 22.04 has improved security for screen sharing: authentication is required before a host can see the screen or take control of the machine. Authentication involves providing a username and password. Things go wrong with the password: each time when you reboot the server the password get modified into a random string. Even if you manually modified the password, this gets overridden at each reboot.
The purpose of a headless server is to not have a monitor. But without monitor you can't see the current password. So you can't remotely log in to this server. It is therefore impossible to use 22.04 on a headless server.
Once I encountered this issue I started looking for a solution online. To my horror I find that many people complain about this. And that there is no solution for this problem available. Some people have their servers turned into bricks: these computers are physically inaccessible (thus a monitor cannot be attached) and cannot be repaired remotely.

[end of rant]
 
Back
Top