Блог им. bsk

Глаза обманывают или почему надо все тестировать

Год назад пришел ко мне клиент и говорит: «Хочу робота для Quik».
Объяснил стратегии — очень простую:
Берем фьючерс на доллар-рубль Si, таймфрейм 30 или 60 минут, строим машку.
Ниже нее еще одну на 1-2% ниже, Выше -соответсвенно, т.е. получаем канал из трех машек.
От верхней шортим, от нижней лонгуем.
Система реверсная — переворотная.
Я клиента спрашиваю — стопы нужны?
Он — зачем, все равно все возвращается к средней, а стопы постоянно будут выбивать.
Я спрашиваю, надо ли тестировать систему?
Он — зачем я и так глазами вижу, что система прибыльная и будет колбасить мне бабло, т.к. очень много прибыльных сделок.

Я все таки уговорил его посидеть 30 минут и подождать, накидал в wealth-lab код и показал ему результаты:

Глаза обманывают или почему надо все тестировать

66% прибыльных сделок, т.е. 2 из 3-х  -  круто, но система, то сливает:

Глаза обманывают или почему надо все тестировать

Я говорю клиенту, что во флете он зарабатывает часто и по чуть-чуть, а в трендах очень сильно сливает.
Давайте перевернем систему:

Глаза обманывают или почему надо все тестировать
Всего 33% прибыльных сделок, но система зарабатывает:

Глаза обманывают или почему надо все тестировать

В итоге клиент вообще отказался от робота, т.к. его система сливает,
а наоборот он не готов был психологически торговать, при 1-й прибыльной сделке из 3-х.

P.S. Прежде чем торговать на реал, нужно тестировать стратегию в специализированном ПО (wealth-lab, amibroker и т.д.)
      или если не умеете програмить, то на бумаге или в Excel.

