Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Вопросы по тестеру |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 След. |
Автор |
Сообщение |
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
У меня Sell и Cover 2 раза встречаются в коде (несколько условий для стопа): может их объединить?
Завтра отпишусь что получилось. |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Nero Wolfe
Зарегистрирован: 17.03.2010
Сообщения: 174
|
В коде стоят вот такие настройки:
Код: |
SetOption( "InitialEquity", 20000 );
SetOption( "AllowPositionShrinking", True );
SetOption( "FuturesMode", True );
SetPositionSize( 4, 4 ); - поставил для проверки
|
В Information
Margin Deposit = 8000 для РИ
Запускаю тестер и он сразу с первых сделок начинает открывать по 4 контракта. Вроде денег хватает только на 2, почему так? |
_________________ Если вас грызет совесть, выбейте ей зубы, и пусть она вас нежно обсасывает. |
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
1. Похоже SetOption( "FuturesMode", True ); не работает. Если в настройках галка Futures Mode не стоит, то несмотря на наличие в коде SetOption( "FuturesMode", True );все равно в отчете пишет Shares, а если галку поставить, то Contracts
2. Добавь еще строку
SetOption("AccountMargin", 100);
Маржа распространяется и на фьючи, а у тебя видимо в настройках стоит не 100. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Nero Wolfe
Зарегистрирован: 17.03.2010
Сообщения: 174
|
Спасибо.
SetOption("AccountMargin", 100);
такая строка у меня есть в коде, просто думал она не влияет на ситуацию, поэтому не стал ее озвучивать. Вообщем, лучше переключать FuturesMode галкой |
_________________ Если вас грызет совесть, выбейте ей зубы, и пусть она вас нежно обсасывает. |
|
Посмотреть профиль Отправить личное сообщение |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
Протестировал систему, прооптимизировал параметры, ТФ 5 минут, но есть нюанс - система построена на основе peak и trough.
Проблемы этих команд с исчезновением сигналов я исключил.
Боюсь вот только, что может появиться сигнал в прошлом, таким образом,
что войдя в позу, я уже не смогу сразу выйти по нужной цене.
Но это, видимо только торговлей в реале получится проверить - потому что бар-риплей мне не помогает (робот не пишет в таком режиме заявки в три-файл).
Риск на сделку установил 1% от капитала.
Настораживает ещё такой момент, что сделок внутри года с отрицательным результатом охрененно много (см. поле Profit).
2010 г = максимальная убыточная сделка -11%, просадка -7%,
2009 = MTD -21%, MDD -6%
2008 = MTD -36%, MDD -6%
2007 = MTD -11%, MDD -6%
2006 = MTD -54%, MDD -5.2% (вторая убыточная сделка по размеру = -17%)
2005 = MTD -9%, MDD -5.7%
Как такое может быть??? Ведь любая убыточная сделка сама по себе уже делает вклад в подсчет просадки капитала, т.е. изначально не может быть больше максимальной просадки капитала за период.
Прогнал 30 последних дней текущего фьючерса - MTD получил меньше MDD. Сейчас остаётся только каждую сделку, которая выше MDD проверять - почему возникла и не влияет на Equity. |
|
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Tim
Зарегистрирован: 12.02.2010
Сообщения: 245
Откуда: Дмитров
|
Всёёё! Разобрался сам!
Оказывается "Profit %" это % прибыли/убытка по отношению к "Position Value", а он может быть и всего 5 или 10% от счета, и получается, что ко всему депозиту это будет в 20 или 10 раз меньше.
Урааа, у меня получился работоспособный код Все нюансы учтены, осталось отторговать роботом с риском в 1 контракт на сделку, чтобы проверить его работоспособность. |
_________________ УСПЕХ — это движение от неудачи к неудаче БЕЗ ПОТЕРИ ЭНТУЗИАЗМА.
- Уинстон Черчилль |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Артем
Зарегистрирован: 24.11.2010
Сообщения: 2
|
Добрый день. Подскажите пожалуйста люди добрые, как протестировать параболик в Ами? Меня интересует :покупка - когда сигнал снизу появился, шорт - сверху. Стопы, как я понял, можно в самом тестере задать. Если кому не трудно, то черкните код. Маюсь уже две недели....Спасибо. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Код: |
SetTradeDelays(1, 1, 1, 1);
Buy = Cross(C, SAR(0.02, 0.2));
Sell = 0;
Short = Cross(SAR(0.02, 0.2), C);
Cover = 0;
BuyPrice = ShortPrice = Open;
|
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Артем
Зарегистрирован: 24.11.2010
Сообщения: 2
|
000 писал(а): |
Код: |
SetTradeDelays(1, 1, 1, 1);
Buy = Cross(C, SAR(0.02, 0.2));
Sell = 0;
Short = Cross(SAR(0.02, 0.2), C);
Cover = 0;
BuyPrice = ShortPrice = Open;
|
|
Спасибо, Олег. Все работает. Так же спасибо Commenced.
Я тут частично сам еще сварганил (только не смейтесь)))) вроде тоже самое показывает.
acc = 0.02;
accm = 0.2;
parab = SAR( acc, accm );
Buy=Cross(C, parab);
Sell=Cross(parab, C);
Short=Sell;
Cover=Buy;
У Юры было так -
acc = 0.02;
accm = 0.2;
parab = SAR( acc, accm );
Buy=Cross(parab, C);
Sell=Cross(C, parab);
Buyprice=sellprice=c; |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Nero Wolfe
Зарегистрирован: 17.03.2010
Сообщения: 174
|
Тоже столкнулся с этой проблемой...
Мне кажется смысл параболика в том чтобы выходить сразу при пересечении ценой уровня параболика, т.е. например
Buy = Cross( H, SAR(0.02, 0.2))
Но как тогда протестировать такой вариант? если написать
BuyPrice = SAR(0.02, 0.2)
то при срабатывании параболика его уровень резко меняется и АМИ берет этот новый уровень при расчете цены, а нужно чтобы брала тот, который был до срабатывания.
Что подскажете? |
_________________ Если вас грызет совесть, выбейте ей зубы, и пусть она вас нежно обсасывает. |
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Писал я как то параболик чтобы такую штуку сделать. Поискал, не нашел.... Точно не помню, но вроде там дело в том, что если закрытие не пересекло его, а low пересек, то параболик не реверсируется а снижается до уровня Low бара который его пересек.
Таким образом выход по уровню становится бессмысленным.
Хотя точно не помню. Возможно ошибаюсь. Там алгоритм расчета довольно замороченный.
Те формулы которые лежат в сети это лишь основная часть.... |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Nero Wolfe
Зарегистрирован: 17.03.2010
Сообщения: 174
|
Почему? Параболик реагирует на пересечение хай и лоу и сразу переключается, т.е. любое касание параболика вызывает его срабатывание, вне зависимости от клоуза.
Мне кажется, если самим в коде прописать расчет параболика, то можно к Ref( SAR(), -1) прибавлять/отнимать рассчитанное значение приращения параболика на текущем баре. |
_________________ Если вас грызет совесть, выбейте ей зубы, и пусть она вас нежно обсасывает. |
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
spitfire
Зарегистрирован: 29.04.2010
Сообщения: 729
Откуда: Moscow
|
Олег, добрый день. Есть вопрос по тестеру. Почему то после бэктеста в репорте Max Trade Drawdown отличается от максимального убытка по трейду, если глянуть таблицу сделок и отсортировать по прибыли (см. скрин в приложении). В чем может быть дело?
Код системы проверил, специально прошелся по сделкам визуально и по бэктесту глянул цены входов/выходов - все верно. Но то, что максимальная просадка по трейду отличается от фактической в 2 раза, несколько напрягает..
Думал, что она считается возможно как максимальная просадка от достигнутых хаев профита, но опять же, пройдясь по графику, нашел что для лонгов например макс просадка была 900п на 1 лот, а судя по отчету тестера, она составила всего 620п.. Ами тупит или я?
В скрине выделил красным интересующие меня строки. |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Max Trade Drawdown это не самый большой убыток. Это максимальная просадка эквити.
Например. Было 100000руб. Потом -500, потом +200, потом -300, потом +600. Тогда минимальное значение эквити будет -500 + 200 - 300 = - 600. Это и будет Max Trade Drawdown. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|
Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Вопросы по тестеру |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 След. |
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|