Wash sale та опціони: 61-денне вікно
Правило wash sale діє 61 день, а не 30: calls, rolls, глибоко ITM puts, розрив у 1099-B і збиток, який IRA може стерти. Розберіться в механіці.
Правило wash sale не дозволяє врахувати капітальний збиток, якщо ви продаєте цінний папір зі збитком і протягом 61-денного періоду купуєте істотно ідентичний актив: за 30 днів до продажу, у день продажу та за 30 днів після нього. Опціони підпадають під це правило у двох випадках: як заміна, що нівелює збиток за акціями, і як самостійна збиткова позиція. У taxable account заборонений збиток не зникає. Він переноситься до cost basis замінної позиції й залишається там.
На цій сторінці описано механіку правила. Це не податкова консультація.
Чому період wash sale становить 61 день, а не 30
Складові прості: 30 днів до продажу, сам день продажу та 30 днів після нього — разом 61 календарний день. Йдеться саме про календарні, а не торгові дні. Підрахунок триває також у вихідні та біржові свята. Панель нижче бере за основу останню торгову сесію кожного місяця й показує, скільки сесій припадає на 61-денне вікно цього місяця.
Точний SQL-код для кожного числа
WITH sessions AS
(
SELECT DISTINCT date AS d
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
AND date >= '2023-11-01'
),
month_ends AS
(
SELECT
toStartOfMonth(d) AS m,
max(d) AS anchor
FROM sessions
WHERE d >= '2024-01-01'
AND d < '2026-07-01'
GROUP BY m
)
SELECT
toString(me.m) AS month,
toString(me.anchor) AS last_session,
countIf(s.d >= me.anchor - 30 AND s.d <= me.anchor + 30) AS sessions_in_window,
61 AS calendar_days_in_window
FROM month_ends AS me
CROSS JOIN sessions AS s
GROUP BY me.m, me.anchor
ORDER BY me.mГоризонтальна лінія показує 61 календарний день, передбачений правилом. Нижня лінія показує, скільки з цих днів ринок був відкритий. У першому місяці на панелі у вікно потрапляє 42 сесій, в останньому — 42. Загалом панель охоплює 30 місяців.
Половину вікна, про яку часто забувають, становлять дні до продажу. Більшість інвесторів рахує вперед від дати продажу й позначає в календарі 31-й день. Але 30 днів до продажу рахуються так само. Ви купили ще 100 акцій 10-го числа, усереднюючи позицію, а 20-го продали свій первісний лот зі збитком. Отже, купівля, здійснена раніше, вже потрапляє у вікно. Збиток за проданим лотом не дозволяється врахувати, навіть якщо після продажу ви нічого не купували. Важливо, який саме лот залишає рахунок. Це рішення приймається під час укладення угоди: див. як методи визначення cost basis обирають лот.
Проблема грудня
Збирання збитків зосереджується в останні тижні року. Саме тоді арифметика періоду wash sale має найбільше значення. Продаж в останню сесію року створює вікно для повторної купівлі, яке глибоко заходить у січень. А купівля в січні може заборонити врахувати збиток, уже заявлений у декларації за попередній рік.
Точний SQL-код для кожного числа
WITH sessions AS
(
SELECT DISTINCT date AS d
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
AND date >= '2025-10-20'
AND date < '2026-02-10'
)
SELECT
toString(sale.d) AS session_date,
concat(formatDateTime(sale.d, '%b'), ' ', toString(toDayOfMonth(sale.d))) AS sold_on,
countIf(s.d >= sale.d - 30 AND s.d <= sale.d + 30) AS sessions_in_window,
greatest(dateDiff('day', toDate('2025-12-31'), sale.d + 30), 0) AS window_days_in_new_year
FROM
(
SELECT d
FROM sessions
WHERE d >= '2025-12-01'
AND d < '2026-01-01'
) AS sale
CROSS JOIN sessions AS s
GROUP BY sale.d
ORDER BY sale.dКожен рядок відповідає одній грудневій сесії. Для розрахунку всі вони прив’язані до грудня 2025 року. Для продажу на Dec 1 на новий рік припадає 0 днів вікна. Для продажу на Dec 31 — 30 днів, а все вікно охоплює 42 торгових сесій. У грудневій брокерській виписці це не буде позначено. Заборонений збиток прив’язується до січневих акцій. Врахувати його можна буде лише після остаточного закриття нової позиції — наступного року або навіть через кілька років.
Як опціони підпадають під правило wash sale
Розділ 1091 охоплює акції або цінні папери, а також контракт чи опціон на придбання істотно ідентичних акцій. У 1988 році Конгрес розширив дію норми, включивши контракти та опціони на купівлю або продаж. Для трейдера це має чотири наслідки:
- Купівля call-опціону на акції, які ви щойно продали зі збитком, сама по собі створює wash sale. Call-опціон є контрактом на придбання акцій. Виконувати його не потрібно, і жоден strike не є достатньо віддаленим, щоб правило не застосовувалося.
- Продаж call-опціону зі збитком і купівля базових акцій у межах вікна ставлять питання у зворотному порядку. Відповідь залежить від критерію істотної ідентичності, а не від будь-якого опублікованого safe harbor.
- Продаж put-опціону, який настільки глибоко перебуває в грошах, що його виконання здається майже неминучим, може трактуватися подібно до купівлі акцій.
- Збиток за опціоном є збитком за цінним папером. Правило також охоплює заміну одного опціону іншим.
Обсяг акцій, якому відповідає конкретний контракт, можна виміряти. Delta — це зміна ціни опціону при зміні ціни базового активу на один долар. Якщо помножити її на 100, вона приблизно покаже, скільком акціям відповідає експозиція одного контракту. Панель сортує контракти на AAPL із терміном до експірації від 20 до 45 днів до червня 2026 року за 5 діапазонами залежно від розташування strike відносно ціни акції, а потім обчислює середню delta для кожного діапазону.
Точний SQL-код для кожного числа
SELECT
bucket AS strike_vs_spot,
round(avgIf(delta, delta > 0), 3) AS call_delta,
round(avgIf(abs(delta), delta < 0), 3) AS put_delta_abs,
count() AS contract_count
FROM
(
SELECT
delta,
toFloat64(strike_price) / toFloat64(underlying_close) AS mny,
multiIf(
mny < 0.85, 'strike 15%+ below spot',
mny < 0.95, 'strike 5-15% below spot',
mny < 1.05, 'strike within 5% of spot',
mny < 1.15, 'strike 5-15% above spot',
'strike 15%+ above spot'
) AS bucket
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date >= '2026-06-01'
AND date < '2026-07-01'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 45
AND underlying_close > 0
)
GROUP BY bucket
HAVING countIf(delta > 0) > 0
AND countIf(delta < 0) > 0
ORDER BY min(mny)Читайте панель зліва направо. Для call-опціонів зі strike значно нижче ціни акції середня delta становила 0.937. Це близько до одиниці, тому контракт майже долар у долар повторює рух акцій. Для call-опціонів зі strike значно вище ціни акції середня delta становила 0.017. Put-опціони рухаються у протилежний бік: для put-опціонів зі strike, що розташований найвище за ціну акції, абсолютне значення delta в середньому становило 0.888, а для put-опціонів зі strike, що розташований найнижче, — 0.015. Правий край панелі відповідає put-опціону, який глибоко перебуває в грошах. Його продавець фактично несе експозицію, близьку до довгої позиції в акціях. Основні терміни щодо strike та експірації див. у матеріалі як читати опціонний ланцюжок.
IRS ніколи не встановлювала числового порога для поняття «достатньо глибоко». Практичний підхід полягає в оцінці того, чи існує на момент продажу put-опціону істотна ймовірність того, що він завершить строк дії невиконаним. Put-опціон на крайньому правому боці цієї панелі та put-опціон у її центрі не є однаковими вимогами.
Перенесення збиткового long call
Найпоширеніше спеціалізоване питання щодо опціонів має найменш однозначну відповідь. Ви володієте call-опціоном, його вартість знизилася, і ви продаєте його, а потім купуєте інший call-опціон на той самий базовий актив, але з іншим strike або пізнішою експірацією. Чи є новий контракт істотно ідентичним старому?
Treasury не видав нормативних роз’яснень, які визначали б, коли один опціон є істотно ідентичним іншому. Це чесний опис поточного стану питання. На практиці існує підхід до звітності: брокери зіставляють опціонні позиції за символом контракту. Тому перенесення позиції на інший strike або іншу експірацію зазвичай проходить через форму 1099-B без позначки. Але такий підхід не є офіційним рішенням. Законодавчий критерій полягає в тому, чи залишає замінний контракт вас під впливом тих самих висхідних і низхідних рухів. Call-опціон із сусіднім strike та тією самою експірацією дає іншу картину, ніж call-опціон із терміном на шість місяців і значним перебуванням поза грошима.
Існують два підходи. Обережний підхід вважає заміну з близьким strike та близькою експірацією такою, що зберігає ту саму експозицію. Ліберальний підхід розглядає будь-яку зміну умов контракту як створення нового цінного папера. Жоден із них не був остаточно перевірений судовою практикою або роз’ясненням, яке встановлює чітку межу.
Як 61 день виглядає на графіку котирувань
61 календарний день залишається абстракцією, доки не перевести його в торгові сесії. Панель нижче показує рівно одне вікно wash sale — з 1 грудня до 30 січня. Це повне вікно для збитку, зафіксованого в останню сесію грудня.
Точний SQL-код для кожного числа
SELECT
toString(t.date) AS session_date,
round(t.close, 2) AS close,
round(100 * (t.close / a.first_close - 1), 2) AS change_pct
FROM
(
SELECT
date,
toFloat64(any(close)) AS close
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'AAPL'
AND date >= '2025-12-01'
AND date <= '2026-01-30'
GROUP BY date
) AS t
CROSS JOIN
(
SELECT toFloat64(argMin(close, date)) AS first_close
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'AAPL'
AND date >= '2025-12-01'
AND date <= '2026-01-30'
) AS a
ORDER BY t.dateУ ці 61 календарний день потрапило 42 сесій AAPL. Акція увійшла у вікно із ціною закриття $283.1 і вийшла з нього із ціною $259.48 — -8.34% від початкового рівня. Інвестор, який продав акції в останню грудневу сесію та хотів заявити збиток, мав уникати істотно ідентичної експозиції протягом кожної з цих сесій. Правило перетворює податкове рішення на рішення щодо ринкової експозиції на весь період вікна.
Що бачить ваша форма 1099-B, а чого вона не бачить
Брокери розраховують wash sale окремо для кожного рахунку та кожного ідентифікатора цінного папера: CUSIP для акцій і символу контракту для опціону. Саме цього вимагають правила брокерської звітності. Але такий підхід вужчий за норму, якої потрібно дотримуватися під час подання декларації. Розділ 1091 застосовується до платника податків загалом, за всіма рахунками. Це включає рахунки подружжя та контрольованих вами юридичних осіб.
Саме ця відмінність спричиняє більшість несподіваних випадків:
- Ви продали актив зі збитком у брокера A, а потім купили його знову в межах вікна у брокера B. У жодній формі 1099-B wash sale не буде показано. Але для платника податків він все одно існує.
- Ви продали акції зі збитком і купили call-опціон на них у тому самому рахунку. Чи зіставить брокер ці операції, залежить від його програмного забезпечення, а не від закону.
- Ви продали актив зі збитком у своєму рахунку, а потім викупили його в рахунку подружжя. Жоден брокер не бачить обидві сторони операції.
- Ви перенесли збитковий call-опціон на новий strike. Ідентифікатор змінився, тому форма виглядає чистою. Але питання істотної ідентичності залишається відкритим.
Розглядайте 1099-B як вхідні дані, а не як остаточне визначення. Для фондів виникає та сама проблема, але в іншій формі: два фонди, що відстежують один індекс, формально є окремими цінними паперами. Цей випадок розглянуто в матеріалі продаж mutual funds зі збитком.
Єдиний випадок без повернення: повторна купівля в IRA
Звичайний wash sale лише відкладає врахування збитку. Заборонений збиток додається до cost basis замінної позиції, період володіння попередньою позицією приєднується до періоду володіння новою, а податкове вирахування виникає пізніше, коли позицію остаточно закривають.
Купівля замінної позиції в IRA розриває цей ланцюг. Revenue Ruling 2008-5 встановлює, що збиток за продажем у taxable account не дозволяється врахувати, якщо в межах вікна істотно ідентичні акції або цінні папери купують у вашій IRA чи Roth IRA. Водночас механізму коригування бази немає: розділ 1091(d) не передбачає можливості збільшити cost basis IRA. Нічого не переноситься на майбутнє. Вирахування втрачається назавжди.
Ця асиметрія робить IRA єдиним випадком, який варто перевірити до укладення угоди, а не під час підготовки податкової декларації. Застосовуються всі 61 день. Roth IRA розглядається так само, як традиційна IRA.
Періоди володіння та збиток, який переміщується
Коли збиток відкладається, а не анулюється, разом із ним переміщуються два елементи. Сума забороненого збитку додається до cost basis замінних акцій. Період володіння проданою позицією додається до періоду володіння замінною позицією. Через це позиція, придбана лише кілька днів тому, може формально вважатися довгостроковою. Розрахунок періоду володіння також визначає порядок оподаткування дивідендів: див. період володіння для qualified dividend.
Одна категорія контрактів не підпадає під цю систему. Широкі індексні опціони наприкінці року оцінюються за ринковою вартістю за окремим режимом і розподіляються у співвідношенні 60/40 між довгостроковим і короткостроковим результатом. Тому збиток за ними на кінець року врегульовується через таку оцінку, а не через вікно повторної купівлі: чому індексні опціони оподатковуються за правилом 60/40.
Поширені запитання
Період wash sale становить 30 чи 61 день?
Шістдесят один календарний день. Правило охоплює 30 днів до продажу, сам день продажу та 30 днів після нього. Підрахунок лише вперед від дати продажу пропускає половину періоду. Купівля до продажу зі збитком вважається замінною позицією так само, як і подальша купівля.
Чи створює купівля call-опціону wash sale?
Так, якщо call-опціон купують у межах вікна на акції, продані зі збитком. Розділ 1091 охоплює контракт або опціон на придбання істотно ідентичних акцій. Wash sale виникає навіть у разі, якщо call-опціон ніколи не виконують.
Чи застосовується правило wash sale до двох різних брокерських рахунків?
Так. Брокери розраховують wash sale окремо для кожного рахунку та ідентифікатора цінного папера. Правило ж застосовується до платника податків за всіма рахунками, включно з рахунками подружжя. Чиста форма 1099-B від кожного брокера не означає, що wash sale не було.
Чи є call-опціон з іншим strike істотно ідентичним тому, який я продав?
Жодна норма прямо на це не відповідає. Treasury не визначило, коли один опціон є істотно ідентичним іншому. Брокери зіставляють контракти за символом, а не за економічними характеристиками, тому перенесення позиції зазвичай не позначається у звітності. Але критерій експозиції, передбачений законом, ширший за практику звітності.
Що станеться, якщо я викуплю акції в IRA?
Збиток буде заборонено врахувати й остаточно втрачено. Revenue Ruling 2008-5 встановлює, що розділ 1091(d) не дає змоги додати заборонений збиток до cost basis IRA. Тому, на відміну від звичайного wash sale, пізніше нічого не відшкодовується.
Примітки щодо даних
Кількість сесій розраховано за щоденними даними SPY, який використовується як індикатор днів, коли фондові ринки США проводили регулярну сесію. Перша панель бере за основу останню сесію кожного місяця й рахує кожну сесію в межах 61 календарного дня навколо неї. Панель за грудень прив’язана до грудня 2025 року, а панель із котируваннями — до періоду з 1 грудня 2025 року до 30 січня 2026 року, тому жодна з них не оновлюється. Панель delta охоплює лише контракти зі збіжною implied volatility та ненульовим обсягом, із терміном до експірації від 20 до 45 днів. Середні значення розраховано за червень 2026 року, а strike розподілено за діапазонами відносно ціни закриття базового активу цього дня. Дані на початку періоду надходять із затримкою в один-два дні. Це впливає лише на динамічну місячну панель. Усе наведене не є податковою консультацією. Визначення істотної ідентичності залежить від конкретних обставин і потребує повного аналізу податковим фахівцем.
До кожної наведеної вище панелі додається SQL-запит, за допомогою якого її побудовано. Ви можете відкрити запит і самостійно перерахувати сесії. Щоб побудувати 61-денне вікно для власних дат, сформулюйте запит звичайною англійською мовою в терміналі Strasmore.