I added one debugging line to the above code:

Quote:
TimeFrame=AssetFrame;

if (time==016) printf("#TimeFrame: %i, ET Time: %i, StartMarket: %i, EndMarket: %i",TimeFrame,time,StartMarket,EndMarket);

Despite time being in between Start- and EndMarket, AssetFrame somehow is =0.
Quote:
[491: Wed 16-05-11 03:56] (123.88)n AssetFrame=1 ET Time=2356, O= 123.95100, C= 123.87800

[492: Wed 16-05-11 04:16] (123.89)TimeFrame: 0, ET Time: 16, StartMarket: 0, EndMarket: 1701

[493: Wed 16-05-11 04:36] (123.86)n AssetFrame=-1 ET Time=36, O= 123.87800, C= 123.85700

This looks incorrect.