Это астрономия, а не астрология
Новолуние и полнолуние
Действительно ли существует какая-то связь между фазами Луны и паттернами фондового рынка? С помощью представленных в этой статье программ вы сможете провести тест для сопоставления дат.
Перри Дж. Кауфман
Как известно некоторым из вас, один из разделов своей книги «Торговые системы и методы» я посвятил исследованию фаз Луны, а именно полнолунию и новолунию. У меня есть опыт работы в астрономии (не путайте с астрологией), и наиболее очевидным физическим воздействием Луны являются приливы и отливы.
Есть также анекдотические свидетельства, что в полнолуние люди совершают странные вещи (без превращения в оборотней или других существ). Но, похоже, есть более странные вещи, которые происходят в полнолуние. Возможно, они происходят и на рынке.
Учитывая эти сомнительные взаимосвязи, я написал программу на языке EasyLanguage (см. вставку «Влияние новолуния и полнолуния на рынки»), тяжелую с точки зрения математики, но если вы установите ее на свою платформу (я использую TradeStation, чтобы код был на языке EasyLanguage), то она будет работать. Вряд ли вы захотите делать эти расчеты. Недавно я запустил ее и сверил правильность дат.
|
Год |
Месяц |
Новолуние |
Полнолуние |
|
2023 |
9 |
15,1 |
29,8 |
|
2023 |
10 |
14,6 |
29,4 |
|
2023 |
11 |
13,1 |
27,9 |
|
2023 |
12 |
12,7 |
27,4 |
|
2024 |
1 |
11,2 |
26,0 |
|
2024 |
2 |
9,7 |
24,5 |
|
2024 |
3 |
10,2 |
25,0 |
|
2024 |
4 |
8,8 |
23,5 |
|
2024 |
5 |
8,3 |
23,1 |
|
2024 |
6 |
6,8 |
21,6 |
|
2024 |
7 |
6,4 |
21,1 |
|
2024 |
8 |
4,9 |
19,7 |
|
2024 |
9 |
3,4 |
18,2 |
РИСУНОК 1. ДАТЫ НОВОЛУНИЙ И ПОЛНОЛУНИЙ С СЕНТЯБРЯ 2023 ГОДА ПО ОКТЯБРЬ 2024 ГОДА. В таблице показаны средние значения фаз Луны, скорректированные на аберрацию Солнца и преобразованные в стандартные календарные даты юлианского календаря. Дроби дня означают часы, то есть 0,50 – это 12 часов дня.
Таблица новолуний и полнолуний
На рисунке 1 представлена таблица дат новолуний и полнолуний в период с сентября 2023 года по октябрь 2024 года. Если вы запустите программный код, приведенный во вставке, вы получите таблицу, которая начинается в 1959 году и заканчивается в 2040-м. Это позволит вам охватить большинство дат для разработки своей торговой стратегии.
В январе 2000 года я опубликовал аналогичную статью в журнале «Фьючерсы» (журнал больше не выпускается). Рисунок 2 взят из этой статьи. С учетом нескольких месячных точек 5-дневный стохастик, похоже, показывает, что полнолуние часто совпадает с высокими значениями импульса.
Я продублировал это изображение, используя больше данных, как показано на рисунке 3. Красные стрелки (вниз) показывают даты полнолуний. Синие стрелки (вверх) – даты новолуний. Нижняя панель – это стохастик с периодом 5 дней. Синяя линия – «сырой стохастик», а красная линия – «медленный стохастик», 3-дневное сглаживание сырого стохастика.
5-дневный стохастик, естественно, показывает много точек перекупленности и перепроданности, но это необходимое условие, если мы хотим получить индикатор, который будет работать с лунными фазами. Возможно, это не впечатлит вас, если вы настроены скептически.
Наблюдая за графиком, мне кажется, что полнолуние чаще всего приходится на точки разворота, тогда как новолуние вызывает гораздо меньший интерес. В 2000 году я разработал торговую систему, в рамках которой сделки открывались в новолуние, когда стохастик был в зоне перепроданности, и закрывались в полнолуние, когда стохастик был в зоне перекупленности. Результаты представлены на рисунке 4.
На рисунке 3 можно увидеть, что данная система будет успешно работать, поскольку цены продолжают расти. Предоставлю алгоритмическим трейдерам проверить это самостоятельно.
Если вы запустите код, показанный во вставке, вы получите достаточное количество данных, чтобы проверить, работает ли эта концепция на медвежьем рынке. В конце концов, на бычьем рынке работает практически всё, хотя полнолуние, по-видимому, чаще всего приходится на рыночные пики.
РИСУНОК 2. СТОХАСТИК И ДАТЫ НОВОЛУНИЯ И ПОЛНОЛУНИЯ. Торговая система, разработанная в 2000 году, сочетает в себе 5-дневный осциллятор стохастик с датами новолуния и полнолуния для получения сигналов на покупку/продажу. В рамках этой системы сделки открывались в новолуние, когда стохастик был в зоне перепроданности, и закрывались в полнолуние, когда стохастик был в зоне перекупленности. Стохастик, похоже, показывает, что полнолуние часто совпадает с высокими значениями импульса.
РИСУНОК 3. СТОХАСТИК И ДАТЫ ПОЛНОЛУНИЯ. Здесь представлена обновленная торговая система с рисунка 2 для проверки дополнительных данных. Синие стрелки показывают даты новолуния, а красные – даты полнолуния на ценовом графике биржевого инвестиционного фонда SPY с 5-дневным стохастиком на нижней панели (сырой стохастик синего цвета, а медленный, или сглаженный, стохастик – красного цвета).
|
|
Больше прибыли (Полосы ближе друг к другу) |
|
|
Более высокая прибыль в сделке (Полосы дальше друг от друга) |
|
|
|
|
Все сделки |
Только лонги |
Только шорты́ |
Все сделки |
Только лонги |
Только шорты́ |
|
Кол-во сделок |
175 |
65 |
110 |
95 |
53 |
42 |
|
Надежность |
68% |
74% |
65% |
71% |
75% |
64% |
|
Коэффициент прибыли |
1,77 |
3,27 |
1,42 |
2,22 |
3,48 |
1,57 |
|
Прибыль в сделке |
$ 650 |
$ 991 |
$ 449 |
$ 924 |
$ 1 137 |
$ 654 |
РИСУНОК 4. ПОКАЗАТЕЛИ ПРОИЗВОДИТЕЛЬНОСТИ ТОРГОВЛИ. Здесь показаны результаты бэктестирования торговой стратегии с рисунка 2, входы и выходы которой основаны на датах новолуния/полнолуния и сигналах осциллятора стохастик. Похоже, что даты полнолуния часто совпадают с точками разворота.
ВЛИЯНИЕ НОВОЛУНИЯ И ПОЛНОЛУНИЯ НА РЫНКИ (НА ЯЗЫКЕ EASYLANGUAGE)
Этот код содержит расчеты для составления таблицы дат новолуний и полнолуний с 1959 по 2040 год. Первый фрагмент кода преобразует юлианскую эфемеридную дату, которая используется для расчета фаз Луны и Солнца, в стандартную календарную дату. Второй фрагмент кода дает поправку средних фаз Луны на аберрацию Солнца.
{TSMJulianEDtoDate: преобразование юлианской эфемеридной даты в календарную дату.
Авторское право 1999 г., 2025 г. П. Дж. Кауфман. Все права защищены.
Эта функция преобразует юлианскую эфемеридную дату, используемую для расчета фаз Луны и Солнца, в стандартную календарную дату плюс десятичные дроби дня, представляющие часы: YYYYMMDD.dd, где
YYYY – год (например, 1999)
ММ – месяц
DD.dd – день месяца и часы (в десятичных дробях дня) (0,50 означает 12 часов дня)}
input: Jdate(numeric);
vars: zz(0), fract(0), aa(0), alpha(0), bb(0), cc(0), dd(0), ee(0), daydec(0), mo(0), tyear(0), btemp(0), iday(0);
zz = intportion(Jdate + .5);
fract = Jdate + .5 - zz;
if zz < 2299161 then
aa = zz
else begin
alpha = intportion((zz - 1867216.25) / 36524.25);
aa = zz + 1 + alpha - intportion(alpha / 4);
end;
bb = aa + 1524;
btemp = (bb - 122.1) / 365.25;
cc = intportion(btemp);
dd = intportion(365.25*cc);
ee = intportion((bb - dd) / 30.6001);
daydec = bb - dd - intportion(30.6001*ee) + fract;
if ee < 13.5 then
mo = ee - 1
else
mo = ee - 13;
if mo > 2.5 then
tyear = cc - 4716
else
tyear = cc - 4715;
print (file("c:\tradestation\moon.txt")," year=",tyear:5:0," mo=",mo:2:0,
" day=",daydec:3:2);
{Необходимо округлить значение дня из-за ограниченной десятичной точности TradeStation.}
iday = round(daydec,0);
TSMJulianEDtoDate = tyear * 10000 + mo * 100 + iday;
[LegacyColorValue = true];
{Фазы Луны TSM
Пересчитывает средние значения фаз Луны, скорректированные на аберрацию Солнца.
Авторское право 1996-1999 гг., 2025 г. П. Дж. Кауфман. Все права защищены.}
{ПРИМЕЧАНИЕ: из-за ошибки десятичной точности при передаче большого десятичного числа из функции TSMJulianEDtoDate дата полнолуния или новолуния может смещаться на один день. Чтобы избежать этой проблемы, вы можете включить код данной функции непосредственно в эту программу}
vars: k(0), TT(0), n(0), ix(0), fullmoon(0), newmoon(0), nfm(1000); {was 130}
arrays: newdate[1000](0), fulldate[1000](0);
n = -nfm / 2;
if currentbar = 1 then begin
print(file("c:\tradestation\moon.txt"),
" Event# Date Newmoon Fullmoon New date
Full date");
for ix = 1 to nfm begin
{новолуния относительно 2000 года}
k = {2000} + n;
TT = k / 1236.85; {время в юлианских веках}
fullmoon = 2451550.09765 + 29.530588853*k + 0.0001337*power(TT,2)
- 0.000000150*power(TT,3) + 0.00000000073*power(TT,4);
{полнолуния относительно 2000 года}
k = {2000} + n + .5;
TT = k / 1236.85;
newmoon = 2451550.09765 + 29.530588853*k + 0.0001337*power(TT,2)
- 0.000000150*power(TT,3) + 0.00000000073*power(TT,4);
fulldate[ix] = TSMJulianEDtoDate(fullmoon);
newdate[ix] = TSMJulianEDtoDate(newmoon);
print (file("c:\tradestation\moon.txt"),ix:5:0, k:8:0, fullmoon:10:0,
newmoon:10:0, fulldate[ix]:10:0, newdate[ix]:10:0);
n = n + 1;
end;
end;
Перри Кауфман
Переведено для TLAP
