Как торговать в самый страшный кризис

Все трейдеры ждут армагеддона, но не все знают, когда он на самом деле случится и как вообще в нём выжить. Крах фондового рынка России в феврале 2022 года стал самым страшным за всю историю его существования — индекс РТС мог за один торговый день снизиться сильнее, чем в 2008 году, а Тимофей даже провёл эпичный 5-часовой стрим без цензуры.

Как можно было распознать такой рынок?

Основным инструментом для меня стал собственный индикатор, который распознаёт сильные движения вниз, но воспринимать его было непросто, поскольку складывалась следующая ситуация — вы знаете, что с рынком что-то случится, но у вас нет никакого описания и нет понимания того, что и почему должно произойти. Поэтому я искал подсказки и находил следующее:

1. Цены стали реагировать на геополитику

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

( Читать дальше )

Биржевой симулятор Bloomberg - результат $1.129 млн.

    • 12 февраля 2022, 22:56
    • |
    • Diamond
  • Еще
Ради интереса решил потестить ещё какой-нибудь симулятор, под руку попался Bloomberg. Он предельно простой — тыкаем левую кнопку на мышке, чтобы купить и отпускаем, чтобы продать. График всё это время движется без остановки справа налево. Стартовая сумма всего $500, мне стало любопытно, в какой момент я солью депозит, но $500 постепенно росли и в итоге превратились в $1.129M:

Биржевой симулятор Bloomberg - результат $1.129 млн.

Прибыльные трейды отмечены зелёной линией, а убыточные красной:

Биржевой симулятор Bloomberg - результат $1.129 млн.

( Читать дальше )

ChartGame - результаты улучшения торговли

    • 10 февраля 2022, 20:16
    • |
    • Diamond
  • Еще
Я продолжил бороться с ошибками, которые описал тут, суть простая — резать убытки и не допускать их наращивания выше критической отметки. В результате новые аккаунты наконец-то перестали обнуляться на бесконечно длинной дистанции и получилось следующее:

Аккаунт 1: было $66.87M, стало $1.55B, упёрся в ограничение по времени

ChartGame - результаты улучшения торговли

Аккаунт 2: было $10.76M, стало $1.13B

ChartGame - результаты улучшения торговли

( Читать дальше )

ChartGame - путь к системному трейдингу

    • 05 февраля 2022, 18:55
    • |
    • Diamond
  • Еще
Последнее время мне всё меньше важна доходность и чаще беспокоит стабильность результатов. В чём смысл заработать за день 100 тысяч рублей, если принимаемый риск рано или поздно превратит весь депозит в ноль?

И я снова решил обратиться к ChartGame за подсказкой, получил системный профит на трёх аккаунтах:

ChartGame - путь к системному трейдингу

ChartGame - путь к системному трейдингу

( Читать дальше )

Стратегия случайного открытия позиции

    • 09 января 2022, 16:07
    • |
    • Diamond
  • Еще
В качестве эксперимента возникла гипотеза о случайном открытии позиций и оказалось, что в TradingView уже готовая стратегия, которая это делает. Её код выглядит так:

//@version=4
strategy(title="Random Entries Work", shorttitle="REW", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, currency=currency.USD,commission_type=strategy.commission.percent,commission_value=0)

// === GENERAL INPUTS ===
strategy = input(defval="Long Only",title="Direction",options=["Long Only", "Short Only", "Random"])
enter_frequency = input(defval=10,minval=1,maxval=100,title="Percent Chance to Enter")
exit_frequency = input(defval=3, minval=0,maxval=100,title="Percent Chance to Exit",tooltip="This should be much lower than Percent Chance to Enter. Higher values decrease time in market. Lower values increase time in market.")
start_year = input(defval=2020, title="Start Year")


// === LOGIC ===
r = random(0,100)
enter = enter_frequency > r[0]
exit = exit_frequency > r[0]
direction = random(0,100) >= 50

// === STRATEGY - LONG POSITION EXECUTION ===
enterLong() =>
    strategy.opentrades == 0 and enter and (strategy == "Long Only" or (strategy == "Random") and direction) and 
       time > timestamp(start_year, 01, 01, 01, 01)
exitLong() =>
    exit
strategy.entry(id="Long", long=strategy.long, when=enterLong())
strategy.close(id="Long", when=exitLong())
// === STRATEGY - SHORT POSITION EXECUTION ===
enterShort() =>
    strategy.opentrades == 0 and enter and (strategy == "Short Only" or (strategy == "Random" and not direction)) and 
       time > timestamp(start_year, 01, 01, 01, 01)
exitShort() =>
    exit
strategy.entry(id="Short", long=strategy.short, when=enterShort())
strategy.close(id="Short", when=exitShort())


( Читать дальше )

Улучшение торговой системы

    • 17 декабря 2021, 16:16
    • |
    • Diamond
  • Еще
