Блог им. Makeev

Тест системы Монетка. Грааль опять ускользнул.

Тест системы Монетка. Грааль опять ускользнул.


Несколько раз обсуждалась система монетка, предложенная  уважаемым «Алексей».  Здесь например
smart-lab.ru/blog/181103.php
 Система  входит случайно на открытии — направление выбираем подбрасыванием монетки. Закрываемся на закрытии первого убыточного  дня.
Я прогнал данную систему на фьючерсе RTS  за 10 лет — 10 контрактов. Получилось вобщем-то то, что и должно было получиться, а именно — какой вход, такие и результаты. Здесь результаты на дневках, на часовиках в приципе то же самое. Так же гонял на корзине Ри и Си — аналогично  сливает.
На картинках эквити за 10  прогонов, а также общая диаграмма результатов за 50 прогонов. 
 Тест системы Монетка. Грааль опять ускользнул.

Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.
Тест системы Монетка. Грааль опять ускользнул.

Это диаграмка доходности за 50 прогонов:
Тест системы Монетка. Грааль опять ускользнул. 
Кому интересно код системки:

(Не пугайтесь это паскаль для древней WealthLab. Да я консерватор :) Оно же работает, зачем его менять!   )

var p: integer;
var enter_: integer;
var bar: integer;
for Bar := 20 to BarCount — 3 do
begin
// случайно выбираем направление входа переменная enter_
enter_ := randomint(2);
if not LastPositionActive then //Open positions 
// вход long
begin
if enter_ = 1 then
begin
BuyAtlimit( Bar + 1,priceopen(Bar+1), 'long' );
end;
end;
if not LastPositionActive then
// вход short
begin
if enter_ = 0 then
begin
ShortAtlimit( Bar + 1, priceopen(Bar+1), 'short' );
end;
end;
if LastPositionActive then // Close positions 
begin
p := LastPosition;
if PositionLong( p ) then
begin
if priceopen(Bar+1) > priceclose( Bar+1) then SellAtClose( Bar + 1, p, 'exit' );
end;
if PositionShort( p ) then
begin
if priceopen(Bar+1)< priceclose( Bar+1) then CoverAtclose( Bar + 1, p, 'exit' );
end;
end;
end;


В общем случайный подход не грааль.


Но! И здесь те, кто дотерпел  до конца получат маленький бонус. Данный тест и системка, у меня, скажем так, побочный продукт производства.
Если ваша система имеет некие праметры входов, выходов и Вы видите, что качественный результат колеблется в определенном промежутке этих параметров, у вас есть два пути — оптимизация (подгон под историю ) или воспользоваться этой идеей.
Как, думаю Вы догадались. Проверено — это работает очень хорошо.
 
★5
33 комментария
А что значит 50 прогонов?
avatar
Диаграмма отражает результаты 50 тестов. Они всегда разные, т.к вход случаен.
не лень вам было это изучать… чудес не бывает ))
avatar
Oleg163, тестить систему без системную — забавно, но только как тренировку по владению велсом :)
avatar
megatrader, здесь Вы не правы. Читайте пост. Очень полезная идея здесь есть
Не лень! Чудеса в деталях.
Интересно, а человек далекий от программирования(т.е. я) сможет проверить «граалик»
romuldavid, посмотрите TSLAB там вроде как программирование и не нужно все из из готовых блоков собирается.
TsLab RobotLab
позволяют нарисовать и оттестировать быстро стратегию. А если понравилось, то даже запустить торговать.
«Я прогнал данную систему на фьючерсе RTS за 10 лет»