P.S.S. Код:
{#OptVar1 20;8;30;2}
{#OptVar2 2;1;20;1}
var Bar,MA,MAD,MAU:integer;
MA:=EMASeries(#Close,#OptVar1);
MAD:=CreateSeries;
MAU:=CreateSeries;
for Bar := 100 to BarCount — 1 do begin
@MAD[bar]:=@MA[bar]*(1-#OptVar2/1000);
@MAU[bar]:=@MA[bar]*(1+#OptVar2/1000);
if LastShortPositionActive then
if CoverAtStop( Bar, @MAU[bar-1],LastPosition, 'Sell' ) then
BuyAtStop(Bar, @MAU[bar-1], 'Short' );
if LastLongPositionActive then
if SellAtStop (Bar, @MAD[bar-1],LastPosition,'Cover' ) then
ShortAtStop (Bar, @MAD[bar-1],'Buy' );
if not lastpositionactive then begin
ShortAtStop(Bar, @MAD[bar-1], 'Short1' );
BuyAtStop (Bar, @MAU[bar-1],'Buy1' );
end;
end;
PlotSeries( MAD, 0, #Red, #Thick );
PlotSeries( MA, 0, #Blue, #Thick );
PlotSeries( MAU, 0, #Green, #Thick ); 
1.3К | ★26
58 комментариев
Лучше бы сделал робота, добавил бы ликвидности, да и что пилить))
Терентьев Владимир, Si — самый трендовый инструмент на рашке, а он хотел торговать контр-тренд. Зачем было обманывать человека? Я за своей кармой пытаюсь следить.
avatar
robot_bsk, сбер самый трендовый из ликвидных, если уж на то пошло…
Ну если «карма» имеется ввиду консультанта по роботостроению, то да, наверное, так правильно. Но если с точки зрения спекулянта, то должно быть плевать, кто там выигрывает, а кто проигрывает.
Терентьев Владимир, С этим я не соглашусь. На Si практически любая трендовая стратегия работает, а на Сбере нет. На сбере Макд хорошо работает — а это контр-тренд
avatar
robot_bsk, еще вопрос таймфрема, но я думаю, смысла спорить нет)) у каждого уже есть свое мнение))
Терентьев Владимир, Согласен, а на каком таймфрейме сбер трендовый, если не секрет?
avatar
robot_bsk, считайте, ничего личного :)
robot_bsk, приветствую, на мыло скинь пожалуйста текст для WelthLab mike.usachev@gmail.com
Заранее спасибо.
Усачёв Михаил, Отправил
avatar
«Всего 33% прибыльных сделок, но система зарабатывает:»

так это на истории зарабатывает, а на реале сливать скорее всего будет. 99%
avatar
Cokol23, Лучше торговать то, что на истории зарабатывало и при max drawdown отключить и сказать себе, что рынок поменялся. Чем торговать то, что проигрывало и при проигрыше в реале понять что ты баран
avatar
клиент правильно все говорит, стопы не нужны да и робота тестить это только время зря тратить
avatar
SHCHUTUSHCHA, Абсолютно согласен :-))). Также считают 95%
avatar
А как это МАшка на 1-2% ниже, просто с другим периодом что ли? Или сами считаете среднюю цену и отбрасываете 1-2%?
avatar
home30, Строите Машку в Quik, во вкладке «Дополнительно», ставите галку «Процентное изменение» и вписываете в поле 98 или 102 — это и будут 2 машки на 2 процента ниже и выше средней.
avatar
robot_bsk, похоже на Envelope (конверты).
avatar
Serg, Да получиться то же самое, только что проверил.
avatar
robot_bsk, ok
avatar
А штука интерестная… Было бы прикольно глянуть чтонибудь такое в хеджированием по виксу. Или контр тренд исклучительно в afterhours в направлении закрытия.
avatar
тестить тоже по разному можно, если стратегия среднесрочной торговли и устойчивая на длительном интервале, то и запускать на реал можно после теста, есть конечно вероятность слива, но заработка то выше гораздо.Сам вот несколько лет искал стратегию, в итоге не являясь каким то супер пупер программистом нашёл довольно простую для программирования закономерность на фРТС, которая зарабатывает стабильно каждый год, написал сам в ТСлабе запустил в феврале, вот уже второй фьючерс в плюс торгует, так что далеко не всегда бэктестинг — чушь)
Asket_m_pro, все правильно делаете, сначала тест, а потом торговля. Выборку необходимо брать с 2008 года или раньше, чтобы было жесткое падение, бурные рост в 2009-10 и флет 12 и 13 годах.
avatar
robot_bsk, так и тестирую, даже с 2006 у меня данные по пятиминуткам, каждый год базовая доходность без учёта плеча выходит от 20 до 50%, и просадка около 10%, при проскальзывании в 30пт забивал, на реале проскальзывание пока даже меньше выходит, но даже при 60пт доходность сохраняется по тестам, причем самые лучшие года для заработка — с движением но не сильно крутым, как 2011,2012
совсем другое дело — краткосрочка, тут закономерности меняются быстрее чем их можно отследить запрогить и протестировать, поэтому проще самому их выторговывать, но для этого нужно быть квалифицированным трейдером
Asket_m_pro, У меня все стратегии на 30 минутных барах. По каждой стратегии в среднем 1-2 сделки в день.
avatar
robot_bsk, помимо робота счас торговать на минутке учусь, есть возможности, но тяжело
Asket_m_pro, Я руками не торгую, т.к. начинаю тильтовать. Только роботы, к тому же есть положительный опыт — в 2011 году 12 место по доходу в % на ЛЧИ investor.rts.ru/ru/statistics/2011/default.aspx
avatar
robot_bsk, а у меня наконец то скальпинг начал удаваться, но я себя счас строго лимитирующие по объёмам и времени в торговле, максимум адекватно беспрерывно анализировать рынок 2 часа пока выходит… Интересно конечно как на 30минутках выходит 2 сделки в день, у меня на 5 минутки в среднем меньше выходит)))
Asket_m_pro, 1-2, т.е. 1,5 в день. Робот может 2-3 дня позицию держать, а может 2-3 сделки в день сделать. Не от таймфрейма частота сделок зависит, а от временного окна, который анализируется. Например на 5 минутке можно 2000 барную машку построить и будет мало сделок :-)
avatar
robot_bsk, ну у меня где то так же значит)
доброе.) а можно код? я только начинаю с роботами разбираться, как пример, так сказать. )
avatar
Андрэ, Посмотри в личку
avatar
тестирование ни о чем не говорит… Один и тот же алгоритм в разное время даёт разные результаты.
avatar
Bock, Согласен, но можно с какой-то доверительной вероятностью считать, что то что работало раньше, будет работать и в будущем. Нужно делать форвардное тестирование и запускать несколько стратегий, чтобы при флете флетовые зарабатывали больше трендовых, а при трендах наоборот.
avatar
robot_bsk, на мыло скиньте пожалуйста код tim@starnet.ru Заранее спасибо.
Сергей Грошев, В самом топике код в конце
avatar
robot_bsk, на мыло скиньте пожалуйста код redvvard@gmail.com
Заранее спасибо.
Отправил
avatar
robot_bsk, спасибо б ольшое!
avatar
Может стоит «глазами смотреть» в другие строки?!

