Как читать этот разбор. Формул здесь две, обе разобраны словами и на числах. Главный вывод в разделе «Метод в одну строку», а самое интересное в шестом разделе: там показано, где заголовочный результат работы не выдерживает пересчёта.
1. Как устроен тест
Вопрос тот же, что в барьерной модели Villahermosa, но подход обратный. Вместо того чтобы вывести вероятность прохода из геометрии правил, автор берёт заведомо бессмысленную стратегию, прогоняет её через запрограммированные правила конкретной фирмы и смотрит, что получится с деньгами.
Работа с самого начала делит две величины, которые в этой теме постоянно путают.
Симулированный результат против реального. Прибыли и убытки на счёте определяют, пройдена ли оценка, жив ли счёт и положена ли выплата. Это симулированные деньги. Реальный денежный поток клиента состоит ровно из двух вещей: он платит подписку и получает выплаты. Экономический результат это выплаты минус стоимость счетов, а не изменение симулированного баланса.
Отсюда следует важное для чтения. Комиссии по сделкам списываются с симулированного баланса и влияют на вероятность прохода, но не являются реальным расходом клиента. Поэтому в чистый результат $+1 490 они не входят, и это методологически правильно. Формулировка автора вводит в заблуждение: "the modeled proprietary framework generated +\$1,490.19 of mean net economic P&L per account after account-related costs and trading costs were incorporated". На деле , и никаких торговых издержек в этой разности нет.
Правила Topstep, которые запрограммированы
| Симулированный результат | Реальный денежный поток |
|---|---|
| Цель оценки: $3 000 | Стоимость счёта: $85 в месяц |
| Максимальный лимит убытка $2 000; ползёт за максимумом баланса | Потолок выплаты: $6 000 на один запрос |
| Консистентность оценки: лучший день не более 50 % прибыли, нужной для прохода | Максимальный запрос: 50 % прибыльного баланса |
| Дневной лимит убытка: $1 000 | Минимальный запрос: $125 |
| Кредит сброса: при провале позволяет не покупать счёт заново, а сдвинуть списание на 30 дней | Раздел прибыли: 90 % клиенту, 10 % фирме |
| Требование к выплате: минимум три торговых дня с хотя бы одной сделкой | |
| Консистентность на фондированной стадии: ни один день не даёт более 40 % прибыли за цикл |
Стратегия
- Инструмент: Micro E-mini Nasdaq-100 (MNQ)
- Размер: 8 контрактов
- Частота: одна сделка в зачётный день
- Вход: 10:00 по Нью-Йорку
- Направление: случайно лонг или шорт с равной вероятностью
- Стоп: 100 тиков (25 пунктов индекса)
- Цель: 100 тиков, отношение 1:1
- Денежное значение цели и стопа: ±$400 брутто на 8 MNQ
- Издержки: $1.22 за оборот на контракт, то есть $9.76 на сделку из восьми
- Выход по времени: не задетые барьеры закрываются в 16:00
- Фильтр сессий: праздники, укороченные дни и дни без бара 10:00 исключены
- Неоднозначные наблюдения: дни, где цель и стоп задеты внутри одной минуты, исключены
Проверка денежной арифметики. Тик MNQ это 0.25 пункта индекса и $0.50 на контракт. Сто тиков это 25 пунктов, то есть $50 на контракт. На восьми контрактах $400. Сходится.
Исключены 87 укороченных праздничных дней, один день без бара 10:00 и четыре дня, где цель и стоп задеты в одной минуте, что составило 0.16 % от 2 485 сделок.
Оговорка автора, которую стоит прочитать внимательно. Десять тысяч путей это не десять тысяч независимых десятилетних историй рынка. Каждая симуляция использует одни и те же 2 485 исторических дней и рандомизирует только направление на каждой дате. Упражнение измеряет, как разные последовательности сделок меняют исход внутри наблюдённой выборки, и не претендует представлять все возможные будущие пути. Автор ставит эту оговорку сам, и она ниже окажется ключом ко всей критике.
2. Метод в одну строку
Что это такое. Вся экономическая часть работы. Симулированный баланс сюда не входит вообще: он лишь определяет, дойдёт ли дело до выплаты.
Счёт по шагам. Сложи все полученные выплаты. Вычти всё, что заплачено за подписки и покупки счетов.
Пример на числах работы. Выплаты $9 368.50, стоимость счетов $7 878.30, чистый результат $+1 490.20.
А вот вторая формула, ради которой работа написана, и она же самое уязвимое её место:
Счёт по шагам. Раздели выплаты на затраты. Умножь текущую цену подписки на это отношение.
Пример на числах работы. . Тогда , и счёт «дешевле справедливой цены на $16».
Почему арифметика сходится. Стоимость счетов $7 878.30 при подписке $85 означает 92.69 оплаченных месяцев, что в точности равно 61.68 продлений плюс 31.01 покупки оценки. Если поднять цену до $101.08, те же 92.69 месяцев обойдутся в $9 368, то есть ровно в сумму выплат. Внутренне расчёт корректен.
Чего он не учитывает. Того, что цена определяется не этой стратегией, а всей популяцией клиентов.
3. Базовая стратегия: действительно ли ноль

