Учет перехода на летнее время

Автор: DmitriyTarakanov

Учет перехода на летнее время - Sun Apr 02 2017 11:54 AM

Здравствуйте, хотелось бы входить в рынок только после проторговки на открытии европы, но смена времени с зимнего на летнее не дает это корректно просчитать.
Как можно учесть переход на летнее время и обратно через API.
Автор: jhgjrht

Re: Учет перехода на летнее время - Sun Apr 02 2017 02:11 PM

Сравнивать время свечи. Пример получения даты-времени для разных временных зон:
Code:
    [TestMethod]
    public void DateTimeConvertTest() {
      var ruTimeZone = TimeZoneInfo.FindSystemTimeZoneById( "Russian Standard Time" );
      var euTimeZone = TimeZoneInfo.FindSystemTimeZoneById( "Central Europe Standard Time" );

      DateTime ruDate, euDate;
      euDate = new DateTime( 2013, 02, 13, 9, 0, 0 );
      ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
      Assert.AreEqual( new TimeSpan( 3, 0, 0 ), ruDate - euDate );
      euDate = new DateTime( 2017, 02, 13, 9, 0, 0 );
      ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
      Assert.AreEqual( new TimeSpan( 2, 0, 0 ), ruDate - euDate );
      euDate = new DateTime( 2013, 06, 13, 9, 0, 0 );
      ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
      Assert.AreEqual( new TimeSpan( 2, 0, 0 ), ruDate - euDate );
      euDate = new DateTime( 2017, 06, 13, 9, 0, 0 );
      ruDate = TimeZoneInfo.ConvertTime( euDate, euTimeZone, ruTimeZone );
      Assert.AreEqual( new TimeSpan( 1, 0, 0 ), ruDate - euDate );
    }

На компе должны стоять актуальные обновления часовых поясов.