Skip to main content

aion-lithuanian-market-calendar

Lithuanian public holiday, bank and market calendar. Never needs updating. Lietuvos švenčių, banko ir rinkos darbo dienų kalendorius. Jo niekada nereikia atnaujinti.

PyPI Downloads Python License: MIT

English · Lietuviškai


English

Lietuviškai — žemiau / README.lt.md

pip install aion-lithuanian-market-calendar
from aion_lithuanian_market_calendar import is_business_day, next_business_day, holiday_on

is_business_day()                       # is today a working day in Lithuania
is_business_day("2026-12-25")           # False
next_business_day("2026-12-24")         # date(2026, 12, 28)

holiday_on("2026-06-24")
# Holiday(date=2026-06-24, name_en='Day of Dew and St John (Midsummer)',
#         name_lt='Rasos ir Joninių diena')

No API key. No network call. No configuration. Zero dependencies.

What it is for

Anything that has to answer "was that a working day in Lithuania?" and get the same answer every time.

  • Payments and settlement. Value dates, SEPA cut-offs, T+2, invoice due dates and late-payment interest all count working days. Lithuania is the largest EMI and payment-institution licensing hub in the EU, so a great deal of European payment infrastructure settles on the Lithuanian working calendar specifically.
  • Payroll and HR. Time sheets, leave accrual, notice periods and overtime premiums are all defined against šventės. Getting 6 July wrong is a payroll error, not a cosmetic one.
  • Market data and trading. Nasdaq Vilnius session checks, bar alignment, gap detection, and backtests that must not treat a holiday as a missing day.
  • Scheduling and SLA. "Three business days" in a support contract, a batch job that must not fire on a holiday, a reminder that should land on a day someone is actually at work.
  • Reporting deadlines. Regulatory and tax filings that shift when the due date is not a working day.

How it helps

It is right without being maintained. Every Lithuanian statutory non-working day is derivable: twelve are fixed dates, two come from Easter, two are the first Sunday of a named month. So this package computes them instead of shipping a table that expires every December. Install it once and it is correct for 2027, 2040 and any year after, offline.

That is the difference from a market whose holidays are announced annually and genuinely cannot be derived — our Indian sibling ships a data file for exactly that reason. Lithuania does not need one, so it does not get one.

It cannot phone home. No network call, so it works in an air-gapped settlement box or a CI runner with no egress, and it cannot fail because a third-party holiday API is down or has rate-limited you.

It is bilingual, so it can reach the user interface. Every holiday carries both name_en and name_lt in the wording of the Labour Code, so a Lithuanian customer sees Rasos ir Joninių diena rather than a translation someone improvised.

Easter uses the Gregorian (Western) computus. Lithuania is predominantly Catholic and observes Western Easter, not the Orthodox date. Getting this wrong misplaces two holidays every year — this is the single most common bug in hand-rolled European holiday code.

It refuses to guess. Where the law is silent the package does not invent a rule, and where popular calendars disagree with the statute it follows the statute and says so, out loud, below.

The sixteen statutory holidays