Как его читать. По горизонтали результат одного рандомизированного пути в долларах, от −$80 000 до +$80 000. По вертикали сколько путей из десяти тысяч попало в этот столбец. Распределение примерно нормальное и центрировано около нуля, чуть левее.
Что нужно увидеть. Симметрию и центр у нуля. Это и есть доказательство, что стратегия действительно без преимущества: направление выбиралось монеткой, и итог одного пути определяется тем, повезло ли монетке.
Практический вывод. Разброс огромен относительно центра: путь может закончить и на −$50 000, и на +$50 000 при нулевом ожидании. Именно эта дисперсия и есть сырьё, из которого дальше делается «ценность» проп-счёта.
Числа по базовой стратегии:
| Величина | Значение |
|---|---|
| Среднее число выигрышей по цели | 1 143.98 |
| Среднее число проигрышей по стопу | 1 145.02 |
| Выходы по времени | 196 |
| Доля выигрышей среди разрешённых барьером | 49.98 % |
| Средний брутто-результат на сделку | −$0.1678 |
| Средний брутто-результат за путь | −$416.86 |
| Медиана за путь | −$568 |
| Издержки за путь (2 485 × $9.76) | −$24 253.60 |
| Чистый результат отдельной стратегии | −$24 670.46 |
Сверка сходится: , доля выигрышей , а против заявленных −$416.86.
Разбивка по пятилеткам. Первый период (август 2016 по август 2021, 1 246 дней): доля выигрышей 49.99 %, −$0.0408 на сделку, −$50.78 за путь. Второй (август 2021 по август 2026, 1 239 дней): 49.96 %, −$0.2955 на сделку, −$366.08 за путь. Сумма двух периодов даёт −$416.86 и совпадает с полной выборкой.
4. Та же стратегия внутри правил Topstep

Как его читать. По горизонтали чистый экономический результат одного пути, от −$30 000 до +$110 000. По вертикали число путей. Сравните с предыдущим рисунком: там шкала симметрична, здесь левый край обрезан, а правый длинный.
Что нужно увидеть. Скос вправо. Масса по-прежнему сидит около нуля, но левый хвост коротко обрублен. Обрубленность слева и есть механика продукта: клиент не может потерять больше, чем заплатил за подписки.
Практический вывод. Положительное среднее берётся не из того, что стратегия стала лучше. Она та же самая. Оно берётся из того, что распределение убытков усечено, а распределение прибылей нет.
| Величина | Значение |
|---|---|
| Средние выплаты клиенту | $9 368.50 |
| Средняя стоимость счетов | $7 878.30 |
| Среднее чистое | +$1 490.19 |
| Медиана чистого | +$1 036.83 |
| Отношение выплат к затратам | ≈ 1.19 |
| Стандартное отклонение | $3 926.12 |
| 5-й / 95-й процентиль | −$3 995.42 / +$8 612.82 |
| Доля прибыльных симуляций | 60.30 % |
Жизненный цикл счёта активный, а не сведённый к нескольким удачным выплатам: в среднем на симуляцию 31.01 покупки оценки, 61.68 продления, 56.31 использованный кредит сброса, 17.62 пройденных оценки, 17.47 провалов фондированного счёта и 14.95 выплат.
Почему несколько правил оказались нерабочими. Дневной лимит убытка $1 000 недостижим, если цель и стоп не превышают $400, а сделка одна в день. Консистентность на стадии оценки (лучший день не более 50 % от цели $3 000, то есть не более $1 500) недостижима по той же причине. Автор это честно называет: параметры системы подбирались с оглядкой на правила Topstep, и $400 не оптимизированная величина, а та, что удобно легла ниже дневного лимита и обнулила несколько правил.
Отсюда первый из двух главных содержательных выводов работы, и он хороший:
Правила проп-фирм отсеивают поведение по управлению размером позиции, а не торговый навык. Фиксированный размер делает часть правил недействующими, и это не лазейка, а свойство конструкции: правила написаны против человека, который наращивает размер после серии, а не против того, кто его не меняет никогда.
5. Разбивка по пятилеткам, где всё и ломается

