суббота, 29 июня 2024 г.

SWT-метод. Что дальше?

На этом этапе, пожалуй, с текущей версией индикаторов SWT-метода можно будет остановиться, выжато все что можно, стратегии и тактики ручной торговли, универсальный робот, методика его настройки и применения (еще не опубликована, но на днях описание появится). 

Но вспомним, что такое SWT-метод.



Рис.1. Гребенка полосовых фильтров.

В рамках SWT-метода используется разложение (декомпозиция) графика движения цены по базису волновых стохастических трендов с помощью системы фильтров, разделяющих общее движение рынка на компоненты с различным спектральным составом, а функция, описывающая процесс изменения цены во времени, рассматривается в виде суммы стохастических волн – волновых трендов - функций времени с различным темпом (скоростью) изменения и различной амплитудой (размахом) колебаний.

Эти функции и называются стохастическими волновыми трендами или парциальными (частными) трендами.

Тот, кто интересовался аппаратурой воспроизведения звука, сразу увидит в этой картине знакомую вещь из радиоэлектроники, а именно: эквалайзер.

Да, принцип сходный, задачи разные.

Задача эквалайзера подчеркнуть те или иные частотные диапазоны звуковой композиции, изменяя ее в нужную сторону так, что результат зачастую очень сильно отличается от оригинала.

Задача SWT-метода - разложить ценовой ряд на компоненты без искажений и так, чтобы их сумма была в точности равна исходному ценовому графику в соответствии с правилами принципа декомпозиции. Ведь мы должны видеть реальную картину движения цены по этим компонентам, а не то, что сделал наш "эквалайзер".

Нужно ли знать про глобальный тренд?

Давным давно я разработал табличку с классификацией длительности трендов в рамках SWT-метода.



Всё хорошо, одно плохо. Нет таймфрейма 5 недель. Есть месяц, но он для отображения глобального тренда подходит только приблизительно из-за несоблюдения временнЫх пропорций, а также из-за недостаточной (часто) истории котировок.

Проблему решил просто. Для базового индикатора ввел масштабирующий временную шкалу параметр - множитель периода.
При значении 5 индикатор на графике недельного масштаба показывает волны, которые были бы на графике с масштабом 5 недель.

суббота, 15 июня 2024 г.

К вопросу о безопасности и рисках

Я обычно использую кредитное плечо большого размера. Но это не значит, что я открываю позиции предельно допустимого объема. Это не так.

В примере, приведенном на рисунках внизу, кредитное плечо 1:500, что, с учетом уровня стоп-аут в 60%, позволяет открыть позицию по золоту в размере 6.47 лота (без учета стоп-аут 10.45 лотов).
Но если я открою позицию такого объема, то откат чуть больше четырех долларов мгновенно уничтожит мой счет. А для золота, особенно в настоящее время, такой откат в любой момент вполне обычное дело.

Позиции меньшего объема снизят риск но шансы, что счет долго не проживет и я потеряю большую часть или все деньги на балансе торгового счета, всегда остаются. Вопрос в том, как оценить эти шансы, или, точнее, как обеспечить себе спокойную жизнь на более-менее продолжительное время.



Рис.1.

пятница, 14 июня 2024 г.

З. SWTG_Robot. Правила закрытия позиций.

3.1. Закрытие позиций по признакам разворота тренда



Рис.3.1. Закрытие позиций по признакам разворота. 

Правила открытия и закрытия позиций отличаются.
На уровне группы младших трендов (DailyIDay и Hourly) отличий нет.
Отличия начинаются с группы старших трендов, а именно:
- по тренду недельного цикла Weekly условия закрытия позиций формируются при смене направления движения и отсутствии признака коррекции WC;
- по краткосрочному тренду Short условия закрытия позиций формируются при смене направления движения или развороте недельного тренда;
- по среднесрочному тренду Medium условия закрытия позиций формируются при смене направления движения или по признаку разворота краткосрочного тренда;
- по долгосрочному тренду Long условия закрытия позиций формируются при смене направления движения или по признакук разворота среднесрочного тренда;
- по основному тренду Basic условия закрытия позиций формируются при смене направления движения или по признаку разворота долгосрочного тренда.
Разумеется, для формирования условий закрытия любой из перечисленных трендов должен быть включен в группу трендов, формирующих условия торговли.

Признак CloseByRT указывает, что в процессе трейда достигнут целевой уровень прибыли относительно принятого риска и позиции будут закрыты по паттерну разворота дневного тренда и разворота внутридневного тренда (см.п.3.2).

   BClup    = (CloseByRT && !IC) || Bdn  || (BC && !LC && Ldn);
   LClup    = (CloseByRT && !IC) || Ldn  || (LC && !MC && Mdn);
   MClup    = (CloseByRT && !IC) || Mdn  || (MC && !SC && Sdn);
   SClup    = (CloseByRT && !IC) || Sdn  || (SC && !WC && Wdn);
   WClup    = (CloseByRT && !IC) || (!WC && Wdn);
   DClup    =  Ddn;
   IClup    =  Idn;
   HClup    =  Hdn;
