"set" can be used in a single function? Nice, I thought it could be used in the run() and once only.

In my Zorro (1.36.4 - and the .4 meanwhile is important because each version shows, if only slightly but different results) setting BarPeriod to 1440 (and omit TimeFrame of course) works and let the strategy doing as expected. Involving LOGFILE flag shows trades like:

Code:
[42: Fri 04.03.05 00:00]  1.3137-1.3166-1.3098-1.3114
(USD/CHF::S) Short 20@1.1571 Entry stop
(USD/JPY::L) Long 100@105.91 Entry stop
(GBP/USD::L) Long 71@1.9266 Entry stop
(EUR/USD::L) Long 100@1.3282 Entry stop
(GBP/USD::L) Entry stop 1.9266 hit at 00:00
[GBP/USD::L4314] Long 71@1.9266  at 00:00

[43: Mon 07.03.05 00:00]  1.30880-1.32560  +0 -161 0/1

Monday 07.03.05  Loss -161$ ----
(USD/CHF::S) Missed entry 1.1571 at exit command
(USD/JPY::L) Missed entry 105.91 at exit command
[GBP/USD::L4314] Sell 71@1.9241: -161$ at 00:00
(EUR/USD::L) Missed entry 1.3282 at exit command



There are only trades in assets that are known to AssetsFix.dta, the default one (that I use) therefore trades only these 4 assets in the log.

Using a TimeFrame has 2 important impacts here to the trades, first it does not use 00:00 for the entry stops but any time I guess maybe resulting from the time of starting the strategy and shifted 48 times in the future or similar, and the second one is more important: TimeFrame keeps EntryTime untouched, so the entry stops are only valid for the time of the BarPeriod, here: 30 minutes. These facts are also revealed by the log:

Code:
[7440: Fri 12.08.05 04:00]  1.2464-1.2465-1.2461-1.2464
(USD/CHF::S) Short 20@1.2451 Entry stop
(USD/JPY::L) Long 100@112.81 Entry stop
(GBP/USD::L) Long 71@1.8140 Entry stop
(EUR/USD::L) Long 100@1.2479 Entry stop

[7441: Fri 12.08.05 04:30]  1.24580-1.24680  +0 +0 0/0
(USD/CHF::S) Missed entry 1.2451 after 1 bar
(USD/JPY::L) Missed entry 112.81 after 1 bar
(GBP/USD::L) Missed entry 1.8140 after 1 bar
(EUR/USD::L) Missed entry 1.2479 after 1 bar



To avoid this I guess you can synchronise the TimeFrame with frameSync() and increase the EntryTime accordingly. But I think it's really easier to use BarPeriod = 1440.