Как его читать. Те же оси, что на предыдущем рисунке, но два набора столбцов: один это первая пятилетка (2016 по 2021), другой вторая (2021 по 2026).
Что нужно увидеть. Ранние столбцы смещены влево относительно поздних. В корзине −$10 000 выше ранний, а в корзинах от +$10 000 и правее выше поздний почти везде. Позднее распределение целиком сдвинуто в плюс.
Практический вывод. Это два разных бизнеса, а не один с шумом. Первая пятилетка даёт отрицательную медиану, вторая положительную, при том что правила счёта и цена подписки не менялись.
| Величина | 2016–2021 | 2021–2026 |
|---|---|---|
| Среднее чистое | +$253.08 | +$913.49 |
| Медиана чистого | −$214.23 | +$403.34 |
| Доля прибыльных симуляций | 46.45 % | 56.05 % |
| Выплаты | $4 155.81 | $5 108.40 |
| Стоимость счетов | $3 902.73 | $4 194.91 |
| Отношение выплат к затратам | 1.06 | 1.22 |
| Выходы по времени за путь | 196 | 0 |
В первой пятилетке медиана отрицательна, и большинство путей теряет деньги. Положительное среднее при отрицательной медиане это чистый скос: работает меньшинство путей, зашедших далеко вправо.
Объяснение автора про выходы по времени. В первом блоке в среднем 196 сделок за путь не доходили ни до цели, ни до стопа и закрывались в 16:00, во втором таких не было ни одной. Больше выходов по времени означает больше сделок с маленьким по модулю результатом, а если счёту дольше проходить или отваливаться, он платит больше подписок без увеличения шанса на выплату.
Объяснение верное, но автор останавливается ровно там, где начинается главное.
6. Что в работе не сходится
6.1 Барьер зафиксирован в пунктах, а индекс вырос в пять раз
Вот источник разницы между пятилетками, и он не назван в работе ни разу.
Цель и стоп заданы как 25 пунктов индекса. Nasdaq-100 за период вырос примерно с 4 800 до 24 000. Значит один и тот же «неизменный» барьер означал:
| Момент | Уровень индекса | 25 пунктов в процентах |
|---|---|---|
| 2016 | ≈ 4 800 | 0.52 % |
| 2026 | ≈ 24 000 | 0.10 % |
Это не одна стратегия на двух режимах рынка. Это две разные стратегии: в 2016 году она рисковала половиной процента индекса, в 2026 одной десятой. Отсюда и ноль выходов по времени во втором блоке: барьер в 0.1 % шестичасовая сессия задевает практически всегда, барьер в 0.52 % далеко не всегда, в 15.7 % случаев (196 из 1 246) не задевала.
Автор приписывает разницу между периодами рынку: "showing that value fluctuates between different market regimes". На деле колеблется не рынок, а сама тестируемая конструкция, потому что её единственный параметр не нормирован ни на цену, ни на волатильность. Для сравнения: барьерная модель Villahermosa сталкивается с тем же эффектом и проговаривает его явно, отмечая, что на окнах, где контракт торговался сильно дешевле, тот же долларовый брекет был широк относительно диапазона сессии, доля неразрешившихся сделок росла и проверка переставала быть информативной. То есть более ранняя и более аккуратная работа диагностирует ровно тот дефект, на котором здесь построен главный вывод о «разных режимах».
Практическое следствие: заявление «отношение выплат к затратам выросло с 1.06 до 1.22» нельзя читать как «продукт стал ценнее». Правильное чтение такое: чем уже барьер относительно дневного диапазона, тем выше ценность проп-обёртки, потому что сделки разрешаются быстрее и счёт платит меньше подписок на исход. Это, кстати, гораздо более полезный вывод, чем тот, который сделан в работе, и он проверяем напрямую.
6.2 Сумма пятилеток не равна полной выборке
| Величина | 2016–2021 | 2021–2026 | Сумма | Полная выборка | Расхождение |
|---|---|---|---|---|---|
| Выплаты | $4 155.81 | $5 108.40 | $9 264.21 | $9 368.50 | +$104.29 |
| Стоимость счетов | $3 902.73 | $4 194.91 | $8 097.64 | $7 878.30 | −$219.34 |
| Чистое | +$253.08 | +$913.49 | +$1 166.57 | +$1 490.19 | +$323.62 |
Полная десятилетняя выборка даёт результат на $323.62 лучше, чем сумма своих же половин. Это 21.7 % от заголовочного числа $1 490.
Строго говоря, это не обязано быть ошибкой: прогон двух блоков по отдельности перезапускает последовательность счетов на границе, и лишний старт с нуля законно меняет затраты. Но следствие содержательное и в работе не обсуждается ни словом. Заявление "the stronger full-sample result was driven by the second five-year period rather than by consistently strong outcomes across both subperiods" неверно в буквальном смысле: полный результат превышает обе пятилетки вместе взятые. Пятая часть заголовочной цифры создаётся непрерывностью прогона, то есть накоплением кредитов сброса и переносом состояния через границу, а не тем, что происходило на рынке.
6.3 Десять тысяч путей это одна история рынка
Автор ставит оговорку сам, а потом ею не пользуется. Стандартное отклонение чистого результата $3 926 при среднем $1 490 даёт отношение 0.38. По десяти тысячам путей стандартная ошибка среднего составила бы $39, то есть среднее отстоит от нуля на 38 стандартных ошибок и выглядит несокрушимо.
Но пути не независимы: все они лежат на одних и тех же 2 485 днях. Эффективный размер выборки по рыночному измерению равен единице, а не десяти тысячам. Настоящая неопределённость это неопределённость рыночного режима, и её масштаб работа сама же и показывает: разделив выборку пополам, она получает в одной половине отрицательную медиану и 46.45 % прибыльных путей, в другой положительную медиану и 56.05 %. Вот это и есть истинный разброс, а не $39.
6.4 Раздел про пять счетов не содержит информации
| Величина | Один счёт | Пять счетов | Отношение |
|---|---|---|---|
| Среднее, полная выборка | +$1 490.19 | +$7 450.95 | ровно ×5 |
| Медиана, полная выборка | +$1 036.83 | +$5 184.15 | ровно ×5 |
| Среднее, 2016–2021 | +$253.08 | +$1 265.40 | ровно ×5 |
| Медиана, 2016–2021 | −$214.23 | −$1 071.15 | ровно ×5 |
| Среднее, 2021–2026 | +$913.49 | +$4 567.45 | ровно ×5 |
| Медиана, 2021–2026 | +$403.34 | +$2 016.70 | ровно ×5 |
Все шесть величин это умножение на пять. Автор это признаёт: "all five accounts followed the same synchronized trading path, and therefore the results multiply P&L without altering the probability of profitability", и всё равно приводит числа в трёх местах текста. Для читателя, который просматривает работу по цифрам, создаётся впечатление большего масштаба, чем есть. Барьерная модель Villahermosa в аналогичном месте делает противоположное: моделирует счета против общего пула сессий с независимыми сторонами и показывает, что политика распределения между счетами меняет исход радикально (медиана 44.7 L против 2.82 L и вероятность убытка 2.0 % против 39.7 % в зависимости от того, берут ли счета одну сторону или разные).
6.5 Масштаб результата скромнее, чем звучит
$1 490 за десять лет это $149 в год. Относительно $7 878, прошедших через подписки, это 18.9 % за десятилетие, около 1.75 % годовых, при пятом процентиле −$3 995. Заголовок "suggesting each account is \$16 cheaper than its efficient market valuation" технически верен и при этом описывает предприятие, которое десять лет ежедневно требует внимания ради полутора процентов годовых на оборачиваемый капитал, с четырьмя шансами из десяти закончить в минусе.
6.6 Что не проверено в модели правил
Консистентность на фондированной стадии (ни один день не более 40 % прибыли за выплатной цикл) это единственное правило консистентности, которое здесь реально связывает, и работа не показывает, как оно смоделировано. При фиксированных ±$400 требование «лучший день не более 40 % прибыли» означает , то есть прибыль цикла минимум $1 000 и минимум три выигрышных дня. Это ощутимый барьер. Автор пишет, что нарушение консистентности «может привести к закрытию счёта», но у большинства операторов нарушение консистентности на фондированной стадии блокирует выплату, а не убивает счёт. Разница между этими двумя трактовками велика, а из текста неясно, какая запрограммирована. Код открыт, так что вопрос разрешим, и это стоит проверить перед тем, как опираться на цифры.
Что в работе сделано хорошо. Код выложен публично, фирма названа, правила выписаны полностью, есть программа-аудитор, проверяющая корректность начислений, отсутствие дублей продлений, сохранение кредитов сброса, потолки выплат и коэффициенты консистентности. Неоднозначные дни не угаданы, а исключены с указанием их доли.
7. Что из этого следует на практике
Ширина барьера относительно дневного диапазона это управляющий параметр ценности проп-счёта. Главное, что из работы можно забрать, хотя сам автор этого не формулирует. Чем быстрее сделка разрешается, тем меньше подписок оплачено на один исход. Проверяется напрямую: взять стоп в долях ATR и построить зависимость отношения выплат к затратам от этой доли.
Фиксированный размер позиции обнуляет часть правил. Дневной лимит убытка и правило консистентности на стадии оценки связывают тем слабее, чем жёстче зафиксирован размер. Обратная сторона: такая конструкция не может взять цель одной сделкой, и защиты от ползущего пола у неё нет.
Усечение убытка слева и есть весь источник «ценности». Никакого преимущества продукт не создаёт. Он переносит левый хвост на баланс оператора за фиксированную цену. Любое обсуждение недооценённости это обсуждение цены опциона, и сравнивать нужно с ценой того же опциона у других поставщиков, а не с нулём.
Нормировать барьеры на цену или волатильность всегда. Эта работа готовый учебный пример того, как ненормированный барьер за десять лет превращается в другую стратегию и выдаёт себя за смену рыночного режима.
8. Тестируемые идеи
| № | Идея | Тип | Где считать |
|---|---|---|---|
| 1 | Построить зависимость отношения «выплаты / стоимость счетов» от ширины барьера в долях ATR; гипотеза в том, что при сужении она растёт монотонно | изменение конструкции | Python |
| 2 | Выразить все барьеры проп-правил в долях дневного диапазона инструмента, а не в пунктах и не в валюте; пересчитать историю с плавающим барьером | аудит | бэктестер |
| 3 | Измерить долю сделок, не разрешившихся барьером к закрытию сессии, по годам: рост этой доли признак того, что барьер уехал относительно волатильности | метрика приёмки | Python |
| 4 | Считать экономический результат проп-счёта строго как «выплаты минус подписки», вынося комиссии в симулированный баланс отдельной строкой | метрика приёмки | любая |
| 5 | Проверять, что сумма результатов по подпериодам сходится с полной выборкой: расхождение указывает на перенос состояния через границу | аудит | Python |
| 6 | Не отчитываться средним и стандартной ошибкой по рандомизированным путям на одной истории: эффективный размер выборки по рынку равен единице. Вместо этого делить историю и показывать разброс между блоками | метрика приёмки | Python |
| 7 | Проверить, чем является нарушение консистентности на фондированной стадии, блокировкой выплаты или смертью счёта: цена вопроса велика, код работы открыт | аудит | любая |
| 8 | Посчитать минимальную прибыль цикла, при которой правило «лучший день не более 40 % прибыли» выполнимо при фиксированном размере: получается цель не меньше 2.5 дневных прибылей и минимум три выигрышных дня | диагностика | Python |
| 9 | Построить распределение числа оплаченных подписок на одну выплату: это и есть настоящая цена, а не заявленная месячная | метрика приёмки | Python |
| 10 | Не приводить многосчётные результаты умножением на число счетов; моделировать счета против общего пула сессий и проверять зависимость от политики распределения сторон | аудит | Python |