Names follow article 123 of the Labour Code (Darbo kodeksas, 123 straipsnis „Švenčių dienos") in nominative form. Article 123 lists fourteen provisions; two of them cover two calendar days each — Easter Sunday together with Easter Monday, and 25 with 26 December — which is why sixteen dates fall out of fourteen provisions.

Date English Lietuviškai
1 January New Year's Day Naujieji metai
16 February Day of Restoration of the State of Lithuania Lietuvos valstybės atkūrimo diena
11 March Day of Restoration of Independence of Lithuania Lietuvos nepriklausomybės atkūrimo diena
moveable Easter Sunday Šv. Velykos
moveable Easter Monday Velykų antroji diena
1 May International Labour Day Tarptautinė darbo diena
first Sunday of May Mother's Day Motinos diena
first Sunday of June Father's Day Tėvo diena
24 June Day of Dew and St John (Midsummer) Rasos ir Joninių diena
6 July Statehood Day and Day of the National Anthem Valstybės (Lietuvos karaliaus Mindaugo karūnavimo) ir Tautiškos giesmės diena
15 August Assumption Day Žolinė (Švč. Mergelės Marijos ėmimo į dangų diena)
1 November All Saints' Day Visų Šventųjų diena
2 November Day of Remembrance of the Dead (All Souls' Day) Mirusiųjų atminimo (Vėlinių) diena
24 December Christmas Eve Šv. Kūčios
25 December Christmas Day Šv. Kalėdos
26 December Second Day of Christmas Šv. Kalėdų antroji diena

No substitute days. Lithuania does not move a holiday that falls on a weekend to the following Monday. Assumption Day on Saturday 15 August 2026 is simply absorbed, and the Monday after is an ordinary working day.

Užgavėnės is not a day off

Several Lithuanian calendar and accounting websites publish a „nedarbo dienos" list of seventeen days for 2026, the extra entry being Užgavėnės (Shrove Tuesday, 17 February 2026).

Užgavėnės does not appear in article 123. It is a traditional pre-Lent celebration and an ordinary working day. Treating it as a day off would shift every downstream settlement and payroll date that crosses it.

Because a caller comparing this package against a printed wall calendar would otherwise think a day were missing, it is exposed explicitly — and separately:

from aion_lithuanian_market_calendar import observances, is_business_day

observances(2026)
# (Observance(date=2026-02-17, name_en='Shrove Tuesday (Carnival)',
#             name_lt='Užgavėnės'),)

is_business_day("2026-02-17")   # True — it is a working day

observances() never affects is_business_day, is_market_open, or any other business-day arithmetic. The test suite asserts that separation for every year from 2024 to 2040.

API

is_business_day(when=None)          # working day for banks and offices
is_public_holiday(when=None)        # statutory non-working day
is_weekend(when=None)

next_business_day(after=None)
previous_business_day(before=None)
business_days_between(start, end)   # half-open interval

holidays(year)                      # all sixteen, ordered
holidays_between(start, end)        # half-open interval
holiday_on(day)                     # Holiday or None
observances(year)                   # traditional days that are NOT days off
easter_sunday(year)

is_market_open(at=None, market="XVIL")   # Nasdaq Vilnius

Dates accept date, datetime, an ISO string, or None for today.

from aion_lithuanian_market_calendar import business_days_between, holidays_between

business_days_between("2026-12-20", "2027-01-05")   # 8
[h.name_en for h in holidays_between("2026-12-01", "2027-01-01")]
# ['Christmas Eve', 'Christmas Day', 'Second Day of Christmas']

Scope

Covers the sixteen statutory non-working days (šventės) of article 123.

Lithuania also has commemorative and flag days (atmintinos dienos), which are official but remain working days, so they do not change business-day arithmetic and are out of scope here. Traditional celebrations are likewise not days off; the one most often mistaken for one, Užgavėnės, is covered above.

Exchange session times are the one part of a market calendar that changes by announcement rather than by rule. is_market_open uses standard Nasdaq Vilnius continuous trading hours; confirm against the venue if you need intraday precision.

A one-off national day of mourning declared by the Seimas cannot be derived by definition and is out of scope. If you need one, layer it on top rather than patching the computation.

Verification

Easter is unit-tested against known dates for 2024, 2025, 2026, 2027, 2030 and 2035. Mother's Day and Father's Day are asserted to fall on a Sunday for every year from 2024 to 2040. The full 2026 date list and every Lithuanian holiday name are pinned in the test suite.

The holiday list and its Lithuanian spellings were checked against the text of article 123 of the Labour Code, and independently reviewed by a Lithuanian native speaker in September 2026. That review confirmed three things this package had implemented but could not previously source:

  • the list of sixteen is complete;
  • Father's Day is the first Sunday of June (7 June 2026), not 1 June as one published source claimed — 1 June 2026 is a Monday;
  • a holiday falling on a weekend gets no replacement weekday.

Version 0.1.1 corrected six Lithuanian names against the statutory wording, most consequentially Visų šventųjų → Visų Šventųjų and the restoration of ir Tautiškos giesmės diena to the 6 July name. No date changed.

Confirm against the Labour Code for any use with legal or financial consequence. Corrections are welcome as issues — see CONTRIBUTING.md.


Lietuviškai

In English — above / README.md

pip install aion-lithuanian-market-calendar
from aion_lithuanian_market_calendar import is_business_day, next_business_day, holiday_on

is_business_day()                       # ar šiandien darbo diena Lietuvoje
is_business_day("2026-12-25")           # False
next_business_day("2026-12-24")         # date(2026, 12, 28)

holiday_on("2026-06-24")
# Holiday(date=2026-06-24, name_en='Day of Dew and St John (Midsummer)',
#         name_lt='Rasos ir Joninių diena')

Nereikia API rakto. Nereikia interneto ryšio. Nereikia jokių nustatymų. Jokių priklausomybių.

Kam ji skirta

Bet kam, kas turi atsakyti į klausimą „ar ta diena Lietuvoje buvo darbo diena?" ir kaskart gauti tą patį atsakymą.

  • Mokėjimai ir atsiskaitymai. Valiutavimo datos, SEPA terminai, T+2, sąskaitų apmokėjimo terminai ir delspinigiai skaičiuojami darbo dienomis. Lietuva yra didžiausias elektroninių pinigų ir mokėjimo įstaigų licencijavimo centras ES, todėl labai didelė dalis Europos mokėjimų infrastruktūros atsiskaito būtent pagal Lietuvos darbo dienų kalendorių.
  • Darbo užmokestis ir personalas. Darbo laiko apskaita, atostogų kaupimas, įspėjimo terminai ir priemokos už darbą švenčių dienomis remiasi šventėmis. Suklydus dėl liepos 6 d., tai jau ne kosmetinė, o atlyginimo klaida.
  • Rinkos duomenys ir prekyba. Nasdaq Vilnius sesijų tikrinimas, duomenų eilučių derinimas, tarpų aptikimas ir istorinis testavimas, kuris neturi palaikyti šventės trūkstamais duomenimis.
  • Planavimas ir SLA. „Trys darbo dienos" sutartyje, naktinė užduotis, kuri neturi pasileisti per šventę, priminimas, kuris turi pasiekti žmogų darbo metu.
  • Ataskaitų terminai. Mokestinės ir priežiūros ataskaitos, kurių terminas keliasi, kai jis išpuola ne darbo dieną.

Kuo ji naudinga

Ji teisinga be jokios priežiūros. Visos Lietuvos švenčių dienos yra apskaičiuojamos: dvylika yra fiksuotos datos, dvi priklauso nuo Velykų, dvi yra pirmasis mėnesio sekmadienis. Todėl biblioteka jas apskaičiuoja, o ne saugo sąrašą, kuris kasmet gruodį pasensta. Įdiekite vieną kartą ir ji veiks 2027, 2040 ir bet kuriais vėlesniais metais, be interneto ryšio.

Tuo ji skiriasi nuo rinkų, kurių šventės skelbiamos kasmet ir tikrai negali būti apskaičiuotos — mūsų Indijos rinkos kalendorius būtent dėl to platinamas su duomenų failu. Lietuvai jo nereikia, todėl jo ir nėra.

Ji nesijungia į internetą. Jokių tinklo užklausų, todėl ji veikia izoliuotame atsiskaitymų serveryje ar CI aplinkoje be išorinio ryšio ir negali sugesti dėl to, kad trečiosios šalies švenčių API neveikia ar apribojo užklausas.

Ji dvikalbė, todėl tinka rodyti naudotojui. Kiekviena šventė turi ir name_en, ir name_lt pagal Darbo kodekso formuluotę, todėl lietuvis klientas mato Rasos ir Joninių diena, o ne kieno nors susigalvotą vertimą.

Velykos skaičiuojamos pagal Grigaliaus (Vakarų) kalendorių, nes Lietuva yra katalikiška šalis ir švenčia Vakarų, o ne stačiatikių Velykas. Suklydus čia, kasmet nukryptų dvi šventės — tai dažniausia klaida pačių rašytame Europos švenčių kode.

Ji nespėlioja. Kur įstatymas tyli, biblioteka taisyklės nesugalvoja, o kur populiarūs kalendoriai nesutampa su įstatymu, ji laikosi įstatymo ir tai pasako atvirai — žemiau.

Šešiolika švenčių dienų

Pavadinimai pateikti pagal Darbo kodekso 123 straipsnį („Švenčių dienos"), vardininko linksniu. 123 straipsnyje yra keturiolika punktų; du iš jų apima po dvi kalendorines dienas — Velykų sekmadienį kartu su pirmadieniu ir gruodžio 25 kartu su 26 — todėl iš keturiolikos punktų susidaro šešiolika dienų.

Data Lietuviškai English
Sausio 1 Naujieji metai New Year's Day
Vasario 16 Lietuvos valstybės atkūrimo diena Day of Restoration of the State of Lithuania
Kovo 11 Lietuvos nepriklausomybės atkūrimo diena Day of Restoration of Independence of Lithuania
kintama Šv. Velykos Easter Sunday
kintama Velykų antroji diena Easter Monday
Gegužės 1 Tarptautinė darbo diena International Labour Day
pirmasis gegužės sekmadienis Motinos diena Mother's Day
pirmasis birželio sekmadienis Tėvo diena Father's Day
Birželio 24 Rasos ir Joninių diena Day of Dew and St John (Midsummer)
Liepos 6 Valstybės (Lietuvos karaliaus Mindaugo karūnavimo) ir Tautiškos giesmės diena Statehood Day and Day of the National Anthem
Rugpjūčio 15 Žolinė (Švč. Mergelės Marijos ėmimo į dangų diena) Assumption Day
Lapkričio 1 Visų Šventųjų diena All Saints' Day
Lapkričio 2 Mirusiųjų atminimo (Vėlinių) diena Day of Remembrance of the Dead (All Souls' Day)
Gruodžio 24 Šv. Kūčios Christmas Eve
Gruodžio 25 Šv. Kalėdos Christmas Day
Gruodžio 26 Šv. Kalėdų antroji diena Second Day of Christmas

Šventės neperkeliamos. Jei šventė sutampa su savaitgaliu, ji į pirmadienį neperkeliama. Pavyzdžiui, Žolinė 2026 m. rugpjūčio 15 d. yra šeštadienis, o po jos einantis pirmadienis — įprasta darbo diena.

Užgavėnės nėra nedarbo diena

Kai kurios Lietuvos kalendorių ir buhalterinės apskaitos svetainės skelbia septyniolikos „nedarbo dienų" sąrašą 2026 metams; papildomas įrašas yra Užgavėnės (2026 m. vasario 17 d.).

Užgavėnių Darbo kodekso 123 straipsnyje nėra. Tai tradicinė šventė prieš gavėnią ir įprasta darbo diena. Laikant ją nedarbo diena, pasislinktų visos po jos einančios atsiskaitymų ir atlyginimų datos.

Kadangi lyginant šią biblioteką su sieniniu kalendoriumi galėtų pasirodyti, jog vienos dienos trūksta, Užgavėnės pateikiamos atskirai:

from aion_lithuanian_market_calendar import observances, is_business_day

observances(2026)
# (Observance(date=2026-02-17, name_en='Shrove Tuesday (Carnival)',
#             name_lt='Užgavėnės'),)

is_business_day("2026-02-17")   # True — tai darbo diena

observances() niekada neveikia is_business_day, is_market_open ar bet kurio kito darbo dienų skaičiavimo. Testai tai tikrina kiekvieniems metams nuo 2024 iki 2040.

Funkcijos

is_business_day(when=None)          # darbo diena bankams ir įstaigoms
is_public_holiday(when=None)        # šventės diena
is_weekend(when=None)               # savaitgalis

next_business_day(after=None)       # kita darbo diena
previous_business_day(before=None)  # ankstesnė darbo diena
business_days_between(start, end)   # darbo dienų skaičius

holidays(year)                      # visos šešiolika
holidays_between(start, end)        # šventės nurodytu laikotarpiu
holiday_on(day)                     # Holiday arba None
observances(year)                   # tradicinės dienos, kurios NĖRA nedarbo dienos
easter_sunday(year)                 # Velykų sekmadienis

is_market_open(at=None, market="XVIL")   # Nasdaq Vilnius

Datos priimamos kaip date, datetime, ISO tekstas arba None (šiandien).

from aion_lithuanian_market_calendar import business_days_between, holidays_between

business_days_between("2026-12-20", "2027-01-05")   # 8
[h.name_lt for h in holidays_between("2026-12-01", "2027-01-01")]
# ['Šv. Kūčios', 'Šv. Kalėdos', 'Šv. Kalėdų antroji diena']

Apimtis

Apima šešiolika nedarbo dienų (šventės) pagal 123 straipsnį.

Lietuva taip pat turi atmintinas dienas ir vėliavos dienas. Jos yra oficialios, bet lieka darbo dienomis, todėl darbo dienų skaičiavimo nekeičia ir į šią biblioteką neįtrauktos. Tradicinės šventės taip pat nėra nedarbo dienos; dažniausiai su jomis supainiojamos Užgavėnės aprašytos aukščiau.

Biržos prekybos valandos yra ta rinkos kalendoriaus dalis, kuri keičiasi ne pagal taisyklę, o pagal pranešimą. is_market_open naudoja įprastas Nasdaq Vilnius prekybos valandas; jei reikia tikslumo iki minutės, pasitikrinkite biržoje.

Seimo paskelbta vienkartinė gedulo diena pagal apibrėžimą negali būti apskaičiuota ir į biblioteką neįtraukta. Jei jos reikia, pridėkite ją atskirai, o ne taisykite skaičiavimą.

Patikra

Velykų data patikrinta 2024, 2025, 2026, 2027, 2030 ir 2035 metams. Motinos ir Tėvo dienos patikrintos, kad visada būtų sekmadienis nuo 2024 iki 2040 metų. Visas 2026 m. sąrašas ir visi lietuviški pavadinimai įrašyti į testus.

Švenčių sąrašas ir lietuviškos rašybos formos sutikrintos su Darbo kodekso 123 straipsnio tekstu ir atskirai peržiūrėtos gimtakalbio lietuvio 2026 m. rugsėjo mėn. Ta peržiūra patvirtino tris dalykus, kurie bibliotekoje jau buvo įgyvendinti, bet iki tol neturėjo šaltinio:

  • šešiolikos dienų sąrašas yra išsamus;
  • Tėvo diena yra pirmasis birželio sekmadienis (2026 m. birželio 7 d.), o ne birželio 1 d., kaip teigė vienas šaltinis — 2026 m. birželio 1 d. yra pirmadienis;
  • su savaitgaliu sutampanti šventė į kitą darbo dieną neperkeliama.

0.1.1 versijoje pagal įstatymo formuluotę pataisyti šeši lietuviški pavadinimai; svarbiausi — Visų šventųjų → Visų Šventųjų ir liepos 6 d. pavadinimui grąžinta dalis ir Tautiškos giesmės diena. Nė viena data nepasikeitė.

Naudojant teisiniais ar finansiniais tikslais, datas rekomenduojame pasitikrinti Darbo kodekse. Pastabas ir pataisymus mielai priimame — žr. CONTRIBUTING.md.


MIT licensed. Built by AION Analytics (India), an independent India-based firm, not affiliated with Aion Analytics LLC (United States) or AION Labs (Israel).

MIT licencija. Sukūrė AION Analytics (India).

Metadata

Release files for aion-lithuanian-market-calendar 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aion-lithuanian-market-calendar 0.1.1
File Size Uploaded
aion_lithuanian_market_calendar-0.1.1.tar.gz 22.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aion-lithuanian-market-calendar 0.1.1
File Interpreter ABI Platform
aion_lithuanian_market_calendar-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 38.4 kB

Release files / aion_lithuanian_market_calendar-0.1.1.tar.gz

Download URL aion_lithuanian_market_calendar-0.1.1.tar.gz
Size 22.9 kB
Tags Source
SHA-256 checksum
How to use checksums
459545e7304215dc7d05720a028ade23ebf6b2c689111c42f6861c64d71fd75d
BLAKE2b-256 checksum
How to use checksums
5c79be4aeb8a460fe5caff9f158aeb83aed879efdf997b646a469625037fd693
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release files / aion_lithuanian_market_calendar-0.1.1-py3-none-any.whl

Download URL aion_lithuanian_market_calendar-0.1.1-py3-none-any.whl
Size 15.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a07c8d41cfe0101a2b019efc582d2b398817d26551601e2199a1f50a60a0d62e
BLAKE2b-256 checksum
How to use checksums
597505a243e02f965bef0d1a2e150bc6d1e497399502b7ef8575afe3c9401273
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.9

Release history Release notifications | RSS feed

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page