Год оказался непростым и основная торговая система не справилась с рынком, который может не только расти, но и довольно резко падать, пришло время исправить это.

Первый шаг — сделать непонятные системные маркеры более «человекоподобными». Например, пусть маркер высокого риска будет называться BUY CAREFULLY — я по-прежнему могу купить в этом месте, но нужно чётко понимать, что вероятность получить убыток будет максимальной. Сами маркеры стали больше и аккуратнее.

Улучшение торговой системы

Затем нужно было добавить разделение рынка на «стабильный» и «турбулентный», они обозначены зелёным и красным фоном. Стабильный рынок имеет выраженное восходящее направление движения, а в турбулентном можно получить много ложных сигналов или вовсе попасть в затяжной даунтренд:

Улучшение торговой системы

( Читать дальше )

Эпичный слив на ЛЧИ 2021, результат -18%

    • 17 декабря 2021, 15:09
    • |
    • Diamond
  • Еще
Нужно признавать свои ошибки, чтобы учиться на них и улучшать результаты. Самое время разобраться, что пошло не так.

ЛЧИ завершился для меня с результатом -18% и убытком в 260 557 рублей. И это после +46% на прошлом ЛЧИ, как такое может быть? Причин сразу три:

1. Отклонение от первоначального торгового плана и покупка тех биржевых инструментов, которые вообще не нужно было покупать

2. Несистемные попытки покупать отскоки, ловить дно и делать другие нерациональные вещи

3. Проблемы в торговой системе, которые всплыли на более шумном и волатильном рынке

Эпичный слив на ЛЧИ 2021, результат -18%

Что с этим делать:

1. Самое главное — повысить дисциплину и снизить риск. Ближе к концу конкурса кривая доходности стала более плоской, наступил прогресс

2. Осознать, что 9 из 10 попыток ловить дно заканчиваются погружением на второе дно. Если нет чёткого сигнала на покупку, то нужно просто наблюдать за тем, как рынок падает



( Читать дальше )

Как потерять 400 000 рублей за 5 минут и зачем ставить стоп-лосс?

    • 22 октября 2021, 10:32
    • |
    • Diamond
  • Еще
Вчера случилась история, которая заставит меня всегда защищать прибыльные позиции. Была довольно неплохая позиция в Facebook, которая должна была принести ещё не одну сотню тысяч рублей профита, но вышла какая-то новость и всё это развалилось буквально за 5 минут, убыток составил 400 000 рублей:

Как потерять 400 000 рублей за 5 минут и зачем ставить стоп-лосс?


Почему всё пропало?

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

Обязательно ставьте стоп-лоссы и ограничивайте свои убытки. Если позицию развернуло и она закрылась в ноль — это так же нормально, как получить 10 мелких убытков подряд, не нужно переживать из-за этого.

Что случилось дальше с этой позицией?

Я закрыл 50% позиции и зафиксировал часть этого убытка. Если Facebook поедет ниже локального минимума, то придётся закрывать и остальные 50%.

Шаблон торговой системы на Python (backtrader, quantstats)

    • 22 сентября 2021, 21:54
    • |
    • Diamond
  • Еще
Сначала я пытался бэктестить системы в TradingView и этого было достаточно для быстрой оценки торговых гипотез, но оказалось, что мало просто знать, где купить и где продать. Не менее важно понимать, сколько купить или продать и для этого нужны другие инструменты.

Зачем Python?

Лично мне он показался удобнее. Например, можно быстро подключить telebot и система начнёт отправлять сигналы прямо в телегу на все девайсы. Работать со скриптами можно даже на айпаде где-нибудь в дороге, тоже плюс.

Самая простая система, которую можно потестить это пересечение двух скользящих средних: если быстрая SMA пересекает медленную вверх, то покупаем, а если вниз, то закрываем открытую позицию, шортить рынок не будем. Комиссии, проскальзывание и прочие расходы пока не учитываем, нужно начать с какой-то основы.

Что потребуется?

— backtrader для логики торговой системы

— quantstats для формирования отчёта

— Jupyter Notebook, если нужно удобнее редактировать код

( Читать дальше )

ChartGame - неудачная попытка, 44 место ($2.9 млрд.)

    • 15 сентября 2021, 17:41
    • |
    • Diamond
  • Еще
Архив предыдущих игр:

10 место ($67.28 млрд.)
31 место ($5.12 млрд.)

Решил потестить новую гипотезу на втором аккаунте и предположил, что на графике могут присутствовать уровни, на которых можно повышать риск и это улучшит результат. Появились мощные трейды по +50-200%, но вместе с ними пришли большие просадки, которые долго закрывались:

ChartGame - неудачная попытка, 44 место ($2.9 млрд.)

После добавления этих чётких уровней стало заметно больше стоп-лоссов:

ChartGame - неудачная попытка, 44 место ($2.9 млрд.)

( Читать дальше )

теги блога Diamond

....все тэги



UPDONW
Новый дизайн