Ja som získanie dát zo zásob služieb, ktorý zahŕňa údaje pre Rozšírenú Obchodných Hodín.
Údaje sú agregované 1-minútové údaje bodoch, ktoré som previesť z JSON na List<Aggregate>
kde agregát obsahuje Vysoké, Nízke, Otvoriť, Zavrieť, a Čas začiatku agregované 1-min okno.
Moje dotazy zahŕňať viacero obchodných dní - môže byť stovky a možno tisíce. A môj výpočet indikátorov musí vylúčiť po-hodín údajov.
Tak som si zoznam stovky položiek objektu:
public class Aggregate
{
public decimal Close { get; set; }
public decimal UnixTimestamp { get; set; } // milliseconds
...
}
a tiež DateTime FromDate
a DateTime ToDate
ktorý preklenuje stovky dní.
Teraz, ten istý spôsob, ako filtrovať po-hodín údaje na porovnanie UnixTimestamp
na každú položku, na pravidelné obchodovanie časové okno, 9:30 AM PST - 16:00 PST. Že by si každý prevod UnixTimestamp
na DateTime
. Je to veľa porovnanie... Intuitívne, je lepšie prevod FromDate
a ToDate
na UnixTimestamp
a filtrovanie položiek s Linq.
long unixTimeMsecToDate = new DateTimeOffset(aggrParams.ToDate).ToUnixTimeMilliseconds();
long unixTimeMsecFromDate = new DateTimeOffset(aggrParams.FromDate).ToUnixTimeMilliseconds();
Avšak, nemôžem dať môj prst na presný kód... Cyklické cez termíny? Ako na to?