1. Всё надо тестировать на длинной истории, 10+ лет. Тесты на паре лет и меньше сразу в мусорку, если у тикеров нет длинной истории то удлиняем в прошлое похожими по возможности, если лень заморачиваться то сразу нах с рынка.
2. Системы со средней сделкой меньше полпроцента не стоит даже разрабатывать. Все недооценивают проскальзывания. Даже маленькие изменения в рынке могут слишком сильно изменить расклад у таких систем. Просто попробуйте увеличить комисс или убрать часть прибыльных сделок и увидите наглядно что будет с такими системами.
3. Мелкие таймфреймы почти бесполезны. Принимая во внимание первые 2 пункта. Получасовики неплохой выбор. А у дневок часто свои нюансы и я бы их избегал.
4. Стопы и тейкпрофиты почти бесполезны, выход по обратному сигналу обычно.
5. Открытия, Лои и Хаи у баров почти бесполезны, в отдельных случаях можно только клоузы использовать.
6. Всегда тестируем всё дополнительно на других тикерах (лучше если это вообще другой класс активов), для расширения кругозора как минимум. Иллюзии про трендовую торговлю быстро пропадут, также как и многие другие.
7. Тестируем много. Вообще в целом мы тестируем не чтобы найти грааль а чтобы исследовать рынок, и потом уже из кирпичиков этих исследований что-то построить, поэтому хорошо бы документировать и классифицировать свои тесты чтобы с годами не тестировать тоже самое.
8. Если видим что просадка у страты 10-20% то в уме держим что для большинства активов реальная просадка меньше 50% не бывает если адекватно тестить и соответственно остальные метрики в уме приводим к 50%. 40-50% просадка не плохо в основном, а выше уже плохо.
9. Если нет полсотни страт то не стоит начинать торговлю. Вообще размножить страты намного легче чем сделать новые а по диверсификации размноженные почти не уступают новым.
10. Не удаляем неудачные страты. Позже к ним можно приделать новые идеи или протестить на новых тикерах.
Я больше скажу — таймфреймы вообще бесполезны тики наше все!
В целом — личный опыт это хорошо, но написана конечно полная ерунда.
тестировал в беттинге матчи за 15 лет по разным странам и континентам на 100.000 событий — ничего там нет...
а как оказалося, впоследствии, надо было знать всего две цифры… средний коэффициент по конторам и максимальный по конкретной.....
в трейдинге тоже самое — вход при положительном математическом ожидании...
опять же две цифры….
1. Принимается
2. Почему? Работаем лимитными ордерами — и никакого проскальзывания
3. Ну да, ну да ))) Сразу исключаем 90+ профитных систем )))
4. Принимается (кстати, не все это понимают)
5. Open бесполезен, High и Low важны для расчета, как и Close (но это только при работе лимитными ордерами)
6. Тестируем на ВСЕХ тикерах
7. Тавтология
8. Зависит от принятого ММ. При работе плоским лотом 50% не фатально, при активном управлении — ну, такое… (страшно)
9. Неправильно. Одной хорошей страты достаточно (IMHO)
10. Неправильно. Все неработающие страты фтоппку (IMHO)
С уважением
это кстати не алго, это такое развлечение
т.к лонг и шорт не симметричны, то делаю так...
делаю настройку в лонг, а затем включаю реверс и смотрю шорт — как минимум должен не сливать...
для шорта обратное… настраиваю шорт, а затем смотрею как эти настройки торгуют в лонг…
2. Нет.
3. Нет.
4. Частично.
5. Это вообще бессмысленное утверждение.
6. Частично.
7. Да.
8. Частично.
9. Частично.
10. Может быть.
1. ему из окопа виднее.
2. собственно из-за этого есчо написать может и не получится.
3. не попади под дискредитацию.
11. Тестируем методом WFT.
12. Начинаем торговлю только тем алгоритмом, который дал приемлемую эквити на 30 прогонах WFT, выбранных случайным* образом.
* случайным — означает случайные даты начала и конца периодов «обучения» и «торговли»
причем по основной сессии цена закрытия формируется на постмаркете… на аукционе закрытия… т.е по цене закрытия не купишь...
а цена открытия тоже спорна, т.к по цене открытия может пройти пара сделок а потом цена улетит на 2-3%…
Есть ордер MOC (Market On Close)
В системе MOC (Market On Close) ордера исполняются в конце торговой сессии по рыночной цене закрытия. Однако, не все ордера MOC гарантированно исполняются. Фактическое исполнение ордера зависит от ликвидности рынка, доступности контрагентов и других факторов.
Если ордер MOC не может быть исполнен полностью или частично, он может остаться невыполненным или быть отклонен. Это может произойти, например, если нет достаточного количества контрагентов, готовых совершить сделку по заданной цене, или если цена исполнения ордера значительно отличается от текущей рыночной цены.
Точные условия исполнения ордеров MOC могут различаться в зависимости от биржи и торговых правил, поэтому рекомендуется обратиться к спецификации торговли на конкретной бирже или к своему брокеру для получения подробной информации о порядке исполнения ордеров MOC.
www.nyse.com/publicdocs/nyse/markets/nyse/NYSE_Opening_and_Closing_Auctions_Fact_Sheet.pdf
Хотя вот читаю NSDQ и этот пункт смущает, да, возможно там и нет гарантии. 16. Does Nasdaq guarantee market-on-close (MOC) orders in the Closing Cross? No, the Opening and Closing Crosses provide unparalleled transparency which encourages market participants to provide necessary liquidity to offset any MOC imbalance.
Кстати сейчас понял что можно как тест на опыт в рынке использовать. Со сколькими пунктами согласен столько лет в алго примерно. За каждый «не согласен» минус 2 года.
2. Размер каждой сделки индивидуален и зависит от текущих параметров торгуемого инструмента. Ну если про абсолютные числа… Вы не можете взять 0,3% — вы динозавр...
3. Для серьезного алго есть только один вариант данных — Order Book. И я не про HFT. На уровне чайника можно играться с тиками. Все собирается, фильтруется и анализируется на уровне Raw Data. Не обладая информацией о сделках вы вообще ничего не знаете о рынке. Даже если вы делате одну сделку в месяц. Какие таймфреймы, вы о чем?
4. Стопы и профиты это вообще про торговлю руками.
5. см. п.3
6. Ерунда. Стратегии которые основаны на только на исторических данных одного инструмента (пусть это и high-res data) вообще мало жизнеспособны. Тестировать надо именно стратегию а не дрочить рандомные временные ряды.
7. Согласен
8. Это вообще дичь. Какие 50%? А если серьезно это вопрос оптимизации, основанной на основных свойствах финансового инструмента и стратегии. Правильные стратегии имеют около 100% профитных сделок, вопрос в сайзах и частоте сделок.
9. Количество стратегий зависит от емкости каждой из них, вашего капитала и издержек. Написать стратегию гоняющую пару мелких лотов на ликвидном инструменте несложно. Только какой толк от нее одной если издержки превысят заработок?
10. Тут хз что сказать) Наверное...)))
и откуда ты его возьмешь?
1 на америке децентрализованная торговля… в том числе внутри брокера...
там даже привычного стакана нет… у мя 3 брокера на америку и спред различается втрое...
2 в россии ликвидности на 5 копеек… и заморачиваться ордер буком смысла нет…
BeyG, я лично торгую алго с 2010г… резалт в блогах…
причем часть ботов на одной скользящей средней которая sma ...
у алго есть хороший аналог… — предсказание прогноза погоды… достаточно иметь градусник, барометр, часы и направление ветра и можно предсказывать погоду достаточно точно без всякого ордер бука…
но это тоже сложно… я предпочитаю уехать в такое место где погода меняется редко но сильно… т.е выбираю удобную бумагу для торговли…
например тот же сипи мне неудобен… а вот производные от него инструменты крайне хороши для торговли...
Вы это делаете при помощи бота?
ну как пример просто посмотри vteb… VTEB — Vanguard Tax-Exempt Bond Index Fund Stock Price and Quote (finviz.com)
он торгуется крайне легко и просто… но ходит не сильно…
кстати глянь его недельки...
там перевернутая гип...
счас кстати прекрасный момент входа в американские етф на облигации… везде перевернутые гип на недельках… а дивы по ним 5-6%…
При незнании взаимосвязи между прошлым и будущем как раз тестировать надо на реальных данных, а на рандомных проверять, что там как раз не работает
smart-lab.ru/blog/623379.php
Полностью согласен со сказанным, но прочитал пост по ссылке и, на мой взгляд, есть способ получить рандомные данные лучше.
А именно — перемешивание (перетасовка) выборки. Т.е. то, что постоянно делают картежники. Что характерно, на распределение это никак не влияет.
В языке R это выглядит очень элегантно.
x<-{некий датафрейм с рыночными данными в виде приращений)
random_x<-sample(x)
Так в этом весь и смысл. Если стратегия реально использует неэффективности рынка, то при их отсутствии должна переходить в пассивный режим, т.е. вообще не совершать сделки (ну это в идеальном случае...).
А в ссылке и дан алгоритм случайного перемешивания любых свечных данных. Можно перемешивать и минутки, а потом на них строить более низкочастотные таймфреймы, тоже независимые и случайные.
Есть один нюанс: Если буквально понимать как «последовательность случайных чисел, лежащих в интервале от 1 до N, длины N», то это не то же самое, что перемешанная последовательность натуральных чисел от 1 до N.
Пример:
Последовательность натуральных чисел от 1 до 5 (например номера свечек в исходной последовательности):
12345
Перемешанная последовательность:
43512
Свечки те же, распределение идентично.
Последовательность случайных целых чисел из интервала от 1 до 5 длиной 5.
11255
Если далее выбирать соответствующие свечки с возвратом, как у Вас, выборка и распределение будут другие.
Да и речь идёт о больших N.
По Вашему алгоритму есть маленькая (очень маленькая) но не равная нулю вероятность, что все N раз будет выбрана одна и та же свечка. И какое у Вас получится распределение?
Ну это да. Меня извиняет тот факт, что ни свечки ни бары ни чего-то подобного в жизни никогда не использовал и не представляю как называются свечки-приращения. Кстати, специально проверил в книге вроде бы умных людей, нет там таких понятий (бар есть один раз, но в значении «боксплот с усами»)
А на коротких промежутках даже один месяц отличается от другого. В том числе потому, что есть другие хитрорылые с ботами.
Особенно это на нашем рынке видно. До 2008 творилось такое, что потом никогда не происходило. Вероятность повторения есть, но никакой бот об этом автоматически не узнает.
сейчас хотел посмотреть этот успех в блоге а там всё удалено.
п. 1 — дело вкуса, но не личного, а трейдерского уклона. Мое мнение — 10 лет излишне, рынок слишком изменился за это время. Центр внимания лучше перенести на частичную внутреннюю оптимизацию бота в период клиринга (но проще это делать ночью после закрытия торгов).
п. 2 — согласен
п. 3 — что такое мелкие? Четче излагай мысль и массы тебя поймут(перефразировал Мао))) ) Меньше 5-ти минуток точно ничего не дают, там рыбы нет без HFT.
п. 4 — в классическом смысле стопы и тейки неоптимальное решение (особенно стопы) — да, «выход по обратному сигналу» — для меня весьма спорный совет и также далеко не оптимальный
п. 5 — заблуждение, но такая позиция достаточно много говорит о сути используемой ТС. Хреначить скользяшки по всему набору OHLC конечно же смысла нет )))
п. 6 — полностью согласен. Использую только такие идеи, которые работают на разных инструментах. Надо уходить от оптимизируемых параметров (либо минимизировать их до одного, максимум двух с динамической корректировкой в процессе работы).
п. 7 — и п. 10 — про документацию, классификацию и удаление старых разработок — согласен. Обидно только, что понимание этого приходит также, как и желание пить боржоми ))) Но лучше позже, чем никогда
п. 8 — наверное так, зависит от используемой ТС
п. 9 — опять же дело вкуса, пул ботов — вещь хорошая, но не обязательная
Это как правила дорожного движения. Можно их нарушать и пару лет ездить без ДТП, но рано или поздно в больнице, тюрьме или на кладбище к человеку придет понимание, что был неправ.