Проверка рисков в конце дня¶
Перед завершением торгового дня важно ответить на три вопроса: какая часть моих средств задействована, защищены ли открытые позиции и по каким позициям убытки превышают допустимый для меня уровень? В этом руководстве рассмотрены четыре команды, которые помогут ответить на эти вопросы, и показано, что делать с полученными результатами.
Совет
Один раз задайте учетные данные в переменных оболочки. Все приведенные ниже интерактивные команды используют эти переменные. Это упрощает шаги и позволяет переносить скрипт между средами.
export CTID=letstrade
export ACC=7654321
export PWD_FILE=$HOME/.ctrader/pwd
1. Проверка задействованной маржи ¶
account-stats возвращает баланс, средства, маржу и свободную маржу. Сравните свободную маржу со средствами, чтобы оценить риски по счету.
ctrader-cli account-stats --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q
Если свободной маржи мало относительно средств, счет уже сильно загружен. В этом случае следующие шаги особенно важны.
2. Получение списка всех открытых позиций ¶
positions выводит все открытые позиции с ценой входа, объемом, стоп-лоссом, тейк-профитом и нереализованной прибылью. Сохраните вывод в файл, чтобы просмотреть каждую позицию отдельно.
ctrader-cli positions --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q > positions.json
Обратите внимание на два тревожных признака: позиции без стоп-лосса и позиции с убытком выше заданного порога. Следующие шаги помогут разобраться с обеими ситуациями.
3. Добавление стоп-лосса к незащищенным позициям ¶
Для позиций без стоп-лосса или со слишком близким уровнем защиты команда position modify позволяет добавить или переместить стоп-лосс, не меняя объем.
ctrader-cli position modify --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
--position=11223344 --sl=1.1000
Укажите только --sl, чтобы не изменять тейк-профит. Повторите действие для каждой незащищенной позиции.
4. Закрытие позиций, убытки по которым превышают порог ¶
Если убыток по позиции превышает установленный лимит, команда position close закрывает ее по следующей доступной цене.
ctrader-cli position close --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
--position=55667788
Если хотите сохранить позицию, но уменьшить объем, используйте position close-partial с параметром --volume.
ctrader-cli position close-partial --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
--position=55667788 --volume=500
5. Проверка улучшения состояния счета ¶
Повторно выполните account-stats и positions, чтобы убедиться, что задействованная маржа уменьшилась, а проблемные позиции закрыты.
ctrader-cli account-stats --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q
ctrader-cli positions --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q
6. Объединение шагов в скрипт проверки рисков ¶
Сохраните всю последовательность как risk-check.sh. Скрипт сохраняет список позиций, чтобы можно было сравнить состояние до и после изменений.
#!/usr/bin/env bash
set -euo pipefail
CTID=letstrade
ACC=7654321
PWD_FILE=$HOME/.ctrader/pwd
LOSS_LIMIT=300
PROTECT_POS=(11223344 55667788)
CLOSE_POS=(55667788)
ctrader-cli account-stats --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q
ctrader-cli positions --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q > positions.json
for POS in "${PROTECT_POS[@]}"; do
ctrader-cli position modify --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
--position=$POS --sl=1.1000
done
for POS in "${CLOSE_POS[@]}"; do
ctrader-cli position close --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q \
--position=$POS
done
ctrader-cli account-stats --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q
ctrader-cli positions --ctid=$CTID --pwd-file=$PWD_FILE --account=$ACC -q
Измените массивы позиций в начале скрипта, подставив идентификаторы из шага 2. Запускайте скрипт после каждой торговой сессии, прежде чем закрывать ноутбук.
В справочнике команд cTrader CLI перечислены все доступные параметры команд, используемых в этой процедуре.
Предупреждение
cTrader CLI — инструмент для торговли и автоматизации. Он не предоставляет финансовых, инвестиционных, юридических или налоговых консультаций. Команды размещения и изменения ордеров могут приводить к реальным сделкам и финансовым потерям. Проверяйте каждую команду перед выполнением, сначала тестируйте ее на демосчете и защищайте свои учетные данные.