Это каким это образом, если фьючерс на индекс РТС был введен в августе 2005 года.
avatar
Slepoy, данные с 3.08.2005. Это Видно на каждой диаграмме. Если для Вас это принципиально — хорошо исследуемый период 8 лет 298 дней, 6 часов, и 48 минут.
рынки достаточно эффективны получается
avatar
Лукьяненко Алексей, да, на большом количестве тестов такой системки, суммарная доходность будет равна 0.
Лучше-кидать монетки в фонтан.А на рынках надо зарабатывать монетки
<Буквально недавно с товарищем обсуждали идею случайных входов, спасибо за исследование))
avatar
Тут надо подкручивать что-то — такое ощущение что не учтено.
Но бесспорно — если над входом поработать результат будет лучше.
Нечаев Константин, а как над входом поработать он случайный. Стопы проблемы не решают, проверял.
Пожалуйста. На очень трендовых инструментах это работает. Например на магните за последние 3 года неплохо получалось сколько я ее не гонял.
Макеев Евгений, Ну смотреть месяц, день месяца и дни недели — статистику инструмента на базе этого лонг или шорт решаю, а потом вход со стопом зависящим от волатильности.
Мне думается — это повышает вероятность.
Нечаев Константин, нет ну это уже совсем другая история. Здесь проверялся именно случайный подход.
Макеев Евгений, Волатильность для стопа важна и стратегия выхода — может быть выходить как прибыли в 3 раза больше стопа.
Может это даст лучший эффект.
про какую идею речь в конце?
avatar
finstrateg, хоть один человек задал правильный вопрос. Если Вам действительно интересно пишите, скину в личку как приз для самого любопытного и первого. Остальным — думать.
Я кстати догадываюсь, в чем гвоздь и как можно сделать прибыльной систему с лучайными входами… Можно мне бонус, для проверки)
avatar
1. по системе «Монетка» всеже лучше торговать 2 инструмента это на 1 лот 6 лотов си вместе, не просто реверс скажем шорт лонг…
2. у системы есть стоп 200 и 2000 п. если на момент клиринга 13:59; 18:44 и 23:30 имеем размер стопа то выходим из позиции
3. прибыльные сделки переносятся через день но не через неделю месяц (в данном случае стоп двигается вверх на уровень открытия)
4. вход строго 10:05.
если эти параметры соблюдены то я снимаю шляпу перед вашим трудом.
ЗЫ: но есть один параметр который вы не учтёте-это человеческий фактор, есть разные люди и подкидывание монетки для одних это минус для других плюс для третьих нейтрально.
ЗЫЫ и ещё здесь основная идея которую никто не поймёт «обрезай убытки дай прибыли течь»…
avatar
Алексей, Не надо считать — что никто не поймет — важно правильно применить ее)
Алексей, нет эти правила я не учитывал. Система трестировалась на дневках от туда такие подробности не вытащить. Но дайте время я проверю. Мне самому очень интересно. Сама идея простая и очень красивая. Поясните пожалуйста ваши правила:
1. Система входит в ри и си случайно в оба инструмента, или наоборот в ри случайно а в си строго наоборот?
2. Не понял насчет разных стопов, как мы можем иметь стоп 2000 если ограничены столпом 200? Приведите стопы для си.
3. Если вчерашний день прибыльный мы должны двигать стоп или нет, куда? В конце недели мы закрываемся строго или двигаем стоп?
4. Вы на стаиваете на входе в 10-05, у меня архивы в 10 минутках, что если вход будет в 10-10, на большой выборке это вряд ли что то изменит?
Макеев Евгений, дневки… это крута.
1. случайно и там и там, как монетка ляжет.
2. стоп ри 2000 си 200 пунктов
3. если вчерашний день закрывается в плюсе, то система переносит позу на след. день (если это не конец недели, месяца, контракта). В конце недели, месяца строго закрываем все, чтоб зафиксировать динамику.
4. да пойдёт и 10:10, думаю не сильно поменяет ситуацию, но возможно в будущем избежит утреннего гэпа.
avatar
Алексей, OK проверю, напишу.
Алексей, смотрите результаты по этим правилам
smart-lab.ru/blog/186918.php
сольетесь 100%
finstrateg, я не раскидываюсь версиями) я их коллекционирую)
avatar
В чем бонус? Портфель стратегий с набором параметров?
avatar

теги блога Евгений Макеев

....все тэги



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