Справочник
Глоссарий и полка ссылок
Термины рынка, риска, Python, MQL5, AI и бэктеста — с поиском. На соседней вкладке: где скачать Python, MT5, TradingView и выписать ключи.
Прямая ссылка: cybersoftlab-labkit.zip
217 из 217 терминов
Пишите «magic», «σ», «walk-forward», «OnTick» — фильтр по названию, синонимам и тексту.
Рынок и ордера· 56
- Ask
- Цена, по которой рынок продаёт вам. Рыночная покупка бьёт в ask. В стакане — лучшее предложение.
- Bid
- Цена, по которой рынок покупает у вас. Рыночная продажа бьёт в bid. Спред = ask − bid.
- Спред
- Разница ask и bid. Издержки входа. На тонком рынке спред рвётся — без фильтра бот торгует воздух.
- Пункт / pip
- Минимальный шаг котировки в привычной шкале. В MT5 смотрите SYMBOL_POINT и digits, не «как на картинке брокера».
- Лот
- Объём позиции. Нормализуйте к volume_step, volume_min, volume_max до OrderSend / create_order. Иначе режет биржа.
- Тик
- Изменение котировки. OnTick в MT5 зовётся не по времени, а по тику. На тонком символе тишина лечится OnTimer.
- OHLC
- Open, High, Low, Close бара. Индикаторы и бэктесты живут на OHLC; скальп на тиках — другой мир, не смешивайте без модели проскальзывания.
- Стакан
- Лимитные заявки вокруг mid. Полезен как фильтр ликвидности, бесполезен как «предсказатель», если вы не считаете очередь.
- Проскальзывание
- Разница ожидаемой и фактической цены.fill. Закладывайте в бэктест, иначе живая эквити не совпадёт с картинкой.
- Гэп
- Разрыв котировок (выходные, новости). Стоп за гэпом исполнится хуже. На 00:00 и NFP бот должен уметь молчать.
- Сессия
- Окно активности: Азия, Лондон, Нью-Йорк, MOEX. Спред и объём разные. Фильтр сессии — дешёвый край.
- Своп / ролловер
- Плата за перенос позиции через ночь. Для свинг-бота своп входит в expectancy, для скальпа — почти нет.
- Маржа и плечо
- Плечо не увеличивает «правоту», только скорость разорения. Считайте риск от эквити, не от номинала контракта.
- Хедж / неттинг
- Хедж-счёт MT5 держит лонг и шорт раздельно. Неттинг схлопывает. Magic и учёт позиций пишутся по-разному.
- Спот
- Покупка актива. Нет экспирации и фандинга. Иное исполнение, чем у перпетуала — не копируйте фьючерсный бот один в один.
- Перпетуал
- Бессрочный фьючерс с funding. Фандинг — отдельная PnL-нога. Игнорируете его — «прибыльная» стратегия гниёт за неделю.
- Mark price
- Расчётная цена ликвидации на крипте, не last. Стопы и банкротство считаются от mark. Логируйте оба.
- Ликвидация
- Принудительное закрытие при нехватке маржи. Это не стоп: проскальзывание хуже. Не подходите к краю плечом.
- MOEX / срочный рынок
- Фьючерсы и опционы РФ. ГО, клиринг, вечерняя сессия, шаг цены, лотность — всё не как в форексе. Спецификацию читайте на moex.com.
- Контракт / шаг цены
- Цена × объём × multiplier = стоимость пункта. Ошибка множителя — ошибка сайзинга на порядок.
- Рыночный ордер
- Исполнение по текущему bid/ask. Гарантия наполнения, не цены. В тонком стакане проскальзывание — часть цены входа.
- Лимитный ордер
- Цена не хуже указанной. Может не исполниться. Post-only лимитка — попытка быть мейкером.
- Стоп-ордер
- Становится рыночным при касании стоп-цены. На гэпе исполнится хуже стопа. Это не «гарантия цены».
- Стоп-лимит
- После стоп-цены выставляется лимит. На импульсе можете не наполниться и остаться в позиции. Знайте, зачем он вам.
- Трейлинг-стоп
- Стоп едет за ценой на фиксированную дистанцию или ATR. В боковике спиливает. В тренде отдаёт часть движения.
- Take profit
- Лимит на фиксацию. Фиксированный TP режет хвосты трендовых систем. Часто лучше трейлить, чем тупо TP 1:2.
- Stop loss
- Выход при ошибке гипотезы. Без SL сайзинг бессмысленен. Ставьте за структуру/σ, не «за круглое число красиво».
- OCO
- Связка: исполнился TP — снялся SL и наоборот. На частичных биржах эмулируйте в боте, не верьте «брокер сам».
- Post-only
- Заявка только как maker. Если пересечёт спред — отклонят. Нужна, когда комиссия maker дешевле и вы не гонитесь за fill.
- Reduce-only
- Ордер только уменьшает позицию, не разворачивает. Обязателен на фьючерсах, иначе SL может открыть шорт.
- Maker / Taker
- Maker добавляет ликвидность, taker снимает. Комиссии разные, иногда maker-ребат. Скальп без учёта комиссии врёт в тестере.
- Комиссия
- Процент или фиксированная плата за fill. Плюс своп/фандинг. В бэктесте без комиссий любая шумовая система «работает».
- Mid price
- (bid+ask)/2. Удобно для mark-to-market, опасно как цена входа: вы не торгуете mid, вы торгуете ask или bid.
- VWAP
- Средневзвешенная по объёму. Бенчмарк исполнения. «Цена лучше VWAP» — про качество fill, не про альфу.
- TWAP
- Нарезка крупного ордера по времени. Снижает импакт. Бот TWAP — очередь дочерних лимиток, не один market на весь объём.
- Частичное исполнение
- Наполнили не весь объём. Состояние позиции ≠ заявленный лот. Учёт остатка — часть автомата, не «потом разберёмся».
- GTC / IOC / FOK / DAY
- Время жизни заявки: до отмены, немедленно-остаток снять, всё или ничего, до конца сессии. Неверный TIF = «ордер исчез».
- Лонг / шорт / флэт
- Купили, продали, нет позиции. Флэт — тоже состояние. Бот должен явно знать, в каком он режиме, а не «вроде закрыли».
- Усреднение
- Добавление к позиции. Пирамида по тренду ≠ усреднение убытка. Мартингейл в боте — ускоренное разорение, не «система».
- Сетка
- Лесенка лимиток вокруг цены. В диапазоне печатает, в тренде копит инвентарь. Без потолка сетки и kill-switch — мина.
- Break-even
- Перенос SL в точку входа плюс издержки. Слишком рано — вас выбивает шумом. Слишком поздно — не защищает.
- Частичная фиксация
- Закрыть долю на TP1, остаток трейлить. Меняет распределение R. В логах каждая нога — отдельное событие.
- Новостной фильтр
- Минуты вокруг события спред рвётся, стопы снимают. Часто дешевле не торговать окно, чем «предугадать цифру».
- Ликвидность / глубина
- Сколько объёма можно снять, не сдвинув цену. Тонкий рынок + крупный лот = вы сами себе проскальзывание.
- Импакт
- Сдвиг цены вашим ордером. На крипте малого капа уже заметен. Крупный вход режьте TWAP/лимитками.
- Латентность
- Время от сигнала до ack биржи. Python+VPS рядом с биржей. «Домашний Wi‑Fi скальп» — лотерея очереди.
- ECN / STP / dealing desk
- Модель исполнения брокера. Dealing desk может двигать котировку против вас. Для бота важны реальные тики, не маркетинг «ECN».
- FIFO
- Первым закрывается старейший вход. На части юрисдикций и неттинг-счетах. Хедж-логика с FIFO ломается.
- Open interest
- Число открытых фьючерсных позиций. Рост OI с трендом — подтверждение, падение — закрытие. Не сигнал входа сам по себе.
- Funding rate
- Периодический платёж между лонгами и шортами перпа. Высокий фандинг съедает hold. В PnL отдельной строкой.
- Контанго / бэквордация
- Фьючерс дороже/дешевле спота. Ролл в контанго стоит денег. Для календарных ботов — статья издержек, не мелочь.
- Базис
- Фьючерс минус спот. Сходится к экспирации. Арбитражные боты живут на базисе и комиссиях, не на «направлении BTC».
- Кросс / минор / экзотик
- EURGBP — кросс, USDTRY — экзотик. Спред и гэпы иные, чем у мажоров. Не копируйте EURUSD-настройки на экзотик.
- CFD
- Контракт на разницу, не поставка актива. Условия стопов и дивидендов — в спецификации брокера, не «как на бирже».
- Опцион / IV
- IV — вшитая в цену опциона волатильность. Грек и IV crush — отдельный класс систем. Не путайте с σ от SMA на споте.
- Последняя / расчётная цена
- Last — последняя сделка, settlement — клиринг. Маржа и ГО часто от расчётной. Бот должен знать, какую цену он логирует.
spread
pip · point
lot · volume
tick
order book · DOM
slippage
gap
session
swap · rollover
margin · leverage
hedging · netting
spot
perp · perpetual · своп
liquidation
FORTS · MOEX
tick size · contract size
market order
limit
stop · stop market
stop-limit
trailing stop
TP
SL
one cancels other
fee · commission
partial fill
long · short · flat
averaging · pyramid · DCA
grid
безубыток
scale out
NFP · FOMC · CPI
liquidity · depth
market impact
latency
OI
фандинг
contango · backwardation
basis
implied volatility
last · settlement
Риск· 26
- Просадка
- Падение эквити от пика. Считайте по закрытым и по floating. Max DD — ограничение проп-фирмы и ваш kill-switch.
- Разорение
- Вероятность снести счёт при данной серии убытков. Сайзинг 2% «на глаз» без распределения сделок — путь к ruin.
- Сайзинг
- Объём от доли капитала и стопа, не от «уверенности». Первая функция бота. Без неё сигнал — лотерея размера.
- Риск на сделку
- Обычно 0.25–1% капитала до стопа. Проп-счета часто жёстче. Дневной лимит — отдельное правило, не сумма сделок «как получится».
- R-multiple
- Результат в единицах начального риска. +2R при винрейте 40% может быть лучше +0.3R при 80%. Сравнивайте системы в R, не в пунктах.
- Матожидание
- Средний R на сделку: winrate × avg_win − (1−winrate) × avg_loss. Если ≤ 0 после издержек — код не спасёт.
- Sharpe / Sortino
- Доходность на единицу волатильности (Sortino — только вниз). Высокий Sharpe на 30 сделках ничего не значит. Смотрите устойчивость по годам.
- Kill-switch
- Флаг: после порога DD бот flatten и молчит до следующего дня/ручного сброса. Живёт в состоянии, пишется в лог, тестируется отдельно.
- Корреляционный риск
- Три «разных» сигнала по BTC, ETH и SOL — одна нога. Лимит экспозиции на кластер, не на тикер.
- Бета
- Чувствительность к бенчмарку (BTC, SPX). Высокая бета = вы торгуете рынок, не свою «уникум-идею».
- Heat / экспозиция
- Суммарный открытый риск. Caps: на символ, на направление, на кластер, на день. Без caps бот коррелирует сам с собой.
- Винрейт
- Доля прибыльных сделок. 80% мелких плюсов и один −10R — система в минусе. Смотрите вместе с avg win/loss.
- Profit factor
- Сумма прибылей / сумма убытков. PF 1.05 на истории с оптимизацией — ничего. Смотрите PF на OOS и по годам.
- Recovery factor
- Чистая прибыль / max DD. Высокая прибыль при глубокой яме — счёт могли не пережить. Проп так и считает.
- SQN
- Метрика Ван Тарпа: качество системы с поправкой на число сделок. Мало сделок — SQN врёт оптимизмом.
- Kelly / дробный Kelly
- Теоретически оптимальная доля. Полный Kelly слишком агрессивен на оценке винрейта. На практике 0.25–0.5 Kelly или фиксированный %.
- Серия убытков
- Оцените 10–15 лоссов подряд на вашей статистике. Сайзинг и дневной лимит должны это переживать без паники.
- Trailing drawdown
- Просадка от пика эквити, часто правило пропа. Не от старта месяца, а от хая. Бот должен считать тот же пик, что фирма.
- MAE / MFE
- Макс. неблагоприятное / благоприятное отклонение внутри сделки. MAE > стопа — стоп тесный. MFE >> TP — вы рано фиксируете.
- R:R
- Отношение потенциальной прибыли к риску на входе. Плановый R:R не равен фактическому: проскальзывание и ранний выход портят картинку.
- Толстые хвосты
- Реальные доходности не нормальны. −5σ бывает чаще, чем в гауссе. Позиция, живущая на «σ почти не бывает», когда-нибудь умрёт.
- VaR / CVaR
- Потери не хуже порога с вероятностью p; CVaR — средний хвост. Оценка на истории, не гарантия. Стресс важнее красивого VaR.
- Стресс-тест
- Прогон на 2020-03, 2022, флэш-краш, расширение спреда ×5. Если бот там сносит счёт — лимиты не готовы.
- Правила проп-фирмы
- Дневной лосс, trailing DD, запрет новостей, consistency. Бот под проп — это набор ограничений, не «та же стратегия крупнее».
- Овернайт-риск
- Позиция через ночь/выходные. Гэп через стоп. Для скальпа — закрывать к сессии. Для свинга — закладывать гэп в сайзинг.
- Валютная экспозиция
- Несколько пар с USD — скрытый долларовый фактор. Коррелированные ноги суммируйте в фактор, не в тикеры.
drawdown · DD
ruin
position sizing · лот от риска
risk per trade
expectancy
дневной лимит · выключатель
correlation risk
beta
exposure · heat
winrate
System Quality Number
Kelly criterion
consecutive losses
risk reward
fat tails · kurtosis
stress test
prop · consistency
overnight · gap risk
currency exposure
Python· 29
- venv / uv
- Изоляция зависимостей. Не ставьте ccxt в системный Python. uv — быстрый менеджер: uv init && uv add ccxt.
- pip / PyPI
- Каталог пакетов. Фиксируйте версии в pyproject.toml / requirements.txt. «Поставилось само» через полгода не соберётся.
- ccxt
- Единый слой бирж: Binance, Bybit, OKX. Унифицирует create_order, fetch_ohlcv, watch_trades. Всё равно читайте нюансы биржи: reduceOnly, postOnly, hedge mode.
- WebSocket
- Поток котировок и ордеров. REST — для старта и сверки. Боевой скальп без WS слеп. Переподключение и seq-номера обязательны.
- asyncio
- Несколько задач без потоков: рынок, ордера и контроль в одном цикле. Не ставьте обычный blocking requests внутрь — цикл остановится.
- HMAC / подпись
- Ключ + секрет подписывают запрос. Секрет только на сервере, в .env не в git. Права ключа — trade без withdraw.
- Nonce / timestamp
- Защита от повтора запроса. Расхождение часов с биржей = -1021 / invalid nonce. NTP и допустимое окно recvWindow.
- Rate limit / 429
- Биржа режет частоту. Backoff, очередь, не спамьте fetch_ohlcv в OnTick-эквиваленте. Логируйте вес эндпоинта.
- pandas / numpy
- Исследование и векторный бэктест. В живом скальпе тяжёлый DataFrame на каждый тик — латентность. Разделяйте research и runtime.
- логирование
- JSON-строка: ts, event, client_order_id, qty, px, reason. Без логов вы спорите с брокером по памяти.
- dotenv
- Локальные секреты. Файл в .gitignore. На проде — переменные окружения хоста, не скриншот из чата.
- Аннотации типов
- qty: float, side: Literal['buy','sell']. Ловят путаницу лота и цены до боя. mypy/pyright — в CI, не «когда-нибудь».
- dataclass / pydantic
- Модели ордера и конфига. Pydantic валидирует JSON биржи. Голый dict['qty'] разъезжается на первом смене API.
- pytest
- Тесты сайзинга, kill-switch, идемпотентности. Биржу мокайте. Без тестов на NormalizeLot вы узнаете о баге по счёту.
- ruff / formatter
- Линтер и формат. Единый стиль, меньше шума в диффе с AI. ruff check --fix в pre-commit.
- datetime UTC
- Все метки — timezone-aware UTC. naive datetime — баги сессий и DST. Биржевой ts часто ms epoch — храните явно.
- Decimal vs float
- Деньги и лоты — Decimal или целые тики. float(0.1+0.2) в объёме даёт invalid volume. Цену тика храните как int шагов.
- structlog / JSON-логи
- Одна строка JSON на событие. Потом grep/jq по client_order_id. Print() в проде — не лог.
- tenacity / backoff
- Повторы с джиттером на 429/5xx. Не бесконечный while True. После N попыток — circuit breaker, не надежда.
- aiohttp / websockets
- HTTP и WS в asyncio. Один session на процесс, не connect на каждый ордер. Ping/pong и reconnect — ваши, не «библиотека сама».
- FastAPI webhook
- Приём алертов TradingView. Подпись/секрет вебхука, идемпотентность, быстрый 200, работа в очереди. Не торгуйте в HTTP-хендлере.
- APScheduler / cron
- Переоценка, сверка, отчёт в Telegram. Для рынка — бар и WS, не cron каждую секунду. Cron — для суточных задач.
- Graceful shutdown
- По сигналу: перестать входить, дождаться ack, зафлашить логи, опционально flatten. systemd/docker шлёт SIGTERM, не спрашивает.
- Контекстный менеджер
- Сокеты, файлы, блокировки. with закрывает даже при исключении. Утечка WS-соединений — классика новичков.
- Enum / Literal
- Сторона, ТФ, режим — перечисления, не строки 'Buy'/'BUY'/'buy'. Сверка с биржей в одном адаптере.
- Mock-биржа
- Фейковый адаптер с теми же методами, что live. Прогоняйте сценарии: reject, partial, disconnect. Дешевле демо-счёта для логики.
- pathlib
- Пути к конфигу и логам. Не конкатенация строк с '/'. На Windows иначе умрёте в первый же деплой.
- SQLite / состояние
- Локальный журнал ордеров и идемпотентных ключей. Перезапуск бота не должен забыть, что уже отправили.
- Redis / очередь
- Когда процессов несколько: сигнал в очередь, воркер исполняет. Для одного бота часто хватает asyncio.Queue.
virtualenv · uv
pip · pypi
WS
API key · hmac
429 · лимит запросов
logging
.env
type hints
ruff · black
timezone
SIGTERM
with
paper adapter
MQL5 / C++· 29
- OnTick
- Обработчик тика. Не место для тяжёлого I/O и истории на 10к баров. Быстрая проверка флагов, остальное — таймер и события торговли.
- OnTimer
- Периодический пульс, когда тиков нет. Watchdog, сверка позиций, «жива ли связь». EventSetTimer в OnInit.
- OnTradeTransaction
- Факт сделки/ордера от сервера. Источник истины по fills, не догадка после OrderSend.
- CTrade / MqlTradeRequest
- Структура заявки: symbol, volume, type, filling, deviation, magic, comment. Filling mode обязан совпасть с символом.
- Magic number
- Идентификатор советника на счёте. Несколько ботов без разных magic путают чужие позиции и закрывают не своё.
- NormalizeDouble / volume_step
- Лот и цена кратны шагу символа. Иначе RETCODE_INVALID_VOLUME / PRICE. Нормализация — до отправки, не «биржа поправит».
- Stops level / freeze
- Минимальная дистанция стопа от цены и зона заморозки модификаций. Игнор = invalid stops. Особенно на золоте и крипто-CFD.
- Filling mode
- Как биржа наполняет объём. Неверный type_filling — частая причина «советник не открывает» на конкретном брокере.
- CopyBuffer / хендлы индикаторов
- Индикатор создаётся в OnInit, данные копируются в массив. iMA() на каждом тике — антипаттерн. Проверяйте код возврата CopyBuffer.
- Тестер MT5
- Режимы: OHLC, 1 min, every tick. «Every tick based on real ticks» ближе к правде и дороже. Без реальных тиков скальп врёт.
- Комментарий ордера
- Не идентификатор. Брокер может переписать. Идентичность — magic + собственный id в логе / comment как подсказка.
- OnInit / OnDeinit
- Создание хендлов, таймера, проверка символа — OnInit. Снятие таймера и объектов — OnDeinit. Утечка хендлов после перезапуска графика.
- OnCalculate
- Расчёт индикатора. prev_calculated говорит, сколько баров уже посчитано. Пересчёт всего массива каждый тик — лаги терминала.
- ExpertRemove
- Снять советник с графика из кода (ошибка символа, нет торговли). Лучше halt-флаг, чем молчаливый return в OnTick.
- SymbolSelect / SymbolInfo
- Символ должен быть в Market Watch. Info-запросы без Select возвращают нули — «лотность 0» начинается здесь.
- PositionsTotal / ticket
- Обход позиций по индексу хрупкий. Берите ticket, фильтруйте magic и symbol. Иначе закроете чужой советник.
- HistorySelect / deals
- История сделок за период. Сверка дневного PnL и kill-switch по факту, не по «я помню вход».
- TRADE_RETCODE
- Код ответа торгового сервера. Логируйте retcode и comment. invalid stops / no money / requote — разные ветки, не один Print('fail').
- OrderCheck / OrderCalcMargin
- Проверка заявки и маржи до отправки. Дешевле, чем ловить reject. CalcProfit — для оценки TP в деньгах.
- CopyRates / CopyTicks
- Копия баров и тиков в массив. Проверяйте возврат >= 0. ArraySetAsSeries(true) — индексация как в индикаторах, 0 = текущий бар.
- MqlTick
- Структура тика: bid, ask, last, volume, flags. Флаги говорят, что изменилось. Не берите last как цену входа в FX.
- WebRequest
- HTTP из терминала. Домен в списке разрешённых. Для вебхуков и котировок с сайта. Таймаут и разбор JSON — ваши.
- iCustom / хендл
- Чужой индикатор по имени. Хендл в OnInit, CopyBuffer в работе. Без хендла — каждый вызов тяжёлый и нестабильный.
- input / #property
- Входные параметры и свойства эксперта. Группы input group для риска отдельно от сигналов. Не хардкодьте лот в коде.
- MQH / #include
- Заголовки модулей: trade, risk, signals. Один .mq5 — тонкий, логика в .mqh. Иначе файл на 4к строк не отревьюить.
- Оптимизация тестера
- Генетика плюс forward period. Без форварда вы подгоняете шум. Задержка исполнения и случайное проскальзывание — включите.
- AccountInfo / маржа
- Свободная маржа, уровень, валюта счёта. Ордер, который не проходит по марже, должен отсекаться до Send.
- ChartID / объекты
- Рисование зон и меток на графике. Префикс имён с magic. OnDeinit чистит, иначе после снятия советника график в мусоре.
- Print vs FileWrite
- Print улетает в журнал и теряется. Боевой лог — файл CSV/JSON в MQL5/Files с flush. Иначе разбор ночного сбоя невозможен.
OrderSend
magic
NormalizeLot
SYMBOL_TRADE_STOPS_LEVEL
FOK · IOC · return
Strategy Tester
comment
retcode
genetic · forward
Архитектура бота· 21
- Идемпотентность
- Повтор того же сигнала не должен открыть вторую позицию. Ключ: hash(signal, bar_ts, side). Сеть двоит запросы — бот обязан это переживать.
- Watchdog
- Сторож: нет тиков N секунд, WS молчит, ордер висит — алерт и безопасный режим. Без него бот «жив» в htop и мёртв на рынке.
- Flatten
- Закрыть всё и отменить заявки. Вызывается kill-switch, потерей связи, ручным стопом. Пишите как отдельную процедуру, тестируйте.
- Конечный автомат
- Состояния: idle, pending, in_position, flattening, halted. Переходы явные. Флаги «уже почти вошли» по всему коду — источник двойных входов.
- Paper / live split
- Один движок сигналов, два адаптера исполнения. Не копируйте бота в «боевой» папке с правкой трёх строк — разъедется.
- Конфиг vs код
- Символ, риск, сессии, лимиты — конфиг. Логика входа — код. Чтобы сменить пару, не надо пересобирать советник.
- Circuit breaker
- Автостоп при серии ошибок API, расширении спреда, дыре в данных. Ближайший родственник kill-switch, но про инфраструктуру.
- Синхронизация часов
- Бары, nonce, сессии завязаны на время. Расхождение с биржей ломает подпись и MTF. Сервер — UTC, явно.
- Порты и адаптеры
- Ядро сигналов не знает Binance. Адаптер говорит на API. Смена биржи — новый адаптер, не if binance в стратегии.
- Сверка / reconciliation
- Периодически: наши ордера vs биржа. Расхождение — алерт и halt. Без сверки « intra-memory правда» расходится с счётом.
- Heartbeat
- Регулярный импульс «жив». Нет пульса N секунд — считайте процесс мёртвым. Watchdog снаружи (systemd) + внутри (нет тиков).
- Backpressure
- Очередь сигналов растёт — не входите чаще, чем исполняете. Drop или coalesce, не раздувайте 10к отложенных market.
- At-least-once
- Доставка события минимум один раз. Дубликаты будут. Поэтому идемпотентность обязательна. Exactly-once на биржевом WS — сказка.
- Дебаунс сигнала
- Один вход на бар / N секунд паузы. Иначе OnTick напишет пачку ордеров на одном импульсе.
- Bar-close vs tick
- Решение на закрытии бара стабильнее, на тике быстрее и шумнее. Смешивать в одном коде без флага — разные системы.
- Календарь сессий
- Праздники биржи, ранние закрытия, воскресенья форекса. Торговать «как в будний день» в сессию низкой ликвидности — подарок спреду.
- Canary / бумажный параллель
- Сначала paper рядом с live на том же сигнале. Расхождение fill — чините модель, не увеличивайте лот.
- Ротация секретов
- Ключ биржи имеет срок и право. Смена без даунтайма: новый ключ в конфиге, старый revoke. Утечка — revoke сразу.
- Runbook
- Что делать, если halt, если биржа 5xx, если позиция «не наша». Пишется до инцидента. Ночью вы не изобретаете процедуру.
- Метрики процесса
- Счётчики: ордера/мин, ошибки, задержка WS, незакрытые заявки. Алерт по порогу, не «глянул htop».
- Конфиг-файл
- Риск, символ, сессии — вне кода. Валидация при старте. Неверный лот в конфиге должен не поднять процесс, а упасть громко.
client_order_id
state machine
NTP · clock
hexagonal
cooldown
holidays
key rotation
healthcheck
yaml · toml
AI и промпты· 18
- Системный промпт
- Роль, запреты, критерии приёмки. «Напиши прибыльного бота» — мусор. «Роль: инженер исполнения, не стратег; сайзинг обязателен» — работа.
- Скилл
- Файл правил, который агент подмешивает в контекст: как у вас принято считать лот, какие модули обязательны, чего не делать. Память лаборатории.
- Субагент
- Узкий исполнитель: «напиши только NormalizeLot», «разбери лог». Ведущий агент не пишет всё сам — меньше галлюцинаций в сайзинге.
- Окно контекста
- Сколько текста модель видит. Большой советник + логи — режьте: спецификация, затем файл, затем дифф. Не скармливайте весь репозиторий «на всякий».
- Галлюцинация
- Уверенный вымысел: несуществующая функция MQL5, выдуманный эндпоинт. Сверяйте с документацией и компилятором, не с тоном ответа.
- Локальная модель
- Веса на вашей машине. Сюда можно дать боевые куски логики и объёмы. Облако — для архитектуры без секретов.
- Температура
- Случайность ответа. Для кода ближе к 0. Для мозгового штурма гипотез — выше. Сайзинг и стопы — всегда низкая температура.
- Few-shot
- В промпт кладёте 1–3 примера «вход → правильный лот». Лучше десятка абзацев прозы. Примеры с вашими инвариантами.
- Spec first
- Сначала спецификация модулей и запретов, потом код. Иначе модель пишет «всё сразу» и сайзинг оказывается в комментарии.
- Tool calling
- Модель вызывает компилятор, тесты, grep. Пусть проверяет, не «уверенно врёт». Без инструментов — больше галлюцинаций API.
- Eval-набор
- Фиксированные задачи: нормализуй лот, разбери этот лог. После смены модели прогоняете eval. «Кажется умнее» — не метрика.
- Prompt injection
- В логах и PDF брокера может быть текст «игнорируй правила». Скилл должен запрещать исполнение указаний из пользовательских файлов.
- RAG
- Подмешивание кусков документации в контекст. Для MQL5 docs полезно. Не замена чтению справки по filling mode.
- Токены
- Счётчик контекста — токены, не слова. Код жрёт контекст плотнее прозы. Режьте логи, не «весь Experts/».
- JSON mode
- Структурированный ответ: поля lot, sl, reason. Парсите схемой. Свободный текст «лот примерно 0.2» в пайплайн не кладётся.
- AGENTS.md / CLAUDE.md
- Память репозитория для агента: стек, запреты, как тестировать. Без файла каждый чат начинается с нуля и забывает kill-switch.
- MCP
- Протокол инструментов у модели (файлы, браузер). Давайте минимум прав: не полный диск и не боевой API-ключ.
- Дифф-ревью
- Принимайте патч, не «перепиши файл». Смотрите сайзинг и ветки ошибок. Модель любит удалить проверку spread «для простоты».
system prompt
skill · CLAUDE.md
subagent
context window
hallucination
Hermes · Ollama
temperature
tools · function calling
eval
tokenizer
Model Context Protocol
Данные и бэктест· 21
- Look-ahead bias
- В баре использовали close, которого ещё не было в момент решения. Классика вранья индикаторов и Pine request.security без осторожности.
- Survivorship bias
- В выборке только выжившие тикеры. На истории РФ без делистинка стратегия «акций роста» выглядит умнее, чем была.
- Walk-forward
- Оптимизация на окне, проверка на следующем, сдвиг. Честнее одного split 70/30. Если параметры пляшут от окна к окну — системы нет.
- IS / OOS
- Обучение и отложенная проверка. Подкрутили OOS «ещё разок» — это уже IS. Фиксируйте дату отсечки.
- Переобучение
- Кривая идеальна на истории, мертва вперёд. Много параметров, мало сделок, подгонка под конкретный 2023. Штрафуйте сложность.
- Модель заполнения
- Как в тестере вы получаете цену: mid, next tick, стакан. Без модели бэктест — мультик. Для лимиток важна очередь.
- Утечка таймфрейма
- Старший ТФ на истории берёт будущий close. В Pine — lookahead; в Python — режем бар старшего ТФ по времени младшего.
- σ / сигма
- Отклонение цены от базиса в единицах σ. ±2σ / ±3σ — зоны лимиток mean-reversion. В тренде цена может ехать по +2σ. Нужен фильтр.
- Пирсон ρ
- Линейная связь доходностей от −1 до 1. Не причинность. Высокая ρ у альтов к BTC — не диверсификация.
- Множественное тестирование
- 1000 комбинаций параметров — случайный чемпион. Штраф за число попыток, иначе OOS тоже «подкручен» отбором.
- CPC / purged k-fold
- Кросс-валидация рядов с запретом соседних баров (утечка через автокорреляцию). Обычный k-fold для цен врёт.
- Стационарность
- Среднее и дисперсия не пляшут. Цены редко стационарны, доходности — чаще. Mean-reversion на нестационарном уровне — ловушка.
- Коинтеграция / half-life
- Спред пары возвращается к среднему за half-life баров. Если half-life = 400 дней, «пара» вам не помощник на M15.
- Hurst
- H>0.5 — память/тренд, H<0.5 — возврат. Оценка шумная на коротких окнах. Режим, не вечная константа рынка.
- Режим рынка
- Тренд / флэт / шок. Система из флэта 2017 умирает в тренде 2021. Детектор режима или разные профили конфига.
- Volume / dollar bars
- Бар не по времени, а по объёму. Стабильнее статистика на разной активности сессий. Сложнее стыковать с TV/MT5.
- Корп. действия
- Сплит без корректировки ряда = дыра в стратегии. Для акций и CFD проверяйте, что фид уже adjusted.
- DST / таймзона фида
- Сервер брокера, биржа и ваш бот — три часовых пояса. Бар «00:00» без зоны — баг сессионного фильтра.
- Монте-Карло
- Перестановка сделок/путей эквити. Смотрите распределение max DD, не одну красивую кривую тестера.
- Permutation test
- Случайно переставьте доходности: если «альфа» жива — у вас подгонка под шум. Дешёвый тест честности.
- Tick → bar
- Агрегация тиков в OHLC. Правило: бар закрыт в ts_end, не включайте будущий тик. Ошибка здесь = look-ahead на всём пайплайне.
заглядывание вперёд
in-sample · out-of-sample
overfitting
fill model
MTF leak
sigma · z-score · стандартное отклонение
correlation · корреляция
multiple testing
CPCV · embargo
ADF
regime
split · dividend
bootstrap
TradingView / Pine· 17
- overlay
- indicator(..., overlay=true) рисует на цене. RSI — overlay=false. Путаница даёт «индикатор в углу графика».
- request.security
- Данные другого ТФ/символа. Легко словить lookahead. Для боевых алертов — бар закрыт, lookahead_off.
- Repainting
- Сигнал на истории красивый, в реале исчезает. Причины: close текущего бара, security без закрытия, calc_on_every_tick на истории.
- strategy vs indicator
- strategy() умеет ордера и тестер TV. indicator() — расчёт и алерты. Для подарка лаборатории — индикатор: вы сами решаете, как входить.
- alertcondition / webhook
- Алерт TV может стучать в Python-бота. Это не исполнение: между вебхуком и ордером — ваши риск-модули.
- ta.sma / ta.stdev / ta.rsi
- Базовые серии Pine. stdev — основа σ-полос. Считайте на закрытом баре, если сигнал идёт в алерт.
- barstate.isconfirmed
- Бар закрыт. Для алертов и webhook — фильтр №1 против перерисовки текущего бара.
- var vs varip
- var — раз в бар, varip — на каждом тике. Путаница даёт «на истории одно, в лайве другое».
- lookahead_on / off
- request.security с lookahead_on видит close старшего ТФ раньше времени. Для реальной торговли — off и бар закрыт.
- max_bars_back
- Сколько истории доступно серии. Слишком мало — na на старте. Слишком много — тяжёлый скрипт.
- table / label / line
- Таблица статусов ТФ, метки сигналов, линии зон. Не спамьте объектами каждый тик — лимиты TV.
- input.*
- Параметры индикатора: длина, множители σ, ТФ. Группируйте. Пользователь не должен лезть в код, чтобы сменить 20 на 50.
- strategy.entry / exit
- Входы тестера TV. Pyramiding, commission, slippage — заполните, иначе PF сказочный. Это не ордер на бирже.
- process_orders_on_close
- Исполнение стратегии на закрытии бара. Ближе к честному, дальше от скальпа внутри бара.
- calc_on_every_tick
- Пересчёт на тике. В сочетании с незакрытым баром — источник repaint. Для подарка лаборатории лучше бар-клоуз.
- request.security_lower_tf
- Данные младшего ТФ массивом внутри бара старшего. Легко словить будущее внутри бара. Нужна дисциплина индексов.
- Pine v5 / v6
- Версия языка в шапке //@version. Фичи и поведение security менялись. Не мешайте примеры v4 в v5 без правки.
перерисовка
Связь
Нужен бот или разбор стратегии
Разберём идею, соберём бота, проверим риск. Пишите в Telegram — отвечаю лично.