//---
   BCldn    = (CloseByRT && !IC) || Bup  || (BC && !LC && Lup);
   LCldn    = (CloseByRT && !IC) || Lup  || (LC && !MC && Mup);
   MCldn    = (CloseByRT && !IC) || Mup  || (MC && !SC && Sup);
   SCldn    = (CloseByRT && !IC) || Sup  || (SC && !WC && Wup);
   WCldn    = (CloseByRT && !IC) || (!WC && Wup);
   DCldn    =  Dup;
   ICldn    =  Iup;
   HCldn    =  Hup;

Правила п.3.1 являются приоритетными и действуют независимо условий п.3.2 и 3.3.

После закрытия всех позиций начинается новый цикл торговли.

3.2. Закрытие позиций по уровню прибыли относительно риска.




Рис.3.2. Закрытие позиций по достижению заданного порога прибыль/риск

Если установленное соотношение профит/риск не равно нулю, то целевой уровень прибыли рассчитывается как произведение коэффициента профит/риск (Pr/Risk) на значение расчетного риска позиции при заданном в настройках уровне ордера стоп-лосс.
При достижении порогового значения прибыли позиции закрываются по признакам разворота дневного тренда.
В примере, представленном на рисунке 3.2 коэффициент профит/риск (Pr/Risk) равен 100 процентов, но открытых позиций нет, поэтому расчетный риск (Risk) равен нулю и целевой уровень прибыли (Trgt) не рассчитывается.

Если установленное соотношение профит/риск равно меньше либо равно нулю, то все позиции по правилам п.3.1.

После закрытия всех позиций начинается новый цикл торговли.

3.3. Закрытие позиций по достижению уровня прибыли в процентах от эквити




Рис.3.3. Закрытие позиции по достижению порога прибыли в процентах от эквити.

Если значение параметра ProfitPerc не равно нулю, то условия п.3.2 игнорируются, а все позиции закрываются в момент превышения прибылью заданного процента от эквити.

После закрытия всех позиций начинается новый цикл торговли.




2. SWTG_Robot. Правила открытия позиций

2.1. Задание глубины анализа рынка




Рис.2.1. SWT-Robot. Отображения параметров состояния 

Глубина анализа рынка определяет уровень самого старшего тренда, начиная с которого определяется направление движения котировок.

Глубина анализа рынка задается параметром TrendVector - целое число, определяющее номер старшего тренда, начиная с которого учитываются все тренды более низкого уровня при определении направления торговли.

1. SWTG_Robot. Параметры настройки и состояния

SWTG_Robot - усложненная расширенная версия программы SWT_Robot, в который добавлены возможность контртрендовой торговли и использование адаптивного алгоритма сетки с различными сервисными добавками.

1.1. Параметры настройки.


Рис.1.1. График с установленным торговым роботом SWTG_Robot.

SWTG_Robot - это программа для реализации торговых стратегий на основе SWT-метода. Торговые стратегии определяются выбором значений параметров робота, определяющих режимы его работы.

При сбрасывании робота на график отображается окно настройки параметров (рис.1.2).



Рис.1.2. Диалоговое окно настройки параметров робота.

Кратко опишем назначение и функции параметров. Детальное пояснение правил открытия и закрытия позиций будет дано в следующих разделах.

вторник, 11 июня 2024 г.

Повторение пройденного. Снова робот. Тест +7000% за 5 месяцев.

Я думал, что я окончательно закончил все работы по доработке индикаторов и роботов, но тут меня спросили, нет ли у меня робота, который совершал бы много сделок, пусть с небольшой прибылью, но для наработки оборота по счету.
Когда-то, в начале 2020 года, у меня был похожий робот, от количества сделок которого рябило в глазах.
В ту пору я пробовал применить алгоритмы сетки и контртрендовую торговлю на основе индикаторов SWT-метода.
Какие-то результаты были, и даже неплохие. Но я отказался от работы в этом направлении из-за рисков, плохо поддающихся контролю.
Отказался, программы забросил и выбросил и даже в архивах ничего не осталось. Кроме смутной идеи как все делалось.
После некоторой борьбы с прогрессирующей деменцией я все-таки кое-что вспомнил и за пару дней смог реализовать старые идеи в программном коде. Причем даже проще и с большей степенью универсальности, чем это было сделано в прошлом.
И вот что у меня получилось.



Это результаты теста с 1 января 2024 года до 7 июня, дня когда данные по рынку труда США нанесли очередной удар по рынкам. Робот устоял. Наверное потому, что он контртрендовый.

Теперь о результатах.
В режиме тестирования, результаты которого представлены на рисунке, просадка достигает 80%. Это несомненный минус.
Но прибыль в тесте за 5 месяцев превышает 7000%. Это несомненный плюс.
Что перевешивает?