The TMF below executes immediately before the upcoming run(), after getting the latest tick price.

As you can see, it ran before tick and TOCK. As a result it doesn't get the options chain for time 1840 that was loaded in TOCK.

What I am suggesting is that instead of this execution sequence:
TMF, tick, TOCK, run

It should be this, just like 2.35 and before.
tick, TOCK, TMF, run

I don't think making this change will cause any internal Zorro issues at all. In fact, I think it'll make it better for all TMF events:
tick, TOCK, TMF event....

From v.2.40.4
Code

[1840] INSIDE myTMF[489449]: priceClose(0)=3816.59 
2021-03-05,Call,20210308,3810.0,3815.3,32.60,32.10,0.529,773,
ContractBid[32.10]  ContractAsk[32.60]  TradeStopLimit[27.75]

[4895: 1840] tick priceClose[3816.59]

[4895: 1840] TOCK -- [SPX] Loading chain... 
[4895: 1840] TOCK priceClose[3816.59] -- [C:\Zorro\History\SPX-Options\\SPX_202103_m1.t8] 600 contracts loaded...

[4895: Fri 21-03-05 18:40] 860 -1912 5/4 3815.25/3816.59\3815.09/3816.59 -0.01




Last edited by SBGuy; 08/16/21 15:35.