i63.fastpic.ru/big/2014/0602/76/ce03ae27a38be300451648ae2fa4e576.png
Константин, Все верно, но обычный человек, смотрит на количество прибыльных сделок и не знает, что такое Профит фактор, макс дравдаун и т.д. :-)))
avatar
Спасибо! Полезный пост!
Никки, Спасибо :-)
avatar
ахахаха они же все равно возвращаются))) блин… ладно промолчу)
avatar
Приветствую, коллега:) Как к тслаб относитесь? я просто с велзлабом еще не имел дело, всего год на рынке)
avatar
Иванов Василий, ТСлаб — хорошее ПО для тех кто не умеет программировать.
avatar
robot_bsk, а где лучше тестировать. в какой проге? в тслабе есть апи, можно писать на си шарпе, не обязательно кубиками пользоваться)
avatar
Иванов Василий, я в тслабе и тестирую и торгует у меня счас робот, бывают проблемы коннекта с квиком, когда буду запускать нормальный объем на робота, надо задумываться о плазе… но в целом тс лаб весьма неплох, robot_bsk рекомендует wealth-lab, в целом тс-лаб разрабатывался как его русскоязычный аналог
Asket_m_pro, Я не рекомендовал именно wealth-lab, а рекомендовал тестировать стратегии, прежде чем в реале торговать. Когда я решаю, что стратегию можно торговать то програмлю ее на Qpile, т.к. дополнительные коннекты с Quik по закону подлости в самые нужные моменты отваливаются. Про LUA знаю, но мне Qpile проще.
avatar
Asket_m_pro, вы используете коннектор для квика? прямой доступ разве не лучше?
avatar
Иванов Василий, конечно лучше, но алгоритм в состоянии теста, торгует небольшое количество контрактов, соответственно прямой доступ окупаться не будет, как тест закончу, буду думать о прямом доступе
Иванов Василий, В любой :-). ТСлаб, вев-лаб, амиброкер, омега, метасток, метатрейдер и т.д. К чему душа лежит, и какой язык Вам проще освоить там и надо.
avatar
robot_bsk, в ТСе неплохая APIшка и для программёров, всё необходимое есть, единственное — для работы со стаканом очень мало возможностей, но насколько я имею представление чтоб роботов для стакана делать и wealth не подходит, нужен stocksharp
Asket_m_pro, Стратегии со стаканом я не делал по множеству причин. Только OHLCV.
avatar
robot_bsk, хотел Вас в друзья добавить, но рейтинг не позволяет, в любом случае пишите статьи, будем ждать и читать)
avatar
интересная тема, приятно было почитать, спасибо
avatar

Читайте на SMART-LAB:
Фото
Глобальный евро по-тихому: что может означать расширение EUREP репо
Индекс доллара DXY сегодня сделал неуверенную попытку пробить 97 пунктов, но быстро свернул планы. Пока это выглядит как пауза перед событиями:...
Фото
Россети Волга. Отчет об исполнении инвестпрограммы за Q4 2025г. Считаем дивидендную базу по РСБУ!
Компания Россети Волга опубликовала отчет об исполнении инвестпрограммы за Q4 2025г., где показаны финансовые показатели компании по РСБУ в...
🖥 Яндекс выбирает дивиденды
IT-компания отчиталась за 4 квартал и прошлый год   Яндекс (YDEX) ➡️ Инфо и показатели     Результаты за 4 квартал — выручка: ₽436...
Фото
Россети Урал. Отчет об исполнении инвестпрограммы за Q4 2025г. Считаем дивиденды!
Компания Россети Урал опубликовала отчет об исполнении инвестпрограммы за Q4 2025г., где показаны финансовые показатели компании по РСБУ в...

теги блога robot_bsk

....все тэги



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